摘要
真實物體完整形狀的數(shù)字化在智能制造、工業(yè)檢測和反向建模等領(lǐng)域具有重要的應(yīng)用價值。為了構(gòu)建剛性對象的完整幾何模型,對象必須相對于測量系統(tǒng)(或掃描儀必須相對于對象移動),以獲取和集成對象的視圖,這不僅使系統(tǒng)配置復(fù)雜,而且使整個過程耗時。在這封信中,我們提出了一種高分辨率的實時360°三維(3D)模型重建方法,該方法允許人們手動旋轉(zhuǎn)一個物體,并在掃描過程中看到一個不斷更新的三維模型。多視圖條紋投影輪廓測量系統(tǒng)從不同的角度獲取一個手持物體的高精度深度信息,同時將多個視圖實時對齊并合并在一起。我們的系統(tǒng)采用了立體相位展開和自適應(yīng)深度約束,可以在不增加捕獲圖案的數(shù)量的情況下,穩(wěn)健地展開密集條紋圖像的相位。然后,我們開發(fā)了一種有效的從粗到細(xì)的配準(zhǔn)策略來快速匹配三維表面段。實驗結(jié)果表明,該方法可以在任意旋轉(zhuǎn)條件下重建復(fù)雜物體的高精度完整三維模型,而無需任何儀器輔助和昂貴的預(yù)/后處理。
引言
光學(xué)非接觸式三維(3D)形狀測量技術(shù)已廣泛應(yīng)用于工業(yè)檢測、智能制造、逆向工程等許多方面的[1]。邊緣投影輪廓測量(FPP)[2,3]由于其高測量精度、簡單的硬件配置和實現(xiàn)的靈活性,是最流行的三維成像技術(shù)之一。到目前為止,大多數(shù)關(guān)于FPP的研究都集中在單一角度的三維測量上。然而,在工業(yè)檢查和反向建模等應(yīng)用中,獲取所有對象的三維模型是至關(guān)重要的。然而,傳統(tǒng)的FPP系統(tǒng)由于其視場有限,無法在單次測量中獲得目標(biāo)的完整三維模型,因此需要對從多個視圖測量的數(shù)據(jù)進(jìn)行配準(zhǔn)。 為了從不同的視圖獲得和對齊物體的三維形狀,通常需要儀器輔助來執(zhí)行三維配準(zhǔn)[7–9]。常見的輔助儀器包括旋轉(zhuǎn)臺、機(jī)械臂和平面反射鏡。通過旋轉(zhuǎn)臺,通過旋轉(zhuǎn)臺軸的旋轉(zhuǎn)與成像系統(tǒng)[7]之間的關(guān)系,可以將多幀點云轉(zhuǎn)換為相同的坐標(biāo)系。但物體只能圍繞旋轉(zhuǎn)臺軸旋轉(zhuǎn),難以獲取頂部、底部的三維數(shù)據(jù)。機(jī)械臂可以通過預(yù)置一個移動路徑[8]來從更多的角度獲取信息。然而,機(jī)械臂的成本很高,輔助系統(tǒng)需要復(fù)雜的硬件連接,因此實現(xiàn)此類系統(tǒng)是困難的。帶有兩個鏡子的測量系統(tǒng)可以在一個測量中重建一個全景三維表面,因為它們同時從三個角度捕捉目標(biāo)[9]。然而,由于透視信息有限,這類系統(tǒng)仍然無法獲得全尺度的三維測量。 由于昂貴的硬件設(shè)施、復(fù)雜的結(jié)構(gòu)或有限的視角信息,上述儀器輔助配準(zhǔn)方法并不是獲得360°3D模型的理想手段。理想的方法是在連續(xù)執(zhí)行實時三維配準(zhǔn)的同時,任意旋轉(zhuǎn)對象的三維數(shù)據(jù)。到目前為止,很少有人報道過這種方法,因為(1)由于硬件技術(shù)和實時算法的限制,構(gòu)建基于FPP的動態(tài)對象實時,高精度3D測量系統(tǒng)是困難的[4,10]; 無輔助儀器的不間斷實時高精度三維配準(zhǔn)是一個非常具有挑戰(zhàn)性的[11]。2002年,魯辛克維茨等人[12]提出了一種基于結(jié)構(gòu)光測距儀和迭代最近點(ICP)算法的實時變體的實時三維模型采集方法。與以前的方法相比,它允許用戶手動旋轉(zhuǎn)一個對象,并看到一個不斷更新的模型,從而提供關(guān)于孔的存在和已被覆蓋的表面的即時反饋。然而,通過條紋邊界編碼策略獲得的點云相當(dāng)稀疏,使得三維數(shù)據(jù)積累過程的效率降低。此外,他們的配準(zhǔn)方法的精度較低,因為它們跳過了傳統(tǒng)的儀器輔助粗配準(zhǔn),直接進(jìn)行基于變異icp的精細(xì)配準(zhǔn),而沒有得到良好的姿態(tài)估計。因此,要重建一個高精度的三維模型,就需要進(jìn)行耗時的后處理。 在這封信中,我們首次在沒有任何儀器輔助的情況下,實現(xiàn)了對物體的360°三維模型的實時采集,總體精度高達(dá)100μm級。用我們的方法,我們可以手工任意旋轉(zhuǎn)物體。由于從單一角度獲取對象的三維數(shù)據(jù),可以自動與前一幀的三維數(shù)據(jù)進(jìn)行實時配準(zhǔn),并合并在一起,創(chuàng)建一個高精度的三維模型。
方法
為了實現(xiàn)實時的三維配準(zhǔn),必須實時獲取每個視角的三維數(shù)據(jù)。FPP的兩種主流條紋分析方法分別是單鏡頭性質(zhì)的傅里葉變換輪廓測量[13,14]和相移輪廓測量(PSP)[15],以較高的測量分辨率和精度而聞名??紤]到精度,我們選擇了后一種技術(shù)。由于運動會導(dǎo)致幀間的相位誤差,并打破PSP的基本假設(shè),因此應(yīng)該采用盡可能少的條紋圖案的PSP。因此,采用了三步移相法。通過三步移相模式,可以很容易地獲得物體的包裹相位。為了展開相位,傳統(tǒng)的方法是使用時間相位展開技術(shù)[16]。然而,需要大量的輔助條紋圖案,這增加了對運動的靈敏度。在這封信中,我們使用立體相位展開(SPU)[17,18]方法來消除相位歧義,而不使用任何額外的輔助模式。
圖1:立體相位展開(SPU)原理圖 SPU的工作原理如圖1所示。對于相機(jī)1中的任意點oc1,它有N個可能的絕對相位,通過相機(jī)1和投影儀可以重建N個3D候選點。這些3D候選點可以投影到Camera2上得到N個2D候選點,其中必須有一個與oc1最相似的正確匹配點。然后進(jìn)行相位相似性檢查,找到匹配點,也可以解開oc1的包裹相位。然而,SPU不能穩(wěn)健地消除相位模糊,因為在噪聲和系統(tǒng)誤差的影響下,錯誤的候選點的相位可能比正確的點更接近oc1,而邊緣頻率越高,那么這種情況發(fā)生的可能性就越大。自適應(yīng)深度約束(ADC)[19]策略可以通過實時測量結(jié)果提供一個像素級的深度范圍,并在很大程度上排除了錯誤的3D候選對象。因此,我們使用ADC來提高SPU的穩(wěn)定性。 接下來,我們將討論實時、高精度的三維配準(zhǔn)。有兩種:(1)直接進(jìn)行精細(xì)配準(zhǔn),(2)在粗配準(zhǔn)后進(jìn)行精細(xì)配準(zhǔn)。第一類方法直接使用ICP算法[20]及其改進(jìn)的變體。然而,由于缺乏合適的初始姿態(tài)估計,ICP效果不佳。此外,ICP通常需要花費更高的配準(zhǔn)精度,并且不適用于實時場景。然而,在沒有儀器輔助的情況下,執(zhí)行快速粗配準(zhǔn)并不簡單。在這篇論文中,我們改進(jìn)了同步定位和映射(SLAM)算法[21],用于機(jī)器人的定位和地圖構(gòu)建,以執(zhí)行粗配準(zhǔn)。將兩個相鄰的3D幀定義為幀1和幀2,它們具有對應(yīng)的2D紋理映射I1和I2,和相機(jī)坐標(biāo)系下的3D數(shù)據(jù):
圖2 檢測到的2D特征點(a)通過SIFT和歐氏距離匹配的點(b)通過我們的方法優(yōu)化后的點
圖3 描述:(a)傳統(tǒng)PnP方法(b)我們問題的描述 在快速進(jìn)行二維匹配點識別后,利用求解多視角(PnP)問題的方法,可以快速得到相鄰三維幀之間的變換矩陣,這是一種常用的從三維參考點間的n個對應(yīng)關(guān)系中估計攝像機(jī)姿態(tài)的技術(shù)。獲取相機(jī)姿態(tài)的常規(guī)PnP問題如圖3(a)所示,即當(dāng)物體保持靜止時相機(jī)移動,我們知道物體在世界坐標(biāo)系中的三維數(shù)據(jù)和相機(jī)移動到位置2時的像素坐標(biāo)。在本文中,PnP問題可以看作是如何求解成像系統(tǒng)靜止時運動物體的變換矩陣,并知道物體移動前的三維數(shù)據(jù)和物體移動后的像素坐標(biāo),如圖3(b)所示。我們采用EPnP方法[23],這是一個PnP問題的非迭代解,由于其精度和效率的平衡來解決PnP問題,在視覺SLAM系統(tǒng)中被廣泛應(yīng)用。
圖4:結(jié)果:(a)粗配準(zhǔn)(b)精配準(zhǔn)
圖5:實時3D配準(zhǔn)的流程 實時三維配準(zhǔn)的整個過程如圖5所示。步驟1:利用SIFT算法找到二維匹配點,并利用相應(yīng)的三維數(shù)據(jù)對其進(jìn)行優(yōu)化;步驟2:采用EPnP方法得到變換矩陣;步驟3:粗配準(zhǔn)線程粗配準(zhǔn)點云,保留運動在30到50之間的結(jié)果;步驟4:如果累積運動達(dá)到閾值,在精細(xì)配準(zhǔn)線程中降采樣后執(zhí)行ICP算法,實現(xiàn)點云的精確配準(zhǔn);步驟5:返回到步驟1,并重復(fù)上述過程。
實驗
為了驗證我們的算法的有效性,我們構(gòu)建了一個四相機(jī)3D成像系統(tǒng),包括一個輕型4500Pro(100Hz速度),三個用于SPU的acA640-750um相機(jī)(640×480分辨率)和一個用于彩色紋理的acA640-750uc相機(jī)。使用了48段PSP條紋。我們使用一臺HPZ230計算機(jī)(IntelXeonE3-1226v3CPU,NVIDIAQuadroK2200GPU)來開發(fā)我們基于OpenCV和PCL的算法。我們的軟件系統(tǒng)的接口是用Qt軟件開發(fā)的。該系統(tǒng)的成像速度為45Hz,單次掃描精度為45μm。
圖6:David 模型的場景以及配準(zhǔn)結(jié)果(整個過程請看可視化1)
圖7:David模型配準(zhǔn)后的結(jié)果(a)點云結(jié)果(b)(a)的三角化結(jié)果 在第一個實驗中,我們?nèi)我庑D(zhuǎn)了David模型,實現(xiàn)了其360°建模。不同時間段的配準(zhǔn)結(jié)果和場景如圖6所示。單次粗配準(zhǔn)和細(xì)配準(zhǔn)的時間分別為0.4s和2s。整個模型的重建時間是70秒。圖7顯示了配準(zhǔn)后的結(jié)果,從中我們可以看到David模型的所有3D形狀都很好地對齊。實驗結(jié)果表明,該方法可以實時獲得高質(zhì)量的360°手持物體三維模型。
圖8:David模型與陶瓷球配準(zhǔn)結(jié)果(a),(b):兩個視角的測量圖像(c),(d)相應(yīng)的配準(zhǔn)結(jié)果(e),(f):球配準(zhǔn)的誤差分布 在第二次實驗中,測量了兩個半徑分別為25.3989和25.4038mm的陶瓷球,中心間距離為100.0532mm。由于球體沒有二維特征,所以它們可以借助David模型進(jìn)行注冊。測量結(jié)果如圖8所示。對兩個球體的測量結(jié)果進(jìn)行了球面擬合。它們的誤差分布如圖所示。8(e)和8(f)。整個重建球的半徑分別為25.3580和25.3543mm,偏差分別為40.9μm和49.5μm。測量到的中心-中心距離為99.9345mm,誤差為118.7μm。本實驗表明,該方法重建的整個三維模型的總體精度可達(dá)到100μm水平。
結(jié)論
總之,據(jù)我們所知,我們首次提出了一種基于FPP的高分辨率實時360°三維模型重建技術(shù)。與以往傳統(tǒng)的復(fù)雜、耗時的三維模型采集系統(tǒng)相比,我們的設(shè)計允許用戶手動旋轉(zhuǎn)物體,并在被掃描物體時看到不斷更新的模型。最后,可以獲得一個精度高達(dá)100μm水平的完整的三維模型。這封信使低成本、高速、高精度、任意自動的3D配準(zhǔn)、快速反饋和易于使用的全方位三維實時建模成為可能。我們相信,這封信將為360°的工業(yè)檢測和快速逆向成型打開一扇新的大門,并具有廣闊的應(yīng)用前景。
審核編輯 :李倩
-
測量技術(shù)
+關(guān)注
關(guān)注
1文章
193瀏覽量
24781 -
結(jié)構(gòu)光
+關(guān)注
關(guān)注
0文章
74瀏覽量
13286 -
機(jī)械臂
+關(guān)注
關(guān)注
12文章
520瀏覽量
24725
原文標(biāo)題:高分辨率、實時的手持物體360°三維模型重建結(jié)構(gòu)光技術(shù)
文章出處:【微信號:3D視覺工坊,微信公眾號:3D視覺工坊】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論