蔡 勇,秦現(xiàn)生,張雪峰,張培培,單 寧
CAI Yong1,QIN Xian-sheng1,ZHANG Xue-feng1,ZHANG Pei-pei1,SHAN Ning2
(1. 西北工業(yè)大學(xué) 機(jī)電學(xué)院,西安 710072;2. 武警工程學(xué)院 裝備運(yùn)輸系,西安 710086)
全貌立體視覺(jué)測(cè)量是近幾十年發(fā)展起來(lái)的非接觸測(cè)量技術(shù),已廣泛應(yīng)用于國(guó)防、工業(yè)、建筑等工程實(shí)踐中[1]。在三維視覺(jué)測(cè)量過(guò)程中,由于攝像機(jī)視場(chǎng)限制或被測(cè)物內(nèi)凹導(dǎo)致的自遮擋等多種因素,通常需要從多角度或多攝像機(jī)分別采集被測(cè)物表面信息。所獲與掃描儀各實(shí)時(shí)位姿相關(guān)的三維點(diǎn)集合為多視點(diǎn)云,最終需歸一到世界坐標(biāo)系下,稱多視點(diǎn)云對(duì)齊(registration)[2]。
目前有多種采集多視點(diǎn)云與對(duì)齊的方法。已有如雙經(jīng)緯儀法[3],利用兩臺(tái)經(jīng)緯儀觀測(cè)被測(cè)物表面或鄰近的控制點(diǎn)空間坐標(biāo),求得攝像機(jī)在不同測(cè)量位置坐標(biāo)系到雙經(jīng)緯儀所在世界坐標(biāo)系的轉(zhuǎn)換對(duì)齊。類似的,通過(guò)激光跟蹤儀[4]或激光設(shè)備[5]確定空間標(biāo)記點(diǎn)坐標(biāo),精度更高。求解已知坐標(biāo)的空間特征點(diǎn)在各圖像中不同位置來(lái)對(duì)齊局部點(diǎn)云,或跟蹤局部攝像機(jī)坐標(biāo)系原點(diǎn)在世界坐標(biāo)系中的坐標(biāo)值,隨時(shí)向世界坐標(biāo)系轉(zhuǎn)換局部攝像機(jī)所獲數(shù)據(jù)。這些方法轉(zhuǎn)換次數(shù)少,使效率與精度都較高,但都是屬于點(diǎn)測(cè)量,匹配點(diǎn)冗余少,且獲得全局點(diǎn)的真實(shí)坐標(biāo)較為困難,拍攝角度難以控制,易遮擋。Besl提出的ICP(Iterative Closed Point)[6]及其改進(jìn)算法[7]是目前一種基本對(duì)齊算法。該算法對(duì)起始狀態(tài)要求很嚴(yán),否則易產(chǎn)生誤匹配而陷入局部極小值,每次迭代都需計(jì)算目標(biāo)點(diǎn)集內(nèi)每個(gè)點(diǎn)在參考點(diǎn)集內(nèi)對(duì)應(yīng)點(diǎn),導(dǎo)致計(jì)算量很大。此外,可以借助外部移動(dòng)或轉(zhuǎn)動(dòng)設(shè)備引導(dǎo)掃描,如根據(jù)精密旋轉(zhuǎn)臺(tái)或移動(dòng)平臺(tái)[8]運(yùn)動(dòng)對(duì)齊各局部數(shù)據(jù),由于移動(dòng)機(jī)構(gòu)精度高,依預(yù)定攝像機(jī)拍攝視角規(guī)劃移動(dòng)路徑,令全貌測(cè)量數(shù)據(jù)完整、冗余量可控。其不足是定制的運(yùn)動(dòng)設(shè)備會(huì)使系統(tǒng)柔性和適應(yīng)性下降,制造成本高昂。
為了提高系統(tǒng)移動(dòng)的柔性和對(duì)齊效率,提出基于通用型關(guān)節(jié)機(jī)器人引導(dǎo)掃描儀的全貌測(cè)量新方法。根據(jù)已規(guī)劃掃描路徑,利用運(yùn)動(dòng)學(xué)逆解求出各關(guān)節(jié)轉(zhuǎn)角范圍函數(shù)。通過(guò)兩次移動(dòng)機(jī)器人所獲圖像與末端執(zhí)行器位移信息,導(dǎo)出掃描儀下三維點(diǎn)云數(shù)據(jù)向世界坐標(biāo)系的轉(zhuǎn)換矩陣。并按圖像重疊比例給出掃描路徑中拍攝點(diǎn)的各關(guān)節(jié)位姿,指導(dǎo)掃描器拍攝并進(jìn)行數(shù)據(jù)對(duì)齊。
設(shè)計(jì)選用全轉(zhuǎn)動(dòng)關(guān)節(jié)型ABB-IBR140-M2000型機(jī)器人,具有6個(gè)自由度,所有6關(guān)節(jié)均為旋轉(zhuǎn)關(guān)節(jié)。其使用前置D-H方法對(duì)機(jī)器人進(jìn)行運(yùn)動(dòng)學(xué)描述,各連桿坐標(biāo)系位置如圖1所示。
圖1 六關(guān)節(jié)機(jī)器人各關(guān)節(jié)前置D-H方法參數(shù)
各旋轉(zhuǎn)關(guān)節(jié)Ji(i=1,2,…,6)基本參數(shù)的范圍如表1所示。
表1 前置D-H坐標(biāo)系6關(guān)節(jié)機(jī)器人相鄰連桿參數(shù)
基于前置D-H方法第i個(gè)關(guān)節(jié)與相鄰的第i+1個(gè)關(guān)節(jié)坐標(biāo)轉(zhuǎn)換矩陣Mii+1為:
通過(guò)各個(gè)關(guān)節(jié)的依次轉(zhuǎn)換,最終總轉(zhuǎn)換矩陣為各關(guān)節(jié)轉(zhuǎn)換矩陣的連乘:
根據(jù)Pieper準(zhǔn)則,此類型機(jī)器人的后3個(gè)軸線交于共同的一點(diǎn),可以得到其運(yùn)動(dòng)學(xué)逆問(wèn)題(IKP)的解析封閉解。機(jī)器人構(gòu)件d4的末端點(diǎn)即J4,J5,J6共有交點(diǎn)Oe作為機(jī)器人末端位置點(diǎn)。機(jī)器人基礎(chǔ)坐標(biāo)系在第一、二軸的交點(diǎn)Ow作為掃描系統(tǒng)世界坐標(biāo)系原點(diǎn)。根據(jù)末端位置XL(xL,yL,zL)求解轉(zhuǎn)換矩陣M16,就可得到各關(guān)節(jié)轉(zhuǎn)角范圍函數(shù)。最終可解得各關(guān)節(jié)運(yùn)動(dòng)學(xué)逆問(wèn)題結(jié)果。
對(duì)空間所占三維尺寸接近的被測(cè)物進(jìn)行全貌測(cè)量時(shí),可以利用掃描儀對(duì)其進(jìn)行環(huán)形圍繞掃描。根據(jù)被測(cè)物與機(jī)器人基座距離,確定螺旋線參數(shù)方程為:
依據(jù)此參數(shù)化軌跡參數(shù)方程,機(jī)器人運(yùn)動(dòng)學(xué)逆解軌跡規(guī)劃運(yùn)動(dòng)范圍仿真如圖2所示。
圖2 依規(guī)劃軌跡掃描關(guān)節(jié)機(jī)器人逆解結(jié)果
掃描儀的三維數(shù)據(jù)獲得原理是主動(dòng)結(jié)構(gòu)光測(cè)量方式之一,由投影儀投出正弦光柵圖案,兩個(gè)攝像機(jī)組成的交匯軸雙目視覺(jué)系統(tǒng)拍攝被物體表面形狀調(diào)制而扭曲的光柵圖案,經(jīng)解相算法處理圖像,獲得被測(cè)物表面三維點(diǎn)云[9]。掃描儀拍攝掃描三維點(diǎn)云中某點(diǎn)數(shù)據(jù)XL(xL,yL,zL)是其攝像機(jī)坐標(biāo)系下數(shù)據(jù),需要轉(zhuǎn)換到機(jī)器人基座所在的世界坐標(biāo)系下的Xw(xw,yw,zw) 。若求解出掃描儀坐標(biāo)系下點(diǎn)XL與機(jī)器人末端坐標(biāo)系下點(diǎn)Xw之間的旋轉(zhuǎn)矩陣R和平移向量t,就可以通過(guò)R與t組合的齊次轉(zhuǎn)換矩陣X將多個(gè)不同位置的掃描點(diǎn)云數(shù)據(jù)對(duì)齊到世界坐標(biāo)系下。下面分別求解R與t。
操縱機(jī)器人,從兩個(gè)不同的空間點(diǎn)掃描被測(cè)物,可獲得某特征點(diǎn)兩個(gè)不同的掃描儀坐標(biāo)系下齊次坐標(biāo)Xc1(xc1,yc1,zc1,1)T,Xc2(xc2,yc2,zc2,1)T,通過(guò)標(biāo)定掃描儀中的攝像機(jī),分別獲得掃描儀在兩點(diǎn)之間的外參變化Rc與tc,其組合的4×4齊次轉(zhuǎn)換矩陣C滿足:
同時(shí),末端執(zhí)行器移動(dòng)前后兩點(diǎn)的齊次坐標(biāo)Xd1(xd1,yd1,zd1,1)T,Xd2(xd2,yd2,zd2,1)T則由機(jī)器人控制器讀出并求解其間的實(shí)際旋轉(zhuǎn)Rd和平移向量Td,構(gòu)成了機(jī)器人末端執(zhí)行器4×4齊次移動(dòng)矩陣D。兩點(diǎn)間關(guān)系為:
而掃描儀圖像點(diǎn)中與機(jī)器人之間的點(diǎn)轉(zhuǎn)換關(guān)系為:
Xc1=X.Xd1;Xc2=X.Xd2,其中X為待求的掃描儀到末端執(zhí)行器的齊次轉(zhuǎn)換矩陣。由以上及式(3)-式(4)可以推出:
其中,僅R與t未知,構(gòu)成掃描儀中攝像機(jī)坐標(biāo)系到機(jī)器人末端執(zhí)行器之間的轉(zhuǎn)換矩陣。
實(shí)際求解時(shí),操縱機(jī)器人末端執(zhí)行器移動(dòng)到不同兩點(diǎn)1與2,可得四個(gè)關(guān)系式:
其中的Rc1、tc1、Rc2、tc2分別由兩次移動(dòng)前后的3次攝像機(jī)標(biāo)定所得外參數(shù)求得。Rd1、td1、Rd2、td2則由機(jī)器人移動(dòng)前后控制器給出3點(diǎn)空間位姿參數(shù)求得。求解式(7)、(9)可得R;代入式(8)、(10)求解可得t。只要兩次移動(dòng)的旋轉(zhuǎn)軸互不平行,且不是純平移運(yùn)動(dòng)時(shí),由R與t構(gòu)成的轉(zhuǎn)換矩陣X是唯一確定的。
掃描系統(tǒng)固定在框架內(nèi),安裝于機(jī)器人末端執(zhí)行器上。攝像機(jī)選用Basler-piA2400黑白數(shù)字?jǐn)z像機(jī),分辨率為2448 pixel×2050 pixel,鏡頭焦距12mm,單次光柵掃描范圍在物距為120mm時(shí),測(cè)量范圍為100mm×100mm。理論上的測(cè)量精度可達(dá)到100/2050=0.05mm。操縱機(jī)器人移動(dòng),距離過(guò)大,會(huì)使掃描儀攝像機(jī)的共同視場(chǎng)減小,距離過(guò)小又會(huì)使結(jié)果準(zhǔn)確度下降。兩次移動(dòng)從世界坐標(biāo)點(diǎn)(0.05,-0.09,0.33),到1點(diǎn)(0.15,0.04,0.47)和2點(diǎn)(0.03,0.20,0.27)。
移動(dòng)前后標(biāo)定的三個(gè)外參數(shù)的旋轉(zhuǎn)矩陣和平移向量分別為:
控制器讀出末端執(zhí)行器旋轉(zhuǎn)矩陣與平移向量分別為:
將(7)-(10),代入上述值,求解得到的轉(zhuǎn)換矩陣X為:
考慮精度與效率因素,選擇點(diǎn)云重疊比例為20%。拍攝點(diǎn)旋轉(zhuǎn)每π/4角度進(jìn)行一次拍攝,由掃描儀在各拍攝點(diǎn)所獲圖像求解的點(diǎn)云坐標(biāo)經(jīng)X轉(zhuǎn)換后結(jié)果如表2所示。
單次掃描范圍約為100mm×100mm,對(duì)齊結(jié)果如圖3所示,(1)-(8)為環(huán)繞目標(biāo)掃描的攝像機(jī)的局部點(diǎn)云數(shù)據(jù),(9)為相鄰點(diǎn)云拍攝中介靶標(biāo)定位對(duì)齊后的數(shù)據(jù)。在Imageware軟件中檢查點(diǎn)云對(duì)齊處剔除奇異點(diǎn)后誤差最大為0.086mm。
表2 掃描儀在各拍攝點(diǎn)的空間坐標(biāo)與姿態(tài)
圖3 各角度采集點(diǎn)云數(shù)據(jù)(1)-(8)及相鄰點(diǎn)云(6)與(7)的對(duì)齊結(jié)果(9)
在影響精度的方面,被測(cè)物經(jīng)掃描轉(zhuǎn)換為計(jì)算機(jī)模型的各個(gè)步驟都會(huì)帶入不同程度的誤差。上述最大對(duì)齊誤差即為多種誤差的綜合。經(jīng)分析發(fā)現(xiàn)主要的誤差與可能的修正方式如下:
1)點(diǎn)云獲取誤差:依照掃描儀自身標(biāo)定結(jié)論,其精度指標(biāo)最大不超過(guò)0.03mm。通過(guò)提高內(nèi)部圖像處理算法精度減少誤差,改善掃描結(jié)果。
2)點(diǎn)云對(duì)齊誤差:點(diǎn)云對(duì)齊矩陣X求解時(shí),計(jì)算轉(zhuǎn)換矩陣存在計(jì)算舍入與量化誤差,導(dǎo)致各旋轉(zhuǎn)矩陣R正交性不一致。增加檢驗(yàn)其正交性,并進(jìn)行多次計(jì)算平差,可以減少轉(zhuǎn)換對(duì)齊誤差。
3)機(jī)器人運(yùn)動(dòng)誤差:控制器與末端執(zhí)行器之間需經(jīng)過(guò)多關(guān)節(jié)轉(zhuǎn)換,每次轉(zhuǎn)換存在累積誤差并被逐級(jí)放大。通過(guò)增加初始端關(guān)節(jié)的剛度,并進(jìn)行多次標(biāo)定,尋找出誤差范圍并取均方值,代入機(jī)器人控制器中以補(bǔ)償移動(dòng)誤差。
4)掃描儀攝像機(jī)系統(tǒng)誤差與標(biāo)定誤差:攝像機(jī)系統(tǒng)標(biāo)定一直是難點(diǎn)問(wèn)題,目前標(biāo)定精度較高,一次標(biāo)定在多次掃描中可重復(fù)。若選用更高質(zhì)量光學(xué)鏡頭,可以最大程度降低攝像機(jī)導(dǎo)入誤差。
5)其他誤差:如掃描儀投影的光柵條紋誤差;圖像采集時(shí)的環(huán)境光影響導(dǎo)致圖像邊緣提取誤差;點(diǎn)云后期處理誤差等。需要在操作中各個(gè)環(huán)節(jié)上控制干擾,但同時(shí)也引起了效率的下降。
在效率方面,先使用B方法進(jìn)行比較:參考文獻(xiàn)[8]中部分設(shè)置進(jìn)行掃描。利用定制的環(huán)形平臺(tái)方式。平臺(tái)導(dǎo)軌半徑340mm,調(diào)整安裝座修正掃描儀轉(zhuǎn)動(dòng)半徑至120mm,通過(guò)環(huán)形平臺(tái)精確分度控制點(diǎn)確定掃描儀拍攝位姿,取8點(diǎn)環(huán)繞被測(cè)物掃描采集點(diǎn)云。繼續(xù)使用C方法比較:依被測(cè)物位置,使用標(biāo)尺標(biāo)記8處拍攝點(diǎn),手工將掃描儀放置于各拍攝點(diǎn)采集點(diǎn)云,利用被測(cè)物表面密布標(biāo)記點(diǎn)方式對(duì)齊點(diǎn)云,后期需要修補(bǔ)數(shù)據(jù)中的標(biāo)記點(diǎn)缺失點(diǎn)云。將B方法與C方法結(jié)合本文所提A方法的各步驟耗時(shí)與最終精度如表3所示??梢娫邳c(diǎn)云對(duì)齊精度差別不大的情況下,本文提出方法可減少大量操作時(shí)間。
表3 三種掃描方式的效率比較
提出了參數(shù)化軌跡導(dǎo)引機(jī)器人進(jìn)行多視角全貌掃描新方法。確定關(guān)節(jié)機(jī)器人結(jié)構(gòu)參數(shù),對(duì)于參數(shù)化掃描路徑進(jìn)行了仿真與實(shí)際運(yùn)行,同時(shí)分析了掃描后的點(diǎn)云對(duì)齊原理,導(dǎo)出轉(zhuǎn)換矩陣。在范圍250mm×80mm×80mm被測(cè)物所在空間內(nèi),對(duì)齊精度小于0.086mm。點(diǎn)云數(shù)據(jù)對(duì)齊的實(shí)驗(yàn)結(jié)果表明,方法操作可行,有效提高效率,為點(diǎn)云獲取和對(duì)齊方式提供了新的思路。
[1] 葉聲華,秦樹人.現(xiàn)代測(cè)試計(jì)量技術(shù)及儀器的發(fā)展[J].中國(guó)測(cè)試,2009,35 (02):1-7.
[2] Huber DF,Hebert M. Fully automatic registration of multiple 3D data sets[J].Image and Vision Computing,2003,21(7):637-650.
[3] 張福民,曲興華,葉聲華.大尺寸測(cè)量中多傳感器的融合[J].光學(xué)精密工程,2008,16 (07):1236-1240.
[4] 盧成靜,黃桂平,李廣云.數(shù)字?jǐn)z影測(cè)量用于天線熱變形測(cè)量的精度測(cè)試[J].測(cè)繪通報(bào),2007,(07):163-165.
[5] Mautz Rainer.Overview of Current Indoor Positioning Systems[J].Geodesy and Cartography,2009,35 (1):18-22.
[6] Besl PJ,McKay ND.A method for registration of 3-D shapes[J].IEEE Transactions on pattern analysis and machine intelligence,1992:239-256.
[7] ZinBer T,Schmidt J,Niemann H.A refined ICP algorithm for robust 3-D correspondence estimation[C].proceedings of the International Conference on Image Processing,Barcelona: IEEE,2003.695-698.
[8] 金熠,翟超,邢曉正,等.基于面陣CCD的大視場(chǎng)在線檢測(cè)系統(tǒng)研究[J].計(jì)量學(xué)報(bào),2007,28(04):306-310.
[9] 張啟燦.動(dòng)態(tài)過(guò)程三維面形測(cè)量技術(shù)研究[D].成都:四川大學(xué),2005.