一種自適應(yīng)的無標(biāo)志點(diǎn)三維點(diǎn)云自動拼接方法
【專利摘要】本發(fā)明屬于三維測量鄰域中的點(diǎn)云數(shù)據(jù)拼接技術(shù),具體為一種自適應(yīng)的無標(biāo)志點(diǎn)三維點(diǎn)云自動拼接方法,本發(fā)明包括幾何特征點(diǎn)的查找,圖像特征點(diǎn)的查找,配準(zhǔn)算法選擇模型的建立,基于RANSAC的幾何特征點(diǎn)匹配,利用RANSAC排除誤匹配圖像特征點(diǎn),利用SVD算法求解旋轉(zhuǎn)平移矩陣RT,最后利用RT矩陣完成兩片點(diǎn)云拼接。該方法因?yàn)槔梦矬w特征點(diǎn)來代替標(biāo)志點(diǎn)進(jìn)行拼接,可用于不能粘貼標(biāo)記點(diǎn)的測量場合;同時依靠對應(yīng)特征點(diǎn)來計算多視點(diǎn)云的變換矩陣,無需依賴點(diǎn)云的初始姿態(tài),且配準(zhǔn)算法選擇模型的建立使系統(tǒng)能自適應(yīng)選擇合適的配準(zhǔn)算法,實(shí)現(xiàn)不同被測物體的穩(wěn)定拼接。
【專利說明】一種自適應(yīng)的無標(biāo)志點(diǎn)三維點(diǎn)云自動拼接方法
[0001] 技術(shù)鄰域
[0002] 本發(fā)明涉及到一種自適應(yīng)的無標(biāo)志點(diǎn)三維點(diǎn)云自動拼接方法,它是三維點(diǎn)云數(shù)據(jù) 處理的一種方法,屬于三維測量領(lǐng)域中的點(diǎn)云數(shù)據(jù)拼接技術(shù)。
【背景技術(shù)】
[0003] 面結(jié)構(gòu)光三維測量技術(shù)(參見文獻(xiàn)1 :李中偉.基于數(shù)字光柵投影的結(jié)構(gòu)光三維 測量技術(shù)與系統(tǒng)研究[D] [D].武漢:華中科技大學(xué),2009)受單次測量范圍的限制,需從不 同方位對被測物進(jìn)行多次測量以獲取完整的幾何模型,其中多視點(diǎn)云自動拼接是關(guān)鍵。
[0004] 為了實(shí)現(xiàn)多視點(diǎn)云自動拼接,常用的方法有以下兩種:(1)基于標(biāo)志點(diǎn)的自動拼 接方法,該方法通過在被測物體表面粘貼人工標(biāo)志點(diǎn)來實(shí)現(xiàn)輔助拼接。其拼接精度較高,但 會破壞被測物體表面的真實(shí)三維數(shù)據(jù),同時前期貼點(diǎn)增加了測量時間,而且無法測量表面 不能標(biāo)記的物體(如珍貴文物,人體),限制了使用范圍。(2)無標(biāo)記點(diǎn)的自動拼接方法。常 見的無標(biāo)記點(diǎn)拼接方法包括迭代點(diǎn)最近點(diǎn)算法(iterative closest point, ICP)、基于幾 何特征的配準(zhǔn)算法和基于紋理的配準(zhǔn)算法。其中,ICP算法對點(diǎn)云初始姿態(tài)的要求很高,無 法對初始位置相差較大的點(diǎn)云進(jìn)行拼接?;趲缀翁卣鞯呐錅?zhǔn)算法只適用于表面幾何形貌 比較復(fù)雜的物體,無法實(shí)現(xiàn)形狀簡單或?qū)ΨQ物體的點(diǎn)云配準(zhǔn)?;诩y理的配準(zhǔn)算法只適用 于表面紋理豐富的物體,在對紋理單一的物體進(jìn)行測量時穩(wěn)定性較差。
[0005] 綜上所述:現(xiàn)有的三維點(diǎn)云自動拼接方法都存在一定的局限性,尚不能滿足實(shí)際 應(yīng)用的要求。因此需要一種有效的穩(wěn)定的點(diǎn)云拼接方法,能夠?qū)崿F(xiàn)源點(diǎn)云和目標(biāo)點(diǎn)云最優(yōu) 配準(zhǔn)。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明提出了一種自適應(yīng)的無標(biāo)志點(diǎn)三維點(diǎn)云自動拼接方法,該方法可自適應(yīng)的 實(shí)現(xiàn)不同物體的無標(biāo)志點(diǎn)三維點(diǎn)云自動拼接,且拼接具有良好的穩(wěn)定性。
[0007] 本發(fā)明提供的一種自適應(yīng)的無標(biāo)志點(diǎn)三維點(diǎn)云自動拼接方法,該方法包括下述步 驟:
[0008] 第1步在源點(diǎn)云和目標(biāo)點(diǎn)云中利用點(diǎn)特征直方圖法查找?guī)缀翁卣鼽c(diǎn);在兩次拍攝 圖片中查找圖像特征點(diǎn);
[0009] 第2步利用查找出的幾何特征點(diǎn)和圖像特征點(diǎn)建立配準(zhǔn)算法選擇模型,計算配準(zhǔn) 算法判斷因子隊(duì)的值,依據(jù)該值自動選擇合適的配準(zhǔn)算法:當(dāng)> 0時,進(jìn)入第3步,當(dāng)比 < 0時,轉(zhuǎn)入第4步,當(dāng)比=0時,提示用戶通過引入標(biāo)志點(diǎn)進(jìn)行點(diǎn)云拼接;
[0010] 所述配準(zhǔn)算法選擇模型為:
【權(quán)利要求】
1. 一種自適應(yīng)的無標(biāo)志點(diǎn)三維點(diǎn)云自動拼接方法,該方法包括下述步驟: 第1步在源點(diǎn)云和目標(biāo)點(diǎn)云中利用點(diǎn)特征直方圖法查找?guī)缀翁卣鼽c(diǎn);在兩次拍攝圖片 中查找圖像特征點(diǎn); 第2步利用查找出的幾何特征點(diǎn)和圖像特征點(diǎn)建立配準(zhǔn)算法選擇模型,計算配準(zhǔn)算法 判斷因子^的值,依據(jù)該值自動選擇合適的配準(zhǔn)算法:當(dāng)Di > O時,進(jìn)入第3步,當(dāng)Di < O 時,轉(zhuǎn)入第4步,當(dāng)= O時,提示用戶通過引入標(biāo)志點(diǎn)進(jìn)行點(diǎn)云拼接; 所述配準(zhǔn)算法選擇模型為:
其中,Pl,P2分別代表兩幅采樣點(diǎn)云中幾何特征點(diǎn)數(shù)目占其采樣點(diǎn)點(diǎn)數(shù)的比例;ηι,η 2分 別代表兩次拍攝圖片中圖像特征點(diǎn)的數(shù)目,η為預(yù)先設(shè)定的圖像特征閾值;p為幾何特征閾 值,W1和W 2是描述兩個對比差值的權(quán)重因子; 第3步對于第1步查找出的幾何特征點(diǎn),利用RANSAC算法進(jìn)行幾何特征點(diǎn)的匹配,得 到每一個查找點(diǎn)對應(yīng)的初匹配點(diǎn)集V,再利用SVD奇異值分解法計算旋轉(zhuǎn)矩陣R和平移矩 陣Τ,然后進(jìn)入第5步; 第4步對于第1步查找出的圖像特征點(diǎn),利用RANSAC算法查找對應(yīng)點(diǎn),再利用SVD奇 異值分解法計算旋轉(zhuǎn)矩陣R和平移矩陣Τ,然后進(jìn)入第5步; 第5步利用旋轉(zhuǎn)矩陣R和平移矩陣T對目標(biāo)點(diǎn)云進(jìn)行旋轉(zhuǎn)平移,完成拼接。
2. 根據(jù)權(quán)利要求1所述自適應(yīng)的無標(biāo)志點(diǎn)三維點(diǎn)云自動拼接方法,其特征在于,所述 第1步中,所述查找?guī)缀翁卣鼽c(diǎn)的過程為: 第1. 1步對拍攝獲取的兩幅多視點(diǎn)云按比例進(jìn)行采樣,計算每個采樣點(diǎn)的法向量;將 采樣點(diǎn)中的每一點(diǎn)視為查詢點(diǎn),并確定查詢點(diǎn)的鄰域,該鄰域內(nèi)的采樣點(diǎn)稱為鄰域點(diǎn); 第1. 2步對于鄰域內(nèi)任意兩點(diǎn)s、t,在其中的一個點(diǎn)上定義一個固定的局部坐標(biāo)系,即 UVW坐標(biāo)系:
Ps,Pt為查詢點(diǎn)Pti鄰域內(nèi)點(diǎn)s、t的空間坐標(biāo),ns,n t為點(diǎn)s、t相應(yīng)的法向量,I |pt-ps| |2 為該兩點(diǎn)的空間距離,d表示該兩點(diǎn)連線方向上的單位向量; 利用式I得到的uvw坐標(biāo)系,兩點(diǎn)之間的位置關(guān)系和法線偏差用一組角度來表示,如式 II:
其中,(¥*1^/11*1〇表示¥、1^/11、1^的點(diǎn)乘,將€[,<^,0的取值范圍分別劃分為13個 子區(qū)間,則總共生成了 b3個區(qū)域,用i表示各區(qū)域的序號,判斷兩點(diǎn)的α,φ,Θ值所處的 區(qū)域,則該區(qū)域的點(diǎn)數(shù)目加一;計算查詢點(diǎn)P q鄰域內(nèi)每對點(diǎn)的α,φ,Θ值,判斷其所在區(qū) 域,統(tǒng)計落在每個區(qū)域的點(diǎn)數(shù)目,生成點(diǎn)Pq的點(diǎn)特征直方圖; 第I. 3步利用所有采樣點(diǎn)的點(diǎn)特征直方圖生成平均特征直方圖u-histogram,利用式 III將每個點(diǎn)的點(diǎn)特征直方圖與u-hiStogram比較獲取相對KL距離;
其中,i表示點(diǎn)特征直方圖區(qū)域的序號,取值為1?b3, pf:表示采樣點(diǎn)的點(diǎn)特征直方圖 的第i個分量,Ui表示平均特征直方圖的第i個分量,計算KL距離的平均值a和標(biāo)準(zhǔn)差〇, 統(tǒng)計KL距離在a± σ外的三維點(diǎn),視為幾何特征點(diǎn)。
3. 根據(jù)權(quán)利要求2所述自適應(yīng)的無標(biāo)志點(diǎn)三維點(diǎn)云自動拼接方法,其特征在于,所述 第1步中,利用SIFT算法查找圖像特征點(diǎn)。
4. 根據(jù)權(quán)利要求1、2或3所述自適應(yīng)的無標(biāo)志點(diǎn)三維點(diǎn)云自動拼接方法,其特征在于, 第3步的具體實(shí)現(xiàn)過程為: 第3. 1步對源點(diǎn)云的幾何特征點(diǎn)進(jìn)行采樣,并使各采樣的幾何特征點(diǎn)相互距離大于預(yù) 設(shè)的最小距離閾值,將采樣后的幾何特征點(diǎn)視為查找點(diǎn)ρτ,τ = 1,2... r,其中r為經(jīng)采樣 后的幾何特征點(diǎn)個數(shù); 第3.2步對于每個查找點(diǎn)ρτ,利用式V在目標(biāo)點(diǎn)云的幾何特征點(diǎn)Q= {qi,q2…qn}中 搜索與該查找點(diǎn)ρτ點(diǎn)特征直方圖相似的點(diǎn)生成初匹配點(diǎn)集V ={q' 2…V iJ,其 中η為目標(biāo)點(diǎn)云中幾何特征點(diǎn)的個數(shù),k為每個查找點(diǎn)初匹配點(diǎn)的個數(shù),生成r個初匹配點(diǎn) 集;
其中i表示點(diǎn)特征直方圖區(qū)域的序號,取值為1?b3, 表示查找點(diǎn)ρτ的點(diǎn)特征直 方圖的第i個分量,表示目標(biāo)點(diǎn)云幾何特征點(diǎn)集Q中第X點(diǎn)的點(diǎn)特征直方圖的第i個分 量,X = 1,2. .. n,Div表示兩點(diǎn)的點(diǎn)特征直方圖差異;將Div與預(yù)先設(shè)定的閾值進(jìn)行比較, 將小于閾值的點(diǎn)視為初匹配點(diǎn)存入初匹配點(diǎn)集V中; 第3. 3步對于所有查找點(diǎn)ρτ,從每個查找點(diǎn)的相應(yīng)點(diǎn)集Q'中隨機(jī)選取一點(diǎn)作為該查 找點(diǎn)的對應(yīng)點(diǎn)qT,利用SVD分解法計算旋轉(zhuǎn)矩陣R和平移矩陣Τ,再根據(jù)式VI計算旋轉(zhuǎn)平 移后的距離誤差,記錄當(dāng)前的旋轉(zhuǎn)矩陣R、平移矩陣T和誤差d e" :
第3. 4步重復(fù)第3. 3步,經(jīng)過Snmi循環(huán)后將誤差最小的旋轉(zhuǎn)矩陣R和平移矩陣T作 為最后的旋轉(zhuǎn)矩陣R和平移矩陣T。
5. 根據(jù)權(quán)利要求1、2或3所述自適應(yīng)的無標(biāo)志點(diǎn)三維點(diǎn)云自動拼接方法,其特征在于, 第4步中,所述查找對應(yīng)點(diǎn)的過程為: 第4. 1步對于查找出的圖像特征點(diǎn),利用SIFT匹配算法實(shí)現(xiàn)圖像特征點(diǎn)的初匹配; 第4. 2步在初匹配數(shù)據(jù)集中隨機(jī)抽取8對匹配點(diǎn),采用歸一化8點(diǎn)算法進(jìn)行基本矩陣 初始估計,得到基本矩陣F ; 第4. 3步利用式VII計算每一對初匹配點(diǎn)的誤差大小Eyn^m2是該兩點(diǎn)的齊次坐標(biāo), 上標(biāo)T為轉(zhuǎn)置,設(shè)定民^取值范圍,將取值范圍內(nèi)的點(diǎn)視為最佳匹配點(diǎn),記錄當(dāng)前最佳匹配點(diǎn) 和最佳匹配點(diǎn)數(shù)目; Err = mj F m2 式 VII 第4. 4步重復(fù)第4. 2步和第4. 3步,始終保存最佳匹配點(diǎn)數(shù)目最多的情況,直到重復(fù)次 數(shù)等于預(yù)先設(shè)定的采樣次數(shù)Snum ; 第4. 6步將最終保留下的最佳匹配點(diǎn)作為正確的對應(yīng)點(diǎn)。
6.根據(jù)權(quán)利要求1、2或3所述自適應(yīng)的無標(biāo)志點(diǎn)三維點(diǎn)云自動拼接方法,其特征在于, 所述SVD奇異值分解法求解旋轉(zhuǎn)矩陣R和平移矩陣T的過程為: 第6.1步設(shè)得到的匹配后三維點(diǎn)為集合6={81,8^%}和6/={8/1,8 /^"8/1^, 利用式VIII計算兩片點(diǎn)集的質(zhì)心;其中N為匹配點(diǎn)對數(shù),gl和g' 1為任一對匹配三維點(diǎn) 的三維坐標(biāo),g和f為3X 1的矩陣;
第6. 2步利用式IX將兩片點(diǎn)集G和G'相對于各自質(zhì)心做平移,得到新點(diǎn)集J = Ul,j2…·ilJ 和 J' =U' 1,·]·' 2…·]·' ji = gfg,J·' I = g' fg',1 = 1,2. · · N 式 IX 第6. 3步利用式X計算3 X 3的矩陣H ;
第6. 4步對H矩陣進(jìn)行奇異值分解得:H = UA Vt,其中上標(biāo)T為矩陣轉(zhuǎn)置,U、V為3X3 酉矩陣,Λ為3X3對角矩陣,利用式XI定義3X3的對角矩陣A ;
第6. 5步利用XII式計算3 X 3的旋轉(zhuǎn)矩陣R和3 X 1的平移矩陣T : R = UAVt, T = g' -Rg 式 XII S106確定旋轉(zhuǎn)平移矩陣RT后,源點(diǎn)云保持不動,利用式XIII對目標(biāo)點(diǎn)云進(jìn)行旋轉(zhuǎn)平移 完成拼接: q,c = R · qc+T 式 XIII 其中,q。為目標(biāo)點(diǎn)云中任意一點(diǎn)的三維坐標(biāo),q'。為經(jīng)變換后的點(diǎn)的三維坐標(biāo)。
【文檔編號】G06T5/50GK104392426SQ201410571233
【公開日】2015年3月4日 申請日期:2014年10月23日 優(yōu)先權(quán)日:2014年10月23日
【發(fā)明者】李中偉, 伍夢琦, 鐘凱 申請人:華中科技大學(xué)