郭 明,侯伯杰,高建設,張慧慧
(鄭州大學機械與動力工程學院,河南 鄭州 450001)
在自動化生產中,工業(yè)機器人[1]的應用越來越多,機器人在對零件進行搬運、切割、噴涂等方面的應用大大提高了自動化生產的效率。這些應用中的機器人控制系統(tǒng)主要是基于各種傳感器將檢測到的信息傳送給機器人,機器人系統(tǒng)根據(jù)傳感器獲得的信息進行下一步操作,機器人系統(tǒng)的效率與精度也依賴于各種傳感器技術的發(fā)展。其中機器視覺技術的發(fā)展為機器人感知外界信息提供了一種新的方向。機器視覺自動檢測技術效率高、速度快、精度高、檢測結果穩(wěn)定可靠、方便信息集成,另外經過一系列發(fā)展的視覺技術的成本不斷降低,同其它自動化設備一樣可以在各種惡劣和危險的環(huán)境中應用。
近年來,機器視覺在機器人系統(tǒng)中應用廣泛,文獻[2]將視覺運用到了藥房取藥機器人系統(tǒng)中,實現(xiàn)了取藥機器人準確識別定位藥品,且藥品定位信息準確,提高了藥房的取藥效率。文獻[3]設計了一種雙目視覺識別定位、機械手撿拾和自主避障的輪式智能撿球機器人,通過機器視覺識別定位,引導機器人去抓取乒乓球、高爾夫球、網球等多種小型球類的拾取任務,解決了人工拾取球問題。文獻[4]運用視覺重構與機器人運動聯(lián)合技術,提出了一種通過雙目視覺提取工件輪廓的三維坐標,然后生成機器人空間曲線的姿態(tài)軌跡完成切削任務的機器人切割系統(tǒng)。文獻[5]把機器視覺應用于農業(yè)領域,提出了應用結構光視覺技術實現(xiàn)谷粒體積流量的測量。該結構光三維視覺測量系統(tǒng),應用梯形微元積分求和法建立谷粒流體積計算模型,實現(xiàn)了滑槽輸送谷粒體積的在線測量,推動了精準農業(yè)的發(fā)展。文獻[6]設計了一套零件搬運過程中機械零件的位姿檢測系統(tǒng),實現(xiàn)了對零件的形狀與位姿識別,但根據(jù)不同的零件需要編寫相應的程序選取零件特征,通用性較差,且只能滿足機械零件上下料的位姿檢測。
目前存在的機器人視覺檢測系統(tǒng)應用廣泛,對于機器人加工零件,例如待切割、待涂噴、待磨拋等類的零件很大一部分為異形、體積較大等特征的零件,現(xiàn)存機器人視覺檢測系統(tǒng)均不能對此類零件進行位姿測量。對于切割零件來說,通常此類零件體積較大,且大多存在異形,當零件邊緣毛邊需要切割時,零件的邊緣輪廓特征采用視覺難以準確提取。即便提取也需要相機具有較大的視野范圍和復雜度很高的提取算法,反而會降低視覺定位精度和導致系統(tǒng)魯棒性變差。另外對于剛性較差的其它類待加工零件,夾具并不能對其進行精確定位,因此難以實現(xiàn)精確切割、涂噴和磨拋等加工,通常保留較大的加工余量,后續(xù)需要進行人工處理。為了能夠使機器人一次性完成加工工作,對于初始不同位姿的加工零件,機器人的初始加工對刀點及后續(xù)加工路徑需要進行相應調整。調整也就需要對待加工零件的初始位姿進行求解,以修正零件在不同初始位姿下的機器人加工軌跡。對于該類零件位姿難以確定的難題,提出了一種采用參照物的雙目視覺位姿測量方法,并且設計了一套基于雙目視覺零件的位姿測量系統(tǒng),可以對米量級大型零件進行位姿測量。
這里的零件位姿測量系統(tǒng)主要由4個模塊組成,分別為圖像采集模塊、圖像處理與特征匹配模塊、位姿測量模塊、位姿輸出模塊。其具體流程,如圖1所示。在對位姿測量系統(tǒng)雙目相機進行標定后,將兩個相機所采集的圖像進行圖像處理,主要包括濾波處理和特征檢測。特征提取時,提取圖像中參照物角點,在將該特征提取后,對兩幅圖像所對應的同一點進行匹配,然后由位姿測量模塊對該零件的所處位姿進行計算,最后輸出該零件的所處的位姿信息。

