一种三维点云自动配准方法与流程

文档序号:17699684发布日期:2019-05-17 22:09阅读:520来源:国知局
一种三维点云自动配准方法与流程

本发明属于图像处理技术领域,具体涉及一种三维点云自动配准方法。



背景技术:

随着科学技术的进步与三维信息获取技术的快速发展,三维测量与三维重建技术在诸如逆向工程、文物保护、虚拟现实、增强现实、机器人视觉、自动导航、工业产品外观设计与生产、3d打印等领域得到了广泛的研究与应用。三维重建的方法主要包括基于图像的三维重建、基于几何构造的三维重建和基于扫描仪的三维重建这三大类。而本发明所研究的便是基于扫描仪的三维重建,它是指利用三维激光扫描设备或其他三维测量技术对现实世界中的真实物体进行快速扫描获取物体表面的三维点云数据,并对该点云数据进行表示、分析和处理,从而实现快速、精确的三维重建的技术。

鉴于三维扫描设备每次扫描的视角有限,导致出现获得的点云不完整,旋转错位,平移错位等问题,要得到的完整的点云就需要对局部点云进行配准,从而得到被测物体的完整数据模型。因此,在三维物体重建过程中点云配准显得尤为重要。

点云自动配准方法一般分为粗配准和精配准两步。粗配准方法包括标志点法、重心重合法、特征提取法等方法。标志点法需要人为贴上标志点,但人为因素会导致误差等问题,影响后续配准精度;重心重合法要将点云的两个中心重合在一起,适用于点云重叠度较高的情况;特征提取法一般不适用于物体特征不明显的点云配准。由于粗配准算法存在的上述缺陷以及点云的拓扑结构、稀疏程度、噪声等的存在,导致粗配准的精度很难满足人们的要求,因此,需要对粗配准结果进行精配准。

目前国内外最常用的精配准算法是迭代最近点算法(iterativeclosepoint,icp),但该算法存在以下缺陷:当两片点云没有较好的初始位置时,易陷入局部最优;并且,该算法是对点云中的所有点进行处理,因此搜寻匹配点时间很长,点云规模越大,效率越低。针对传统icp存在的以上缺陷,国内外众多学者提出了一系列的优化算法。如引入动态调整因子进行icp配准,在不影响配准算法的精度和收敛方向的前提下,减少了算法的迭代次数,从而提升了配准的效率,但该方法在点云初始位姿不好的情况下仍然容易导致局部最优。如针对不同尺度的点云配准问题,提出了一种扩展的gicp方法(即sgicp)进行点云尺度估计,可以有效的对室内外不同尺度的点云进行配准,但sgicp方法在点云尺度差别较大的情况下,由于不能有效而精确的查找对应点,所以不能有效的进行配准,此外,该方法没有考虑噪声干扰情况下点云配准的问题。针对点云覆盖率较低的情况,提出利用点云的局部深度、法线偏角和点云密度等局部特征建立局部特征描述子,解决了点云覆盖率较低的点云的配准问题,但该算法没有考虑到噪声存在下对点云进行配准的问题。针对含噪点云配准的问题,提出了稀疏迭代最近点(即sicp)算法,该算法虽然降低了离群点对点云配准的影响,但该算法并不能处理目标点云含有离群点的情况,同时算法效率较低。

综上所述,现有的基于icp的改进算法有如下不足之处:

(1)现有基于特征的配准算法大多存在速度快但精度较低或精度高但速度较慢的问题。当关键特征点选取较多时,精度相对较高,但由于计算量增加速度较慢。当关键特征点选取较少时,速度较快但精度相对较低。

(2)当算法的初始位姿不好时,会导致配准陷入局部最优的问题。

(3)存在噪声或外点干扰的情况下,点云配准精度不高或效率较低。



技术实现要素:

针对现有技术中存在的上述不足,本发明提供了一种三维点云自动配准方法,用以解决现有技术中icp算法计算效率、精度及易受噪声干扰的问题。为此,本发明在初始配准阶段通过计算点云中各特征点与其近邻点距离的均值来确定点云分辨率。其次,采用匹配度提取关键点对,减少了错误匹配率,提高了配准的精度和鲁棒性。

