甄棟志,朱永偉,蘇 楠,陳麗娜
(揚州大學(xué) 機械工程學(xué)院,江蘇 揚州 225127)
0,1 在視覺上表示黑和白,在工業(yè)生產(chǎn)中工業(yè)相機一般用黑白圖像進行圖像預(yù)處理,若得到的是彩色圖像則一般用MATLAB工具箱中提供的r gb2gray函數(shù)使彩色圖像轉(zhuǎn)換為灰度圖像。用假設(shè)法來確定灰度閥值T以計算測量板材特征的灰度值范圍,如果一像素的灰度值小于事先設(shè)定的閥值,把該像素的灰度值設(shè)置為0,該像素歸為目標(biāo);若一個像素的灰度值大于事先設(shè)定的值,把該像素的灰度值設(shè)為255,該像素歸為背景,即:
其中:G(x,y)是分解后的圖像;f(x,y)是(x,y)像素點所具有的灰度級。為方便圖像在計算機中更好地處理,一般把灰度圖像轉(zhuǎn)換為二值化圖像,這樣圖像就變?yōu)楹诎讏D像,中間沒有過渡值。在MATLAB中提供了i m2b w工具函數(shù),如圖1、圖2所示。
灰度直方圖反映了圖像灰度的統(tǒng)計特性,表達了圖像中取不同灰度值的面積或像素數(shù)在圖像中所占的比例,是圖像中最基本的信息。直方圖均衡化的作用是改變圖像中的灰度概率分布,使其均勻化,其實質(zhì)是使圖像中灰度概率密度較大的像素向附近灰度級擴展,使灰度層次拉開,而概率密度小的像素的灰度級縮小,讓出原來占有的部分灰度級,使圖像能充分利用各灰度級,增強了圖像的對比度。經(jīng)過直方圖均勻化處理的圖像見圖3,其灰度級出現(xiàn)的相對概率相同,此時圖像的熵最大,圖像所包含的信息量最大,修改原直方圖的灰度級,獲得直方圖近似均勻分布的輸出圖像。在MATLAB中提供了i mhist函數(shù)來計算和顯示圖像的直方圖,MATLAB中也提供了histeq函數(shù)實現(xiàn)直方圖均衡化,原圖像直方圖和圖像均衡化的直方圖分別如圖4和圖5所示(其中,直方圖的橫坐標(biāo)表示灰度級,縱坐標(biāo)表示具有該灰度級的像素個數(shù)或出現(xiàn)這個灰度級的概率)。從處理后的圖像中可以看出,許多在原始圖像中看不清的細節(jié)在通過直方圖均衡化處理后所得的圖像中都變得較清晰。
圖1 原始圖像
圖2 二值化圖像
因為實驗所得到的圖像數(shù)據(jù)是在自然條件下拍攝而成,圖像的生成、傳輸受系統(tǒng)噪聲、光照變化等因素的影響,因而產(chǎn)生多樣的噪聲,所以對圖像采用中值濾波來進行平滑處理。中值濾波能夠在抑制隨機噪聲的同時不使邊緣模糊,中值濾波與采取平滑方式的平滑濾波不同,它是用一個含有奇數(shù)點的滑動窗口,將領(lǐng)域內(nèi)的像素按大小排列,取中間序號的那個像數(shù)為濾波輸出。在MATLAB中提供了medfilt2中值濾波函數(shù),它有3×3和5×5兩種模板。圖6圖7為中值濾波后的圖像。從圖6和圖7中可以看出,中值濾波器基本上保持了圖像邊界不變,且3×3模板比5×5模板效果好。
圖3 直方圖均衡化處理后的圖像
圖4 原圖像直方圖
圖5 圖像均衡化的直方圖
圖6 3×3模板圖像
圖7 5×5模板圖像
對圖像進行完中值濾波之后就要對圖像進行邊緣檢測,Canny邊緣檢測算子是一種最優(yōu)邊緣檢測算子,其原理是采用二維高斯函數(shù)的任一方向上的一階導(dǎo)數(shù)為噪聲濾波器,通過與圖像f(x,y)卷積進行濾波,然后尋找圖像梯度的局部極大值,以確定圖像邊緣。MATLAB提供了很多邊緣檢測算子,如Roberts算子、log算子、Sobel邊緣算子等。圖8為采用不同邊緣檢測算子處理后的圖像,可以看出,采用Canny檢測后的圖像更加清晰。
圖8 采用不同邊緣檢測算子的結(jié)果
建立好機器視覺平臺,把相機成像平面與鈑金工件平面平行,標(biāo)定相機坐標(biāo)和板材平臺坐標(biāo)。采集圖像后經(jīng)過處理得到了比較好的工件輪廓圖,如圖9所示。
圖9 處理后的圖像
計算每段圓弧輪廓的半徑和圓心間的距離,讀取每段輪廓并進行編號,用Halcon軟件中的各種算子獲取每段輪廓的屬性,計算得到合適的圓并擬合出圓弧輪廓對應(yīng)圓心的圖像坐標(biāo),將每個圓弧所對應(yīng)的圓心半徑保存在數(shù)組中,生成相對應(yīng)的圓,再計算出圓弧圓心間的距離,工件尺寸測量結(jié)果如表1和圖10所示。
表1 工件尺寸測量結(jié)果 mm
圖10 測量結(jié)果圖
添加機器視覺增加了機器人的自主能力,提高了機器人的靈活性,減輕了工作人員的工作量。利用Halcon軟件,實現(xiàn)了對工件圓弧半徑和圓心尺寸的測量,從面可以判定測量尺寸是否在容許公差范圍內(nèi)。利用MATLAB數(shù)字圖像處理中的工具函數(shù)將圖像劃分得更細,使圖像更加清晰,再加上適當(dāng)?shù)乃惴?,獲得了更加準確的數(shù)據(jù)。
[1]張德豐.MATLAB數(shù)字圖像處理[M].北京:機械工業(yè)出版社,2012.
[2]王新成.高級圖像處理技術(shù)[M].北京:中國科學(xué)技術(shù)出版社,2001.
[3]阮秋琦.數(shù)字圖像處理學(xué)[M].北京:中國科學(xué)技術(shù)出版社,2001.
[4]李實英,楊高波.特征提取與圖像處理[M].北京:電子工業(yè)出版社,2011.
[5]徐德,譚民,李原.機器人視覺測量與控制[M].北京:國防工業(yè)出版社,2011.
[6]王慶友,孫學(xué)珠.CCD應(yīng)用技術(shù)[M].天津:天津大學(xué)出版社,1993.
[7]常青.數(shù)字圖像處理教程[M].上海:華東理工大學(xué)出版社,2009.