三维计算视觉研究内容包括:
1)三维匹配:两帧或者多帧点云数据之间的匹配,因为激光扫描光束受物体遮挡的原因,不可能通过一次扫描完成对整个物体的三维点云的获取。因此需要从不同的位置和角度对物体进行扫描。三维匹配的目的就是把相邻扫描的点云数据拼接在一起。三维匹配重点关注匹配算法,常用的算法有最近点迭代算法 ICP和各种全局匹配算法。
2)多视图三维重建:计算机视觉中多视图一般利用图像信息,考虑多视几何的一些约束,射影几何和多视图几何是视觉方法的基础,在摄影测量中类似的存在共线方程。光束平差法是该类研究的核心技术。这里也将点云的多视匹配放在这里,比如人体的三维重建,点云的多视重建不再是简单的逐帧的匹配,还需要考虑不同角度观测产生误差累积,因此存在一个针对三维模型进行优化或者平差的过程在里面。多视图三维重建这里指的只是静态建模,输入是一系列的图像或者点云集合。可以只使用图像,或者只使用点云,也可以两者结合(深度图像)实现,重建的结果通常是Mesh网格。
SFM(运动恢复结构) vs Visual SLAM [摘抄] SFM 和 Visual SLAM
Multi-View Stereo (MVS)多视图立体视觉,研究图像一致性,实现稠密重建。
3)3D SLAM
按照传感器类型分类:可以分为基于激光的SLAM和基于视觉的SLAM。
基于激光的SLAM可以通过点云匹配(最近点迭代算法 ICP、正态分布变换方法 NDT)+位姿图优化(g2o、LUM、ELCH、Toro、SPA)来实现;实时激光3D SLAM算法 (LOAM,Blam,CartoGrapher等);Kalman滤波方法。通常激光3D SLAM侧重于定位,在高精度定位的基础上可以产生3D点云,或者Octree Map。
基于视觉(单目、双目、鱼眼相机、深度相机)的SLAM,根据侧重点的不同,有的侧重于定位,有的侧重于表面三维重建。不过都强调系统的实时性。
(1)侧重于定位的VSLAM系统比如orbSLAM,lsdSLAM;VINS是IMU与视觉融合的不错的开源项目。
(2)侧重于表面三维重建SLAM强调构建的表面最优,或者说表面模型最优,通常包含Fusion融合过程在里面。通常SLAM是通过观测形成闭环进行整体平差实现,优先保证位姿的精确;而VSLAM通过Fusion过程同时实现了对构建的表面模型的整体优化,保证表面模型最优。最典型的例子是KinectFusion,Kinfu,BundleFusion,RatMap等等。
(4)目标检测与识别:无人驾驶汽车中基于激光数据检测场景中的行人、汽车、自行车、道路(车道线,道路标线,路边线)以及道路设施(路灯)和道路附属设施(行道树等)。这部分工作也是高精度电子地图的主要内容。当然高精度电子地图需要考虑的内容更多。同时室内场景的目标识别的研究内容也很丰富,比如管线设施,消防设施等。
(5)形状检测与分类:点云技术在逆向工程中有很普遍的应用。构建大量的几何模型之后,如何有效的管理,检索是一个很困难的问题。需要对点云(Mesh)模型进行特征描述,分类。根据模型的特征信息进行模型的检索。同时包括如何从场景中检索某类特定的物体,这类方法关注的重点是模型。
(6)语义分类:获取场景点云之后,如何有效的利用点云信息,如何理解点云场景的内容,进行点云的分类很有必要,需要为每个点云进行Labeling。可以分为基于点的分类方法和基于分割的分类方法。从方法上可以分为基于监督分类的技术或者非监督分类技术,深度学习也是一个很有希望应用的技术。最近深度学习进行点云场景理解的工作多起来了,比如PointNet,各种八叉树的Net。
(7)双目立体视觉与立体匹配 ZNCC:立体视觉(也称双目视觉)主要研究的两个相机的成像几何问题,研究内容主要包括:立体标定(Stereo Calibration)、立体校正(Stereo Rectification)和立体匹配(Stereo Matching)。目前,立体标定主要研究的已经比较完善,而立体匹配是立体视觉最核心的研究问题。按照匹配点数目分类,立体匹配可分为稀疏立体匹配(sparse stereo matching)和密集立体匹配(dense stereo matching)。稀疏立体匹配由于匹配点数量稀少,一般很难达到高精度移动测量和环境感知的要求。因此,密集立体匹配是学术界和工业界的主要研究和应用方向。
(8)自动造型(构型),快速造型(构型)技术。对模型进行凸分割,模型剖分,以实现模型进一步的编辑修改,派生出其他的模型。
(9)摄像测量技术,视频测量
1、点云滤波方法(数据预处理):
双边滤波、高斯滤波、条件滤波、直通滤波、随机采样一致性滤波。
VoxelGrid
2、关键点
ISS3D、Harris3D、NARF,
SIFT3D、均匀采样,曲率方法采样
3、特征和特征描述
法线和曲率计算 NormalEstimation 、特征值分析Eigen-Analysis、EGI
PFH、FPFH、3D Shape Context、Spin Image
4、点云匹配
ICP、稳健ICP、point to plane ICP、Point to line ICP、MBICP、GICP、NICP
NDT 3D、Multil-Layer NDT
FPCS、KFPCS、SAC-IA
Line Segment Matching、ICL
5、点云分割与语义分类
分割:区域生长、八叉树区域生长、Ransac线面提取、NDT-RANSAC、全局优化平面提取
K-Means、Normalize Cut(Context based)
3D Hough Transform(线、面提取)、连通分析、
分类:基于点的分类,基于分割的分类;监督分类与非监督分类
目前基于深度学习的点云语义分类比较热:PointNet,OctNet之类的吧,需要多加关注。
6、SLAM图优化
Ceres(Google的最小二乘优化库,很强大), g2o、LUM、ELCH、Toro、SPA
SLAM方法:ICP、MBICP、IDC、likehood Field、Cross Correlation、NDT
7、目标识别、检索
Hausdorff距离计算(人脸识别),Graph Matching
8、变化检测
基于八叉树的变化检测
9. 三维重建
泊松重建、 Delaunay triangulations
表面重建,人体重建,建筑物重建,树木重建。
结构化重建:不是简单的构建一个Mesh网格,而是为场景进行分割,为场景结构赋予语义信息。场景结构有层次之分,在几何层次就是点线面等几何图元。
实时重建:重建植被或者农作物的4D(3D+时间)生长态势;人体姿势识别;表情识别;
10.点云数据管理
点云压缩,点云索引(KD、Octree),点云LOD(金字塔),海量点云的渲染
责任编辑:xj
原文标题:三维点云数据处理学习内容总结
文章出处:【微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。
全部0条评论
快来发表一下你的评论吧 !