为解决上述技术问题,本发明采用了如下的技术方案:

一种三维点云自动配准方法,其特征在于,包括如下步骤:

s1、获取源点云p及目标点云q,基于源点云p及目标点云q建立kd-tree以加快k近邻点的搜索;

s2、计算源点云p和目标点云q中每个点的特征度,基于所述特征度提取源点云p和目标点云q中的特征点,分别得到特征点集pf和qf;

s3、分别计算pf和qf中的每个特征点的直方图特征描述子,基于所述特征描述子获取初始匹配点对;

s4、将满足距离约束的初始匹配点对作为候选匹配点对,采用ransac算法去除候选匹配点对中的误匹配点对,得到最终匹配点对;

s5、基于最终匹配点对,采用四元素法得到旋转矩阵r和平移向量t;

s6、基于旋转矩阵r和平移向量t将源点云p转换到目标点云q的坐标系下,得到源点云p1;

s7、基于源点云p1中的点的特征度将源点云p1中的点分为m级,并基于特征点集pf中特征点的稠密度计算源点云p1的分辨率上限值n,设当前分辨率值为1;

s8、计算当前分辨率下源点云p1中每一级的采样比例并提取关键点;

s9、计算源点云p1中各关键点与目标点云q中k个近邻点的匹配度,将匹配值最小的近邻点作为所述关键点的匹配点,将关键点及其匹配点记为关键匹配点对;

s10、基于关键匹配点对,采用四元素法得到旋转矩阵r1和平移向量t1;

s11、基于旋转矩阵r1和平移向量t1将源点云p1转换到目标点云q的坐标系下,得到源点云p2;

s12、重复执行s8至s11使目标函数最小,式中,np1表示源点云p1的点数,qi4为目标点云q中的任意一点,pi4为源点云p中与qi4对应的点;

s13、若当前分辨率大于或等于分辨率上限值,或者目标函数的均方根误差满足预设阈值,则结束迭代;否则,将当前分辨率加1,并返回执行s8。

优选地,s2中,基于公式计算源点云p和目标点云q中每个点的特征度;

式中,pni1为源点云p或目标点云q中任意一个点pi1的法向量,npj1为pi1的任意一个k近邻点pj1的法向量,pni1为pi1与其k近邻点法向量夹角平均值,即特征度;

若pni1>ε1,将pi1作为候选特征点,ε1为候选特征点提取阈值;

若候选特征点的特征度等于其k近邻点中特征度最大的近邻点的特征度,则将所述候选特征点作为特征点。

优选地,np表示源点云p的点数。

优选地,s7中,基于公式计算源点云p1的分辨率上限值n,式中,s表示调整因子,psi2表示源点云特征点集pf中任意一个特征点,表示为特征点psi2的k近邻点,np1表示源点云p1的点数,nps表示源点云特征点集pf中特征点的数量,round为四舍五入的函数。

优选地,s8中,基于公式及keypointi3,j3=round(ri3,j3·countj3)提取关键点,式中,ri3,j3为当前分辨率i3下j3级的采样比例,keypointi3,j3为当前分辨率i3下j3级的关键点,countj3为第j3级的总点数。

综上所述,本发明提供了一种三维点云自动配准方法,为解决传统icp算法计算效率、精度及易受噪声干扰的问题,本发明首先对源点云和目标点云建立kd-tree以加快临近点的搜索;然后采用基于法向量和特征直方图的配准方法实现粗配准,并对其中的特征提取部分进行了改进,能有效提取特征点,且不会损失大量特征不明显的点云信息。为了进一步提高配准精度,精配准提出一种改进的多分辨率迭代最近点算法,算法提出利用特征点的稠密度计算点云分辨率,同时对关键点采样方法进行了改进。该方法对于不同规模和含不同程度噪声的点云,在精度、速度、抗噪性方面都得到了改善。

附图说明

图1为本发明公开的一种三维点云自动配准方法流程图;

图2为配准前的bunny点云模型原始图;

图3为经典icp算法对bunny点云配准的结果图;

图4为现有改进icp算法对bunny点云配准的结果图;

图5为现有粗配准算法对bunny点云配准的结果图;

