三維掃描系列001 點雲緒論

颯白發表於2021-03-15

本文是學習肖勇大神的點雲課程總結的筆記,僅供個人學習使用。

肖勇

Mapping & Localization Technical Specialist @ Lucid Motors,主要從事無人車地 圖和定位演算法研發。先後參與 Lyft、百度無人車 專案開發。密歇根大學土木工程博士,中科院遙 感與數字地球研究所地圖學碩士,武漢大學測繪 工程學士。

點雲資料及獲取

  • 定義
    • 點雲:三維點的資料集合
  • 屬性
    • 三維座標
    • 強度
    • 顏色
    • 時間戳

image-20210314100659480

  • 分類

    • 點雲組織形式:

      • organized: the point cloud is laid out as a 2D array of points that resembles an image like structure -
      • unorganized: the point cloud is a list of points.

  • 點雲獲取方式
    • 鐳射掃描器
      • 星載
      • 機載
      • 地面
      • 移動
    • 深度相機(depth Camera)
    • 雙目相機(stereo Camera)
    • 光學相機多視角重建

image-20210314100844568

鐳射掃描器

  • 工作原理:time of flight

  • image-20210314100935007

  • 分類

    • 星載:衛星
    • 機載:飛機,無人機
    • 地面:三腳架上固定
    • 移動:車輛,機器人等

星載鐳射雷達

  • 常見系統
    • GLAS星載鐳射雷達 系統(Geoscience Laser Altimeter System)
    • CALIOP星載鐳射雷 達
    • ALADIN星載多普勒 鐳射雷達
  • image-20210314101202934

機載鐳射雷達

  • 機載鐳射雷達
    • 使用配有 GPS/IMU的飛機(無人機) 獲取大範圍的點雲
  • 特點
    • 精度高:10cm
    • 大尺度測繪
  • 應用領域
    • 大尺度(城市級別)測繪
    • DEM
    • 正射影像 (高精度相機)

image-20210314101337080

地面鐳射雷達

  • 地面鐳射雷達
    • 鐳射雷達通常固定在三角架上,進行 較大範圍掃描獲取點雲。
  • 特點
    • 精度高: 可達到 mm
    • 距離遠:可達到400m
    • 掃描速度快: Leica RTC360 1s 採集 ~200萬點雲
  • 應用
    • 文物三維掃描建模
    • 地形測量

image-20210314101524355

移動鐳射雷達

  • 移動鐳射雷達

    • 鐳射雷達通常跟著移動物體( 機器人無人車),進行較大範 圍掃描獲取點雲
  • 特點

    • 精度高: cm
    • 距離遠:~240m
    • 掃描速度快: 10Hz, 200萬點 雲每秒
  • 應用

    • 無人車,機器人

    • 街景測量

      image-20210314101740973

Point Cloud created by Velodyne Lidar’s Alpha Prime sensor

深度相機

  • 深度相機
    • 通過近紅外鐳射器把具有結構特徵 的光線投影到物體上,通過紅外攝 像頭採集得到深度資訊。
  • 特點
    • 成本低,計算量小
    • 主動光源,夜晚也可用
    • 觀測該範圍和距離有限
  • 應用
    • 室內機器人
    • AR/VR

image-20210314101942307

雙目相機

  • 使用兩個相機從不同位置獲取物體的 兩幅影像,通過計算對應點的位置偏 差,使用三角原理(Triangulation) 計算點的三維座標
  • 特點
    • 成本低
    • 室內室外都適用
    • 對環境光敏感
    • 基線限制了測量範圍

image-20210314102142027

光學相機多視角重建

  • SFM 運動結構恢復(Structure from motion)

    • 給出多幅影像及其影像特徵點的對應集合 ,估計3D點的位置和攝像機姿態(運動)
  • 特點

    • 成本低

    • 使用高精度相機和更穩定的平臺(有 GPS/IMU)可以進行高精度測量

    • 計算量大

image-20210314102255238

Credit to http://gsp.humboldt.edu/OLM/Courses/GSP_216_Online/lesson8-2/SfM.html

點雲資料處理

點雲濾波(filtering)

  • 檢測和移除點雲中的噪聲或不感興趣的點
  • 分類
    • 基於統計資訊 (statiscal-based)
    • 基於領域 (neighbor-based) 基於投影(projection-based)
    • 基於訊號處理(singal processing based)
    • 基於偏微分方程(PDEs-based)
    • 其他方法:voxel grid fitlering, quadtreebased, etc.
  • 常用方法
  • 基於體素(voxel grid)
  • 移動平均最小二乘(Moving Least Squares)

image-20210314102530018

點雲匹配 (point cloud registration)

  • 估計兩幀或者多幀點雲之間的 rigid body transformation 資訊,將所有幀的點雲配準在同 一個座標系。
  • 分類
    • 初/粗匹配: 適用於初始位姿差別大的兩幀點雲
    • 精匹配:優化兩幀點雲之間的變換
    • 全域性匹配:通常指優化序列點雲匹配的誤差, 如鐳射 SLAM,兩幀之間匹配,全域性匹配
  • 常用方法
    • 基於 Iterative Closest Point (ICP)的方法
    • 基於特徵的匹配方法
    • 深度學習匹配方法

image-20210314102732861

Credit to http://geometryhub.net/en/notes/registration

  • Iterative Closest Point (ICP)Registration
    • Given two scans ? and ?, initial transformation between them ?,?
    • Iterate
      • Find some pairs of closest points (??,??)
      • Optimize ?,? to minimize image-20210314102901910

image-20210314102856024

點雲分割 (segmentation)

  • 根據空間、集合等特徵將點劃分為不同的集合。
  • 常用方法
    • 基於邊緣的方法:變成影像,使用邊緣資訊
    • 基於區域生長
    • 幾何模型擬合:擬合平面,球形,圓柱等

