點雲模型再學習


  我必須竭盡全力地工作,看會發生什么。—《風雨哈佛路》

  我在整理數學建模比賽時我看到了點雲這個模型,由於我對這個模型認識還不夠深。所以我對點雲進行了再次學習。

  第一個問題:點雲是什么?

  通過百度,我了解到點雲是在和目標表面特性的海量點集合。根據激光測量原理得到的點雲,包括三維坐標(XYZ)和激光反射強度(Intensity)。根據攝影測量原理得到的點雲,包括三維坐標(XYZ)和顏色信息(RGB)。結合激光測量和攝影測量原理得到點雲,包括三維坐標(XYZ)、激光反射強度(Intensity)和顏色信息(RGB)。

  第二個問題:點雲與三維圖像有什么關系?

  點雲與三維圖像的關系: 點雲數據是最為常見也是最基礎的三維模型。點雲模型往往由測量直接得到,每個點對應一個測量點,未經過其他處理手段,故包含了最大的信息量。這些信息隱藏在點雲中需要以其他提取手段將其萃取出來,提取點雲中信息的過程則為三維圖像處理。

  第三個問題:點雲怎么應用呢?

  點雲的應用層次有三層:a. 低層次處理方法 主要體現在濾波方法和關鍵點提取處理  其中濾波方法主要有雙邊濾、高斯濾波、條件濾波、直通濾波、隨機采樣一致性濾波,關鍵點提取處理算法主要有 ISS3D、Harris3D、NARF、SIFT3D。其中這些算法PCL庫中都有實現函數。

  注:PCL(Point Cloud Library 點雲庫)是在吸收了前人點雲相關研究基礎上建立起來的大型跨平台開源C++編程庫,它實現了大量點雲相關的通用算法和高效數據結構,涉及到點雲獲取、濾波、分割、配准、檢索、特征提取、識別、追蹤、曲面重建、可視化等。支持多種操作系統平台,可在Windows、Linux、Android、Mac OS X、部分嵌入式實時系統上運行。如果說OpenCV是2D信息獲取與處理的結晶,那么PCL就在3D信息獲取與處理上具有同等地位,PCL是BSD授權方式,可以免費進行商業和學術應用。其中PCL起初是在ROS下進行開發的項目,最終被多方機構合作研究形成了現在的點雲庫。

  對於3D點雲處理來說,PCL完全是一個的模塊化的現代C++模板庫。基於以下第三方庫:Boost、Eigen、FLANN、VTK、CUDA、OpenNI、Qhull,實現點雲相關的獲取、濾波、分割、配准、

                                                                               PCL架構圖

  b.中層析處理方法 主要處理方法是特征描述和分割與分類  常用的特征描述算法有:法線和曲率計算、特征值分析、PFH(點特征直方圖描述子)、FPFH(跨蘇點特征直方圖描述子,FPFH是PFH的簡化形式)、3D Shape Context、Spin Image等。常用的分割算法有區域聲場、Ransac線面提取、NDT-RANSAC、K-Means(魔方機器人上有用到的算法)、Normalize Cut、3D Hough Transform(線面提取)、連通分析,常用的分類算法有基於點的分類,基於分割的分類,監督分類與非監督分類。

  c.高層次處理方法 主要處理方法是點雲配准、SLAM圖優化、目標識別檢索、變化檢測、三維重建、點雲數據管理等。其中點雲配准的概念也可以類比於二維圖像中的配准,只不過二維圖像配准獲取得到的是x,y,alpha,beta等放射變化參數,二三維點雲配准可以模擬三維點雲的移動和對其,也就是會獲得一個旋轉矩陣和一個平移向量,通常表達為一個4×3的矩陣,其中3×3是旋轉矩陣,1*3是平移向量。嚴格說來是6個參數,因為旋轉矩陣也可以通過羅格里德斯變換轉變成1*3的旋轉向量。其中點雲配准分為粗配准和精配准兩個階段。粗配准是指在點雲相對位姿完全未知的情況下對點雲進行配准,可以為精配准提供良好的初始值。當前較為普遍的點雲自動粗配准算法包括基於窮舉搜索的配准算法和基於特征匹配的配准算法。

  基於窮舉搜索的配准算法:遍歷整個變換空間以選取使誤差函數最小化的變換關系或者列舉出使最多點對滿足的變換關系。如RANSAC配准算法、四點一致集配准算法(4-Point Congruent Set, 4PCS)、Super4PCS算法等

  基於特征匹配的配准算法:通過被測物體本身所具備的形態特性構建點雲間的匹配對應,然后采用相關算法對變換關系進行估計。如基於點FPFH特征的SAC-IA、FGR等算法、基於點SHOT特征的AO算法以及基於線特征的ICL等

  精配准的目的是在粗配准的基礎上讓點雲之間的空間位置差別最小化。應用最為廣泛的精配准算法應該是ICP以及ICP的各種變種(穩健ICP、point to plane ICP、Point to line ICP、MBICP、GICP、NICP)。

  其中常用的配准算法有正太分布變換。

  其中SLAM圖優化 SLAM技術中,在圖像前端主要獲取點雲數據,而在后端優化主要就是依靠圖優化工具。以下是常用的工具和方法。工具:g2o、LUM、ELCH、Toro、SPA。SLAM方法:ICP、MBICP、IDC、likehood Field、 Cross Correlation、NDT。

  其中目標識別檢索 這是點雲數據處理中一個偏應用層面的問題,簡單說來就是Hausdorff距離常被用來進行深度圖的目標識別和檢索,現在很多三維人臉識別都是用這種技術來做的。

  其中變化檢測 當無序點雲在連續變化中,八叉樹算法常常被用於檢測變化,這種算法需要和關鍵點提取技術結合起來,八叉樹算法也算是經典中的經典了。

  其中三維重建  常用的三維重建算法和技術有:泊松重建、Delauary triangulatoins,表面重建,人體重建,建築物重建,輸入重建,實時重建:重建紙杯或者龍作物4D生長台式,人體姿勢識別,表情識別。

  其中點雲數據管理 主要方法是點雲壓縮,點雲索引(KDtree、Octree),點雲LOD(金字塔),海量點雲的渲染。

  注:這是我看過很多博客和相關資料整理來的。但由於沒有及時記錄博客IP地址,所以請相關博主看到我的整理后,若感覺這篇文章的有些內容和自己的博文有相似之處,請私信我。我一定會標明出處。


免責聲明!

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



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