基於RGBD攝像機的三維重建探究


作者:艾孜爾江·艾爾斯蘭

隨着計算機和人工智能技術的發展,三維(3D)重建是計算機視覺中一項基本功能。3D重建是建立一個適合計算機表示和處理3D對象的數學模型。在計算機視覺中,3D重建是指從單視圖或多視圖圖像重建3D信息的過程。由於單個視圖的信息不完整,因此
3D 重建需要使用經驗知識。多視圖 3D
重建(類似於人類的立體相機)相對容易。筆者通過查詢到的資料得知,多視圖 3D
重建方法的基本步驟可以分為兩類,首先是校准攝像機,即計算攝像機的像素坐標系和世界坐標系之間的關系,然后使用多個
2D 圖像重建 3D 點雲。

RGBD相機作為一種新型的攝像機,可以直接提供圖像的深度信息,簡化了3D密集重建。對於3D點雲重建來說,最重要的是如何確定圖片之間的旋轉和平移關系,這直接影響到點雲位置的准確性。通常來說,分別有直接方法和特征點方法來獲得兩幀攝像機之間的運動關系。所謂的直接方法就是通過計算圖像的最小光度誤差來計算兩幀圖片之間的關系。由於缺少圖像特征點,通過該方法很難從特征點中得知具體信息,但在這種困難情況之下它相對來說具有更好的魯棒性。由於直接方法使用所有圖像信息,因此可以執行密集的
3D
重建,但是它也存在了一個致命性缺點——當攝像機移動過快時,要素點很容易丟失。而所謂的特征點方法則主要通過識別圖像中比較具有代表性的點來提取和匹配特征點,並通過PnP求解兩幀轉換關系。特征點方法在兩幀圖片中獲取代表性角點以進行特征匹配,對成功配對的點進行約束,通過求解基本矩陣來計算兩幀之間的運動關系。但是正是因為該方法僅使用部分圖像信息,它也只能完成稀疏點雲映射。據稱,要素點通常分為角點、塊和邊。角點是最容易由計算機通過計算而得到的最健壯的功能點,也正因此,基於角點檢測成為目前比較主流的特征點方法。

筆者在調查中發現,實時三元重建系統的重要研究方向主要是Fusion系列。由於攝像機的姿勢估計通常會出現錯誤,因此,為了生成與真實對象一致的點雲圖像而疊加多個圖像的點雲時,這種方法也可能會出現故障或失真。為了避免連續積累的誤差,最終實現更好的3D重建模型,筆者得知可以利用捆綁調整(BA:Bundle
Adjustment)的方式優化相機姿勢。捆綁調整,主要原理是利用共視點的3D坐標與相機內參矩陣,根據PnP計算位姿R、t(這時候的位姿是有誤差的),利用R、t及相機的投影模型可以計算出這些特征點在第二幀圖像上的投影(仍舊會有誤差),本身這些點在第二幀圖像上有真實投影,利用這兩個投影構建函數進行優化可以優化位姿,以盡最大可能減少誤差。可以簡單地理解為BA的本質就是一個優化模型,其目的是最小化重投影誤差。

對於顏色和深度,快速相機運動會導致幀間距離大,難以實現進行圖像特征匹配和深度對齊。資料顯示,這一問題可以通過引入IMU(慣性測量單元)信息來解決。用加速度計和陀螺儀收集,進一步結合具有色彩和深度信息,強健的相機姿態將室內場景的估計和幾何融合結合起來予以實現。

我記得在我們上計算機圖形學課程時教授層為我們講起過重建系統可以使用多台攝像機,並將它們均勻排列在一個籠子里,所有需要被重建的對象在這個布滿攝像機的籠子里面,在外部信號的統一控制下實現對目標場景數據的同步采集,采用基於概率密度函數估計的方法進行深度圖融合。融合后的各個視點的深度圖傳入PC集群進一步處理,實時生成所攝場景的三維空間點雲。這種方式看似復雜,但卻是相對簡單的方式,通過多個攝像機就可以非常有效地重建三維物體。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM