專利名稱:多視點(diǎn)云精確配準(zhǔn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)視覺測量,屬于計(jì)算機(jī)圖形學(xué)技術(shù)領(lǐng)域,具體的說, 本發(fā)明涉及一種將不同角度、不同位置掃描得到的三維數(shù)據(jù)轉(zhuǎn)換到統(tǒng)一的坐 標(biāo)系中,從而自動重建物體完整的三維模型的方法。
背景技術(shù):
逆向工程中有一個重要的環(huán)節(jié)就是在結(jié)構(gòu)光多視測量下進(jìn)行數(shù)據(jù)拼合。 因?yàn)楫a(chǎn)品的尺寸往往超出了測量裝置的量程,而且在部分區(qū)域,測量探頭不 能觸及產(chǎn)品的反面,所以通常的三維測量系統(tǒng)一次只能得到被測物體的表面 某一方向和某一區(qū)域上的數(shù)據(jù)點(diǎn)。因此,要得到物體完整的形狀信息, 一般 采用多視角,即,從多個角度進(jìn)行檢測。為了得到完整的三維模型,必須將 不同角度、不同位置掃描得到的三維數(shù)據(jù)轉(zhuǎn)換到統(tǒng)一的坐標(biāo)系中,也就是通 常說的點(diǎn)云配準(zhǔn)。
常見的點(diǎn)云配準(zhǔn)方法有基于精密儀器的方法、標(biāo)簽法和點(diǎn)云數(shù)據(jù)的自動 配準(zhǔn)方法?;诰軆x器的方法使用精密的機(jī)械設(shè)備,直接記錄工件或視覺 傳感器在測量過程中的移動和旋轉(zhuǎn)量,該方法配準(zhǔn)精度高,但系統(tǒng)成本高, 測量范圍有限且測量效率較低。在標(biāo)簽法中,在測量階段在被測物體上貼標(biāo) 簽,對數(shù)據(jù)進(jìn)行標(biāo)記, 一般貼在相對較平坦的區(qū)域,根據(jù)不同視角觀察的三 個或三個以上不共線的公共標(biāo)簽點(diǎn)來對數(shù)據(jù)進(jìn)行配準(zhǔn)計(jì)算坐標(biāo)轉(zhuǎn)換定位。而 基于點(diǎn)云數(shù)據(jù)的配準(zhǔn)方法通常采用的是最后一種方法,即點(diǎn)云自動配準(zhǔn)方法。
目前自動配準(zhǔn)方法大致可分為三類迭代配準(zhǔn)算法、基于曲面的配準(zhǔn)算 法以及基于幾何的特征配準(zhǔn)算法。點(diǎn)云自動配準(zhǔn)中應(yīng)用最廣泛的算法是BeslP J, M ckay N, D (A method for registration of 3-d shapes. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1992, 14(2):239-256)提出的迭代最近 點(diǎn)(Iterative Closest Point, ICP)匹配算法,這是一種高層次的基于自由形態(tài)曲面 的配準(zhǔn)方法,首先對對象點(diǎn)集中的每一個點(diǎn)在參考點(diǎn)集中找到一個與之距離 最近的點(diǎn),建立點(diǎn)對點(diǎn)的映射關(guān)系,然后通過最小二乘法計(jì)算最優(yōu)坐標(biāo)變換。但是ICP算法要求在兩個匹配點(diǎn)集中,其中一個點(diǎn)集是另外一個點(diǎn)集的子集,
而且兩個匹配點(diǎn)集之間的初始位置不能相差太大;否則,ICP算法的收斂方向 是不確定的,而匹配結(jié)果也不可靠,魯棒性較差。而且,由于每次迭代都需 要計(jì)算兩個點(diǎn)集中的最近點(diǎn),計(jì)算效率不高。因此國內(nèi)外許多研究者都對ICP 算法進(jìn)行了不斷的完善和補(bǔ)充。Chen Y, Medioni G (Object modeling by registration of multiple range images. Image and Vision Computing, 1992, 10(3):145-155)以點(diǎn)沿法矢量的方向到另外一個面的距離替換了點(diǎn)到點(diǎn)的距 離。提高了 #青度,Y旦是效率較低。Soon-Yong Park, Murali Subbarao (An Accurate and fast Point-to-Plane Registration Technique . Pattern Recognition Letters, 2003: 24: 2967-2976)提出了收縮投影點(diǎn)(Contractive-projection-point)搜索最近點(diǎn)的 配準(zhǔn)方法,提高了計(jì)算效率。戴靜蘭、陳志楊、葉修梓(ICP算法在點(diǎn)云配準(zhǔn) 中的應(yīng)用,中國圖象圖形學(xué)報(bào),2007, 12(3):517-521)采用主方向貼合法實(shí)現(xiàn) 初始配準(zhǔn)的基礎(chǔ)上,使用曲率特征點(diǎn)提高了ICP算法的計(jì)算效率,但是主方向 判斷上還需要手動設(shè)置系數(shù),且對于對稱物體適用性不好。
由于ICP算法對點(diǎn)云相對初始位置要求較高,不能相差太大,不然,ICP 的收斂方向是不確定的,甚至導(dǎo)致局部最優(yōu)解。這樣在無法預(yù)知點(diǎn)云之間的 初始關(guān)系的時(shí)候,ICP算法的有效性就不能得到保證。這時(shí)基于曲面的配準(zhǔn)算 法和基于幾何的特征配準(zhǔn)算法就有了其優(yōu)勢。這兩種方法配準(zhǔn)效率較高,并 且對于例如局部重疊的點(diǎn)云數(shù)據(jù),適用性較好,對點(diǎn)云之間的初始位置要求 不高,但是其精度較差。
對此,國內(nèi)外的研究者也提出了一些相應(yīng)的算法。Barequet G, Sharir M (Partial surface matching by using directed foot Prints. Computational Geometry: Theory and Applications, 1999, 12(1-2):45-62)在幾何哈希技術(shù)基礎(chǔ)上提出的投 票匹配機(jī)制算法,利用附加在特征點(diǎn)上法向量作為有向腳標(biāo)進(jìn)行局部曲面配 準(zhǔn),配準(zhǔn)過程簡單快速,但精確度較差。
Helmut Alt, Peter Brass, Michael Godau, Christian knauer & Carola Wenk (Computing the Hausdorff distance of geometric Patterns and shapes. Technical Report B 01-07, Freie University Berlin, Fachbereich Mathematik und informatik, November 2001)研究了基于Hausdorff5巨離和Frechet距離的幾何結(jié)構(gòu)形狀匹配 算法,該算法既可以用于點(diǎn)集也可用于線^險(xiǎn)集數(shù)據(jù)的匹配,對解決噪音點(diǎn)的 干擾和局部遮擋問題有明顯優(yōu)勢??偟膩碚f,基于曲面的配準(zhǔn)算法和基于幾何特征的配準(zhǔn)算法配準(zhǔn)效率較 高,既可適用于自由曲面整體匹配,又適用于自由曲面部分匹配,應(yīng)用范圍
廣,但算法的配準(zhǔn)精度不高;而基于ICP匹配算法的實(shí)現(xiàn)比較簡單,而且在
兩個匹配模型的相對初始位置比較理想的條件下,能夠保證得到較高精度的 匹配結(jié)果。因而,目前一般采用從粗到精配準(zhǔn)思路,即,先采取基于幾何特 征的配準(zhǔn)算法進(jìn)行預(yù)配準(zhǔn),然后用精確配準(zhǔn)來使點(diǎn)云配準(zhǔn)的誤差達(dá)到最小。
發(fā)明內(nèi)容
本發(fā)明的目的是克服現(xiàn)有技術(shù)的不足,提供一種自動多視點(diǎn)云精確配準(zhǔn) 方法,該方法具有計(jì)算速度快、配準(zhǔn)精度高的特點(diǎn),能夠?qū)崿F(xiàn)良好的配準(zhǔn)效果。
根據(jù)本發(fā)明的一方面,提供一種多視點(diǎn)云精確配準(zhǔn)方法,該方法包括以
下步驟從待配準(zhǔn)的兩塊全局點(diǎn)云分別選取彼此大致重疊的一塊點(diǎn)云作為目 標(biāo)點(diǎn)云和參考點(diǎn)云,使用主方向貼合法實(shí)現(xiàn)目標(biāo)點(diǎn)云和參考點(diǎn)云的預(yù)配準(zhǔn); 使用主方向測試法來判定并實(shí)現(xiàn)目標(biāo)點(diǎn)云和參考點(diǎn)云的預(yù)配準(zhǔn)主方向的一 致;分別求取目標(biāo)點(diǎn)云和參考點(diǎn)云中各點(diǎn)的曲率,才艮據(jù)曲率相似分別得到特 征匹配點(diǎn)對尸。、g。;利用特征匹配點(diǎn)對/V g。, #_用迭代最近點(diǎn)匹配算法實(shí) 現(xiàn)目標(biāo)點(diǎn)云和參考點(diǎn)云的精確配準(zhǔn);完成所述兩塊全局點(diǎn)云的配準(zhǔn),其中, 使用主方向測試法進(jìn)行判定的步驟包括通過主元分析法提取預(yù)配準(zhǔn)后的目 標(biāo)點(diǎn)云和參考點(diǎn)云在各自坐標(biāo)系下的主方向;分別判斷預(yù)配準(zhǔn)后的目標(biāo)點(diǎn)云
和參考點(diǎn)云在各自坐標(biāo)系下的主方向在全局坐標(biāo)系下i、 y、 Z軸的分量方向
是否一致;如果不一致,則反轉(zhuǎn)目標(biāo)點(diǎn)云的坐標(biāo)系的相應(yīng)軸,實(shí)現(xiàn)目標(biāo)點(diǎn)云 和參考點(diǎn)云的預(yù)配準(zhǔn)主方向的一致。
通過結(jié)合附圖,從下面的實(shí)施例的描述中,本發(fā)明這些和/或其它方面及 優(yōu)點(diǎn)將會變得清楚,并且更易于理解,其中
圖1是根據(jù)本發(fā)明實(shí)施例的多視點(diǎn)云精確配準(zhǔn)方法的流程圖; 圖2是根據(jù)本發(fā)明實(shí)施例的工件預(yù)配準(zhǔn)的效果圖; 圖3是#4居本發(fā)明實(shí)施例的頭像;漠型配準(zhǔn)的效果圖。
具體實(shí)施方式
以下,參照附圖來詳細(xì)i兌明本發(fā)明的實(shí)施例。
圖1是根據(jù)本發(fā)明實(shí)施例的多視點(diǎn)云精確配準(zhǔn)方法的流程圖。
參照圖1,在步驟101,讀取待配準(zhǔn)的兩塊全局點(diǎn)云M和7V,從點(diǎn)云M 和iV中分別選取彼此大致重疊的一塊點(diǎn)云作為目標(biāo)點(diǎn)云i5 (Np個點(diǎn))和參考點(diǎn) 云2(Nq個點(diǎn))。z使用主方向貼合法實(shí)現(xiàn)點(diǎn)云的預(yù)配準(zhǔn), -使兩個點(diǎn)云統(tǒng)一到主 元坐標(biāo)系(即,下文所述的主軸坐標(biāo)系)下。
ICP算法要求待配準(zhǔn)點(diǎn)云的相對初始位置不能相差太大,否則,ICP算 法的收斂方向是不確定的,這必將影響到算法的精確度和收斂速度,甚至還 有可能陷入局部最優(yōu)解,得到的配準(zhǔn)結(jié)果也是不可靠的。因而需要對點(diǎn)云進(jìn) 行預(yù)配準(zhǔn),來縮小點(diǎn)云之間的旋轉(zhuǎn)和平移一睹位。
主方向貼合預(yù)配準(zhǔn)的主要原理是對點(diǎn)云應(yīng)用主元分析法提取目標(biāo)點(diǎn)云尸 和參考點(diǎn)云g的協(xié)方差矩陣的特征向量作為目標(biāo)點(diǎn)云P的主方向和參考點(diǎn)云 2的主方向。從幾何觀點(diǎn)來看,主元分析的實(shí)質(zhì)就是將原坐標(biāo)系進(jìn)行平移和 旋轉(zhuǎn)變換,使得新坐標(biāo)的原點(diǎn)與數(shù)據(jù)樣本群的重心重合。接著,對于目標(biāo)點(diǎn) 云尸和參考點(diǎn)云g,可分別建立一個以點(diǎn)云重心為原點(diǎn)、點(diǎn)云主方向以及與
主方向垂直的兩個次方向?yàn)樽鴺?biāo)軸的主軸坐才示系(也it是i兌,建立一個以目標(biāo) 點(diǎn)云尸點(diǎn)云重心為原點(diǎn)、目才示點(diǎn)云尸的主方向以及與該主方向垂直的兩個次 方向?yàn)樽鴺?biāo)軸的主軸坐標(biāo)系,并且建立一個以參考點(diǎn)云g重心為原點(diǎn)、參考 點(diǎn)云^的主方向以及與主方向垂直的兩個次方向?yàn)樽鴺?biāo)軸的主軸坐標(biāo)系)。然 后,將目標(biāo)點(diǎn)云P和參考點(diǎn)云2的原樣本數(shù)據(jù)反投影到各自的主軸坐標(biāo)系下。 接下來,計(jì)算這兩個主軸坐標(biāo)系的原點(diǎn)之間的平移矩陣作為所述兩個主軸坐 標(biāo)系之間的平移矩陣,通過平移使得所述兩個主軸坐標(biāo)系統(tǒng)一為一個主軸坐
標(biāo)系,從而使得目標(biāo)點(diǎn)云尸和參考點(diǎn)云2統(tǒng)一到同一主軸坐標(biāo)系下,由此可 以實(shí)現(xiàn)點(diǎn)云預(yù)配準(zhǔn),達(dá)到縮小點(diǎn)云之間錯位的目的。 主方向貼合預(yù)配準(zhǔn)的可包括以下步驟
(1) 計(jì)算目標(biāo)點(diǎn)云尸和參考點(diǎn)云0的協(xié)方差矩陣;
(2) 利用奇異值分解分別求出目標(biāo)點(diǎn)云P和參考點(diǎn)云g的協(xié)方差矩陣的特 征值和特征向量,把特征值按降序排列,分別選擇目標(biāo)點(diǎn)云尸和參考點(diǎn)云g 對應(yīng)的前3個特征向量h、 h、 h和W、 f/2、仏作為主元旋轉(zhuǎn)向量(主方向), 建立旋轉(zhuǎn)矩陣i^和(3) 利用旋轉(zhuǎn)矩陣A和i 2分別將目標(biāo)點(diǎn)云i5和參考點(diǎn)云g轉(zhuǎn)換到各自主 元空間(主軸坐標(biāo)系)內(nèi),生成新的點(diǎn)云F和g;
(4) 計(jì)算兩片點(diǎn)云尸'和g'之間的平移矩陣r =『e-『P(『e、『p為主軸坐 標(biāo)系原點(diǎn)),重合兩片點(diǎn)云尸'和g的重心(使得目標(biāo)點(diǎn)云p和參考點(diǎn)云2統(tǒng)一 到同一主軸坐標(biāo)系下),得到最后需要的預(yù)配準(zhǔn)點(diǎn)集尸=尸,2 = g + r。
在步驟102,采用主方向測試法,判定并實(shí)現(xiàn)目標(biāo)點(diǎn)云P和參考點(diǎn)云g 預(yù)配準(zhǔn)主方向的一致。
由于點(diǎn)云的主方向存在正負(fù)兩個方向,有可能出現(xiàn)預(yù)配準(zhǔn)后點(diǎn)云的主方 向正好相反的情況。本發(fā)明提供了一種新的點(diǎn)云主方向測試法。在該點(diǎn)云主 方向測試法中,通過主元分析(PCA)法提取預(yù)配準(zhǔn)后的兩塊點(diǎn)云戶和2在各 自坐標(biāo)系下的主方向,分別判斷預(yù)配準(zhǔn)后的兩塊點(diǎn)云尸和g在各自坐標(biāo)系下 的主方向在全局坐標(biāo)系下Z、 F、 Z軸的分量方向是否一致;如果不一致,則 反轉(zhuǎn)目標(biāo)點(diǎn)云p的坐標(biāo)系的相應(yīng)軸,實(shí)現(xiàn)點(diǎn)云配準(zhǔn)主方向的一致。
具體實(shí)現(xiàn)方法如下
(1) 對預(yù)配準(zhǔn)好的點(diǎn)云集i5、 先求出此時(shí)兩個點(diǎn)云新的坐標(biāo)系原點(diǎn)fTP 和『e,即數(shù)據(jù)樣本群的重心;
(2) 利用用主元分析法分別計(jì)算出它們新的點(diǎn)云主方向K、 t/;
(3) 在全局坐標(biāo)系下求出新的點(diǎn)云主方向與新的坐標(biāo)系原點(diǎn)的矢量差,即 為點(diǎn)云在各自坐標(biāo)系下的點(diǎn)云主方向
<formula>formula see original document page 8</formula>
(4) 在全局坐標(biāo)系下,分別判斷預(yù)配準(zhǔn)后的兩塊點(diǎn)云尸和Q在各自坐標(biāo)系 下的主方向K'和t/'在X、 F、 Z軸上的分量方向是否一致。如果KV' W<0,
則反轉(zhuǎn)點(diǎn)云集尸坐標(biāo)系的Z軸;同理,如果PV.LVO,則反轉(zhuǎn)點(diǎn)云集P坐 標(biāo)系的F軸;如果Kz'■〖7Z'<0,則反轉(zhuǎn)點(diǎn)云集尸坐標(biāo)系的Z軸。
在步驟103,分別求取目標(biāo)點(diǎn)云P和參考點(diǎn)云g中各點(diǎn)的曲率,根據(jù)曲
率相似分別得到特征匹配點(diǎn)對/V "。
本發(fā)明采用點(diǎn)的主曲率作為匹配特征,曲率是反映曲面性質(zhì)的重要特征, 曲面上任意一點(diǎn),其法曲率取最大值和最小值的方向稱為曲面在該點(diǎn)的主方 向,相應(yīng)的法曲率稱為曲面在該點(diǎn)的主曲率,i殳&、 ^為曲面上一點(diǎn)的兩個 主曲率,則它們的乘積V^稱為曲面在這一點(diǎn)的高斯曲率,通常以K表示。它們的平均值垂(《+^)稱為曲面在這一點(diǎn)的平均曲率,通常以H表示。
本發(fā)明采用穩(wěn)定性較好的拋物面擬合法估算數(shù)據(jù)點(diǎn)的平均曲率。首先應(yīng) 用三維柵格法對目標(biāo)點(diǎn)云尸和參考點(diǎn)云g進(jìn)行空間劃分,確定每個數(shù)據(jù)點(diǎn)的
K鄰域,提高數(shù)據(jù)點(diǎn)的最近K鄰域的搜索速度。W Sun, C Bradly, Y F Zhang, H T Loh (Cloud data modeling employing a unified, on-redundant triangular mesh. Computer-Aided Design,2001,33:183-190)進(jìn)行了大量試驗(yàn),證明了鄰域數(shù)據(jù)量 在24-32個點(diǎn)時(shí),即,鄰域數(shù)據(jù)量KeE[24,32],就可以保證擬合拋物面的精 度,過多的數(shù)據(jù)量會加大曲率計(jì)算的計(jì)算量,在本發(fā)明中選取的K為25。然 后對數(shù)據(jù)點(diǎn)A.及其K鄰域進(jìn)行最小二乘拋物面擬合,設(shè)為 z = ox2 +&^ + c/ ,將A.及其K鄰域點(diǎn)的坐標(biāo)代入拋物面方程,得到方程組 <formula>formula see original document page 9</formula>利用Householder變換法求解方程組,得到系數(shù)a》,c,則p,.的平均曲率// 為// = fl + c,《=4ac —Z>2,由平均曲率可以得到主曲率& =H + >///2-《, fc2 = H-V/f2-重復(fù)以上過程直至求出所有點(diǎn)云數(shù)據(jù)的高斯曲率、平均曲 率和主曲率。
然后用主曲率進(jìn)行匹配點(diǎn)對的選取。在匹配點(diǎn)對的選取過程中,如果點(diǎn) 集P中某點(diǎn)的主曲率為零,那么丟棄這一點(diǎn),即,該點(diǎn)不會被加入到匹配點(diǎn)對 集合中。這樣既可以減少計(jì)算時(shí)間,又可以避免一些不正確的匹配點(diǎn)對出現(xiàn), 對算法的速度和準(zhǔn)確性都有改善。然后對點(diǎn)集尸中的每個點(diǎn)A,在點(diǎn)集中尋 找與g曲率相近的點(diǎn)g,,即,兩個點(diǎn)之間的最大和最小主曲率滿足如下的匹配 點(diǎn)對選耳^原則
<formula>formula see original document page 9</formula>這樣就可以得到曲率匹配點(diǎn)對。式中系數(shù)fi和&的選取是影響精度的又一關(guān)鍵問題?!逗汀?2太大會導(dǎo)致匹配點(diǎn)對數(shù)多,雖然能保證配準(zhǔn)精度,但是 增大了計(jì)算量,影響配準(zhǔn)速度;而《和<^設(shè)置太小又不能保證配準(zhǔn)精度。根
據(jù)本發(fā)明,在實(shí)驗(yàn)中取^和^均為0.02左右。
在步驟104,利用特征匹配點(diǎn)對尸。、&,使用一種改進(jìn)的ICP算法來實(shí)現(xiàn) 目標(biāo)點(diǎn)云尸和參考點(diǎn)云g的精確配準(zhǔn)。
本方法在Besl的經(jīng)典ICP算法上做了如下改進(jìn),在^t迭代計(jì)算之前先提取 出了曲率匹配點(diǎn)對,采用了基于曲率特征點(diǎn)的ICP算法來解決ICP算法計(jì)算效 率低的問題。可包括以下步驟
(1) 首先給定尸。與^之間的變換初始值(旋轉(zhuǎn)矩陣i 。設(shè)為單位矩陣,平移
矩陣r。設(shè)為零矩陣),目標(biāo)函數(shù)為Z!l^^《+"-2,1,初始的目標(biāo)函數(shù)閾值 由用戶設(shè)定。 '
(2) 對點(diǎn)云g。中的點(diǎn)構(gòu)建一棵)U/樹,接著對點(diǎn)云尸。中各點(diǎn)在A:-d樹中尋 找點(diǎn)云g。中相對應(yīng)歐式距離最小的點(diǎn)組成特征點(diǎn)對。
(3) 根據(jù)所述特征點(diǎn)對,采用最優(yōu)化解析方法計(jì)算^,r、對點(diǎn)云尸。中的
點(diǎn)進(jìn)行坐標(biāo)變換,使得目標(biāo)函數(shù)最小化,也就是,使得目標(biāo)函數(shù)<formula>formula see original document page 10</formula>首先求取尸。和g。的質(zhì)心分別為『尸o 、『eo ,
那么可得<formula>formula see original document page 10</formula>則目標(biāo)函
數(shù)可以寫成為<formula>formula see original document page 10</formula>通過SVD奇異值分解來求得最佳
,=i
旋轉(zhuǎn)矩陣A。首先計(jì)算3x3矩陣^^Z!《",對//進(jìn)行奇異值分解
如果det(t/P)H,則i^t/J^;如果det(C/W)^-l,則算法失效,這種情況 只有兩個數(shù)據(jù)點(diǎn)集是平面點(diǎn)集或者存在大量噪聲點(diǎn)的時(shí)候出現(xiàn)。而r可以由 『爐fTeo承i + r求得。
(4)
計(jì)算<formula>formula see original document page 10</formula>其中<formula>formula see original document page 10</formula>當(dāng)目標(biāo)函數(shù)誤差d"1 〈f時(shí),則認(rèn)為配準(zhǔn)
精度已經(jīng)達(dá)到要求,迭代終止,若不滿足誤差條件則繼續(xù)迭代。f為設(shè)定的 距離門限(閾值)。在步驟105,完成全局點(diǎn)云M和N的配準(zhǔn)。
才艮據(jù)以上描述,本發(fā)明的核心是主方向貼合法以及主方向測試法來完成 點(diǎn)云的預(yù)配準(zhǔn)。實(shí)際上只要在待配準(zhǔn)的兩塊全局點(diǎn)云中,選取大致重疊的兩 部分點(diǎn)云,就可以利用部分點(diǎn)云預(yù)配準(zhǔn)得到的旋轉(zhuǎn)矩陣和平移矩陣來完成全 局點(diǎn)云的預(yù)配準(zhǔn)。本發(fā)明的步驟101和102就是通過主方向貼合法和主方向 測試法來完成點(diǎn)云預(yù)配準(zhǔn)的過程,在點(diǎn)云預(yù)配準(zhǔn)之后就可以利用步驟104中 的改進(jìn)ICP算法來實(shí)現(xiàn)點(diǎn)云的精確配準(zhǔn)。另外由于ICP算法中計(jì)算代價(jià)最大 的部分是計(jì)算目標(biāo)點(diǎn)云和參考點(diǎn)云之間的對應(yīng)點(diǎn),所以步驟103通過求取曲 率匹配點(diǎn)對達(dá)到了精簡點(diǎn)云,減少計(jì)算代價(jià)的目的,提高了匹配速度,同時(shí) 也減少了錯誤的匹配點(diǎn)對,提高了配準(zhǔn)的可靠性和準(zhǔn)確性。
本發(fā)明與現(xiàn)有技術(shù)相比的優(yōu)點(diǎn)在于
1、 本發(fā)明在精確配準(zhǔn)前采用預(yù)配準(zhǔn),使兩片任意位置的點(diǎn)云統(tǒng)一到主元 坐標(biāo)系下,為精確配準(zhǔn)提供最佳初始位置,解決了 ICP算法做精確配準(zhǔn)時(shí)對 初始位置的要求。同時(shí),由于點(diǎn)云的主方向存在正負(fù)兩個方向,所以有可能 出現(xiàn)預(yù)配準(zhǔn)后點(diǎn)云的主方向正好相反的情況。由此,本發(fā)明提供了一種主方 向測試法來判定并實(shí)現(xiàn)點(diǎn)云預(yù)配準(zhǔn)主方向的一致。
2、 本發(fā)明采用點(diǎn)的主曲率作為匹配特征,與其它的幾何特征相比這種特 征具有平移、旋轉(zhuǎn)和縮放不變性,減少了錯誤的匹配點(diǎn)對,提高了配準(zhǔn)的可 靠性和準(zhǔn)確性。同時(shí),求取曲率時(shí)先采用三維柵格法來對三維點(diǎn)云進(jìn)行空間 劃分,提高數(shù)據(jù)點(diǎn)的最近k鄰域的搜索速度,加快了計(jì)算速度。在ICP算法 做迭代計(jì)算之前先提取出了曲率匹配點(diǎn)對,采用了基于曲率特征點(diǎn)的ICP算 法來解決ICP算法計(jì)算效率低的問題。
圖2是根據(jù)本發(fā)明實(shí)施例的工件預(yù)配準(zhǔn)的效果圖。圖1中的(a)是工件待 配準(zhǔn)的兩塊點(diǎn)云,圖1中的(b)是本發(fā)明采用主方向貼合法對目標(biāo)點(diǎn)云和參考 點(diǎn)云進(jìn)行預(yù)配準(zhǔn)的效果圖,配準(zhǔn)效果很好。
圖3是根據(jù)本發(fā)明實(shí)施例的頭像模型配準(zhǔn)的效果圖。圖3中的(a)是頭像 模型待配準(zhǔn)的兩塊點(diǎn)云;圖3中的(b)是本發(fā)明采用主方向貼合法對目標(biāo)點(diǎn)云 和參考點(diǎn)云進(jìn)行預(yù)配準(zhǔn)的效果圖,出現(xiàn)了預(yù)配準(zhǔn)后點(diǎn)云的主方向正好相反的 情況;而采用主方向測試法能自動糾正主方向的錯誤,如圖3中的(c)所示; 圖中的(d)是對點(diǎn)云進(jìn)行精確配準(zhǔn)后的結(jié)果;圖3中的(e)為頭像模型整體點(diǎn)云 配準(zhǔn)完成圖;圖3中的(f)是頭像模型整體點(diǎn)云配準(zhǔn)完成的渲染圖。如上所述,根據(jù)本發(fā)明的自動多視點(diǎn)云精確配準(zhǔn)方法具有計(jì)算速度快、 配準(zhǔn)精度高的特點(diǎn),能夠?qū)崿F(xiàn)良好的配準(zhǔn)效果。
雖然本發(fā)明是參照其示例性的實(shí)施例被具體描述和顯示的,但是本領(lǐng)域 的普通技術(shù)人員應(yīng)該理解,在不脫離由權(quán)利要求限定的本發(fā)明的精神和范圍 的情況下,可以對其進(jìn)行形式和細(xì)節(jié)的各種改變。
權(quán)利要求
1、一種多視點(diǎn)云精確配準(zhǔn)方法,包括以下步驟從待配準(zhǔn)的兩塊全局點(diǎn)云分別選取彼此大致重疊的一塊點(diǎn)云作為目標(biāo)點(diǎn)云和參考點(diǎn)云,使用主方向貼合法實(shí)現(xiàn)目標(biāo)點(diǎn)云和參考點(diǎn)云的預(yù)配準(zhǔn);使用主方向測試法來判定并實(shí)現(xiàn)目標(biāo)點(diǎn)云和參考點(diǎn)云的預(yù)配準(zhǔn)主方向的一致;分別求取目標(biāo)點(diǎn)云和參考點(diǎn)云中各點(diǎn)的曲率,根據(jù)曲率相似分別得到特征匹配點(diǎn)對P0、Q0;利用特征匹配點(diǎn)對P0、Q0,使用迭代最近點(diǎn)匹配算法實(shí)現(xiàn)目標(biāo)點(diǎn)云和參考點(diǎn)云的精確配準(zhǔn);完成所述兩塊全局點(diǎn)云的配準(zhǔn),其中,使用主方向測試法進(jìn)行判定的步驟包括通過主元分析法提取預(yù)配準(zhǔn)后的目標(biāo)點(diǎn)云和參考點(diǎn)云在各自坐標(biāo)系下的主方向;分別判斷預(yù)配準(zhǔn)后的目標(biāo)點(diǎn)云和參考點(diǎn)云在各自坐標(biāo)系下的主方向在全局坐標(biāo)系下X、Y、Z軸的分量方向是否一致;如果不一致,則反轉(zhuǎn)目標(biāo)點(diǎn)云的坐標(biāo)系的相應(yīng)軸,實(shí)現(xiàn)目標(biāo)點(diǎn)云和參考點(diǎn)云的預(yù)配準(zhǔn)主方向的一致。
2、 根據(jù)權(quán)利要求1所述的多視點(diǎn)云精確配準(zhǔn)方法,其中,使用主方向貼 合法實(shí)現(xiàn)目標(biāo)點(diǎn)云和參考點(diǎn)云的預(yù)配準(zhǔn)的步驟包括應(yīng)用主元分析法,提取目標(biāo)點(diǎn)云和參考點(diǎn)云的協(xié)方差矩陣的特征向量作 為目標(biāo)點(diǎn)云的主方向和參考點(diǎn)云的主方向;建立一個以目標(biāo)點(diǎn)云重心為原點(diǎn)、目標(biāo)點(diǎn)云的主方向以及與該主方向垂 直的兩個次方向?yàn)樽鴺?biāo)軸的主軸坐標(biāo)系,并且建立一個以參考點(diǎn)云重心為原 點(diǎn)、參考點(diǎn)云的主方向以及與該主方向垂直的兩個次方向?yàn)樽鴺?biāo)軸的主軸坐 標(biāo)系;將目標(biāo)點(diǎn)云和參考點(diǎn)云的原樣本數(shù)據(jù)反投影到各自的主軸坐標(biāo)系下; 計(jì)算所述兩個主軸坐標(biāo)系的原點(diǎn)之間的平移矩陣作為所述兩個主軸坐標(biāo) 系之間的平移矩陣;通過平移使得所述兩個主軸坐標(biāo)系統(tǒng)一為一個主軸坐標(biāo)系,使得目標(biāo)點(diǎn)云和參考點(diǎn)云統(tǒng)一到同一主軸坐標(biāo)系下,實(shí)現(xiàn)點(diǎn)云預(yù)配準(zhǔn)。
3、 根據(jù)權(quán)利要求2所述的多視點(diǎn)云精確配準(zhǔn)方法,其中,所述求取曲率并得到特征匹配點(diǎn)對/V "的步驟包括采用三維柵格法對目標(biāo)點(diǎn)云和參考點(diǎn)云進(jìn)行空間劃分,確定每個數(shù)據(jù)點(diǎn) 的鄰域;使用數(shù)據(jù)點(diǎn)的鄰域進(jìn)行局部拋物面擬合,求得數(shù)據(jù)點(diǎn)的主曲率; 根據(jù)主曲率利用曲率匹配進(jìn)行匹配點(diǎn)對尸。、g。的選取。
4、 根據(jù)權(quán)利要求3所述的多視點(diǎn)云精確配準(zhǔn)方法,其中,使用迭代最近 點(diǎn)匹配算法實(shí)現(xiàn)目標(biāo)點(diǎn)云和參考點(diǎn)云的精確配準(zhǔn)的步驟包括給定尸。與g。之間的變換初始值,并給定配準(zhǔn)的目標(biāo)函數(shù); 對g。中的點(diǎn)構(gòu)建l"樹,使用樹加速搜索尸o各點(diǎn)在go各點(diǎn)中的最 近點(diǎn),組成特征點(diǎn)對;根據(jù)所述特征點(diǎn)對,對A中的點(diǎn)進(jìn)行坐標(biāo)變換,使得目標(biāo)函數(shù)最小化; 當(dāng)目標(biāo)函數(shù)誤差小于給定的閾值時(shí),迭代終止; 當(dāng)目標(biāo)函數(shù)誤差不小于給定的閾值時(shí),繼續(xù)迭代。
全文摘要
本發(fā)明提供一種多視點(diǎn)云精確配準(zhǔn)方法,該方法包括以下步驟從待配準(zhǔn)的兩塊全局點(diǎn)云分別選取彼此大致重疊的一塊點(diǎn)云作為目標(biāo)點(diǎn)云和參考點(diǎn)云,使用主方向貼合法實(shí)現(xiàn)目標(biāo)點(diǎn)云和參考點(diǎn)云的預(yù)配準(zhǔn);使用主方向測試法來判定并實(shí)現(xiàn)目標(biāo)點(diǎn)云和參考點(diǎn)云的預(yù)配準(zhǔn)主方向的一致;分別求取目標(biāo)點(diǎn)云和參考點(diǎn)云中各點(diǎn)的曲率,根據(jù)曲率相似分別得到特征匹配點(diǎn)對P<sub>0</sub>、Q<sub>0</sub>;利用特征匹配點(diǎn)對P<sub>0</sub>、Q<sub>0</sub>,使用迭代最近點(diǎn)匹配算法實(shí)現(xiàn)目標(biāo)點(diǎn)云和參考點(diǎn)云的精確配準(zhǔn);完成所述兩塊全局點(diǎn)云的配準(zhǔn)。該方法具有計(jì)算速度快、配準(zhǔn)精度高的特點(diǎn),能夠?qū)崿F(xiàn)良好的配準(zhǔn)效果。
文檔編號G06T7/00GK101645170SQ20091017070
公開日2010年2月10日 申請日期2009年9月3日 優(yōu)先權(quán)日2009年9月3日
發(fā)明者呂乃光, 輝 唐, 婁小平, 韓建棟 申請人:北京信息科技大學(xué)