点云数据及获取
点云定义
属性
- 点云(point cloud):三维点的数据集合
- 三维坐标 强度 颜色 时间戳
分类
点云组织形式:
organized
- 二维坐标,已经索引过;
unorganized
- 未经索引,无法直接获取三维坐标;
点云获取方式
- 激光扫描仪(星载 机载 地面 移动) 深度相机 双目相机 光学相机多视角重建
激光扫描仪(Laser Scanner)
image.png- 工作原理 time-of-flight
- 分类:
- 星载:卫星
- 机载:飞机 无人机
- 地面:三脚架 固定座
- 移动:车辆 机器人
- 常见系统:
- GLAS 星载激光雷达
- GALIOP 星载激光雷达
- ALADIN 星载多普勒激光雷达
- 分类:
机载激光雷达
- 使用配有GPS/IMU的飞机(无人机)获取大范围点云
- 特点
- 精度高: 10CM
- 大尺度测绘
- 应用领域
- 大尺度(城市级别)测绘
- DEM
- 正射影像(高精度相机)
- 特点
地面激光雷达
- 地面激光雷达通常固定在三脚架上,进行较大范围扫描获取点云
- 特点
- 精度高:可达MM级
- 距离远:可达400m
- 扫描速度快: LS约200万点云
- 应用
- 文物三维扫描建模
- 地形测量
- 特点
移动激光雷达
- 移动激光雷达通常跟着移动物体(机器人,无人车),进行较大范围扫描获取点云
- 特点
- 精度高: CM
- 距离远: 约240M
- 扫描速度快: 10HZ 200万点每秒
- 应用
- 无人车 机器人
- 街景测量
- 特点
深度相机
- 通过近红外激光器把具有结构特征的光线投影到物体上,通过红外摄像头采集到深度信息
- 特点
- 成本低,计算量小
- 主动光源,夜晚也可用
- 观测范围和距离有限
- 应用
- 室内机器人
- AR/VR
双目相机
- 使用两个相机从不同位置获取物体两幅图像,通过计算对应点偏移,使用三角原理(Triangulation)计算点的三维坐标
- 特点
- 成本低
- 室内室外都适用
- 对环境光敏感
- 基线限制了测量范围
- 特点
光学相机多视角重建
- SFM运动结构恢复,给出多幅图像及其图像特征点的对应集合,估计3D点的位置和摄像机姿态
- 特点
- 成本低
- 使用高精度相机和更稳定的平台(有GPD/IMU)可以进行高精度测量
- 计算量大
- 特点
点云数据处理
点云滤波
- 检测和移除点云中的噪声或不感兴趣的点
分类
- 基于统计信息(statiscal-based)
- 基于领域(neighbor-based)
- 基于投影(projection-based)
- 基于信号处理(signal processing based)
- 基于偏微分方程(PDEs-based)
- 其他方法: voxel grid fitlering ,quadtree-based , etc.
常用方法
- 基于体素(voxel grid)
- 移动平均最小二乘(Moving Least Squares)
点云匹配
- 估计两帧或者多帧点云之间的rigid body transformation信息,将所有帧的点云配准在同一个坐标系
分类
- 初/粗匹配:适用于初始位姿差别大的两帧点云
- 精匹配:优化两帧点云之间的变换
- 全局匹配:通常指优化序列点云匹配的误差,如激光SLAM,两帧之间匹配,全局匹配
常用方法
- 基于Iterative Closest Point (ICP)的方法
- 基于特征的匹配方法
- 深度学习匹配方法
点云分割(segmentation)
- 根据空间、集合等特征将点划分为不同的集合
常用方法
- 基于边缘的方法:变成图像,使用边缘信息
- 基于区域生长
- 几何模型拟合:拟合平面,球形,圆柱等
点云目标检测(object detection)
- 从点云中检测某类物体
方法:
- 传统机器学习方法
- 深度学习方法
点云分类(classification)/语义分割(Semantic Segmentation)
- 为每个点云分配一个语义标签。
方法:
- 传统机器学习方法
- 深度学习方法
模型重建(model reconstruction):
- 从点云中获取更精简更紧凑的模型,如获取mesh模型。
- 常见的3D shape representation:深度图,点云体素,网格(mesh)
常用方法:
- Delaunay Mesh Generation
- Finite Element Mesh Generation.
- Marching cubes
常用软件及开源库
CloudCompare
点云处理软件,开源,且支持多平台(Windows, Mac,Linux)
支持常见的点云数据格式,简单的点云编辑
支持用户自己添加插件和增加新功能(如Ransac,Poisson MeshReconstruction, Classification with CANUPO)
适合于点云可视化,简单编辑或者处理
Meshlab
处理和编辑3D三角形网格的开源系统
主要是编辑,清理,修复,检查,渲染,纹理和转换网格的工具
3D Acquisition: color mapping andtexturing
Cleaning 3D models 支持多平台(Win, Linux, Mac)
Open3D
表面对齐
PyTorch 和 TensorFlow 的 3D 机器学习支持
GPU 加速核心 3D 操作
- 特点
- 支持多平台
- python集成成熟,可和 Pytorch,Tensorflow 集成
网友评论