李 彬, 羅 彪
(北京航空航天大學 自動化科學與電氣工程學院,北京 100191)
?
應用技術
機器視覺在物體位姿檢測中的應用
李彬, 羅彪
(北京航空航天大學 自動化科學與電氣工程學院,北京 100191)
摘要:研究了機器視覺技術在物體位姿檢測中的應用。從兩個方位架設工業(yè)相機采集目標圖片,采用張正友基于2D平面靶標的相機標定方法對相機進行標定。使用目標圖像減去背景圖像和形態(tài)學運算的方法進行粗定位,初步檢測目標區(qū)域。利用Hough變換檢測目標直線邊緣,依據(jù)極線約束原則、灰度相似性以及直線約束進行邊緣直線及其端點的匹配。計算出各直線端點的空間三維坐標及其單位方向向量。在已知目標模板的條件下,目標的幾何參數(shù)已知,利用簡單的幾何關系求取目標的位姿數(shù)據(jù)。
關鍵詞:機器視覺; 攝像機標定; Hough變換; 角點檢測和匹配; 幾何模板
0引言
機器視覺是指利用計算機系統(tǒng)模仿人視覺系統(tǒng)的功能,實現(xiàn)計算機對目標物體的感知、定位等功能。隨著機器視覺理論的發(fā)展,機器視覺在工業(yè)中的應用越來越廣泛。比如:在工業(yè)零件的分類中,現(xiàn)在依然主要依靠人工手段對混雜的工業(yè)零件進行分類,這種分類方式不僅效率低下,錯誤率較高,且是對人力資源的一種浪費。若能夠實現(xiàn)對零件的自動分類,將大大提高工業(yè)生產效率。
當對大量堆疊的同類工業(yè)零件進行分類時,必然存在工件相互遮擋的情況。考慮到目標區(qū)域內的工件都是同一樣式,幾何參數(shù)模板可以得到,則即使圖像中某一工件被遮擋無法得到其完整圖像信息,也有可能利用幾何關系計算出它的位姿數(shù)據(jù)。
1相機標定
相機標定是指通過測量相機的各種內部和外部參數(shù),建立起相機所采集到的圖像與世界中場景點的位置關系的過程。相機標定一般可分為傳統(tǒng)標定方法[1~3]、主動視覺中的標定方法[4~6]和自標定方法三類[7,8]。相機標定中需要標定出的內、外部參數(shù)如表1所示。

表1 相機標定參數(shù)
傳統(tǒng)標定方法使用2D或3D靶標。通過建立靶標上特征點和圖像中特征點的空間坐標關系,計算攝像機的內外參數(shù)。主動視覺標定方法令攝像機按著一定運行軌跡移動,利用軌跡的幾何性質和圖像坐標計算攝像機參數(shù)。自標定法不需要知道靶標特征點的三維坐標,利用多幅圖像間一定數(shù)目對應點的圖像坐標關系來求解攝像機參數(shù)。三種方法相比,主動視覺的標定方法實現(xiàn)起來比較復雜,而自標定法結果不夠穩(wěn)定,故采用傳統(tǒng)標定法進行標定[9]。
這里采用張正友提出的基于2D平面靶標的相機標定方法。標定假定兩相機的內部參數(shù)維持不變,將相機架設在兩個不同的方位與角度,保持相機固定。不斷改變2D平面靶標的擺放位置與角度,兩相機同時采樣。對靶標的部分采樣圖如圖1所示。
標定可以使用Matlab標定工具箱或使用Opencv標定。一般使用Matlab標定的準確度更高一些,因此,這里標定軟件使用Matlab 2014b。

圖1 靶標部分采樣圖Fig 1 Sampling figures of planar target
2圖像處理
為快速實現(xiàn)目標的粗定位,需要對采集到的圖像進行初期圖像處理。這里主要采用圖像與背景圖像做差和形態(tài)學運算中的腐蝕與膨脹運算。
2.1背景處理
在采集目標圖像前,保證光照條件不變,相機位置不移動,首先對背景圖像采圖如圖2。

