一种基于曲率滤波的三维点云畸变校正方法及其系统的制作方法
【技术领域】
[0001 ]本发明涉及三维重建技术,尤其涉及一种基于曲率滤波的三维点云畸变校正方法及其系统。
【背景技术】
[0002]三维激光扫描技术(3D Laser Scanning Technology)可以连续、自动、不接触、快速地采集大量的目标物表面三维点数据,即建点云(Point Clouds)。它是一种先进的全自动高精度立体扫描技术,是用三维激光扫描仪获取目标物体表面各点的空间坐标,然后由获得的测量数据结构构造出目标物的三维模型的一种全自动测量技术。三维激光扫描技术是继GPS之后的又一项测绘新技术,已成为空间数据获取的重要技术手段。
[0003]然而,在获取点云数据时,由于设备精度、操作者经验、环境因素等带来的影响,以及磁波衍射特性、被测物体表面性质变化和数据拼接配准操作过程的影响,点云数据中将不可避免地出现一些噪声点。实际应用中除了这些测量随机误差产生的噪声点之外,由于受到外界干扰如实现遮挡,障碍物等因素的影响,点云数据中往往存在着一些离主体点云即被测物体点云较远的离散点,即离群点。这些产生的噪声点与离群点对后续的点云处理流程影响很大,只有将噪声点与离群点进行处理后,才能更好地进行配准、特征提取、曲面重建、可视化等后续处理。
[0004]去除点云的噪声点与离群点的处理又可称为点云平滑或者点云光顺,也可称为三维点云畸变校正。由于三维模型几何特征的多样性和噪声本身的复杂性,故如何在光顺的同时有效地保持模型的特征是一个亟待解决的问题。
[0005]目前,比较流行的光顺算法大致可分为以下三类:一类是拉普拉斯光顺算法,一类是基于滤波器的邻域光顺算法,还有一类是基于平均曲率流的光顺算法。拉普拉斯算法是近年来得到广泛应用的一种算法,该算法能有效地调整网格使其密度和形状都接近规则化,但是对于网格分布不均匀和含有大量不规则三角面片的样件模型,这种过于均匀化的调整方法会导致原始模型的失真与变形。基于滤波器的邻域光顺算法虽然能够保持物体的几何特征,但是无法控制物体体积的变化,某些情况下会造成网格的变形与扭曲。平均曲率流算法虽然可以得到光顺的效果,但是该算法未能很好地保持网格形状,容易产生大量不规则的三角面片。
[0006]在申请号为201310483737.9的专利公开文件中,提出了一种点云平滑系统,包括:输入模块、处理模块、计算模块、拟合模块、投影模块及输出模块。利用上述模块,可对产品的点云数据构建曲面并进行三角网格化;根据相邻点之间的距离标记相点;确定每个相点的邻域点;确定每个相点所在的元素的类型;将在预设类型的元素上的相点及对应的邻域点拟合成相对应的预设类型的面;根据所述相点的坐标将所述相点投影至与该相点对应的拟合后的面上,并确定所述相点对应的投影点的坐标;及输出所有相点对应的投影点的坐标。但该方法需要构建曲面并进行三角网格化,较为复杂。
[0007]曲率滤波是一种图像处理中的优化算法,最早出现于龚元浩博士的博士论文第六章(ΕΤΗ E-Collect1n: Spectrally regularized surfaces)。无论是在二维图像中的去噪、平滑问题还是在三维点云中的去噪、平滑问题,通常都是病态的,而病态的问题需要正则项。曲率正则化是病态问题常用的正则项,得到的模型通常较好,但是这些模型也难于求解。传统的求解方法有两种:一种基于梯度下降法,另一种基于Euler Lagrange方程。通常,后一种解法比前一种更加高效,但是如何得到该方程通常又非常复杂,而且得到的方程很难看出其对应的物理意义。
【发明内容】
[0008]本发明所要解决的技术问题是:提供一种基于曲率滤波的三维点云畸变校正方法及其系统,减小计算复杂度,提高平滑点云数据的效果和效率。
[0009]为了解决上述技术问题,本发明采用的技术方案为:一种基于曲率滤波的三维点云畸变校正方法,包括
[0010]获取三维点云模型;
[0011 ]获取所述三维点云模型中的各个点m的K邻域;
[0012]在所述点m的K邻域中选取平面,获取平面集A1;
[0013]分别计算点m到所述平面集A1中的平面的投影距离,确定最短距离CU;
[0014]将点m垂直投影到所述最短距离cU对应的平面,获取点m在所述最短距离cU对应的平面上的投影点HU;
[0015]输出所述投影点nu。
[0016]本发明还涉及一种基于曲率滤波的三维点云畸变校正系统,包括
[0017]第一获取模块,用于获取三维点云模型;
[0018]第二获取模块,用于获取所述三维点云模型中的各个点m的K邻域;
[0019]选取模块,用于在所述点m的K邻域中选取平面;
[0020]第三获取模块,用于获取平面集A1;
[0021]计算模块,用于分别计算点m到所述平面集^中的平面的投影距离;
[0022]确定模块,用于确定最短距离di;
[0023]投影模块,用于将点m垂直投影到所述最短距离Cl1对应的平面;
[0024]第四获取模块,用于获取点m在所述最短距离山对应的平面上的投影点nu;
[0025]输出模块,用于输出所述投影点nu。
[0026]本发明的有益效果在于:对三维点云模型中的点寻找K邻域,根据所述K邻域中的点构造平面,实现三维曲率拟合,可减小计算复杂度;通过三维曲率计算点云的投影方位,将点云中的所有点垂直投影到距离所述点最近的平面,最后输出其投影点,可以有效地去除点云中的噪声点与离群点,很好地平滑点云模型,同时很好地保持了物体的细节和几何特征未出现畸变,提高平滑点云数据的效果与效率,具有高效性和通用性等特点。
【附图说明】
[0027]图1为本发明一种基于曲率滤波的三维点云畸变校正方法的流程图;
[0028]图2为本发明实施例一的建筑物点云数据示意图;
[0029]图3为图2的部分点云数据放大效果图;
[0030]图4为图3中的点云数据校正后的点云数据示意图;
[0031]图5为本发明一种基于曲率滤波的三维点云畸变校正系统的结构示意图。
[0032]标号说明:
[0033]1、第一获取模块;2、第二获取模块;3、选取模块;4、第三获取模块;5、计算模块;6、确定模块;7、投影模块;8、第四获取模块;9、输出模块。
【具体实施方式】
[0034]为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图详予说明。
[0035]本发明最关键的构思在于:对三维点云中各个点的K邻域构造平面集,实现三维曲率的拟合,通过三维曲率计算点云的投影方位,实现点云畸变校正。
[0036]请参阅图1,一种基于曲率滤波的三维点云畸变校正方法,包括
[0037]获取三维点云模型;
[0038]获取所述三维点云模型中的各个点m的K邻域;
[0039]在所述点m的K邻域中选取平面,获取平面集A1;
[0040]分别计算点m到所述平面集A1中的平面的投影距离,确定最短距离CU;
[0041]将点m垂直投影到所述最短距离cU对应的平面,获取点m在所述最短距离cU对应的平面上的投影点HU ;
[0042]输出所述投影点nu。
[0043]从上述描述可知,本发明的有益效果在于:可以有效地去除三维点云模型的噪声点与离群点,很好地平滑点云模型,实现三维点云畸变校正。
[0044]进一步地,所述“在所述点m的K邻域中选取平面”具体为:在所述点m的K邻域中依次选取3个点构造平面。
[0045]进一步地,所述构造平面的3个点不在一条直线上。
[0046]由上述描述可知,对三维点云中各个点的K邻域构造平面集,实现三维曲率的拟合,且方法简单易懂。
[0047]进一步地,所述K的取值范围为3-12。
[0048]进一步地,所述K的值为8。
[0049]由上述描述可知,使K处于一个适当的范围,防止K的取值过大,增加计算的复杂度,使得算法效率降低,避免过度校正。
[0050]进一步地,所述“获取所述三维点云模型中的各个点m的K邻域”具体为:通过KD数算法获取所述三维点云模型中的各