劉子豪,樊留群,張 昱,劉 放
(1. 同濟大學 中德學院,上海 201804;2. 沈陽機床上海研究院,上海 200433)
機器人視覺廣泛應用于工業領域,主要集中在電子行業、半導體行業、航天、測量等行業,并取得了很多成就。目前單目視覺方面已經發展相當成熟,在許多工業生產線上都早已投入實際使用。主要應用有諸如破損檢測、條形碼讀取等。
由于單目視覺的二維局限性,雙目視覺已經逐漸成為機器人視覺的熱點領域。其研究在國外起步較早,麻省理工學院計算機系的研究者們[1]提出了一種基于雙目幀圖像和運動融合的目標深度探測系統,能夠充分利用雙目立體視覺傳感器產生的目標深度信息,對高速運動的目標進行分割,實時性較好[2]。希臘的Sotiris Malassiotis 和Michael G.Strinzis[3]利用已有的模板研究柔性制造生產線上的三維孔的在線監測問題,研究出了機器人的視覺定位系統,達到了要求的精度,實現了較好的在線監測效果[4]。
國內方面,雖然我國機器人技術較于國外起步較晚,但是發展速度較快。王士峰將機器視覺應用到車輪的檢測中,建立了基于機器視覺的車輪圖像處理與分析系統,為機器視覺識別車輪打下了基礎[5]。中國科學院自動化研究所也在對基于高速視覺的機器人打乒乓球、基于視覺的焊縫跟蹤、服務機器人的視覺定位、顯微視覺下的精密裝配等方面的問題進行研究。
以上研究均證明了雙目視覺在機器人視覺應用的可行性,但所使用的雙目攝像機實際上是兩臺單獨單目相機的組合,因此需要進行相機內外參數的設定以及相機標定等精度要求高的準備工作,加大了整個系統開發的難度。本課題通過使用在出廠時就已嚴格標定好的雙目相機作為圖像獲取和處理的工具,大大簡化了這方面的準備工作并保證了采集精度,通過基于顏色的辨識方式,結合對Triclops SDK、PC SDK 的二次開發,以ABB機器人控制軟件Robotstudio 作為后臺程序,實現了從相機到PC,從PC 到機器人互聯的控制系統,并通過研究以公共點為基礎的七參數法,采用標定件的方式實現了相機-機器人坐標系的標定,該標定方法受人為因素影響較小,精度較高,最后通過實驗總結公共點選取的結論,表明了系統的可行性及有效性。
為了要實現機器人對物體的辨識,必然會涉及到相機到機器人坐標系的標定問題,即如何將以雙目相機為基準的物體三維坐標轉化為以機器人基座為基準的坐標變換問題。
如圖1 所示,常用標定方法是通過測量,建立目標坐標系、相機坐標系、機器人基坐標系以及末端執行器坐標系之間的坐標映射關系,直接通過坐標變換計算出目標對象的坐標:,t—工具坐標系;B—機器人基坐標系;C—相機坐標系;T—目標坐標系[6]。
其中相機與目標坐標系的轉換關系可由立體視覺視差原理求得,機器人基坐標系與末端執行器坐標系的轉換關系可通過求由機器人逆解的方式求得。目前大多機器人視覺系統均是通過此種方法來完成標定。
結合本課題的實際情況,采取通過獲取雙目相機與機器人基坐標系之間,已知公共點的坐標數據,反推出坐標映射的關系,來得到目標對象坐標的標定方法。坐標映射關系矩陣由7 個未知參數組成,因此稱為七參數法。

圖1 機器人視覺系統坐標系Fig.1 Coordinate system of robot vision system
對于三維坐標而言,至少需要三個公共已知點,得到在兩個不同空間直角坐標系中的六對三維坐標值,才能推算出這七個未知參數。七參數模型如下:

其中△X、△Y、△Z 為坐標平移量,εx、εy、εz 為坐標軸之間的旋轉角度,又稱歐拉角,m 為尺度因子。在本課題中,將如圖2 左所示的標定件安裝于機器人末端法蘭盤中心,并將標定件中心作為待測公共點。通過開發的系統可分別讀取基于機器人基坐標系和雙目相機坐標系下公共點的坐標值,大大減小了人為的影響因素,為機器人精確定位提供了保障。
在七參數法中,公共點的選取直接影響著坐標轉換的精度。因此為了高效、準確地得到七參數的數據,了解一些公共點的選取技巧是必要的。
圖2 右為公共點分布的平面示意圖。選取其中的一系列點作為公共點,觀察坐標轉換的精度并得出結論如表1 所示。

圖2 標定件與公共點分布示意圖Fig.2 Schematic diagram of calibration piece and common points

表1 不同公共點分布情況下轉換精度測試Tab.1Transformationaccuracytestunderdifferent distributioncircumstancesofcommonpoints
由此可以得出選取公共點的一些結論:①公共點共線時,只有在共線方向上的待測點轉換精度能夠保證,偏離軸線距離越大,則精度越低;②待測點距離公共點越近,則轉換精度越高;③公共點分布均勻,轉換精度較高且穩定。因此選取公共點時應注意要盡量在工作范圍內選取,并且使其均勻分布,避免3 點共線的情況發生。
七參數法中,至少需要3 個公共點才能完成轉換矩陣的運算。如果公共點的數量大于3 個,則需要進行誤差校正。這里采用最小二乘法進行數學優化。引入坐標修正量Vx,Vy,Vz,則有:

則誤差方程為:

方程式可化簡為:

最終求得七參數的解:

