一种基于模板匹配的点云配准方法与流程

文档序号:20785655发布日期:2020-05-19 21:40阅读:2219来源:国知局
一种基于模板匹配的点云配准方法与流程

本发明涉及一种高精度的刚性点云配准方法,具体说是一种基于模板匹配的点云配准方法。



背景技术:

随着计算机视觉技术和传感器技术的不断突破,通过激光扫描生成物体点云的方法迅速发展完善。目前,点云的获取可通过深度相机、双目相机和3d激光扫描相机等设备获取。基于物体点云处理技术已经广泛用于人机交互、虚拟现实、逆向工程和机器视觉等领域。

在机器视觉领域,点云配准处理技术是估计场景中物体的相对位姿的重要方法。点云配准估计物体位姿即是确定场景中的源点云到目标点云的转换关系即(r、t矩阵),将模板点云作为源点云和场景中的物体点云作为目标点云进行配准,即可得出物体点云相对于模板点云的转换位姿关系,实现了工业场景下的物体的位姿估计的功能。点云配准常用的方法是先粗配准再精配准。粗配准常用的方法有基于霍夫算法和基于采样一致性初始配准算法等。粗配准首先提取点云数据的局部几何信息(例如曲率、法向量、邻近点密度等)作为描述特征,通过这些特征来寻找源点云集与目标点集之间的对应关系,利用迭代算法进行计算得出转换关系。精配准常用的方法有迭代最近点算法(icp)和正态分布变换算法(ndt)等。精配准是一种基于轮廓特征的点集对点集的配准方法。待配准的源点云和目标点云先进行sac-ia粗配准,使得匹配点之间的距离在一定的阀值内,作为匹配点对。然后再根据距离最近原则匹配的初始点对应关系,计算源点云到目标点云的每个点的距离。采用方向向量阈值剔除错误的对应点对,确定目标函数,计算变换矩阵直至满足收敛条件为止。粗配准为精配准提供了配准的初值,其配准的效果直接影响精配准算法的执行效率和精度。

现有的针对点云粗配准的方法,存在以下问题:一、点云数据量较大时,粗配准较耗时。二、针对部分物体点云,特征较难选取,单一的特征信息无法较好的描述整体点云信息。三、粗配准受现场采集点云效果的影响较大,配准结果不稳定,鲁棒性较差。



技术实现要素:

本发明的目的在于,克服现有技术存在的缺陷,提出了一种基于模板匹配的点云配准方法,可以实现场景下的点云数据高精度高效率的配准。

本发明方法的基本技术思路:不使用传统的粗配准方法,通过模板匹配,计算点云模板与目标点云的转换关系,再根据转换关系变换点云数据的方法取代点云粗配准,将其转换的结果作为精配准的初值,再进行icp或者ndt精配准,最终实现源点云和目标点云的配准。

本发明一种基于模板匹配的点云配准方法,其步骤如下:

步骤1.使用双目相机或者3d激光扫描相机,在相机视野下放置单个工件进行扫描,获取工件模板点云,在相机视野下放置多个工件获取场景物体点云数据。

步骤2.制作工件点云模板匹配图片,将步骤1采集的工件模板点云映射到二维空间深度图中,设置模板相关参数,保存二维模板点云深度映射图。

步骤3.先裁剪现场采集的点云,保留工件所在平面的点云,再进行栅格化处理,减少点云的数据量,再进行滤波操作,去除噪声点,再利用欧几里得分割法去除平面,最后通过区域生长法分割出最终的工件点云。最终的工件点云即为待配准的目标点云。

步骤4.对步骤3预处理完成的点云数据映射深度图。

步骤5.模板匹配,针对步骤2保存的模板的点云深度映射图进行边缘特征识别,再对步骤4映射的点云数深度图进行边缘特征识别,通过模板匹配的方法,计算相应的中心点和旋转角度信息。。

步骤6.根据步骤5模板匹配结果,将中心点和旋转角度变换成矩阵形式,平移和旋转模板点云。

步骤7.将步骤6的模板点云变换到步骤3最终的工件点云上,实现中心点重合和旋转角度相等。

步骤8.使用icp或者ndt精配准的方法配准模板点云和场景点云,实现源点云和目标点云的配准。

