摘 要: 為實現(xiàn)快速非接觸式的板件形位測量,提出了一種基于機器視覺的測量方法,將機器視覺技術應用到機械加工中?;跈C器視覺的板件形位測量利用工業(yè)攝像機獲取工件圖像,經過圖像濾波和圖像分割后提取工件角點,匹配左右相機中的角點,從而得到角點的三維坐標,并且采用直線擬合的方法擬合工件邊緣、計算直線斜率,得到工件的旋轉角度。
關鍵詞: 機器視覺; 圖像濾波; 圖像分割; 角點提取; 直線擬合
目前,數(shù)控加工中多采用人工手動對刀,其效率較低。若采用機器視覺技術代替人工操作,則可大大提高自動化水平[1]。運用機器視覺技術獲取工件上特征點(如角點)在攝像機坐標系下的三維坐標,后續(xù)經過攝像機與刀頭的“手—眼”標定[2],就能將其轉換為機床坐標系下的三維坐標,從而達到自動對刀的效果。在板件切割時,由于擺放的原因,需要人工校正板件位置,即使板件一邊與機床坐標軸對齊以免因板件旋轉而發(fā)生加工錯誤,但這往往要耗費大量的時間。使用機器視覺技術測量板件的旋轉角度,將數(shù)控加工代碼依照該角度進行旋轉變換,就省去了人工校正環(huán)節(jié),節(jié)約了大量時間。
基于機器視覺的板件形位測量涉及攝像機標定、圖像濾波、圖像分割、角點提取和直線擬合。圖像濾波有均值濾波[3]、中值濾波[4]、高斯濾波[5]和雙邊濾波[6]等。其中雙邊濾波能較好地保留邊緣,有利于板件形位的測量。圖像分割主要有基于閾值的分割方法、基于區(qū)域的分割方法、基于邊緣的分割方法以及基于特定理論的分割方法等,其中基于閾值的分割方法[7]根據圖像灰度的變化將圖像分為計算簡單和運算效率高兩個部分。角點檢測方法有Moravec角點檢測[8]、Harris角點檢測[9]和SUSAN角點檢測[10]等。本文采用在Harris角點檢測方法基礎上改進的Shi-Tomasi角點測量[11]方法,其效果優(yōu)于Harris方法。在很多情況下,檢測出的板件角點并不是兩邊的交點,若使用兩角點的連線計算板件的尺寸和旋轉角度將帶來較大的誤差,因此本文提出一種基于最小二乘直線擬合板件邊緣的方法對板件的尺寸及旋轉角度進行測量。
1 攝像機標定
1.1 立體視覺模型
雙目立體視覺系統(tǒng)是模擬人眼的立體成像技術,通過對左右攝像機拍攝到的圖像進行匹配,使用三角形相似原理獲取實際物體的景深信息。雙目視覺系統(tǒng)模型如圖1所示。
其中,點P是實際被測物表面上一點,其坐標為P(X,Y,Z)。兩光心間的距離為基線長度T,其與點P在兩像平面的交點為p1(x1、y1)、pr(xr、yr),由于該模型為經圖像矯正后的理想模型,因此p1和pr在同一水平線上。根據三角形相似原理可得:
其中,d為像素的物理長度;(cx,cy)為光心在圖像上的像素位置;f為攝像機的焦距。由式(1)~式(3)可得:
因此,需要對攝像機進行標定,得出攝像機的有關參數(shù),才能對實際物體進行測量。
1.2 基于OpenCV的攝像機標定
攝像機標定的目的在于獲取攝像機的內、外參數(shù)及其畸變量。在雙目立體視覺中,除了攝像機的標定外,還應進行立體標定,獲取兩個攝像機的相對位置關系。使用OpenCV庫函數(shù)的標定方法,實際上是采用張正友標定法[12]。張正友標定法是一種基于二維平面模板的標定方法,常用的有棋盤格標定法。用攝像機拍攝多個不同位置的模板,通過模板上的特征點與其圖像的單應性來確定攝像機的內、外參數(shù)。
本文采用一塊12×8的棋盤進行相機標定,使用VC++6.0和OpenCV函數(shù)庫中的函數(shù)cvStereoCalibrate()編寫標定程序。cvStereoCalibrate()函數(shù)可一次性標定出左右相機內參與畸變以及左右相機間的旋轉矩陣R和平移矩陣T。經過多次試驗,標定結果如表1所示。
兩相機間旋轉矩陣R和平移矩陣T為:
R= 0.971 32 0.003 7 0.237 75-0.002 44 0.999 98 -0.005 61-0.237 78 0.004 87 0.971 31
T=-337.933 88 0.771 76 38.346 99
2 板件形位測量系統(tǒng)
基于機器視覺的板件形位測量系統(tǒng)包含了圖像預處理、角點提取和直線擬合等技術,其流程如圖2所示。
2.1 圖像預處理
在實際工業(yè)環(huán)境中,由攝像機拍攝獲取的圖像必然夾雜著許多干擾因素,如噪聲點和背景環(huán)境等帶來的影響,而所處理的是感興趣的部位(即工件本身),所以要對圖像進行預處理去除干擾因素。
2.1.1 雙邊濾波
在圖像處理中的均值濾波和高斯濾波模糊了圖像中的邊界,而中值濾波和雙邊濾波能夠較好地保存圖像中的邊界信息。由于本文處理的是板型工件的形位信息,必然要獲取較為準確的邊界信息,因此選擇雙邊濾波進行處理。
雙邊濾波依據每個像素及其領域構造一個加權評價值,加權計算包括兩個部分,第一部分加權方式與高斯濾波相同,第二部分是基于其他像素與中心像素的亮度差值的加權。這里的中心像素指的是濾波器模板窗口的中心,其他像素指的是模板窗口中非中心點的其他像素。
常用BF作為雙邊濾波的符號,其定義為:
其中,I表示處理的圖像,p表示圖像中一點,q表示以p為中心的領域中一點,S表示該領域,G是雙邊濾波器的空間鄰近函數(shù),G是灰度相似度函數(shù)。
其中, d(p,q)表示兩像素點在歐式空間的距離; ?啄(I(p),
I(q))表示兩像素的亮度差;?滓d、?滓r均是高斯函數(shù)的標準差,其數(shù)值決定了雙邊濾波的性能。
2.1.2 閾值分割
利用雙目視覺對板件行位進行測量,圖像背景是一個最大的干擾,因此必須對分割圖像取出感興趣的工件部分。本文采用基于閾值的分割方法中的最大類間方差法,又稱大津法。
在使用大津法前,先拍攝記錄一張背景圖像,在圖像預處理時,將每次拍攝的圖像與背景圖像相減(圖像對應像素的灰度值相減),由于有光照,工件表面較亮,相減后圖像中背景的灰度值將總體變暗。使用這樣的方法能初步分割出工件與背景,如圖3所示。
最大類間方差法是由日本學者OTSU N在1979年提出的一種全局閾值方法。其原理是根據圖像的灰度直方圖取某一閾值將圖像分為兩個部分,每個部分的灰度值為一組,計算這兩組間灰度方差,將最大方差所對應的閾值設為最終閾值,從而將圖像分為兩個部分。
經過大津閾值分割后的效果如圖4所示。
2.2 Shi-Tomasi角點提取
在板件形位測量中確定板件的角點不可缺少,有了各角點的坐標就能確定板件的形狀及位置。在雙目視覺中,匹配左右圖像中的角點,就能獲取實際物體角點坐標。Shi-Tomasi算法是Shi和Tomasi在Harris算法的基礎上提出的。Harris算法的基本思想是利用高斯模板窗口觀察圖像特征,沿x和y方向移動該模板,若各個方向上灰度變化不大,則視為圖像的平坦區(qū)域;若只有一個方向灰度變化明顯,則視為邊緣區(qū)域;若各個方向上的灰度變化都很明顯, 則視為角點。
Harris算法定義圖像灰度的二階導數(shù),模板窗口圖像的二階導數(shù)的自相關矩陣定義為:
計算式(8)矩陣的特征值?姿1和?姿2,Shi-Tomasi通過給定閾值?姿,根據min(?姿1,?姿2)>?姿來判斷是否為角點。許多情況下,Shi-Tomasi算法比Harris算法的效果更好。
由于工件表面紋理等因素,直接在整幅圖像中尋找角點比較耗時,而且存在大量偽角點,因此本文使用人工粗略選擇角點存在區(qū)域,對小區(qū)域進行角點檢測,效果如圖5所示。
圖5中,白色圓圈的中心即為檢測出的角點位置,但是在右下角位置出現(xiàn)了兩個角點,即有一個為偽角點,必須將其剔除。根據板件多為矩形的特點,選擇各方向的極值點作為工件角點,剔除落在工件內部的偽角點。
2.3 基于直線擬合的工件尺寸及旋轉角度測量
前面討論了角點提取,求取工件實際角點坐標,但在測量工件實際尺寸或是用兩個角點的連線的斜率測量工件旋轉的角度時,往往會有較大的偏差。如圖6所示,圖中黑色代表背景像素,白色邊緣代表工件的某個角點。根據經驗,工件角點處在圖像上反映出的往往不是一個直角,因此直接連接兩個角點的直線距離往往比實際距離小。但如果使用邊來測量,邊上沒有特征點能夠匹配,因此本文采用直線擬合的方法擬合出工件各邊,可用各邊角點間的距離衡量工件尺寸,也可用擬合出的直線斜率表示工件的旋轉。
在圖像中采用二維平面的直線擬合即可,在工件的各邊取若干點分別擬合。假設擬合直線f(x)=ax+b,采用最小二乘的方法,即計算每點與擬合直線的偏差M的最小值。
得出斜率a和截距b就確定了一條直線,將相鄰邊擬合出的直線求交,如圖7所示。
圖7中,線段為擬合出的板件邊緣,可以看出采用直線擬合工件邊緣的方法可以彌補工件邊角在圖像上不是直角的缺陷。
3 實驗結果及分析
3.1 實驗器材及步驟
本實驗采用1臺明基MP515投影儀、2個維視MV-1303UM工業(yè)攝像頭和1臺PC。測量對象為一塊方形大理石,其尺寸如表2所示。
實驗步驟:(1)打開攝像機;(2)拍攝圖像并校正;(3)圖像濾波及分割;(4)鼠標點選待處理區(qū)域;(5)計算大理石尺寸及旋轉角度。
3.2 實驗數(shù)據及分析
采用直線擬合測得各角點的三維坐標如表3所示。從表3可以發(fā)現(xiàn),各個角點的Z坐標差別較大,這是由于大理石的各個角實際是個小圓弧,而由圖7可知,擬合出的角點都在物體外,因此取XY平面的坐標計算大理石尺寸,如表4所示。
由于實驗時沒有絕對的平臺作為參照,因此測量大理石底邊和左邊的斜率,間接得出左下角角度與實際測量角度對照的方法來衡量旋轉測量的精度。實驗測得底邊斜率kb=0.017,左邊斜率k1=-34.711,通過計算可以得到其夾角為90.7°,而實際測得大理石左下角為90.5°。由以上實驗結果可得,板件邊長尺寸的測量精度在0.5 mm以內,角度測量精度在0.5°以內。
本文提出一種基于機器視覺的板件形位測量方法,采用最小二乘直線擬合板件邊緣的方法測量板件尺寸及旋轉角度。該方法通過雙邊濾波和最大類間方差閾值法對圖像進行預處理。使用Shi-Tomasi角點檢測法提取板件角點可定位板件角點位置,獲取若干邊緣點擬合直線,通過各擬合直線交點間的距離計算板件尺寸,使用擬合直線的斜率計算板件旋轉角度。實驗結果表明,該方法簡單可行。今后將著力于更高精度測量的研究。
參考文獻
[1] 李明超. 基于OpenCV的機器人雙目手眼標定系統(tǒng)的研究與實現(xiàn)[D]. 青島:山東科技大學, 2012.
[2] 孟偲, 王田苗, 丑武勝. 基于手眼視覺的測量與定位方法的研究與實現(xiàn)[J]. 中國空間科學技術, 2002,12(6): 18-25.
[3] Wang Chunmei, Li Tianyi. An improved adaptive medianfilter for image denoising[C]. 2010 3rd International Con-ference on Computer and Electrical Engineering, Sichuan, China, 2012,53(2):64.
[4] HUANG H C, LEE T C M. Data adaptive median filters for signal and image denoising using a generalized SURE criterion[C].IEEE Transactions on Image Processing Letters.2006,13(9):561-564.
[5] 李慧芬, 蔣向前, 李柱. 高斯濾波穩(wěn)健性能的研究與改進[J]. 儀器儀表學報, 2004,25(5):633-637.
[6] ELAD M. On the origin of the bilateral filter and ways to improve it[C]. IEEE Transactions on Image Processing,
2002,10(11):1141-1151.
[7] OTSU N. A threshold selection method from graylevel his- tograms[J]. IEEE Transactions on Systems, Man, andCybernetics,1979,9(1):62-66.
[8] MORAVEC H P. Towards automatic visual obstacle avoid-ance[C]. Proceedings of International Joint Conference On Artificial Intelligence, Cambridge, MA,USA,1977:584-590.
[9] 唐爍,繆源. 基于Harris角點的圖像匹配算法[J]. 微機與應用,2013,32(2):41-43.
[10] 邵澤明, 朱劍英, 王化明. 基于SUSAN算法的分層快速角點檢測[J].華南理工大學學報(自然科學版),2006, 34(7):65-68.
[11] Shi Jianbo, TOMASI C. Good features to track[C]. IEEEConference On Computer Vision and Pattern Recognition, 1994:593-600.
[12] Zhang Zhengyou. A flexible camera calibration by viewinga plane from unknown orientations[C]. IEEE InternationaConference on Computer Vision, 1999:666-673.