王英男,戴曙光
(上海理工大學(xué) 光電信息與計(jì)算機(jī)工程學(xué)院,上海 200093)
激光掃描[1]是一種典型的非接觸式三維掃描測(cè)量技術(shù),與原有工業(yè)生產(chǎn)中經(jīng)常使用的接觸式測(cè)量相比,具有測(cè)量精度高、測(cè)量效率高、操作簡(jiǎn)單等優(yōu)點(diǎn),被廣泛應(yīng)用于汽車工業(yè)、模具器件測(cè)量、質(zhì)量檢測(cè)、文物保護(hù)等領(lǐng)域。但是由于激光掃描技術(shù)是利用被測(cè)工件,將激光源所發(fā)射的激光線通過(guò)漫反射反射到固定的圖像傳感器上成像,從而計(jì)算出被測(cè)工件空間坐標(biāo),因此,易受到被測(cè)工件表面顏色、粗糙度、外形等因素的影響。為解決此問(wèn)題,在實(shí)際應(yīng)用中需要對(duì)被測(cè)工件的某些特殊部分單獨(dú)以適宜姿態(tài)進(jìn)行掃描,而后通過(guò)坐標(biāo)轉(zhuǎn)換將兩片點(diǎn)云統(tǒng)一到同一坐標(biāo)系下完成點(diǎn)云拼接得到完整的掃描結(jié)果。
各坐標(biāo)系之間的坐標(biāo)轉(zhuǎn)換主要有三參數(shù),四元數(shù),七參數(shù)3 種方法,其中三參數(shù)法可以視為是七參數(shù)方法的一種特例。
七參數(shù)法采用布爾莎模型[2]進(jìn)行求解,該模型需要求得3 個(gè)平移量Δx,Δy,Δz,3 個(gè)旋轉(zhuǎn)量α,β,γ 和1個(gè)尺度參數(shù)變化K 共7 個(gè)參數(shù),其轉(zhuǎn)換公式[3]如下
從而可得
其中,Δx,Δy,Δz 是3 個(gè)平移參數(shù);α、β、γ 是3 個(gè)旋轉(zhuǎn)參數(shù);K 是尺度參數(shù);x、y、z 是轉(zhuǎn)換前坐標(biāo);X、Y、Z 為轉(zhuǎn)換后所得坐標(biāo)。
由式(6)可知,如果7 個(gè)參數(shù)已知,可用七參數(shù)法實(shí)現(xiàn)坐標(biāo)轉(zhuǎn)換,然而實(shí)際應(yīng)用7 個(gè)參數(shù)是未知的,求得七參數(shù)需要在同一地區(qū)至少存在3 個(gè)重合點(diǎn),即至少3 個(gè)點(diǎn)在兩個(gè)坐標(biāo)系中的坐標(biāo)均已知,才可通過(guò)最小二乘法擬合來(lái)求?。?],然而此方法計(jì)算復(fù)雜且在旋轉(zhuǎn)角度過(guò)大時(shí)會(huì)有較大誤差,而基于四元數(shù)的坐標(biāo)轉(zhuǎn)換可以有效地彌補(bǔ)這個(gè)問(wèn)題,因此本文使用四元數(shù)方法來(lái)實(shí)現(xiàn)激光器的坐標(biāo)轉(zhuǎn)換。
四元數(shù)于1843 年由哈密頓提出,是一種簡(jiǎn)單的超復(fù)數(shù),由一個(gè)實(shí)數(shù)單位和3 個(gè)虛數(shù)單位構(gòu)成。點(diǎn)云配準(zhǔn)的過(guò)程是將激光在不同站點(diǎn)以不同姿態(tài)所采集的點(diǎn)云統(tǒng)一到同一坐標(biāo)系下的過(guò)程,即其目標(biāo)是為了尋找最小二乘逼近的坐標(biāo)轉(zhuǎn)換矩陣[5],坐標(biāo)轉(zhuǎn)換矩陣可由一個(gè)平移矩陣和一個(gè)旋轉(zhuǎn)矩陣構(gòu)成。單位四元數(shù)法的使用必須滿足兩片點(diǎn)云中具有重疊部分,即兩片點(diǎn)云中有點(diǎn)集A,B 并滿足以下條件[6]:(1)A 中點(diǎn)的個(gè)數(shù)和B 中點(diǎn)的個(gè)數(shù)相等,即兩個(gè)點(diǎn)集具有相同數(shù)量的點(diǎn)NA=NB=n。(2)A 中的每個(gè)點(diǎn)Ai與B 中相同下標(biāo)的點(diǎn)Bi相等,即Ai=Bi。
設(shè)旋轉(zhuǎn)變換向量為單位四元數(shù)qR=[q0q1q2q3]T,其中q0>0,且從而可以求得3×3 的旋轉(zhuǎn)矩陣R(qR)。設(shè)平移向量為qT=[q4q5q6]T,可得到坐標(biāo)變換向量為則求最佳變換向量可轉(zhuǎn)換為求q,使得函數(shù)
最小化。式中矩陣R(qR)為點(diǎn)云旋轉(zhuǎn)矩陣,算法過(guò)程[7]如下:
(1)分別計(jì)算計(jì)算出兩片點(diǎn)云的重心。參考點(diǎn)云重心為
目標(biāo)點(diǎn)云重心為
(2)由點(diǎn)云AB 求得協(xié)方差矩陣為
由協(xié)方差矩陣構(gòu)成的4×4 對(duì)稱矩陣
其中,tr(R(x))為矩陣R(x)的跡;I3為3×3 的單位矩陣
(3)計(jì)算4×4 矩陣Q(R)的特征值與特征向量,其最大特征值對(duì)應(yīng)的特向量即為最佳旋轉(zhuǎn)的單位四元數(shù)[q0q1q2q3]T,則可計(jì)算出旋轉(zhuǎn)矩陣為
(4)計(jì)算平移矩陣為
為驗(yàn)證上述方法的拼接效果,本文通過(guò)計(jì)算機(jī)模擬,使用激光器對(duì)鼠標(biāo)進(jìn)行垂直方向掃描,掃描結(jié)果通過(guò)Matlab 仿真結(jié)果如圖1 和圖2 所示。
圖1 鼠標(biāo)整體掃描初始圖
圖2 鼠標(biāo)左半邊緣掃描圖
如圖1 所示,由于鼠標(biāo)為黑色且左右邊緣形狀不規(guī)則,激光線在垂直照射其邊緣時(shí)反射效果較差,因此在激光器圖像傳感器中無(wú)法成像也無(wú)法取得其空間坐標(biāo)信息,激光器反饋為無(wú)效數(shù)據(jù)(-294.912),因此其顯示為深藍(lán)色,為得到鼠標(biāo)邊緣輪廓數(shù)據(jù),使用激光器以適宜角度,對(duì)其左邊緣進(jìn)行單獨(dú)掃描,結(jié)果如圖2 所示。將圖2 所采集點(diǎn)云與圖1 所采點(diǎn)云進(jìn)行拼接即可得到完整鼠標(biāo)點(diǎn)云,算法流程如圖3 所示。
圖3 點(diǎn)云拼接算法流程圖
圖4 為初始數(shù)據(jù)輸入,經(jīng)過(guò)多次迭代后其輸出結(jié)果如圖5 所示。
圖4 拼接前鼠標(biāo)原始圖
圖5 拼接完成后效果圖
由圖5 與圖1 比較可明顯看出鼠標(biāo)左邊邊緣拼接效果良好,由鼠標(biāo)旁邊的光學(xué)檢測(cè)臺(tái)檢測(cè)孔的重疊狀態(tài)可知此方法具有良好的配準(zhǔn)精度。
隨著激光傳感器在工業(yè)生產(chǎn)中的廣泛應(yīng)用,基于激光掃描的點(diǎn)云配準(zhǔn)技術(shù)倍受業(yè)界關(guān)注。本文提出了一種基于單位四元數(shù)的點(diǎn)云配準(zhǔn)算法,與傳統(tǒng)七參數(shù),三參數(shù)等算法相比,在配準(zhǔn)速度與精度上具有明顯優(yōu)勢(shì),同時(shí)實(shí)驗(yàn)結(jié)果表明,該算法可實(shí)現(xiàn)點(diǎn)云自動(dòng)化識(shí)別與拼接且結(jié)果正確,可以使激光器對(duì)同一物體具有重疊部分的不同部位以不同姿態(tài)進(jìn)行掃描,對(duì)掃描結(jié)果進(jìn)行點(diǎn)云拼接,從而得到被測(cè)物完整的空間掃描信息,大幅提高了激光器在生產(chǎn)中的實(shí)用性。
[1] 劉旭春,丁延輝.三維激光掃描技術(shù)在古建筑保護(hù)中的應(yīng)用[J].測(cè)繪工程,2006(1):48-49.
[2] 王解先,邱楊媛.高程誤差對(duì)七參數(shù)轉(zhuǎn)換的影響[J].大地測(cè)量與地球動(dòng)力學(xué),2007,27(3):266-268.
[3] 李金嶺,劉鸝,喬書波,等.關(guān)于三維直角坐標(biāo)七參數(shù)轉(zhuǎn)換模型求解的討論[J].測(cè)繪科學(xué),2010(4):76-78.
[4] 茹樹青,吉長(zhǎng)東,王宏宇.坐標(biāo)轉(zhuǎn)換中四參數(shù)法與七參數(shù)法精度比較[J].東北水利水電,2006(5):67-68.
[5] 楊帆,李廣云,王力,等.一種基于羅德里格矩陣的最小二乘迭代坐標(biāo)轉(zhuǎn)換方法[J].工程勘察,2010(9):80-84.
[6] 戴靜蘭,陳志楊,葉修梓.ICP 算法在點(diǎn)云配準(zhǔn)中的應(yīng)用[J].中國(guó)圖像圖形學(xué)報(bào),2007,12(3):517-521.
[7] Besl P J,McKay H D.A method for registration of 3-d shapes[J].IEEE Transactions on Pattern Analysis and Machine Intelligence,1992,14(2):239-256.