圖1 位姿測量系統(tǒng)流程圖Fig.1 Flow Chart of Pose Measurement System
視覺系統(tǒng)中所用相機采集的圖像由于光照的不同,以及周圍環(huán)境中的灰塵等影響,會出現(xiàn)不同條件下相機采集的工件圖像存在較大差異的現(xiàn)象。對相機采集到的工件圖像進行預處理可以消除圖像中影響期望特征提取的錯誤特征,提高工件特征的明顯度,也可以過濾掉環(huán)境影響的錯誤信息來簡化數(shù)據(jù)的復雜度,從而改進下一步特征識別與匹配的可靠性。
特征檢測是檢測出進行處理后的零件圖像中的特征。特征匹配是將提取出來的特征點進行立體匹配以獲得其世界坐標信息。
對圖像進行濾波處理可以增強圖像,通過濾波,可以強調圖像中的一些特征,對拍攝過程中相機采集到的影響期望特征提取的干擾噪聲進行濾除。濾波方法主要有:均值濾波、中值濾波、高斯濾波等。采用高斯濾波的方法去除干擾噪聲,效果明顯。
視覺系統(tǒng)中采集到的圖像,主要包括零件的角點特征、邊緣線特征和面特征等。這里的零件位姿檢測系統(tǒng)中圖像采集模塊是采用了兩個黑白相機,在灰度空間的特征檢測中,由于灰度圖像為一維圖像,檢測出圖像中的特征后可以直接從圖像中提取出來。該系統(tǒng)采用Harris角點特征檢測[7]直角三角形參照物的三個頂點,由于切割零件表面角點少,參照物角點特征明顯,在生成特征向量后進行匹配時,設定相應閾值即可對誤差點進行剔除。匹配后的角點為進行下一步位姿測量提供數(shù)據(jù)。
在進行立體匹配得到左右相機圖像的匹配特征點坐標后,即可用雙目視覺測量方法求解匹配點世界坐標。由相機成像原理可知,對于空間中一點P(XW,YW,ZW),到像素坐標系uv的轉換關系[8-9],如式(1)所示。
式中:Z—點P的深度;ρw、ρh—每個像素點各自的寬和高;u0和v0—主點橫縱坐標;f—相機的焦距;R—相機外參旋轉矩陣;t—平移向量。式中沒有考慮相機畸變,相機畸變會導致相機失真,這里在標定時引進了高階畸變補償成像過程中導致的畸變[9],徑向畸變參數(shù)矯正公式如下:
式中:(x,y)—畸變點原始位置;r—該點到主點距離;(xdistorted,ydistorted)—矯正徑向畸變之后的位置;k1,k2,k3—徑向畸變系數(shù)。
切向畸變的矯正公式如下:
式中:p1、p2—切向畸變系數(shù)。
單個相機標定后相機內參和外參均可得到,因此只需要知道空間點的景深Z就可以得到空間點的坐標。單目相機并不能獲得其景深,采用雙目視覺獲得景深的方法獲取Z值[8],如圖2 所示。空間中一點P,在雙目視覺系統(tǒng)中的左相機的圖像平面成像點為p1和右相機的圖像平面成像點為p2,雙目系統(tǒng)中的兩個相機的焦距均為f,OR和OL分別是左右相機的坐標系原點。左邊相機的光軸和右邊相機的光軸是平行的。左邊相機的成像平面上p1的橫向坐標為XL,右邊相機的成像平面上p2的橫向坐標為XR。定義雙目視差d=XL-XR。

圖2 雙目視覺視差與深度原理圖Fig.2 Schematic Diagram of Binocular Visual Parallax and Depth
已知:
最后,質量管理不到位。質量是工程施工進度的主要影響因素之一,結合我國建筑工程實踐來看,在建筑工程施工中,針對施工人員工作行為以及技術操作的管理未得到有效的落實,不規(guī)范操作的現(xiàn)象十分常見,這為工程施工質量埋下了嚴重的隱患,不可避免的波及到了施工進度。
根據(jù)相似三角形原理有:
上式兩式相加有:
又因為:
可得:
得:
由式(6)獲得Z值后即可通過式(1)求得匹配點世界坐標。這里采用的直角三角形參照物示意圖,如圖3所示。在特征匹配后即可通過雙目相機標定后的參數(shù)、式(1)和式(6)求解出三角形參照物的三個頂點的世界坐標。

