在基于機(jī)器視覺的零件二維尺寸測量通常采用面陣CCD" title="CCD">CCD相機(jī)作為圖像采集設(shè)備,由于面陣CCD相機(jī)的像素分辨率較低。使得在測量精度要求較高的場合很難完成測量任務(wù)。線陣" title="線陣">線陣CCD器件具有空間分辨率高的特點(diǎn),可以實現(xiàn)高精度測量。近年來,利用線陣CCD進(jìn)行無接觸一維測量已經(jīng)得到廣泛應(yīng)用。本文提出采用線陣CCD相機(jī)對零件進(jìn)行平行掃描" title="掃描">掃描采集零件圖像,實現(xiàn)零件二維尺寸的高精度測量。
1 線陣CCD掃描測量原理
線陣CCD掃描測量系統(tǒng)主要由線陣CCD相機(jī)、運(yùn)動工作臺、控制電路及線光源等組成,掃描測量原理如圖1所示。
被測零件放置于運(yùn)動工作臺上,隨工作臺一起以速度v向右方行進(jìn),零件未進(jìn)入相機(jī)視場AB時,線光源所發(fā)射光線直接通過光學(xué)成像系統(tǒng)成為一幀灰度值較高的背景圖像,當(dāng)零件進(jìn)入相機(jī)視場時,零件遮擋光線使得采集圖像含有零件輪廓信息,將所有輸出圖像按采集的先后關(guān)系進(jìn)行拼接,即可得到完整的高分辨率零件圖像,通過圖像處理得到零件的二維幾何尺寸。
2 掃描同步控制
掃描同步控制是線陣CCD掃描測量零件二維幾何尺寸的關(guān)鍵技術(shù),也是影響系統(tǒng)測量精度的最主要因素。所謂掃描同步是指:單位時間內(nèi)線陣CCD相機(jī)所采集圖像總和對應(yīng)的物方實際尺寸與零件的行進(jìn)速度相同。當(dāng)掃描同步時,獲取的零件圖像與實際零件相比沒有發(fā)生變形,如圖2(a)所示,對其進(jìn)行處理的結(jié)果最接近零件尺寸的真實值;當(dāng)相機(jī)采集速度大于零件行進(jìn)速度時,零件圖像被拉長,如圖2(b)所示,對其進(jìn)行處理的結(jié)果將大于零件尺寸的真實值;當(dāng)相機(jī)采集速度小于零件行進(jìn)速度時,零件圖像被壓縮,如圖2(c)所示。對其進(jìn)行處理的結(jié)果小于零件尺寸的真實值。
為保證對零件尺寸測量的準(zhǔn)確性,需要進(jìn)行同步控制。線陣CCD的像素尺寸S為14μm×14 μm,線掃描速度vx為500幀/秒,鏡頭焦距f為50 mm,鏡頭到零件的距離D為150 mm,則CCD像素所對應(yīng)的物方尺寸L為:
則單位時間內(nèi)線陣CCD相機(jī)所采集圖像總和對應(yīng)的物方實際尺寸(即CCD相機(jī)掃描圖像速度v)為:
在這種情況下,要實現(xiàn)零件掃描同步則要求零件的行進(jìn)速度為21 mm/s。
3 圖像處理算法
通過以上分析,對系統(tǒng)的運(yùn)動工作臺的行進(jìn)速度進(jìn)行嚴(yán)格控制,使之與CCD相機(jī)的掃描速度達(dá)到很好的同步效果,實際采集零件圖像如圖3所示。
3.1 圖像邊緣提取
由于需布置光源,而光源隨時間會有所衰減。所以對圖像采用邊緣檢測的算法,以減小光源亮度變化對圖像檢測的影響。要得到圖像的輪廓尺寸,邊緣檢測是測量的基礎(chǔ)和關(guān)鍵。由于圖像往往含有噪聲。而邊緣和噪聲在空間域都表現(xiàn)為灰度有較大的起落,給邊緣提取帶來困難。通過仿真比較,最終采用了3*3的平滑算子和抗噪能力較強(qiáng)的sobel檢測算子,它對灰度漸變和噪聲較多的圖像處理效果較好,對邊緣定位比較準(zhǔn)確,能夠滿足我們對圖像測量的需要。由sobel算子提取被測零件的圖像邊緣如圖4(a)所示,圖像邊緣是一條細(xì)環(huán),由于圖像太大,顯示圖為33%的縮略圖,看起來間斷的地方很多,其實是連續(xù)的,大部分邊是單像素寬,左下角部分400%的顯示圖如圖4(b)所示。
在圖4(b)中,有些地方不是單像素寬,會影響輪廓鏈接成一條鏈。由于有斷點(diǎn)的存在,為了不增加斷點(diǎn)的間隙,采用保留端點(diǎn)的細(xì)化方法,生成單像素寬的環(huán),以得到準(zhǔn)確的周長;由于噪聲的影響,有些地方還有間斷,缺口只有一兩個像素的距離,對于大于一定長度的邊緣段,根據(jù)各條邊緣段起始點(diǎn)或終止點(diǎn)之間的距離d,判斷它們之間的可連接性及需要連接的像索個數(shù)及與前一個像素的位置關(guān)系,進(jìn)行像素的最少個數(shù)插值,并由位置關(guān)系確定插值像素對周長的貢獻(xiàn)。當(dāng)像素時插入一個像素;當(dāng)像素時,插入兩個像素,從而得到連續(xù)的單邊緣輪廓。
3.2 周長法計算直徑
計算區(qū)域的直徑有很多方法,對于標(biāo)準(zhǔn)圓形,可以采用霍夫變換或最小二乘擬合等方法。但對于非標(biāo)準(zhǔn)圓形零件,需要計算它相對于圓形的直徑,根據(jù)周長不變的特性,采用周長法計算直徑。對得到的連續(xù)單邊緣輪廓用鏈碼表示,假設(shè)像素點(diǎn)邊長為1個單位長度。
(1)當(dāng)前像素點(diǎn)位置與前一像素點(diǎn)位置為水平關(guān)系或垂直關(guān)系時(左、右關(guān)系或上、下關(guān)系),適合于用像素的一倍邊長近似;
(2)當(dāng)前像素點(diǎn)位置與前一像素點(diǎn)位置為傾斜關(guān)系時,適合于用像素的倍邊長近似;
(3)如果水平關(guān)系或垂直關(guān)系的像素點(diǎn)個數(shù)為n1,傾斜關(guān)系的像素點(diǎn)個數(shù)為n2,則周長L為:
由周長與直徑的關(guān)系,即可計算直徑。
4 測量試驗及數(shù)據(jù)分析
4.1 試驗結(jié)果
對其重復(fù)10次進(jìn)行采集處理與使用千分尺(分辨率為0.001 mm)測量結(jié)果比較如表1,從中可以看出這個測量系統(tǒng)精度范圍在-0.01~+0.01 mm,該測量結(jié)果能夠滿足精度要求。
千分尺測量內(nèi)徑均值:11.315 mm標(biāo)準(zhǔn)差:0.000 3
圖像處理內(nèi)徑均值:11.325 mm 標(biāo)準(zhǔn)差:0.005
千分尺測量外徑均值:24.758 mm標(biāo)準(zhǔn)差:0.000 3
圖像處理外徑均值:24.769 mm 標(biāo)準(zhǔn)差:0.005
4.2 試驗結(jié)果誤差分析
直徑是由周長上像素位置計算得到的,而每個像素位置的測量都有一定的不確定度,從而造成周長測量同樣具有不確定度。在這里,通過周長計算直徑的模型,分析周長的不確定度對直徑的影響。
由式(2),則直徑:
在式(3)中,n1與n2相互獨(dú)立,當(dāng)n1和n2的個數(shù)有誤差時,計算的直徑不確定度為:
當(dāng)獲取的周長有一個單位的誤差時,計算的直徑的誤差僅為個單位,所以通過周長計算直徑的模型具有較高的精度。
5 結(jié)論
基于線陣CCD的二維尺寸掃描測量系統(tǒng),因線陣CCD可達(dá)到較高分辨率,所以能較好地滿足測量精度要求。線陣CCD視覺檢測系統(tǒng)作為一種新型的測量手段,在許多測量場合,特別是工業(yè)尺寸非接觸在線檢測等方面具有非常廣闊的應(yīng)用前景。