点云数据可以用来干什么?

点云数据可以用来干什么?,第1张

点云数据可以用来测绘、电力、建筑、工业、汽车、游戏、刑侦等相当多的领域。且术业有专攻,不同激光产品所采集的点云应用方向也是天差地别的。经过小海云多年在测绘、建筑、电力和工业等领域的三维激光应用经验。

地形图测绘三维激光扫描技术在大比例尺地形测绘中的应用,在测区面积较大时能够快速而精确地采集大量点云数据,有效节约人力物力,缩短工期,提高工作效率和经济效益;在复杂地形和危险测区,能够不直接接触危险目标,详细、快速地进行外业数据采集,既保证了人员和设备的安全,又保证了成图精度要求,并同时提高工作效率。

点云数据除了具有几何位置以外,有的还有颜色信息。颜色信息通常是通过相机获取彩色影像,然后将对应位置的像素的颜色信息(RGB)赋予点云中对应的点。强度信息的获取是激光扫描仪接收装置采集到的回波强度,此强度信息与目标的表面材质、粗糙度、入射角方向,以及仪器的发射能量,激光波长有关。

点云概念

点云与三维图像的关系 :三维图像是一种特殊的信息表达形式,其特征是表达的空间中三个维度的数据,表现形式包括:深度图(以灰度表达物体与相机的距离),几何模型(由CAD软件建立),点云模型(所有逆向工程设备都将物体采样成点云)。和二维图像相比,三维图像借助第三个维度的信息,可以实现天然的物体——背景解耦。点云数据是最为常见也是最基础的三维模型。点云模型往往由测量直接得到,每个点对应一个测量点,未经过其他处理手段,故包含了最大的信息量。这些信息隐藏在点云中需要以其他提取手段将其萃取出来,提取点云中信息的过程则为三维图像处理。

点云的概念 :点云是在同一空间参考系下表达目标空间分布和目标表面特性的海量点集合,在获取物体表面每个采样点的空间坐标后,得到的是点的集合,称之为“点云”(Point Cloud)。

点云的获取设备 :RGBD设备是获取点云的设备,比如PrimeSense公司的PrimeSensor、微软的Kinect、华硕的XTionPRO。

点云的内容 :根据激光测量原理得到的点云,包括三维坐标(XYZ)和激光反射强度(Intensity),强度信息与目标的表面材质、粗糙度、入射角方向,以及仪器的发射能量,激光波长有关。

根据摄影测量原理得到的点云,包括三维坐标(XYZ)和颜色信息(RGB)。

结合激光测量和摄影测量原理得到点云,包括三维坐标(XYZ)、激光反射强度(Intensity)和颜色信息(RGB)。

点云的属性 :空间分辨率、点位精度、表面法向量等。

点云存储格式 :*.pts*.asc *.dat.stl [1] .imw;.xyz; .las。LAS格式文件已成为LiDAR数据的工业标准格式,LAS文件按每条扫描线排列方式存放数据,包括激光点的三维坐标、多次回波信息、强度信息、扫描角度、分类信息、飞行航带信息、飞行姿态信息、项目信息、GPS信息、数据点颜色信息等。

C–class(所属类)

F一flight(航线号)

T一time(GPS时间)

I一intensity(回波强度)

R一return(第几次回波)

N一number of return(回波次数)

A一scan angle(扫描角)

RGB一red green blue(RGB颜色值)

点云的数据类型 :

(1)pcl::PointCloudpcl::PointXYZ

PointXYZ 成员:float x,y,z表示了xyz3D信息,可以通过points[i].data[0]或points[i].x访问点X的坐标值

(2)pcl::PointCloudpcl::PointXYZI

PointXYZI成员:float x, y, z, intensity表示XYZ信息加上强度信息的类型。

(3)pcl::PointCloudpcl::PointXYZRGB

PointXYZRGB 成员:float x,y,z,rgb表示XYZ信息加上RGB信息,RGB存储为一个float。

(4)pcl::PointCloudpcl::PointXYZRGBA

PointXYZRGBA 成员:float x , y, zuint32_t rgba表示XYZ信息加上RGBA信息,RGBA用32bit的int型存储的。

(5) PointXY 成员:float x,y简单的二维x-y点结构

(6)Normal结构体:表示给定点所在样本曲面上的法线方向,以及对应曲率的测量值,用第四个元素来占位,兼容SSE和高效计算。

点云的处理

点云处理的三个层次 :Marr将图像处理分为三个层次,低层次包括图像强化,滤波,关键点/边缘检测等基本 *** 作。中层次包括连通域标记(label),图像分割等 *** 作。高层次包括物体识别,场景分析等 *** 作。工程中的任务往往需要用到多个层次的图像处理手段。

PCL官网对点云处理方法给出了较为明晰的层次划分,如图所示。

此处的common指的是点云数据的类型,包括XYZ,XYZC,XYZN,XYZG等很多类型点云,归根结底,最重要的信息还是包含在pointpcl::point::xyz中。可以看出,低层次的点云处理主要包括滤波(filters),关键点(keypoints)/边缘检测。点云的中层次处理则是特征描述(feature),分割(segmention)与分类。高层次处理包括配准(registration),识别(recognition)。可见,点云在分割的难易程度上比图像处理更有优势,准确的分割也为识别打好了基础。

低层次处理方法:

①滤波方法:双边滤波、高斯滤波、条件滤波、直通滤波、随机采样一致性滤波。②关键点:ISS3D、Harris3D、NARF,SIFT3D

中层次处理方法:

①特征描述:法线和曲率的计算、特征值分析、SHOT、PFH、FPFH、3D Shape Context、Spin Image