圖2 背景圖像Fig 2 Background image
對采集到的目標圖像與背景圖像做差,以提取目標區(qū)域,效果如圖3。
可見做差后可以初步提取出目標,但圖像中仍存在部分高光區(qū)域,可能會影響后續(xù)檢測。使用形態(tài)學運算去除這些區(qū)域。

圖3 目標粗定位Fig 3 Target coarse positioning
2.2形態(tài)學運算
基于數(shù)學形態(tài)學[10,11]的邊緣檢測算法對噪聲不像經典微分算法那樣敏感,而且提取的邊緣比較平滑。膨脹和腐蝕是形態(tài)學運算的基本運算[12~14]:膨脹可用于填補分割后目標中的小空洞;腐蝕可用于消除目標圖像中不必要的細小連線和一些孤立的小點。
如圖4,對于去除背景的圖像二值化后,首先進行若干次腐蝕運算,可以消去被測立方體附近的反光區(qū)域。接著進行數(shù)次膨脹運算,恢復被腐蝕掉的立方體邊緣。由于腐蝕和膨脹并不是一對可逆運算,所以,為保證立方體邊緣數(shù)據(jù)不丟失,應使膨脹次數(shù)多于腐蝕次數(shù)。

圖4 形態(tài)學運算后的二值圖像Fig 4 Binarized image after morphological operations
由圖5,最終提取出的目標區(qū)域中已經去除了高光區(qū)域的干擾,且完整的保留了目標物體的輪廓。

圖5 提取出目標區(qū)域Fig 5 Extracted target area
3邊緣檢測與匹配
3.1邊緣檢測
在圖像特征檢測過程中,邊緣和角點特征是圖像最重要的特征之一。目前有多種對物體邊緣進行檢測的技術,這里使用Hough變換實現(xiàn)對直線邊緣的檢測。
Hough變換將笛卡爾坐標系中用斜率和截距(k,b)表示的直線映射到極坐標系中用極徑和極角(r,θ)表示的直線,對直線參數(shù)進行累加,實現(xiàn)對直線的檢測。由于其根據(jù)局部度量來計算全面描述參數(shù),因而,對于區(qū)域邊界被噪聲干擾或被其他目標遮蓋而引起邊界發(fā)生某些間斷的情況具有很好的容錯性和魯棒性。
如圖6,使用基于Opencv的Hough變換對左右兩幅圖像中的目標物體進行直線檢測,可以得到部分物體的邊緣,同時得到這些直線的起始點坐標。

圖6 Hough變換檢測邊緣Fig 6 Edge detection using Hough transform
3.2直線匹配
為得到直線邊緣的三維空間坐標,需要對角點進行匹配。角點匹配是機器視覺中最關鍵也是最有難度的一個步驟,關系到后續(xù)工作能否進行。由于對于每一條直線已經得到其起點與終點兩個端點的坐標,這里同時對兩個端點進行角點的匹配,可以增加一個約束條件、減少匹配錯誤。
為減弱采樣噪聲、光照變化、透視畸變等因素的干擾,進行匹配時使用以下三個條件作為約束:
1)極線約束:由于得到兩幅圖像的兩個相機存在一定的位置關系,可以將這種位置關系轉換為圖像上點的位置約束。極線約束是進行圖像匹配的最重要的約束條件之一。
2)灰度相似性:雖然獲得兩幅圖像的兩個相機采圖角度不同,致使得到的兩幅圖像中同一空間點周圍的環(huán)境并不相同,但依然存在一定的相似性,尤其對于表面紋理與周圍環(huán)境不同、或與環(huán)境色差較大的情況,灰度相似性仍具有一定參考價值。
3)直線約束:相匹配的兩個點應該為同一條邊緣的起點或終點。
3.2.1極線約束
如圖7所示,pl,pr為空間點p在左右兩相機采樣圖像上的成像點,兩光心Cl,Cr和p點組成的平面稱為極平面。極平面與左右兩圖的交線稱為極線。觀察可知pl與pr在左右圖像中的位置存在一個約束,即都位于極線上,而一旦p點確定了,左右極線是唯一的[15]。

