專利名稱:一種圖像掃描器及產生步進位置控制表的方法
技術領域:
本發明涉及一種圖像掃描器,尤指一種可依據一步進位置控制表來精確移動掃描組件或文件的圖像掃描器,以及產生步進位置控制表的方法。
由于圖像掃描器己在許多工作上被廣泛使用,因此圖像掃描器的分辨率也在提升品質的要求下而不斷的被提升。在平臺式掃描器中,掃描組件是由步進馬達以及一些機械式的導引機構所組成的傳動裝置所帶動。為了要提高掃描分辨率,傳動裝置的傳動精確度必須同時被提升才能達到這種高精確度的要求。但是由于傳動機構的機械元件都會有制造及加工上的誤差,而這些誤差的累積就會使傳動裝置在傳動時產生一些周期性的誤差而使掃描組件無法被精確的帶到各個掃描位置。
請參見
圖1所示,圖1為一圖像掃描器的掃描組件在掃描圖像時的誤差曲線圖,其中橫軸表示掃描組件在掃描圖像時應掃描的掃描位置,縱軸表示掃描組件在掃描每一條掃描線時的實際掃描位置與其應掃描的掃描位置之間的偏差距離。橫軸所表示的掃描位置是以掃描線為單位,每兩條相鄰掃描線之間的單位距離是一樣的,它是由掃描器的分辨率來決定,例如分辨率為300dpi時相鄰掃描線之間的單位距離為300分之1英寸。由圖1的誤差曲線34可以看出,掃描組件在掃描圖像時,傳動機構的機械誤差會使它在循序掃描各個應掃描的掃描位置時產生周期性的誤差。這種周期性的誤差會使掃描器在掃描圖像時產生一些變異,例如在掃描一條斜線時,這種周期性的誤差會使掃描所產生的斜線圖像看起來有一些局部的彎曲而不像一條直線。
因此本發明的主要目的在于提供一種可依據一步進位置控制表來精確移動掃描組件或文件,并進行掃描文件圖像的圖像掃描器以解決上述傳動裝置所產生的周期性誤差的問題。
本發明的目的是這樣實現的一種圖像掃描器,其包含有一用來掃描一文件并產生一相對應的圖像信號的掃描組件,一用來沿移動方向驅動所述掃描組件或所述文件以掃描該文件的驅動裝置,以及一用來控制該掃描組件及驅動裝置操作的控制裝置,其特征在于所述的控制裝置包含有儲存對應掃描線位置的步進數的步進位置控制表,其中,當掃描所述文件時,該控制裝置會依據所述的步進位置控制表內的各掃描線的步進數來控制所述驅動裝置以逐一掃描該文件的圖像。
一種用來產生上述的圖像掃描器的步進位置控制表的方法,該步進位置控制表包含有對應移動掃描組件或文件至各掃描線的步進數,其特征在于該方法包含有下列步驟提供校正文件,該校正文件具有至少一條斜線;掃描校正文件,系利用驅動裝置以預設的步進數驅動所述掃描組件或校正文件,并利用該掃描組件來掃描該校正文件,以獲得前述掃描組件在各掃描線上的該校正文件的圖像信號;計算斜率tanθ,依據所述掃描線的圖像信號求得斜線的斜率;計算橫向位移誤差值DX(n),依據所述各掃描線的圖像信號,利用對應前述校正文件斜線的灰階變化來計算各斜線的橫向位移值以及誤差;計算實際掃描線的縱向位移誤差值DY(n),依據所述橫向位移誤差值與所述斜線斜率計算實際掃描線的縱向位移誤差值;以及設定修正步進數S(n),依據所述位置誤差值設定各掃描線的步進數,并儲存在步進位置控制表。
根據上述方法,其中計算斜率tanθ的方法系利用線性回歸的方式計算各斜線的斜率,再計算其平均值。
根據上述方法,其中計算橫向位移誤差值的方法包含下列步驟設定一灰階參考值作為各斜線的黑白邊界值;計算第一條掃描線各斜線的黑白邊界位置Xi(1);計算第n條掃描線各斜線的黑白邊界位置Xi(n);計算第n條掃描線各斜線的橫向位移值誤差值DXi(n)Dxi(n)=Xi(n)-Xi(1)+(n-1)+T/A其中T為累積修正步數,A為每條掃描線的預設驅動步數,i為黑白邊界數;計算第n條掃描線的平均橫向位移值DX(n)DX(n)=1/2mΣi=12mDXi(n)]]>其中m為斜線數。根據上述方法,其中計算各斜線的黑白邊界位置的方法為內插法。根據上述方法,其中計算平均橫向位移值DX(n)的方法為DX(n)=1/2mΣi=12mDXi(n)]]>其中m為斜線數。
根據上述方法,其中計算平均橫向位移值DX(n)的方法為DX(n)=1/mΣi=1mDXi(n)]]>其中m為斜線數。
根據上述方法,其中計算實際掃描線的縱向位移誤差值DY(n)的方法為DY(n)=DX(n)*tanθ。
根據上述方法,其中設定修正步進數S(n)為若DY(n)>1/2A則S(n)=A-1,且T=T-1,若DY(n)<-1/2A則S(n)=A+1,且T=T+1,否則S(n)=A,且T不變。
由于采用以上技術方案,可達到以下有益效果1.以加工精度要求較低的元件,達到較高掃描分辨率所要求的傳動品質,降低了對掃描器的傳動元件的精度要求,可提高高分辨率掃描器的生產率和合格率,使高分辨率掃描器更經濟。且理論上可將定位誤差控制在傳動機構最小步進距離的二分之一以下。
2.不需增加感測元件,其校正方式為非即時校正,不影響掃描速度。
下面結合附圖及具體實施例對本發明再作進一步詳細的說明。
圖1為一圖像掃描器的掃描組件在掃描圖像時的誤差曲線圖。
圖2為本發明掃描器的功能方塊示意圖。
圖3為一具有校正圖形之校正文件的示意圖。
圖4為本發明產生步進位置控制表的方法流程圖。
圖5為圖像掃描器校正后的誤差曲線圖。
請參見圖2,圖2為本發明掃描器10的功能方塊示意圖。本發明掃描器10可以是一平臺式掃描器,其包含有一透明平臺12用來放置一待掃描的文件,一掃描組件16用來掃描文件并產生一相對應的圖像信號,一驅動裝置18用來沿一移動方向驅動掃描組件16以掃描文件,以及一控制裝置20用來控制掃描組件16及驅動裝置18的操作。圖像信號每條掃描線與驅動裝置18的移動方向26為相互垂直。參見圖3所示。
本發明還揭示一種用來產生一圖像掃描器的步進位置控制表22的方法,步進位置控制表22包含有對應移動掃描組件至各掃描線的步進數S(n),n標識為第n條掃描線,控制裝置20則會在掃描文件時依據步進位置控制表22內的各掃描線的步進數來控制驅動裝置18,以逐一掃描各掃描線的圖像。
以下說明本發明產生掃描器10的步進位置控制表22的方法(一)掃描一校正文件14
請參見圖3所示,圖3為一具有校正圖形的校正文件14的示意圖,該校正文件14的長度至少需覆蓋掃描平臺12的長度,即含括掃描組件16所有的行程。箭頭26所指為掃描組件16被驅動時的移動方向。校正圖形包含有至少一斜線28(最好為復數條平行的斜線),斜線28與掃描線及步進方向都不平行。假設斜線28與每一條掃描線的夾角為θ,且驅動裝置18平均每驅動A步,掃描組件16移動一條掃描線。控制裝置20持續以每條掃描線驅動A步的方式移動掃描組件16,并掃描整個校正文件14。
(二)計算實際掃描組件位置每條掃描線的圖像信號的實際位置(即掃描組件的移動位置),可依據每條圖像信號中圖像信號對于校正文件14上的斜線28圖像的變化來計算得出。例如掃描組件16沿移動方向26依序掃描校正文件14而產生第一條掃描線圖像信號30及第n條掃描線圖像信號32。首先找出圖像信號30與斜線28黑白交界圖像在感測單元線上的位置X(1),及圖像信號32與斜線28黑白交界圖像在感測單元線上的位置X(n),比較其間的差距DX(n)=X(n)-X(1)+(n-1)+累積修正值,再利用斜線28的斜率(tanθ)來求得二圖像信號30、32的實際掃描位置間的誤差距離DY(n)=DX(n)*tanθ。
(三)決定步進數由上面所述的方法可以得到每一條掃描線其實際掃描位置的誤差資料,此時修正每一掃描線應前進的步進數,并加以記錄在步進位置控制表22。由于步進位置控制表22中記錄的步進數是最接近預定掃描位置的步進數,顯然控制裝置20在實際掃描一文件時,只要控制驅動裝置18驅動掃描組件16,并依據步進位置控制表22中所記錄的步進數使掃描組件16依序進行掃描,實際掃描位置與預定掃描位置間的誤差就可以控制在最小步進距離的二分之一以內。
將步進位置控制表22儲存在控制裝置中,以后掃描文件時,控制裝置20便會依據步進位置控制表22內的各掃描線的步進數來控制驅動裝置18以逐一掃描文件在步進位置控制表22內的各步進位置上的圖像,如此即可減少掃描線之預定掃描位置與其實際掃描位置的偏離距離,而得到可靠的掃描圖像。
請參考圖4,圖4為本發明產生步進位置控制表的方法流程圖。
步驟40開始;步驟42放置校正文件;步驟44以預定的步進數A驅動掃描組件16,以掃描整張校正文件;步驟46計算校正文件斜線的斜率,設定累計修正步數T=0;步驟48計算第一條掃描線的圖像對應于各斜線28的黑白邊界位置Xi(1);
步驟50找出第n條掃描線的圖像對應于各斜線28的黑白邊界位置Xi(n);步驟52計算每條掃描線橫向的誤差值DXi(n),以及其平均誤差值DX(n);步驟54由平均誤差DX(n)與斜率(tanθ)來求得第n條圖像掃描線與預定掃描位置間的距離誤差DY(n)=DX(n)*tanθ;步驟58依據實際掃描位置與預定掃描位置的誤差DY(n)決定步進數S(n),并累計修正步數T;步驟60將S(n)記錄至步進位置控制表22中;步驟62是否為最后一條掃描線?是,到步驟64,否,到步驟50;步驟64以步進數S(1)到S(n)形成步進位置控制表;步驟66結束。
在步驟46或50中找出掃描線對應于斜線28的感測單元17位置Xi(n)時,有二點必須加以說明。
第一,實際上一條斜線28對感測單元而言是有一定的寬度,也就是一條斜線28會造成一圖像信號中有兩段黑白交界的圖像,要決定斜線28的圖像所對應的感測單元的位置X(n)有幾種方法。一是分別找出兩段黑白交界圖像所對應感測單元的位置,再求其中點當成X(n);二是只找其中一邊而忽略另外一邊;三是將這條有寬度的斜線28的兩邊當成是兩條斜線分別計算其X(n)后再作后續計算,有關多條斜線計算X(n)的方法將在后面再詳加說明。
第二,一般而言感測單元17的輸出值不一定是代表全黑的最小值或全白的最大值,并且黑白交界X(n)往往也不落在感測單元的正中央,在此舉下列例子加以說明處理的方法。例如,感測單元17的輸出為八位元的灰階值(0-255),則可選定一參考灰階值定義為黑白的邊界,其值介于灰階的最大值與最小值之間,如可選擇128作為參考灰階值。如果某一圖像信號內第100個感測單元的輸出灰階值為0,第101個感測單元的輸出灰階值為156,則可推測斜線28黑白交界圖像的位置介于第100個感測單元與第101個感測單元間,利用內插法便可求得參考灰階值128所在的位置為100+(128-0)/(156-0)=100.82,因此對于這一條圖像信號而言,造成其中斜線28黑白交界圖像的感測單元的位置X(n)則為100.82,同理對于其他圖像信號而言,也可以用同樣的方法來判斷造成其中黑白交界圖像的感測單元的位置。
以上是以一條圖像信號中,如何計算斜線28某一黑白交界的圖像所對應感測單元的位置X(n);再加以推廣,如果校正文件14上包含有一組共m條斜率同為tanθ的平行斜線,則每一條圖像信號可計算出多個黑白交界的圖像所對應感測單元的位置Xi(n),i=1,2,3,…,2m,利用這m條平行斜線在第n條圖像信號中所對應出的圖像位置Xi(n)(i=1,2,3,…,2m),可以算出第n條掃描線的累計定位誤差DY(n),并以此來決定第n條掃描線的步進數S(n)。
假設校正文件14上的斜線呈θ角,掃描組件16中每個感測單元17的輸出值介于0-255,判斷黑白交界的參考灰階值定為128,并且以最初設定使驅動裝置18每步進A步掃描組件16就掃描進一條圖像信號,計算累計定位誤差步數T再決定下一次驅動裝置18應步進的數目,也就是下一條預定掃描線的步進位置S(n),依此循序形成步進位置控制表22。如果第一條掃描線中第一個黑白交界圖像出現在第100個及第101個感測單元間,其輸出值分別為0與156,則可算出X1(1)=100+(128-0)/(156-0)=100.82,而第二條掃描線中第一個黑白交界圖像出現在第101個及第102個感測單元間,其輸出值分別為25與182,則可算出X1(2)=101+(128-25)/(182-25)=101.66,則第二條掃描線的第一個黑白交界圖像出現位置的誤差可利用式(1)求得DXi(n)=Xi(n)-Xi(1)+(n-1)+T/A (1)DXi(n)第n條掃描線的第i個黑白交界的X軸誤差Xi(n)第n條掃描線的第i個黑白交界值Xi(1)第1條掃描線的第i個黑白交界值n掃描線的位置T累積修正步數A預設驅動步數DX1(2)=101.66-100.82+(2-1)+0/A=-0.16。
其中T/A為累積的修正距離。則對于第n條掃描線而言,所有i個(i=1-2m)黑白交界圖像出現位置的平均誤差為DX(n)=1/2mΣi=12mDXi(n)---(2)]]>而DX(n)與第n條掃描線的定位誤差DY(n)有下列關系式DY(n)=DX(n)*tan θ (3)如何利用第n條掃描線的定位誤差DY(n)來決定出第n條掃描線的步進數S(n)可簡單表示于下若DY(n)>1/(2A),則設定S(n)=A-1且累計修正步數T=T-1;若DY(n)<-1/(2A),則設定S(n)=A+1且累計修正步數T=T+1;
若否,則設定S(n)=A且累計修正步數T的值不更動。如此可以產生步進位置控制表22中每條欲掃描的掃描線的步進位置S(n),因而形成一個完整的步進位置控制表22。
此外,在制作步進位置控制表22的各步驟中,有幾點注意事項應加以特別指出(一)在掃描校正文件14時,應使校正文件14盡量保持干凈,避免有灰塵或任何臟點落在校正文件14或掃描器10的任何光學元件中,減少掃描所得數據變異過大的情形以避免產生誤判。
(二)校正文件14上可包含多對黑白相間的斜線28,且其線條寬度應遠大于一般灰塵的大小,以降低掃描組件16在掃描斜線28時由于灰塵所造成的誤差。
(三)校正文件14在掃描線方向上所包含的斜線28數量應盡量多,以便在計算平均誤差DX(n)及定位誤差DY(n)時,能取多次平均而消除干擾。
(四)因放置校正文件14供掃描時會有放置誤差,故在分析掃描所得圖像信號時,需重新計算校正文件14上斜線28的斜率,斜率的計算為業界所習知,例如線性回歸方式,在此則不另贅述。
(五)在計算斜線28斜率時,應在校正文件14中選取復數條斜線,分別計算其斜率再取平均值,其中若有斜率與平均值差異過大則應于舍棄,并重新計算平均值。
(六)在計算校正文件14中黑與白斜線28的寬度時,也應該濾掉差異過大的數據再計算平均值。
(七)因光學系統的放大率及光學特性的誤差,所得圖像信號中黑白斜線28的寬度與預設值會有出入,因而也須重新計算該黑白斜線28的寬度。
(八)為進一步消除干擾的影響及避免前述之誤判,在計算所需校正數據前,應將定位誤差曲線平滑化,利用其前后若干步的誤差值平均或以內插法求出該步的誤差值;若其中某一步的誤差值有突然較大的變化,應舍棄該誤差值不列入平均計算中。
請參考圖5,圖5為圖像掃描器校正后的誤差曲線圖。橫軸X表示掃描所得第X條的掃描線,縱軸Y表示這條掃描線實際掃描位置與其應掃描位置所偏離的距離DY(n),可以看出校正后的誤差曲線36與圖1校正前的誤差曲線34有很大的分別,曲線36的誤差比曲線34的誤差要小很多,因此依本發明方法制作的步進位置控制表22可以減小誤差以提高傳動的精確度。
而上述本發明掃描器10也可以是一穿透式掃描器,同樣包含有一透明平臺用來放置一侍掃描的透明文件,也就是說不論是平臺式或穿透式的掃描器都同樣適用本方法。且,上述實施例雖以驅動裝置驅動掃描組件移動的方式進行掃描,亦可以驅動裝置驅動文件移動的方式進行掃描。而使用依本發明方法所產生的圖像掃描器的步進位置控制表22具有下面的優點1.以加工精度要求較低的元件,達成較高掃描分辨率所要求的傳動品質,降低了對掃描器的傳動元件的精度要求,可提高高分辨率掃描器的生產率和合格率。且理論上可將定位誤差控制在傳動機構最小步進距離的二分之一以下。
2.不需增加感測元件,其校正方式為非即時校正,不影響掃描速度。
因此,本發明用來產生一圖像掃描器的步進位置控制表的方法,可使高分辨率掃描器更經濟。以上所述僅為本發明之較佳實施例,凡依本發明申請專利范圍所做的均等變化與修飾,皆應屬本發明專利的涵蓋范圍。例如,上述實施例雖僅校正一次,但亦可重復校正,以獲得更好的品質。
權利要求
1.一種圖像掃描器,其包含有一用來掃描一文件并產生一相對應的圖像信號的掃描組件,一用來沿移動方向驅動所述掃描組件或所述文件以掃描該文件的驅動裝置,以及一用來控制該掃描組件及驅動裝置操作的控制裝置,其特征在于所述的控制裝置包含有儲存對應掃描線位置的步進數的步進位置控制表,其中,當掃描所述文件時,該控制裝置會依據所述的步進位置控制表內的各掃描線的步進數來控制所述驅動裝置以逐一掃描該文件的圖像。
2.一種用來產生如權利要求1所述的圖像掃描器的步進位置控制表的方法,該步進位置控制表包含有對應移動掃描組件或文件至各掃描線的步進數,其特征在于該方法包含有下列步驟提供校正文件,該校正文件具有至少一條斜線;掃描校正文件,系利用驅動裝置以預設的步進數驅動所述掃描組件或校正文件,并利用該掃描組件來掃描該校正文件,以獲得前述掃描組件在各掃描線上的該校正文件的圖像信號;計算斜率tanθ,依據所述掃描線的圖像信號求得斜線的斜率;計算橫向位移誤差值DX(n),依據所述各掃描線的圖像信號,利用對應前述校正文件斜線的灰階變化來計算各斜線的橫向位移值以及誤差;計算實際掃描線的縱向位移誤差值DY(n),依據所述橫向位移誤差值與所述斜線斜率計算實際掃描線的縱向位移誤差值;以及設定修正步進數S(n),依據所述位置誤差值設定各掃描線的步進數,并儲存在步進位置控制表。
3.根據權利要求2所述的方法,其特征在于所述的計算斜率tanθ的方法系利用線性回歸的方式計算各斜線的斜率,再計算其平均值。
4.根據權利要求2所述的方法,其特征在于所述的計算橫向位移誤差值的方法包含下列步驟設定一灰階參考值作為各斜線的黑白邊界值;計算第一條掃描線各斜線的黑白邊界位置Xi(1);計算第n條掃描線各斜線的黑白邊界位置Xi(n);計算第n條掃描線各斜線的橫向位移值誤差值DXi(n)Dxi(n)=Xi(n)-Xi(1)+(n-1)+T/A其中T為累積修正步數,A為每條掃描線的預設驅動步數,i為黑白邊界數;計算第n條掃描線的平均橫向位移值DX(n)DX(n)=1/2mΣi=12mDXi(n)]]>其中m為斜線數。
5.根據權利要求4所述的方法,其特征在于所述的計算各斜線的黑白邊界位置的方法為內插法。
6.根據權利要求2所述的方法,其特征在于所述的計算平均橫向位移值DX(n)的方法為DX(n)=1/2mΣi=12mDXi(n)]]>其中m為斜線數。
7.根據權利要求4所述的方法,其特征在于所述的計算平均橫向位移值DX(n)的方法為DX(n)=1/mΣi=1mDXi(n)]]>其中m為斜線數。
8.根據權利要求2所述的方法,其特征在于所述的計算實際掃描線的縱向位移誤差值DY(n)的方法為DY(n)=DX(n)*tanθ。
9.根據權利要求2所述的方法,其特征在于所述的設定修正步進數S(n)為若DY(n)>1/2A則S(n)=A-1,且T=T-1,若DY(n)<-1/2A則S(n)=A+1,且T=T+1,否則S(n)=A,且T不變。
全文摘要
本發明公開了一種可依據一步進位置控制表來掃描文件圖像的圖像掃描器,以及產生步進位置控制表的方法。該掃描器包含有一掃描組件,用來掃描一文件并產生一相對應的圖像信號,一驅動裝置,用來驅動該掃描組件或該文件以進行掃描,以及一控制裝置,用來控制該掃描組件及該驅動裝置的操作。該控制裝置包含有一步進位置控制表,其內存有驅動裝置驅動掃描組件或文件移動的步進數。在掃描文件時,該控制裝置會依據該步進位置控制表內的各掃描線位置相對應的步進數來精確控制該驅動裝置,進而移動掃描組件或文件至預定掃描線位置進行掃描,以減少因機械公差造成的掃描組件移動偏差的問題,使高分辨率掃描器更經濟。
文檔編號G06K9/20GK1229958SQ9910273
公開日1999年9月29日 申請日期1999年3月3日 優先權日1999年3月3日
發明者王進達, 李亮毅, 胡文華, 邱宏洲 申請人:全友電腦股份有限公司