图6为本发明公开一种三维点云自动配准方法对bunny点云进行粗配准的结果图;

图7为本发明公开一种三维点云自动配准方法对bunny点云进行精配准的结果图;

图8为带噪声的bunny点云模型原始图;

图9为经典icp算法对带噪声的bunny点云配准的结果图;

图10为现有改进icp算法对带噪声的bunny点云配准的结果图;

图11为现有粗配准算法对带噪声的bunny点云配准的结果图;

图12为本发明公开一种三维点云自动配准方法对带噪声的bunny点云进行粗配准的结果图;

图13为本发明公开一种三维点云自动配准方法对带噪声的bunny点云进行精配准的结果图。

具体实施方式

下面结合附图对本发明作进一步的详细说明。

如图1所示,本发明公开了一种三维点云自动配准方法,包括如下步骤:

s1、获取源点云p及目标点云q,基于源点云p及目标点云q建立kd-tree以加快k近邻点的搜索;

在本发明中,可用三维扫描仪从不同视角扫描物体表面,获得至少两个视角三维点云,取两个视角三维点云分别作为源点云p和目标点云q,并对源点云p和目标点云q建立kd-tree

s2、计算源点云p和目标点云q中每个点的特征度,基于所述特征度提取源点云p和目标点云q中的特征点,分别得到特征点集pf和qf;

s3、分别计算pf和qf中的每个特征点的直方图特征描述子,基于所述特征描述子获取初始匹配点对;

s4、将满足距离约束的初始匹配点对作为候选匹配点对,采用ransac算法去除候选匹配点对中的误匹配点对,得到最终匹配点对;

s5、基于最终匹配点对,采用四元素法得到旋转矩阵r和平移向量t;

s6、基于旋转矩阵r和平移向量t将源点云p转换到目标点云q的坐标系下,得到源点云p1;

s7、基于源点云p1中的点的特征度将源点云p1中的点分为m级,并基于特征点集pf中特征点的稠密度计算源点云p1的分辨率上限值n,设当前分辨率值为1;

s8、计算当前分辨率下源点云p1中每一级的采样比例并提取关键点;

s9、计算源点云p1中各关键点与目标点云q中k个近邻点的匹配度,将匹配值最小的近邻点作为所述关键点的匹配点,将关键点及其匹配点记为关键匹配点对;

对源点云p1中的任意关键点pi5,使用kd-tree求取点pi5在目标点云q中的k近邻点;

分别计算pi5和其k近邻点的匹配度w(pi5,qj5):

qj5为pi5的k近邻点中的任意一个近邻点,上式中pi5,1、pi5,2、pi5,3、pi5,4分别为点pi5的主曲率k1、k2、高斯曲率k和平均曲率h,qj5,1、qj5,2、qj5,3、qj5,4分别为qj5的主曲率k1、k2、高斯曲率k、平均曲率h。

计算匹配度时若某点无曲率信息,则使用kd-tree求取其在对应点云的k近邻点,计算曲率信息并存储;选取w(pi5,qj5)值最小的点作为pi5的匹配点;由此选取出源点云p1中各个关键点的匹配点。

s10、基于关键匹配点对,采用四元素法得到旋转矩阵r1和平移向量t1;

s11、基于旋转矩阵r1和平移向量t1将源点云p1转换到目标点云q的坐标系下,得到源点云p2;

s12、重复执行s8至s11使目标函数最小,式中,np1表示源点云p1的点数,qi4为目标点云q中的任意一点,pi4为源点云p中与qi4对应的点;

s13、若当前分辨率大于或等于分辨率上限值,或者目标函数的均方根误差满足预设阈值,则结束迭代;否则,将当前分辨率加1,并返回执行s8。

本发明中,s1至s6为粗配准,s7至s13为精配准,同现有的icp算法相比较,本发明具有以下有益技术效果:

提出一种三维点云自动配准方法,该方法针对icp算法对点云初始位姿的要求,通过粗配准算法进行快速配准,然后通过改进的多分辨率迭代最近点配准算法进行精配准,进一步提高算法的精度。