圖7 極線約束幾何關系Fig 7 Epipolar constraint
3.2.2灰度相似性
以待匹配特征點為中心,(2N+1)×(2N+1)大小的區(qū)域為窗口模板,計算兩個特征點的灰度相似性。
使用區(qū)域相關系數(shù)作為判斷兩點灰度相似性的依據(jù)


C的范圍為[-1,1],值越大表示兩個點的灰度相似性越高。設置一定閾值,當C大于該閾值時認為兩點匹配。
3.2.3直線約束
即使兩點同時滿足以上兩個約束條件,也有可能出現(xiàn)錯誤匹配。考慮到進行匹配的每一個點都是一條直線的端點,兩個匹配點同時應該在同一條直線上,利用這一條件作為約束。當有一個點匹配成功時,繼續(xù)尋找直線另外一個端點的匹配點,若同樣可以找到且與之前的匹配點共線,則認為找到了一條直線上兩個點的匹配點,同時也是找到了左右圖中的一條匹配直線,如圖8。

圖8 直線匹配Fig 8 Straight line matching
4坐標計算與位姿計算
工業(yè)生產中對堆積的同類工件進行識別時,由于背景中的物體全部為同種樣式,因此,即便出現(xiàn)遮擋導致無法得到某一個體的全部信息,利用已知的物體模板信息也可以實現(xiàn)對物體的檢測識別。
以立方體為例,所需知道的物體信息僅有邊長。實驗中立方體的邊長為100mm。有多種方法可以確定一個立方體的準確位姿,如,立方體質心和一個角點、質心和一條邊、三條相互垂直的邊、三個角點等。由于進行Hough直線檢測得到的可能并不是立方體的一條完整邊界,這里采用計算質心和一個角點的方法確定位姿。
首先尋找滿足以下條件的三條線段:
2)三條線段相互垂直;
3)至少存在一個交點。
如圖9,此交點必定為立方體上的一個角點,記為M。

圖9 定位三條線段Fig 9 Locate three lines
為計算三條線段的空間坐標,實現(xiàn)從圖像像素坐標到世界坐標的轉換,如圖10。

圖10 坐標系的轉換Fig 10 Conversion of coordinate system
計算出a,b,c三條線段的起始端點分別為:(130.12,105.36,536.77),(136.24,12.17,505.16);(136.45,13.05,508.90),(220.13,32.13,463.81);(138.44,7.31,496.12),(184.51,-11.05,588.87)。
如圖11,分別求取三條線段的單位方向向量,取交點M的坐標為(136.45,13.05,508.90)。a,b的方向向量都以M為起點。