幾何模型擬合(Schnabel et al. 2007

區域生長(Vo et al. 2015)

  • Segmentation using smoothness constraint
    • image-20210314103110235

點雲目標檢測 (object detection)

  • 從點雲中檢測某類物體

  • 方法:

    • 傳統機器學習方法
    • 深度學習方法

image-20210314103222607

Fernandes et al. 2021

點雲分類 (classification)/語義分割(Semantic Segmentation)

  • 為每個點雲分配一個語義標籤

  • 方法:

    • 傳統機器學習
    • 深度學習

image-20210314103544680

模型重建 (model reconstruction

  • 從點雲中獲取更精簡更緊湊的模型,如獲取 mesh 模型。

  • 常見的 3D shape representation: 深度圖,點雲 ,體素,網格(mesh)

  • 常用方法:

    • Delaunay Mesh Generation
    • Finite Element Mesh Generation.
    • Marching cube

常用軟體及開源

CloudCompare

開源,且支援多平臺(Windows, Mac, Linux)

  • 支援常見的點雲資料格式,簡單的 點雲編輯
  • 支援使用者自己新增外掛和增加新功 能 (如 Ransac, Poisson Mesh Reconstruction, Classification with CANUPO)
  • 適合於點雲視覺化,簡單編輯或者處理

image-20210314103946031

Meshlab

  • 處理和編輯3D三角形網格的開源系 統
  • 主要是編輯,清理,修復,檢查, 渲染,紋理和轉換網格的工具
  • 3D Acquisition: color mapping and texturing Cleaning 3D models
  • 支援多平臺(Win,Linux, Mac)

部分商業軟體

  • Microstation TerraSolid (Bentley):航測,主要適用於機載雷達,獲取 DEM 和建築建模等
  • Global Mapper Lidar Moduel:主要處理機載鐳射雷達資料,分類,建模,生成 DEM等
  • LiDAR 360 (數字綠土):林業資源調查,地形測繪等
  • 點雲魔方(中國科學院遙感與數字地球研究所):植被應用,電力巡線等
  • ENVI LiDAR; ArcGIS:含有部分點雲處理模組,主要用於遙感和林業
  • Cyclone, Cloudworx, TruView: Leica徠卡開發,主要用於其地面鐳射雷達和移動(揹包式)鐳射
    雷達資料處理
  • Riscan Pro:主要用於處理 Riegl 瑞格地面鐳射雷達資料
  • RealWorks(Trimble)
  • Polyworks (Innovmetric); Geomagic (3D systems):逆向工程,主要用於機械測量

開源庫

  • PCL (Point cloud library)
    • Filter
    • Segmentation
    • Registration
    • Keypoints
    • Recognition
  • 特點
    • 支援多平臺(Win,Linux, Mac)
    • 功能齊全,可擴充套件性好
    • 廣泛用於機器人,很多開源演算法和 系統(ROS)

image-20210314104342836

  • Open3D
    • Surface alignment
    • 3D machine learning support with PyTorch and TensorFlow
    • GPU acceleration for core 3D operation
  • 特點 •
    • 支援多平臺
    • python整合成熟,可和 Pytorch, Tensorflow 整合

參考文獻

  • Fernandes, D., Silva, A., Névoa, R., Simões, C., Gonzalez, D., Guevara, M., Novais, P., Monteiro, J. and Melo-Pinto, P., 2021. Pointcloud based 3D object detection and classification methods for self-driving applications: A survey and taxonomy. Information Fusion,68, pp.161-191.
  • Florent Lafarge, Clément Mallet. Creating large-scale city models from 3D-point clouds: a robust approach with hybrid representation. International Journal of Computer Vision, Springer Verlag, 2012, 99 (1), pp.69-85. ffhal-00759265f
  • Han, X.F., Jin, J.S., Wang, M.J., Jiang, W., Gao, L. and Xiao, L., 2017. A review of algorithms for filtering the 3D point cloud. Signal Processing: Image Communication, 57, pp.103-112.
  • Landrieu, L., & Simonovsky, M. (2018). Large-scale point cloud semantic segmentation with superpoint graphs. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (pp. 4558-4567).
  • Lin, X. and Zhang, J., 2014. Segmentation-based filtering of airborne LiDAR point clouds by progressive densification of terrain segments. Remote Sensing,6(2), pp.1294-1326.
  • Rabbani, T., Van Den Heuvel, F. and Vosselmann, G., 2006. Segmentation of point clouds using smoothness constraint. International archives of photogrammetry, remote sensing and spatial information sciences,36(5), pp.248-253.
  • Schnabel, R., Wahl, R., & Klein, R. (2007, June). Efficient RANSAC for point‐cloud shape detection. In Computer graphics forum
  • Seif, H.G. and Hu, X., 2016. Autonomous driving in the iCity—HD maps as a key challenge of the automotive industry. Engineering, 2(2), pp.159-162
  • Vo, A. V., Truong-Hong, L., Laefer, D. F., & Bertolotto, M. (2015). Octree-based region growing for point cloud segmentation. ISPRS Journal of Photogrammetry and Remote Sensing,104, 88-100.
  • Yang, B., Luo, W. and Urtasun, R., 2018. Pixor: Real-time 3d object detection from point clouds. In Proceedings of the IEEE conference on Computer Vision and Pattern Recognition (pp. 7652-7660).
  • Wang, N., Zhang, Y., Li, Z., Fu, Y., Liu, W. and Jiang, Y.G., 2018. Pixel2mesh: Generating 3d mesh models from single rgb images. In Proceedings of the European Conference on Computer Vision (ECCV) (pp. 52-67).

相關文章