如圖3 所示,整個系統完成了對工件的辨識、坐標轉換及機器人的控制任務。主要由3 部分組成,雙目相機負責圖像的采集。PC 端負責對圖像數據處理、工件辨識、計算坐標、傳遞坐標及機器人控制,其中工件辨識通過對顏色的判斷來實現,具有旋轉、平移、尺度等不變性,可靠性較好。機器人端負責對工件進一步的操作。具體連接如圖1 所示,雙目相機與PC 端通過IEEE 1394a 火線進行連接,接口是基于Visual Studio 通過Triclops 開發包用C++語言進行二次開發的。PC 端與機器人通過網線連接,接口是以Robotstudio 為后臺程序,基于Visual Studio 通過PC SDK,用C# 語言進行二次開發的。
圖像獲取設備采用Point Grey 生產的Bumblebee2 雙目相機。在幀率20 FPS 時,分辨率為80 萬像素。通訊方式采用了IEEE 1394a 火線接口,支持即插即用,速度可達400 Mbps。相機的主要優勢在于,一是相機出廠的時候已經進行過了標定,免去研究者前期對雙目相機內、外參數設定的麻煩;二是配有Flycapture 和Triclops兩大開發包,內部含有低通濾波、校正、邊緣檢測、立體匹配、檢驗及亞像素差值等圖像預處理和立體處理的功能,在深度計算上具有良好的精度。
機器人采用ABB IRB 4600D 型機器人,其工作范圍為2.05m,手臂載荷20kg。編程語言為RAPID 語言,類似于高級語言編程,與VB和C 語言相近,配套的Robotstudio 軟件是一款機器人編程與仿真工具,可以用來模擬優化現有的機器人程序,也可以用于遠程維護和故障排除。另外,ABB 公司也為用戶提供了PC SDK 接口,用戶通過Visual Studio 來對PC SDK 進行二次開發,以Robotstudio 作為后臺程序,來達到控制機器人的目的。

圖3 機器人視覺系統Fig.3 Robot vision system

表2 測試結果Tab.2Testresults
開發的系統界面如圖4 所示。Scan 功能完成了對于機器人端的檢索。Input Data 通過相機獲取標識點的坐標系。Obtain Coordinate Data、Obtain and Process Data 及Rectify Coordinate完成了機器人坐標系和相機坐標系的標定工作。7-Parameter-Method 七參數法實現了坐標轉換。Obtain p20 Data 與Write to p20 將最終的轉換結果輸入至機器人程序中(p20 為目標物體在機器人坐標系下的坐標值)。
圖5 為在Robotstudio 下的仿真結果,成功地將p20 點的數據傳輸進了RAPID 程序中。機器人便會按照新的坐標數值來執行動作。
表2、3 為最終實驗的結果。其中前三組坐標為機器人大范圍運動下得到的結果數據,第四到六組坐標為機器人小范圍運動下得到的數據。進一步根據最小二乘法校正誤差,測得最后三組坐標數據,誤差精度可以達到0.1 毫米級。可以滿足實驗要求。

圖4 系統操作界面Fig.4 Operating interface of the system

圖5 測試結果Fig.5 Test results

表3 誤差結果Tab.3 Errorresults
結合之前的實驗,可以總結出以下幾種坐標轉換的結論:①公共點的個數以3-5 個為宜。公共點應均勻的分布在測區內,并且待測點也最好再公共點范圍內[7];②當公共點多于5 個時,可以將公共點中的源坐標逐一代入轉換方程進行計算,將結果與公共點中的目標坐標進行比較,并使誤差較大的點不再作為公共點;③每三個公共點不宜在一條直線上;④待測點離公共點越近,則轉換精度越高。公共點越均勻分布,轉換的精度越能夠保證。同時實驗得出的結論也驗證了本文中關于公共點選取的分析結果。
如今越來越多的機器人被引入進了工業自動化中,機器人視覺也越來越受到重視。目前主流機器人視覺應用均以單目相機為基礎,通過拍照對比等方式,實現諸如條形碼讀取、壞點檢測等功能。然而單目相機具有二維平面的局限性,無法采集三維物體的信息,從而限制了其應用。本課題采用了雙目相機配合機器人,建立雙目相機到PC 端,PC 端到機器人端的2 個接口,利用七參數坐標變換法得以快速準確地得到目標物體坐標,總結了公共點選取的結論,完成了機器人的視覺定位與操控的集成,起到了拋磚引玉的作用。
[1]Fang Y., Masaki I., Horn B. Depth-Based Target Segmentation for Intelligent Vehicles:Fusion of Radar and Binocular Stereo[J].IEEE Trans.on Intelligent transportation Systems,2002,3.
[2]劉曉坤.基于視覺的機械臂控制技術研究[D]. 哈爾濱:哈爾濱工程大學,2013,2.
[3]Sotiris Malassiotis, Michael G.Strintzis. Stereo vision system for precision dimensional inspection of 3D holes[J].Machine Vision and Applications,2003,10.
[4]禹靜.基于機器視覺的懸鏈線上吊鉤的識別研究[D].濟南:濟南大學,2012.
[5]王士峰.基于機器視覺的車輪圖像處理與分析[D].濟南:濟南大學,2011.
[6]宋彩霞.臂-手系統的運動控制及穩定抓取研究[D].湖南:湖南大學,2013.
[7]趙寶鋒,張雪,蔣廷臣.坐標轉換模型及公共點選取對轉換成果精度的影響[J].淮海工學院學報,2009,4.