圖11 求解立方體質心Fig 11 Calculate centroid of cube
計算出線段a,b的單位方向向量為(-0.062,0.945,0.321),(0.863,0.197,-0.465)。 此時第三個向量的方向無法確定,可能為c1(0.438,-0.175,0.882) 或c2(-0.438,0.175,-0.882),可以求出兩個可能質心O1,O2,計算O1與三條線段端點的距離可以將其排除。只有O2滿足一個立方體的幾何關系,故該立方體被唯一確定。
5結論
本文研究了相機標定算法,在張正友基于2D平面靶標的標定方法上進行相機多個位置的標定,用原圖像減去背景圖像和形態(tài)學運算方法初步提取出目標,使用Hough直線檢測方法檢測邊界并根據(jù)極線約束和灰度相似性進行匹配,計算出匹配直線的空間三維坐標。利用已知的目標模板數(shù)據(jù),基于幾何關系計算出物體的位姿狀態(tài)。
本文研究的基于機器視覺的檢測方法,基于目標模板數(shù)據(jù),利用簡單的幾何關系計算出目標的位姿狀態(tài),獲得了較好的效果。但在背景復雜、遮擋嚴重的環(huán)境下,檢測效果會下降,影響最終結果的精度,需要進一步研究。
參考文獻:
[1]Tsai R Y.An efficient and accurate camera calibration technique for 3D machine vision[C]∥IEEE Conference on Computer Vision and Pattern Recognition,1986:364-374.
[2]Tsai R Y.A versatile camera calibration technique for high-accu-racy 3D machine vision metrology using off-the-shelf TV cameras and lenses[J].IEEE J Robotics and Automation,1987,3(4):323-344.
[3]Zhang Z.A flexible new technique for camera calibration[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,2000,22(11):1300-1331.
[4]Ma S De.A self-calibration technique for active vision system-s[J].IEEE Transaction on Robotics and Automation,1996,12(1):111-120.
[5]Hartley R I.Self-calibration of stationary cameras[J].International Journal of Computer Vision,1997,22(1):5-23.
[6]Jiang Guangwen,Chao Zhichao,Fu Sihua,et al.High-accurate camera calibration technique based on controllable rotation[J].Acta Optica Sinica,2010,30(5):1308-1314.
[7]Maybank S J,Faugeras O D.A theory of self-calibration of a mo-ving camera[J].International J Computer Vision,1992,8(2):123-151.
[8]Faugeras O D,Luong Q T,Maybank S J.Camera self-calibration:Theory and experiments[J].Computer and Information Science,1992,588(1):321-334.
[9]楊博文,張艷麗,葉南,等.面向大視場視覺測量的攝像機標定技術[J].光學學報,2012,9(32):0915001—1-0915001—7.
[10] 劉松濤,王學偉,周曉東,等.基于傳感器參數(shù)和目標輪廓中心的自動配準算法研究[J].光學精密工程,2005,13(3):354-363.
[11] 陳智君,林玉池,趙美蓉,等.萬能工具顯微鏡目鏡視場字符識別的預處理算法[J].光電子·激光,2005,16 (1):80-82.
[12] 張艷玲,劉桂雄,曹東,等.數(shù)學形態(tài)學的基本算法及在圖像預處理中應用[J].科學技術與工程,2007,7(3):356-359.
[13] 林玉池,崔彥平,黃銀國.復雜背景下邊緣提取與目標識別方法研究[J].光學精密工程,2006,14(3):509-514.
[14] 許維星.復雜背景下的目標識別及高精度定位技術研究[D].西安:中國科學院研究生院(西安光學精密機械研究所),2011.
[15] 張廣軍.機器視覺[M].北京:科學出版社,2005:109-112.
Application of machine vision in detection of objects pose
LI Bin, LUO Biao
(School of Automation Science and Electrical Engineering,Beihang University,Beijing 100191,China)
Abstract:Application of machine vision technology in detection of objects pose is researched.Set up industrial cameras in two different directions and take pictures of target objectsthen complete camera calibration using Zhang Zhengyou’s method based on 2D planar target.Complete preliminary target detection by subtracting background image from the target image and Morphological operation,so the target area is determined.Then use Hough transform to detect line edge,Epipolar constraint,gray similarity and line constraint is adopted to match the lines and their endpoints.Calculate three-dimensional(3D)space coordinates and unit direction vector of endpoint of each straight lines.Since the target template is known,the geometry parameter is available,using simple geometric relationship to calculate pose data of target.
Key words:machine vision; camera calibration; Hough transform; corner points detection and matching; geometric template
DOI:10.13873/J.1000—9787(2016)02—0150—04
收稿日期:2015—06—11
中圖分類號:TP 391
文獻標識碼:A
文章編號:1000—9787(2016)02—0150—04
作者簡介:
李彬(1989-),男,山東淄博人,碩士研究生,主要研究方向為機器視覺、嵌入式控制。