②分割与分类:

分割:区域生长、Ransac线面提取、全局优化平面提取

K-Means、Normalize Cut(Context based)

3D Hough Transform(线、面提取)、连通分析

分类:基于点的分类,基于分割的分类,基于深度学习的分类(PointNet,OctNet)

高层次处理方法:

①配准:点云配准分为粗配准(Coarse Registration)和精配准(Fine Registration)两个阶段。

精配准的目的是在粗配准的基础上让点云之间的空间位置差别最小化。应用最为广泛的精配准算法应该是ICP以及ICP的各种变种(稳健ICP、point to plane ICP、Point to line ICP、MBICP、GICP、NICP)。

粗配准是指在点云相对位姿完全未知的情况下对点云进行配准,可以为精配准提供良好的初始值。当前较为普遍的点云自动粗配准算法包括基于穷举搜索的配准算法和基于特征匹配的配准算法。

基于穷举搜索的配准算法:遍历整个变换空间以选取使误差函数最小化的变换关系或者列举出使最多点对满足的变换关系。如RANSAC配准算法、四点一致集配准算法(4-Point Congruent Set, 4PCS)、Super4PCS算法等……

基于特征匹配的配准算法:通过被测物体本身所具备的形态特性构建点云间的匹配对应,然后采用相关算法对变换关系进行估计。如基于点FPFH特征的SAC-IA、FGR等算法、基于点SHOT特征的AO算法以及基于线特征的ICL等…

②SLAM图优化

Ceres(Google的最小二乘优化库,很强大), g2o、LUM、ELCH、Toro、SPA

SLAM方法:ICP、MBICP、IDC、likehood Field、NDT

③三维重建

泊松重建、 Delaunay triangulations、表面重建,人体重建,建筑物重建,树木重建。结构化重建:不是简单的构建一个Mesh网格,而是为场景进行分割,为场景结构赋予语义信息。场景结构有层次之分,在几何层次就是点线面。实时重建:重建植被或者农作物的4D(3D+时间)生长态势;人体姿势识别;表情识别;

④点云数据管理:点云压缩,点云索引(KD、Octree),点云LOD(金字塔),海量点云的渲染

三维计算视觉研究内容包括:

(1)三维匹配:两帧或者多帧点云数据之间的匹配,因为激光扫描光束受物体遮挡的原因,不可能通过一次扫描完成对整个物体的三维点云的获取。因此需要从不同的位置和角度对物体进行扫描。三维匹配的目的就是把相邻扫描的点云数据拼接在一起。三维匹配重点关注匹配算法,常用的算法有 最近点迭代算法 ICP 和各种全局匹配算法。

(2)多视图三维重建:计算机视觉中多视图一般利用图像信息,考虑多视几何的一些约束,相关研究目前很火,射影几何和多视图几何是视觉方法的基础。在摄影测量中类似的存在共线方程,光束平差法等研究。这里也将点云的多视匹配放在这里,比如人体的三维重建,点云的多视重建不仅强调逐帧的匹配,还需要考虑不同角度观测产生误差累积,因此也存在一个优化或者平差的过程在里面。通常是通过观测形成闭环进行整体平差实现,多视图重建强调整体优化。可以只使用图像,或者点云,也可以两者结合(深度图像)实现。重建的结果通常是Mesh网格。

(3)3D SLAM:点云匹配(最近点迭代算法 ICP、正态分布变换方法 NDT)+位姿图优化( g2o 、LUM、ELCH、Toro、SPA);实时3D SLAM算法 (LOAM);Kalman滤波方法。3D SLAM通常产生3D点云,或者Octree Map。基于视觉(单目、双目、鱼眼相机、深度相机)方法的SLAM,比如orbSLAM,lsdSLAM...

(4)目标识别:无人驾驶汽车中基于激光数据检测场景中的行人、汽车、自行车、以及道路和道路附属设施(行道树、路灯、斑马线等)。

(5)形状检测与分类:点云技术在逆向工程中有很普遍的应用。构建大量的几何模型之后,如何有效的管理,检索是一个很困难的问题。需要对点云(Mesh)模型进行特征描述,分类。根据模型的特征信息进行模型的检索。同时包括如何从场景中检索某类特定的物体,这类方法关注的重点是模型。

(6)语义分类:获取场景点云之后,如何有效的利用点云信息,如何理解点云场景的内容,进行点云的分类很有必要,需要为每个点云进行Labeling。可以分为基于点的方法,基于分割的分类方法。从方法上可以分为基于监督分类的技术或者非监督分类技术,深度学习也是一个很有希望应用的技术。

(7)立体视觉与立体匹配 ZNCC

(8)SFM(运动恢复结构)

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

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(线、面提取)、连通分析、

分类:基于点的分类,基于分割的分类;监督分类与非监督分类

6、SLAM图优化

g2o 、LUM、ELCH、Toro、SPA

SLAM方法:ICP、MBICP、IDC、likehood Field、 Cross Correlation 、NDT

7、目标识别、检索

Hausdorff 距离计算(人脸识别)

8、变化检测

基于八叉树的变化检测

9. 三维重建

泊松重建、Delaunay triangulations

表面重建,人体重建,建筑物重建,树木重建。

实时重建:重建植被或者农作物的4D(3D+时间)生长态势;人体姿势识别;表情识别;

10.点云数据管理

点云压缩,点云索引(KD、Octree),点云LOD(金字塔),海量点云的渲染

点云驱动的计算机图形学主要研究应用

http://vcc.szu.edu.cn/research/2015/Points/


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6782412.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-28
下一篇 2023-03-28

发表评论

登录后才能评论

评论列表(0条)

保存