为了尽可能的提高配准精度、增强算法的抗噪性,本发明在粗配准部分采用欧式距离约束和ransac算法进行外点剔除,提高了粗配准的精度,确保其对于含噪声的和部分重叠度的点云都能为精配准提供较好的初始位姿。在精确配准部分,首先改进了分辨率的设置问题,分辨率可通过点云特征点的稠密度自适应的取值,避免了分辨率设置过大而导致的配准速度较慢的问题和分辨率设置过小而导致的精度不高的问题。其次改进了算法的采样比例,提高了其对于特征信息不明显的点云的配准精度,增强了算法的适用性。本发明通过实验证明了算法的可行性和有效性,无论对哪种规模的点云进行配准,本发明精度都比较高,同时速度较快。

具体实施时,s2中,基于公式计算源点云p和目标点云q中每个点的特征度;

式中,pni1为源点云p或目标点云q中任意一个点pi1的法向量,npj1为pi1的任意一个k近邻点pj1的法向量,pni1为pi1与其k近邻点法向量夹角平均值,即特征度;

若pni1>ε1,将pi1作为候选特征点,ε1为候选特征点提取阈值;

若候选特征点的特征度等于其k近邻点中特征度最大的近邻点的特征度,则将所述候选特征点作为特征点。

具体实施时,np表示源点云p的点数。

在特征点提取过程中,阈值的选取相当重要。若阈值取值过大,提取的特征点就会相对较少,可能会损失部分点云的关键特征信息和大量细节信息;若阈值选取过小,可以保留大量细节信息,但是会导致点云配准的速度变慢。阈值ε1为根据实验选取的经验值,针对不同的点云数据需要多次实验选择合适的阈值,在实际应用中不方便。本发明提出根据点云中每个点的法向量与其k近邻点法向量的乘积的均值来计算,该方法可根据法向量变化自适应的计算阈值,从而自适应的提取特征点,可以很好的保留点云的关键特征信息,同时剔除了大量影响较小的细节信息,加快了配准速度。

具体实施时,s7中,基于公式计算源点云p1的分辨率上限值n,式中,s表示调整因子,psi2表示源点云特征点集pf中任意一个特征点,表示为特征点psi2的k近邻点,np1表示源点云p1的点数,nps表示源点云特征点集pf中特征点的数量,round为四舍五入的函数。

多分辨率配准的精髓在于可以根据级数和分辨率来调整所提取的关键点。级数控制每一级提取的点数,级数越大,采样比例越大;分辨率控制整体提取的点数,分辨率越大,整体采样的点越多,精度越高,速度相对较慢。为了使点云快速收敛,利用低分辨率匹配点对进行快速配准,然后利用高分辨率匹配点对提高配准精度,以此来解决点云配准精度低、速度慢的问题。

分辨率可以用点云的稠密程度来反映,稠密程度为点云中各点与其k近邻点欧式距离的均值。但计算一片点云中的所有点的稠密程度其计算量很大,因此,本发明提出利用特征点与其k近邻点欧式距离的均值来计算,并根据调整因子动态调整分辨率的大小。该方法根据点云特征点的稠密度计算点云分辨率,比起凭经验设置更加合理。为了不重复提取特征点从而减少时间复杂度,在粗配准提取特征点时就计算并输出点云的分辨率。

法向量夹角平均值越大,其特征越明显,反之,法向量夹角平均值越小,特征越不明显。但通常获取的大多数点云数据,特征明显的点相对较少,特征不明显的点相对较多,因此,在配准时,若仅依靠特征明显的关键点进行配准其精度较低,且有可能会导致配准失败。本发明提出改进的采样方式不仅充分利用了特征明显的关键点,同时充分利用了特征不明显的点。

具体实施时,s8中,基于公式及keypointi3,j3=round(ri3,j3·countj3)提取关键点,式中,ri3,j3为当前分辨率i3下j3级的采样比例,keypointi3,j3为当前分辨率i3下j3级的关键点,countj3为第j3级的总点数。

该采样方式提高了级数较低时的采样比例,充分利用了特征不明显的点,极大的提高了配准的精度。