所述使用icp或者ndt精配准的方法:计算点云的配准的公式(1),将模板点云转换到世界坐标系下公式(2),根据二维模板匹配信息,将模板点云p旋转平移到与场景点云q平行的面公式(3),将上两步处理完成的模板点云p,变换到实际的场景点云q上,记为p’(x1’…n’,y1’…n’,z1’…n’),点云数据记为点云精配准的初值公式(4),将处理完成的点云粗配准点云p’,使用icp或者ndt配准方法,进行精配准到场景点云q公式(5),总结公式(1)(2)(3)(4)(5),得出点云配准算法计算公式:

q(x1…n,y1…n,z1…n)=t(r,t)×p(x1…n,y1…n,z1…n)(1)

pm-w(x1…n,y1…n,z1…n)=tm-w(rm-w,tm-w)×p(x1…n,y1…n,z1…n)(2)

pm-w-s(x1…n,y1…n,z1…n)=tw:m-s(rm-s,tm-s)×pm-w(x1…n,y1…n,z1…n)(3)

pm-w-s-s1’…sn’(x1’…n’,y1’…n’,z1’…n’)=tm-w-s-s1’…sn’(rw-s,tw-s)×pm-w-s(x1…n,y1…n,z1…n)(4)

pm-w-s-s1’-sn(x1’…n’,y1’…n’,z1’…n’)=ts1’-sn(rs-s’,ts-s’)×pm-w-s-s1’…sn’(x1’…n’,y1’…n’,z1’…n’)(5)

q(x1…n,y1…n,z1…n)=t(r,t)×p(x1…n,y1…n,z1…n)

q(x1…n,y1…n,z1…n)=ts1’-sn(rs-s’,ts-s’)×tm-w-s-s1’…sn’(rw-s,tw-s)×tw:m-s(rm-s,tm-s)×tm-w(rm-w,tm-w)×p(x1…n,y1…n,z1…n)

上述公式中,owxwywzw为场景的世界坐标系,omxmymzm为模板点云坐标系,os1’xs1’ys1’zs1’为物体分割块1点云粗配准坐标系,osn’xsn’ysn’zsn’为物体分割块n点云粗配准坐标系,os1xs1ys1zs1为物体分割块1点云坐标系,osnxsnysnzsn为物体分割块n点云坐标系。rm-w、tm-w是模板点云转换到世界坐标系的转换关系矩阵,rm-s、tm-s是二维模板点云转换到场景点云的转换关系矩阵,rw-s’、tw-s’是世界坐标系下模板点云转换到场景点云的转换关系矩阵;rs’-s、ts’-s是点云粗配准到精配准的转换关系;模板点云记为p(x1…n,y1…n,z1…n),场景点云记为q(x1…n,y1…n,z1…n)。

本发明方法实现了点云的快速和高精度的配准,缩短了点云整体的处理时间,提高了生产的效率。使用模板匹配转换模板点云提供精配准初值的方法,解决了传统的粗配准的引入的通用性较差、处理耗时较久的问题。本发明方法充分利用了二维模板匹配方法的优点,将二维模板匹配与三维的点云配准相结合,既在精度上满足了要求,也为点云的配准提供一种新的解决方案。

附图说明

图1本发明点云配准方法流程图。

图2本发明点云配准方法制作点云模板流程图。

图3本发明点云配准方法点云预处理流程图。

图4本发明点云配准方法点云模板匹配流程图。

图5本发明点云配准方法点云配准及转换关系示意图。

具体实施方式

下面结合实施例和附图,对本发明方法作进一步详细说明。

如图1所示,是一种基于模板匹配的点云配准方法总体方案流程图。先制作点云模板,制作方法:采集点云数据、进行预处理和保存点云模板数据,再运行主程序配准算法,步骤是:首先进行点云预处理,目的是生成一个噪声较小、特征明显的物体块点云,然后进行二维的模板匹配,模板是第一步制作好的数据,测试图片为每一个分割块的深度图,匹配出待识别的物体,记录相关参数,根据参数变换模板点云,最后将变换后的点云作为初值,使用icp或者是ndt的方法进行点云的精配准。

如图2所示,是该配准方法的点云模板制作的流程图。模板要求是单个物体且较好地表述出物体特征的点云模板图,点云映射角度要求合理且尽量保持在相机的正下方处。制作模板点云,首先采集单个物体的点云,其次进行预处理,再分割背景,将操作完成的模板点云映射深度图,用正方形区域框选模板点云目的是选取模板的感兴趣区域,然后设置模板匹配的相关参数,主要是精度等级、匹配阈值、最大匹配个数和中心点坐标等参数,生成模板模型。从现场采集点云,映射深度图进行测试,若正确找出物体,则保存点云模板,若未找出物体,修改模板点云或者相关参数,直至匹配到物体。