圖3 參照物Fig.3 Reference
其中直角三角形直角點為標定物坐標系的原點O,直角三角形的直角短邊和直角長邊為標定物坐標系的X軸方向和Y軸方向,Z軸方向垂直于標定物直角三角形平面。參照物由人工定位貼附于零件上,參照物坐標系相對于零件坐標系即不存在旋轉,也不存在Z軸方向的平移,只存在X,Y軸方向的平移。得到參照物坐標系位姿后,零件坐標系姿態(tài)與參照物坐標系姿態(tài)一致,零件坐標系原點位置BO(x,y,z)可以通過式(7)得到。
可簡寫為:
其中BO,AO分別是零件坐標系原點位置和參照物坐標系原點位置,t=(x,y,0)代表兩個坐標系之間的平移變換。更為簡潔方法為在人工進行貼附時,直接貼附與零件坐標系重合,那么BO=AO。
得到三角形參照物三維位姿具體步驟如下:
(1)假設所匹配的直角三角形三個頂點求解的世界坐標分別為A=(x1,y1,z1),B=(x2,y2,z2),C=(x3,y3,z3)。分別計算,找到最小值。若為最小,則點A為參照物坐標系原點O,即為參照物的世界位置。另外兩種情況同理。
(2)確定參照物坐標系原點O坐標后,假設步驟一所得結果O=A,分別計算|。找到較小值。若較小,則可以得到為參照物坐標系X軸方向為參照物坐標系Y軸方向,即為參照物坐標系Z軸方向,也同為零件坐標系Z軸方向。其它兩種情況同理。
(3)對所求叉積結果單位化得r=(r1,r2,r3),即為參照物坐標系Z軸在世界坐標系中的單位方向向量,至此,參照物坐標系三個坐標軸方向確定,即可求取參照物坐標系的三個歐拉角。
為了測驗該零件位姿測量系統(tǒng)的可行性,搭建了零件位姿測量系統(tǒng)實驗平臺,如圖4 所示。該實驗平臺主要有2 個型號為CGU2-130M 的黑白相機,接口為USB2.0 兼容USB3.0 并由USB供電,鏡頭焦距為12mm,視角為28.5°,相機三腳架,自制標定板,自制不等腰直角三角形參照物,筆記本電腦組成。

圖4 系統(tǒng)實驗平臺Fig.4 System Experiment Platform
由前文可知,若想計算三維空間物體的幾何信息,從式(1)可知必須知道相機的參數(shù),保證這些參數(shù)的精確性是獲得位姿測量系統(tǒng)實驗準確性的前提,而相機標定[10]就是獲得這些參數(shù)。實驗采用MATLAB 2016b標定工具箱對雙目相機系統(tǒng)進行標定。其中一組標定板左右相機圖片,如圖5(a)所示。

圖5 相機標定圖片F(xiàn)ig.5 Camera Calibration Picture

圖6 軟件系統(tǒng)界面Fig.6 The Main Interface of the Software System
標定結果,如表1所示。

表1 相機標定參數(shù)Tab.1 Camera Calibration Parameters
這里設計根據(jù)上述系統(tǒng)結構運用C#語言聯(lián)合MATLAB語言編譯的動態(tài)鏈接庫設計了零件位姿測量系統(tǒng)軟件,軟件環(huán)境為Visual Studio 2015,MATLAB 2016b。該軟件測量實驗過程中的系統(tǒng)界面,如圖5所示。這里的實驗零件,如圖4所示。圖4(a)所示零件為客車操控臺殼體零件總長約為230cm,圖4(b)所示為客車車門殼體零件總體長約150cm,寬約80cm。本次實驗設定了零件坐標系與參照物坐標系完全一致。對該位姿下的兩個零件分別進行了15次和8次重復拍攝求解位姿。其中一次匹配結果,如圖7所示。

圖7 參照物角點匹配Fig.7 Reference Object Corner Matching
對兩個零件的位姿測量數(shù)據(jù)記錄,如表2、表3所示。表中位置為參照物位置,姿態(tài)表述方式α、β和γ為歐拉式ZXZ序列的歐拉角。

表2 操控臺殼體位姿測量數(shù)據(jù)Tab.2 Pose Measurement Data of Console Shell
由表2中可以看出該系統(tǒng)的在X軸方向位置波動在(0~0.17)mm之間,Y軸方向的波動在(0~0.10)mm之間,Z軸方向的波動在(0~0.27)mm之間;α角角度波動在(0~0.34)°之間,β角角度波動在(0~0.29)°之間,γ角角度波動在(0~0.33)°之間。從實驗結果看,該系統(tǒng)能夠有效測量多種零件的位置和姿態(tài),各個參數(shù)的偏差均較小,本測量系統(tǒng)能夠為零件切割系統(tǒng)提供精度較高的位姿。
針對機器人加工系統(tǒng)中,由于大型加工零件的不易定位,用機器人對零件進行加工總是保留很大余量,后續(xù)需要人工處理的問題,提出了一種對這些零件進行位姿測量的方法,設計了一款零件位姿測量系統(tǒng)軟件,方便機器人根據(jù)初始位姿的不同對加工路徑進行修正,且該系統(tǒng)成本低廉。并且用該方法對不同零件位姿進行了實驗測量。
結果表明:該系統(tǒng)能夠有效測量多種零件的位置和姿態(tài),為機器人加工系統(tǒng)修正加工路線提供了技術支持。