一种基于曲率滤波的三维点云畸变校正方法及其系统技术领域
本发明涉及三维重建技术,尤其涉及一种基于曲率滤波的三维点云畸变校
正方法及其系统。
背景技术
三维激光扫描技术(3DLaserScanningTechnology)可以连续、自动、不接
触、快速地采集大量的目标物表面三维点数据,即建点云(PointClouds)。它是
一种先进的全自动高精度立体扫描技术,是用三维激光扫描仪获取目标物体表
面各点的空间坐标,然后由获得的测量数据结构构造出目标物的三维模型的一
种全自动测量技术。三维激光扫描技术是继GPS之后的又一项测绘新技术,已
成为空间数据获取的重要技术手段。
然而,在获取点云数据时,由于设备精度、操作者经验、环境因素等带来
的影响,以及磁波衍射特性、被测物体表面性质变化和数据拼接配准操作过程
的影响,点云数据中将不可避免地出现一些噪声点。实际应用中除了这些测量
随机误差产生的噪声点之外,由于受到外界干扰如实现遮挡,障碍物等因素的
影响,点云数据中往往存在着一些离主体点云即被测物体点云较远的离散点,
即离群点。这些产生的噪声点与离群点对后续的点云处理流程影响很大,只有
将噪声点与离群点进行处理后,才能更好地进行配准、特征提取、曲面重建、
可视化等后续处理。
去除点云的噪声点与离群点的处理又可称为点云平滑或者点云光顺,也可
称为三维点云畸变校正。由于三维模型几何特征的多样性和噪声本身的复杂性,
故如何在光顺的同时有效地保持模型的特征是一个亟待解决的问题。
目前,比较流行的光顺算法大致可分为以下三类:一类是拉普拉斯光顺算
法,一类是基于滤波器的邻域光顺算法,还有一类是基于平均曲率流的光顺算
法。拉普拉斯算法是近年来得到广泛应用的一种算法,该算法能有效地调整网
格使其密度和形状都接近规则化,但是对于网格分布不均匀和含有大量不规则
三角面片的样件模型,这种过于均匀化的调整方法会导致原始模型的失真与变
形。基于滤波器的邻域光顺算法虽然能够保持物体的几何特征,但是无法控制
物体体积的变化,某些情况下会造成网格的变形与扭曲。平均曲率流算法虽然
可以得到光顺的效果,但是该算法未能很好地保持网格形状,容易产生大量不
规则的三角面片。
在申请号为201310483737.9的专利公开文件中,提出了一种点云平滑系统,
包括:输入模块、处理模块、计算模块、拟合模块、投影模块及输出模块。利
用上述模块,可对产品的点云数据构建曲面并进行三角网格化;根据相邻点之
间的距离标记相点;确定每个相点的邻域点;确定每个相点所在的元素的类型;
将在预设类型的元素上的相点及对应的邻域点拟合成相对应的预设类型的面;
根据所述相点的坐标将所述相点投影至与该相点对应的拟合后的面上,并确定
所述相点对应的投影点的坐标;及输出所有相点对应的投影点的坐标。但该方
法需要构建曲面并进行三角网格化,较为复杂。
曲率滤波是一种图像处理中的优化算法,最早出现于龚元浩博士的博士论
文第六章(ETHE-Collection:Spectrallyregularizedsurfaces)。无论是在二维图像
中的去噪、平滑问题还是在三维点云中的去噪、平滑问题,通常都是病态的,
而病态的问题需要正则项。曲率正则化是病态问题常用的正则项,得到的模型
通常较好,但是这些模型也难于求解。传统的求解方法有两种:一种基于梯度
下降法,另一种基于EulerLagrange方程。通常,后一种解法比前一种更加高效,
但是如何得到该方程通常又非常复杂,而且得到的方程很难看出其对应的物理
意义。
发明内容
本发明所要解决的技术问题是:提供一种基于曲率滤波的三维点云畸变校
正方法及其系统,减小计算复杂度,提高平滑点云数据的效果和效率。
为了解决上述技术问题,本发明采用的技术方案为:一种基于曲率滤波的
三维点云畸变校正方法,包括
获取三维点云模型;
获取所述三维点云模型中的各个点ni的K邻域;
在所述点ni的K邻域中选取平面,获取平面集Ai;
分别计算点ni到所述平面集Ai中的平面的投影距离,确定最短距离di;
将点ni垂直投影到所述最短距离di对应的平面,获取点ni在所述最短距离di
对应的平面上的投影点mi;
输出所述投影点mi。
本发明还涉及一种基于曲率滤波的三维点云畸变校正系统,包括
第一获取模块,用于获取三维点云模型;
第二获取模块,用于获取所述三维点云模型中的各个点ni的K邻域;
选取模块,用于在所述点ni的K邻域中选取平面;
第三获取模块,用于获取平面集Ai;
计算模块,用于分别计算点ni到所述平面集Ai中的平面的投影距离;
确定模块,用于确定最短距离di;
投影模块,用于将点ni垂直投影到所述最短距离di对应的平面;
第四获取模块,用于获取点ni在所述最短距离di对应的平面上的投影点mi;
输出模块,用于输出所述投影点mi。
本发明的有益效果在于:对三维点云模型中的点寻找K邻域,根据所述K
邻域中的点构造平面,实现三维曲率拟合,可减小计算复杂度;通过三维曲率
计算点云的投影方位,将点云中的所有点垂直投影到距离所述点最近的平面,
最后输出其投影点,可以有效地去除点云中的噪声点与离群点,很好地平滑点
云模型,同时很好地保持了物体的细节和几何特征未出现畸变,提高平滑点云
数据的效果与效率,具有高效性和通用性等特点。
附图说明
图1为本发明一种基于曲率滤波的三维点云畸变校正方法的流程图;
图2为本发明实施例一的建筑物点云数据示意图;
图3为图2的部分点云数据放大效果图;
图4为图3中的点云数据校正后的点云数据示意图;
图5为本发明一种基于曲率滤波的三维点云畸变校正系统的结构示意图。
标号说明:
1、第一获取模块;2、第二获取模块;3、选取模块;4、第三获取模块;5、
计算模块;6、确定模块;7、投影模块;8、第四获取模块;9、输出模块。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并
配合附图详予说明。
本发明最关键的构思在于:对三维点云中各个点的K邻域构造平面集,实
现三维曲率的拟合,通过三维曲率计算点云的投影方位,实现点云畸变校正。
请参阅图1,一种基于曲率滤波的三维点云畸变校正方法,包括
获取三维点云模型;
获取所述三维点云模型中的各个点ni的K邻域;
在所述点ni的K邻域中选取平面,获取平面集Ai;
分别计算点ni到所述平面集Ai中的平面的投影距离,确定最短距离di;
将点ni垂直投影到所述最短距离di对应的平面,获取点ni在所述最短距离di
对应的平面上的投影点mi;
输出所述投影点mi。
从上述描述可知,本发明的有益效果在于:可以有效地去除三维点云模型
的噪声点与离群点,很好地平滑点云模型,实现三维点云畸变校正。
进一步地,所述“在所述点ni的K邻域中选取平面”具体为:在所述点ni的
K邻域中依次选取3个点构造平面。
进一步地,所述构造平面的3个点不在一条直线上。
由上述描述可知,对三维点云中各个点的K邻域构造平面集,实现三维曲
率的拟合,且方法简单易懂。
进一步地,所述K的取值范围为3-12。
进一步地,所述K的值为8。
由上述描述可知,使K处于一个适当的范围,防止K的取值过大,增加计
算的复杂度,使得算法效率降低,避免过度校正。
进一步地,所述“获取所述三维点云模型中的各个点ni的K邻域”具体为:
通过KD数算法获取所述三维点云模型中的各个点ni的K邻域。
由上述描述可知,通过KD树算法,可提高K邻域的搜索效率。
本发明还提出了一种基于曲率滤波的三维点云畸变校正系统,包括
第一获取模块,用于获取三维点云模型;
第二获取模块,用于获取所述三维点云模型中的各个点ni的K邻域;
选取模块,用于在所述点ni的K邻域中选取平面;
第三获取模块,用于获取平面集Ai;
计算模块,用于分别计算点ni到所述平面集Ai中的平面的投影距离;
确定模块,用于确定最短距离di;
投影模块,用于将点ni垂直投影到所述最短距离di对应的平面;
第四获取模块,用于获取点ni在所述最短距离di对应的平面上的投影点mi;
输出模块,用于输出所述投影点mi。
进一步地,所述选取模块具体用于:在所述点ni的K邻域中依次选取3个
点构造平面。
进一步地,所述构造平面的3个点不在一条直线上。
进一步地,所述第二获取模块具体用于:通过KD数算法获取所述三维点
云模型中的各个点ni的K邻域。
实施例一
请参照图1,本发明的实施例一为:一种基于曲率滤波的三维点云畸变校正
方法,包括如下步骤:
S1:获取三维点云模型;可选地,可采用RIEGL公司生产的VZ-4000激光
扫描仪获取三维点云模型,图2为一建筑物的点云数据,点云采样点之间的距
离为6cm,点云扫描的密度为垂直方向和水平方向各为0.05度,扫描频率为
300HZ。
S2:获取所述三维点云模型中的各个点ni的K邻域,即分别获取距离各个
点最近的K个点;可选地,可通过KD树算法获取所述K邻域;所述K的取值
至少为3,但K的取值不宜过大,否则会增加计算的复杂度,降低算法效率,
甚至出现过度校正,可选地,所述K的取值为3-12,优选地,所述K的取值为
8。
S3:在所述点ni的K邻域中选取平面,获取平面集Ai;可选地,在所述点ni的
K邻域中依次选取3个点构造平面,即对K个点进行排列组合,每次在K个点
中选取3个点,若所述3个点可构成一个平面,则加入平面集Ai,若所述3个点
处于同一条直线,无法构成一个平面,则不做处理。
S4:分别计算点ni到所述平面集Ai中的平面的投影距离,确定最短距离di。
S5:将点ni垂直投影到所述最短距离di对应的平面,获取点ni在所述最短距
离di对应的平面上的投影点mi。
S6:输出所述投影点mi,即为校正后的三维点云模型。
图3为图2中最靠右的建筑物屋顶的点云数据放大的效果图,通过本实施
例的方法,得到如图4所示的点云数据。对比图3和图4,点云畸变校正后,去
除了点云边缘的噪声点与离群点,使得建筑物的边缘变得光滑平顺。
实施例二
请参照图5,本实施例为对应上述方法的一种基于曲率滤波的三维点云畸变
校正系统,包括第一获取模块1、第二获取模块2、选取模块3、第三获取模块
4、计算模块5、确定模块6、投影模块7、第四获取模块8和输出模块9。
所述第一获取模块1用于获取三维点云模型;
所述第二获取模块2用于获取所述三维点云模型中的各个点ni的K邻域,
具体用于通过KD数算法获取所述三维点云模型中的各个点ni的K邻域;
所述选取模块3用于在所述点ni的K邻域中选取平面,具体用于在所述点ni
的K邻域中依次选取3个点构造平面;
所述第三获取模块4用于获取平面集Ai;
所述计算模块5用于分别计算点ni到所述平面集Ai中的平面的投影距离;
所述确定模块6用于确定最短距离di;
所述投影模块7用于将点ni垂直投影到所述最短距离di对应的平面;
所述第四获取模块8用于获取点ni在所述最短距离di对应的平面上的投影点
mi;
所述输出模块9用于输出所述投影点mi。
综上所述,本发明提供的一种基于曲率滤波的三维点云畸变校正方法及其
系统,对三维点云模型中的点寻找K邻域,根据所述K邻域中的点构造平面,
实现三维曲率拟合,可减小计算复杂度;通过KD树算法寻找K邻域,可提高
搜索效率;通过三维曲率计算点云的投影方位,可以有效地去除点云中的噪声
点与离群点,很好地平滑点云模型,同时很好地保持了物体的细节和几何特征
未出现畸变,提高平滑点云数据的效果与效率,具有高效性和通用性等特点。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利
用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术
领域,均同理包括在本发明的专利保护范围内。