如图3所示,是该配准方法的点云预处理的流程图。预处理是点云配准算法不可缺少的一步,不但有利于模板点云的制作,而且在配准时减小了点云的计算量,缩短了配准所需时间,提高了效率。首先采集物体现场点云,先进行点云正方形裁剪,使用的方法是利用x、y、z轴三个方向上的直通滤波,组成正方体方格进行裁剪。再进行点云栅格化,使用体素栅格化的方法,设置合理的栅格化半径。接着进行点云的滤波,点云滤波主要使用中值滤波和统计学滤波,目的是移除离群点,使点云边缘更加的平滑。最后实现点云的分割,点云分割主要基于随机采样一致性的背景分割和聚类单个物体的分割,背景分割目的是除去物体点云之外的多余点云,聚类分割是分割现场采集到的较完整的物体点云数据。预处理流程结束,将分割出的点云数据映射深度图,继续后续的模板匹配的工作。

如图4所示,是该配准方法的点云模板匹配的流程图。模板匹配是点云配准算法的关键一步,为下一步的点云精配准提供了初值。首先载入模板图片,模板图片是经过测试成功的点云映射的深度图。再载入现场处理图片,现场图片是现场点云经过预处理后生成的一个个物体分割块的深度图。接着读取模板设置的相关参数的配置文件,设置模板匹配的参数,进行模板匹配。最后计算偏移量和转角,主要是计算现场点云和模板点云之间的特征点的转角和偏移的数值。

如图5所示,是该配准方法的点云配准及转换关系示意图。该方法利用二维模板匹配的方法取代点云的粗配准,提供了一个更可靠的点云精配准初值,提高了点云的配准精度。图中,owxwywzw为场景的世界坐标系,omxmymzm为模板点云坐标系,os1’xs1’ys1’zs1’为物体分割块1点云粗配准坐标系,osn’xsn’ysn’zsn’为物体分割块n点云粗配准坐标系,os1xs1ys1zs1为物体分割块1点云坐标系,osnxsnysnzsn为物体分割块n点云坐标系。rm-w、tm-w是模板点云转换到世界坐标系的转换关系矩阵,rm-s、tm-s是二维模板点云转换到场景点云的转换关系矩阵,rw-s’、tw-s’是世界坐标系下模板点云转换到场景点云的转换关系矩阵。rs’-s、ts’-s是点云粗配准到精配准的转换关系。模板点云记为p(x1…n,y1…n,z1…n),场景点云记为q(x1…n,y1…n,z1…n),配准的过程即是求出模板点云p到场景点云q之间的转换关系,表达式为:

q(x1…n,y1…n,z1…n)=t(r,t)×p(x1…n,y1…n,z1…n)(1)

转换关系,第一步:将模板点云转换到世界坐标系下,

pm-w(x1…n,y1…n,z1…n)=tm-w(rm-w,tm-w)×p(x1…n,y1…n,z1…n)(2)

第二步:根据二维模板匹配信息,将模板点云p旋转平移到场景点云q平行面,

pm-w-s(x1…n,y1…n,z1…n)=tw:m-s(rm-s,tm-s)×pm-w(x1…n,y1…n,z1…n)(3)

第三步:将上两步处理完成的模板点云p,变换到实际的场景点云q上,记为p’(x1’…n’,y1’…n’,z1’…n’),这个点云数据记为点云精配准的初值。

pm-w-s-s1’…sn’(x1’…n’,y1’…n’,z1’…n’)=tm-w-s-s1’…sn’(rw-s,tw-s)×pm-w-s(x1…n,y1…n,z1…n)(4)

第四步:将处理完成的点云粗配准点云p’,使用icp或者ndt配准方法,进行精配准到场景点云q,

pm-w-s-s1’-sn(x1’…n’,y1’…n’,z1’…n’)=ts1’-sn(rs-s’,ts-s’)×pm-w-s-s1’…sn’(x1’…n’,y1’…n’,z1’…n’)(5)

总结公式(1)(2)(3)(4)(5),得出点云配准算法计算公式:

q(x1…n,y1…n,z1…n)=t(r,t)×p(x1…n,y1…n,z1…n)

q(x1…n,y1…n,z1…n)=ts1’-sn(rs-s’,ts-s’)×tm-w-s-s1’…sn’(rw-s,tw-s)×tw:m-s(rm-s,tm-s)×tm-w(rm-w,tm-w)×p(x1…n,y1…n,z1…n)。

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