下面为本发明采用standford3dscanningrepository的bunny和buddha点云进行实验。图2为配准前的bunny点云模型原始图,图3、图4、图5、图6、图7分别为传统icp算法、现有改进icp算法、现有粗配准算法、本发明粗配准算法、本发明精配准算法对bunny点云配准的结果图。图8为带噪声的bunny点云模型原始图,图9、图10、图11、图12、图13分别为传统icp算法、现有改进icp算法、现有粗配准算法、本发明粗配准算法、本发明精配准算法对带噪声的bunny点云进行配准的结果图。表一为在不同算法下的配准对比:

表1不同算法配准对比

表1为各种配准算法对原bunny点云和带噪声的bunny点云配准速度和配准误差的对比。可以看出经典icp算法最耗时,同时容易受噪声干扰,在噪声点云配准中其精度很低;现有改进icp算法配准速度得到了极大的提升,在原bunny点云配准时其精度比经典icp算法低,但同样易受噪声干扰;现有粗配准算法精度比经典icp算法和现有改进icp算法高,同时受噪声干扰的程度比以上两种算法小,但其速度较慢;本文粗配准算法在原bunny点云配准和带噪声点云配准时精度比现有粗配准算法略低,但其速度比现有粗配准算法快将近3倍;本文精配准算法在粗配准的基础上进一步提升了精度,尤其是对带噪声的点云配准其稳定性更好、精度更高。

选取不同视角不同规模的buddha点云数据进行实验,表2为各种算法对不同规模的buddha点云进行配准的对比,表3为对buddha(0度和24度)点云数据加入不同规模噪声进行配准的对比。

表2不同规模buddha点云配准

从表2中可以看出,无论是哪种配准算法,点云规模越大,其配准所花时间越多;无论是哪种规模的点云数据,本文算法总体性能最佳。经典icp算法虽然配准精度较好,但是其速度太慢;现有改进icp算法和现有粗配准算法精度差不多,但现有改进icp算法速度更快,本文方法通过二次配准进一步提高了配准精度,其配准精度在几种对比算法中最高,总体速度比现有粗配准算法更快。

表3不同规模噪声的buddha点云配准

从表3中可以看出,各种算法在加入噪声点后其精度和速度都受到了不同程度的影响。其中,经典icp算法和现有改进icp算法受噪声影响的程度最大,随着噪声的加入其精度变得较差。经典icp算法在加入噪声点后,其运算效率变快、精度变低,但并不是随着加入的噪声越多其精度越差,这是由于噪声点的位置分布所导致。现有改进icp算法在加入噪声点后,其速度变化不是很大,精度变低,但精度不是随着噪声点的规模呈现线性增长。现有粗配准算法和本文粗配准、精配准算法鲁棒性都比较好,其精度基本不受噪声影响,现有粗配准算法和本文粗配准算法中由于加入了ransac算法进一步剔除了误匹配点,增强了算法的鲁棒性,且本文粗配准算法速度比现有粗配准算法快近3倍。本文精配准算法在粗配准的基础上进一步进行配准,同时改进了采样比例,使其配准精度在本文各种算法中更高、配准稳定性更好。

从以上实验可以看出,本发明提出一种三维点云自动配准方法,该方法针对icp算法对点云初始位姿的要求,结合现有粗配准算法进行快速配准,然后对位姿较好的点云进行精确配准,进一步提高算法的精度。

为了尽可能的提高配准精度、增强算法的抗噪性,本发明在粗配准部分采用欧式距离约束和ransac算法进行外点剔除,提高了粗配准的精度,确保其对于含噪声的和部分重叠度的点云都能为精配准提供较好的初始位姿。在精确配准部分,首先改进了分辨率的设置问题,分辨率可通过点云特征点的稠密度自适应的取值,避免了分辨率设置过大而导致的配准速度较慢的问题和分辨率设置过小而导致的精度不高的问题。其次改进了算法的采样比例,提高了其对于特征信息不明显的点云的配准精度,增强了算法的适用性。本发明通过实验证明了算法的可行性和有效性,无论对哪种规模的点云进行配准,本发明精度都比较高,同时速度较快。

上仅是本发明优选的实施方式,需指出是,对于本领域技术人员在不脱离本技术方案的前提下,还可以做出若干变形和改进,上述变形和改进的技术方案应同样视为落入本申请要求保护的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1