激光与光电子学进展, 2021, 58 (2): 0210003, 网络出版: 2021-01-11  

双维度交叉特征点协同匹配的点云拼接算法 下载: 1114次

Point-Cloud Splicing Algorithm for Collaborative Matching of Two-Dimensional Cross Feature Points
作者单位
1 上海理工大学光电信息与计算机工程学院, 上海 200093
2 上海工程技术大学电子电气工程学院, 上海 201620
3 第二军医大学长海医院, 上海 200433
摘要
为提高结构光三维重构系统的点云匹配速度及精度,提出二维视图及三维点云交叉特征点协同匹配的方法。首先,通过投影变换及维度映射关系实现待拼接投影图像的归一化,经预处理后提取端点及分叉点作为关键点,对同类点进行三角划分及相似匹配得到初始点集,并将其映射至三维空间。其次,利用kd-tree搜索得到双邻域质心,根据三点构成的三角形相似关系进一步筛选点集。最后,采用四元数法完成粗拼接,进而使用改进的迭代最近点(ICP)算法完成精拼接。实验结果表明,所提算法的匹配准确率达98.16%,匹配用时3s,粗拼接重叠区域的重心距离误差为0.018mm,所提算法对于二维图像视角变换、纹理光滑、光线不均等具有较高的鲁棒性。
Abstract
In order to improve the speed and accuracy of point cloud matching in the structured light three-dimensional reconstruction system, a collaborative matching method of two-dimensional view and three-dimensional point cloud across feature points is proposed in this work. First, the normalization of the projected images to be spliced is realized through projection transformation and dimension mapping. After preprocessing, the endpoints and bifurcation points are extracted as key points, and the similar points are triangulated and similarly matched to obtain the initial point set. The initial point set is mapped to three-dimensional space. Second, kd-tree search is used to obtain the centroid of the double neighborhood, and the point set is further screened according to the triangle similarity relationship formed by the three points. Finally, the quaternion method is used to complete the rough splicing, and then an improved iterative closest point (ICP) algorithm is used to complete the fine splicing. Experimental results show that the matching accuracy of the proposed algorithm is 98.16%, the matching time is 3 s, and the center of gravity distance error of the coarse splicing overlap area is 0.018mm. The proposed algorithm has high robustness for two-dimensional image perspective transformation, smooth texture, and uneven light.

1 引言

点云拼接即根据各视角同名点或同名直线的特征[1-3]进行两两匹配、实现归一化的过程。拼接过程可分为粗拼接和精拼接两个阶段,粗拼接将不同姿态点云的同名区域进行大致对准,精拼接则运用迭代算法使距离误差达阈值要求,其迭代速度及向全局最优的收敛性依赖于粗拼接精度。点云匹配策略的选择及各阶段算法的优化改进是提高拼接速度及精度的关键。

粗拼接方法有转台法、标签法和刚性特征法。转台法即利用3片以上不同角度的点云数据标定出旋转平台中心,获取相机和旋转平台的位置关系,由旋转角度计算出旋转矩阵,实现归一化,该方法无需判断点云特征但对硬件精度要求较高。标签法即在被测物表面粘贴多个标志物,利用非共线的3点求取转换矩阵,该方法虽能快速完成初步拼接,但受镜头畸变、物体形面的影响,标志点位置发生偏移,拼接精度不高,且存在粘贴部位点云缺失、易损害被测物表面的缺点。刚性特征法借助同名点的共同特征[4],如曲率[5]、点与邻域重心的距离、点法向特征[6-7]、局部张量等,建立PFH、EPFH[8]、FPFH[9]等特征直方图以对点进行描述。候彬等[10]对三维形状上文、四点一致集、迭代最近点、正态分布变换、直方图描述等方法在粗匹配中的表现进行验证。刚性特征法可实现自动配准,若遍历所有点云,其计算量及错误匹配数均大大增加。对此,本文提出二维及三维交叉特征点协同匹配的策略,首先对二维图像进行特征点匹配得到二维点集,将其映射至空间作为点云匹配的初始点集,再根据刚性特征进行二次匹配筛选以提高匹配点的准确度。在二维图像匹配中,常用的方法有Harris、SIFT[11]、SURF[12]、ORB[13]等,赵夫群和耿国华[14]将点云转换为二维方位(BA)图,利用内部形状上下文(IDSC)算法进行特征匹配,该算法不具有完全仿射不变性,在对视角变化较大的图像特征提取方面有一定的局限性。ASIFT[15]算法在SIFT算法基础上模拟了所有可能的仿射扭曲,匹配精度较高,但耗时较长。对此,本文提出通过转台的旋转角度及其与相机间的位置关系确立大致的图像仿射变换矩阵的方法,并在归一化后进行图像处理,提取端点及交叉点作为关键点,通过三角形相似性进行特征匹配。二维图像归一化方法还有标签法,沈江华等[16]提出在物体上放置标记点以快速求解三维点云的参数变换矩阵,实现三维点云归一化,进而通过投影变换实现二维图像的归一化,但此方法无法实现自动拼接。在三维点云刚性特征匹配中,曲率估计[17]、相邻点法矢线夹角余弦求解受噪声的影响,估计法向时会引入误差,从而影响夹角特征估计的准确性;将点与邻域重心的距离作为特征时要求邻近点数目估计的准确性高,将其单独作为特征描述代表性不足;辛伟和普杰信[18]使用方体提取局部区域并对局部区域的张量特征进行了计算,该方法的抗噪能力强但需要待拼接点云的重合面大于50%。基于上述不足,本文将待匹配点与双邻域内两质心的距离、连线夹角作为特征描述子进行点集筛选,将最终点集代入四元数法,通过计算转换参数完成点云粗拼接。精拼接常用的方法有迭代最近点(ICP)算法及其改进算法,其主要分为4个阶段:点集选取、点对确定、点对筛选、转换参数迭代计算[19]。点集选取方法有均匀采样、随机采样、法矢采样等方法,本文在确定重叠区域的基础上,以质心为中心向外进行等距离取点。点对确定方法大致分为点到点、点到投影、点到面3类,涂志强等[20]把参考点云的测点到目标点云最近三点组成的三角形的垂足作为最近点,秦绪佳等[21]先计算点云的特征描述子,将目标点云最近点邻域中特征描述子最相似的点作为对应点。本文选择所取点集的一点到目标点云中最近点及次邻近点连线的垂足为对应匹配点;点对筛选一般根据刚性运动一致性及曲面特征引入约束,本文使用主成分分析法求解曲率及法向量作为曲面特征描述,同时将两组点对的交叉连线长度关系作为刚性运动一致性约束进行点集筛选。参数转换算法有:四元数法、三角组合法、最小二乘法、矩阵奇异值分解法、正交分解法、对偶四元数法等[22]。本文采用计算效率高、稳定性好的四元数法作为参数转换算法,以进一步减小平均距离误差阈值,完成精拼接迭代过程。

2 点云粗拼接

2.1 数据获取

标定、光栅投影、解相位是数据获取的前期工作,标定精度影响全局精度,光栅投影及解相位是确立二维图像向三维点云转换的桥梁[23]。为改善针孔模型下振动、光强等因素引起的透视畸变,设计一种垂直双平面立体标定板[24](见实验平台),圆形标志点均匀分布于双平面上,利用成像面中心附近点求取初值,进而采用单应性矩阵法求解相机参数。标定过程如下:拍摄双平面标定板、提取圆轮廓并进行曲线拟合、设立轮廓方程、采用最小二乘法求解纵横比。单应性矩阵为内参矩阵与外参矩阵的乘积,取图像中心满足直角关系的四个点对,在其极大似然估计满足最小平方和的条件下,采用奇异值分解算法(SVD)得到初值,再用LM(Levenberg-Marquardt)法进行非线性优化得到单应性矩阵,由单应性矩阵求解可变参数初值,最后采用LM法对可变参数进行非线性优化。将编码好的标准正弦光栅投影至被测物表面,通过调整像素单元灰度分布改善光栅正弦性,采用错位条纹的四步相移法进行解包裹。

图 1. 基于转台辅助的二维图像归一化流程

Fig. 1. 2D image normalization process based on turntable assistance

下载图片 查看所有图片

2.2 二维图像的归一化

不同视角下相机拍摄图像的仿射扭曲不适用于大多数特征匹配算法,且对各种仿射姿态的模拟耗时较多,本文采用转台辅助定位的方法实现二维图像的归一化,如图1所示。视角1和2为转台旋转下相机拍摄的待匹配二维骨针零部件图像,经上述光栅投影及解相位方法得到视角1的空间点云,由相机与转台的位置关系及转台的旋转角度可求得视角1和2对应空间点云的姿态转换矩阵,具体算法可参考文献[ 25-26],将视角1对应的点云姿态旋转、平移至视角2对应的点云位置,最后经透视投影变换[27]得到新二维图像,完成图像的归一化,接着与视角2进行二维特征匹配,新图与视角1各点一一映射,从而可确立视角1和2的各点匹配关系。

2.3 图像预处理

预处理主要是剔除噪声、纹线粘连等造成的质量缺陷,以凸显局部特征,提高匹配准确度,其过程包括图像分割、平滑、增强、二值化、亚像素级边缘提取、细化等。物体和背景分别处于不同的灰度级,根据图像的灰度分布曲线作灰度直方图,选取合适的阈值进行目标分割和提取;平滑过程即滤除噪声,通过比较均值滤波、中值滤波及高斯滤波在图像增强后的效果,发现中值滤波下图像尖锐边界保护及去噪效果较好,故选择中值滤波。为进一步提升清晰度,对图像进行归一化以消除采集过程中造成的灰度变化。Gabor滤波器有优良的时频局部化性质,可得到较好的局部滤波处理效果,通过Gabor滤波可以有效滤除图像中的噪声,保存真实纹线结构,实现图像增强;图像二值化处理采用固定阈值法,为整幅图选取合适的灰度阈值T,灰度值小于T则置为0,否则,置为255。对分割后的二值图进行canny算子边缘检测,在边缘点梯度方向上进行灰度插值,然后进行边缘点高斯曲线拟合,实现亚像素级边缘提取;最后采用快速细化算法,背景为白色(像素值为1),取黑色点(像素值为0)为目标像素点,根据像素点的8邻域分布,判断是否删除该点,其具体算法如下:若目标像素的4邻域中至少有一个位于背景区,那么对于其8邻域,有

n=i=18pxi,(1)t=i=17pxi+1-pxi,(2)

式中:t为目标像素8邻域中相邻像素值按序比较,像素值发生改变的次数;n为8邻域像素值之和; pxi为8邻域各点的像素值;i为目标像素点8邻域次序;xi为目标像素点8邻域点。当t=2,n≠1且n<6时,删除目标像素点A

2.4 二维图像的特征点匹配

传统的特征点提取按特定搜索方式进行。通过遍历图像中所有的像素点,根据自定义的角点特征分析邻域的灰度分布,该方法存在数据量大、比对次数多、错误匹配多等问题;另一种特征点提取方法是将拟合后点的曲率、法线方向等特征作为特征参数,不同视角下的仿射扭曲使得特征参数存在一定误差,且计算量较大。因为端点和分叉点特征几乎不受仿射变换的影响,经归一化后位置误差降低,故选择端点和分叉点特征作为关键点提取对象,如图2所示,选择黑色像素点作为目标点,图中分别显示了端点、分叉点、伪分叉点的8邻域像素分布特征。检测方法为:遍历各像素点,查看该像素点8邻域灰度像素分布;若8邻域中同灰度像素点个数为1,则为端点,若同灰度像素点为3,则可能为分叉点;检测同灰度像素点两两之间的距离,若距离大于1则为分叉点,若存在等于1的情况,则为伪分叉点,将对应点剔除。

图 2. 关键点8邻域分布

Fig. 2. Eight neighborhood distribution of key points

下载图片 查看所有图片

现有文献提出根据细节特征点局部结构,建立特征参数集,参数包括距离、方向差等,然后根据任意两个集合的相似度判定点对,如柴海燕等[28]提出将特征点与欧氏距离最近的两点构成三角形,以两个边被穿过的纹线条数和夹角作为该点的特征参数子集,并与待匹配图像各点参数集进行相似度比较。如果特征点较多,此类方法的计算量较大,为简化计算,本文只进行同类型特征点匹配,借助三角形网格进行划分,先进行三角形的相似度匹配,再进行三角形各点匹配,如图3所示,对同类型点进行三角划分,并确定各三角形的特征参数,包括最长边lmax、最短边lmin,以及两边夹角θ,以此建立三角形特征参数集,此方法不仅减少了对不同类型间点匹配的冗余计算和错误匹配,且减少了同类型间的匹配次数。

图 3. 二维图像特征点匹配

Fig. 3. Feature point matching of 2D image

下载图片 查看所有图片

本文具体算法为:1)将二维视图P 中分叉点集 PAi、图Q中分叉点集 QAj进行Delaunay三角形网格划分,ij分别为两点集各点序号, 将P图中每个三角形特征描述集合设置为Um{ lUmmin, lUmmax, θUm},其中, lUmminP图中三角形最短边长度, lUmmaxP图中三角形最长边长度, θUmP图中三角形两边夹角,mP图中三角形序号,将Q图中每个三角形特征描述集合设置为Vn{ lVnmin, lVnmax, θVn},其中, lVnminQ图中三角形最短边长度, lVnmaxQ图中三角形最长边长度, θVnQ图中三角形两边夹角,nQ图中三角形序号;2)遍历PQ 中的三角形,进行相似度比较,配对成功需满足

lVnmin-lUmminDDislUmmax-lVnmaxDDisθVn-θUmAAng,(3)

式中:DDis为长度差阈值;AAng为角度差阈值;3)对于PQ中满足相似度条件的三角形对,其对应点即为满足匹配要求的特征点对;4)对端点进行匹配,获取点对集合;5)对于交叉点数目不足3个的情况,可直接将交叉点与端点进行混合匹配,或者选择端点中任意一点或两点与之不共线的已配准特征点形成三角形,进行相似性比较。

2.5 空间点云的特征点匹配

将上述匹配好的二维特征点集转换到摄像机坐标系,得到空间点集P1Q1,对初始点集P1Q1进行进一步的筛选,得到最终的匹配点集P2Q2。此方法结合二维与三维图像匹配,二维匹配为三维匹配提供初始点集,可大大减少三维特征点的无效搜索和冗余计算,三维匹配则进一步细化点集,从而提高匹配精度。选择待匹配点与邻域内两点的距离、连线夹角作为特征描述子(图4),其算法为:1)将二维匹配点集PQ经由2D-3D映射得到初始空间点集P1Q1。2)采用kd-tree半径内近邻搜索方式,以待匹配点A为球心,半径值设为r1r2,得到一个半径为r1的球体和厚度为r2-r1的空心球体的邻域1、2,三角形代表邻域1内的特征点,圆形代表邻域2内的特征点。3)分别对两个邻域的点坐标进行均值化,得到点BC,进而得到向量 ABAC;4)针对P1Q1分别建立空间点特征描述集Wi{ dwimin, dwimax, θwi},Mj{ dMjmin, dMjmax, θMj},其中, dwiminP1中各点建立的两向量中模长较小值, dwimaxP1中各点建立的两向量中模长较大值, θwiP1中所建立的两向量夹角, dMjminQ1中各点建立的两向量中模长较小值, dMjmaxQ1中各点建立的两向量中模长较大值, θMjQ1中所建立的两向量夹角,集合内元素分别表示长边、短边距离和夹角。遍历P1Q1中的相应点对,进行相似度比较,满足

lWimin-lMjminDDis1lWimax-lMjmaxDDis1θWi-θMjAAng1,(4)

即配对成功,否则剔除。(4)式中DDis1为长度差阈值;AAng1为角度差阈值。5)令剔除错误点对后的点集为P2Q2,用于进一步的坐标转换计算。

图 4. 点云特征点描述

Fig. 4. Feature point description of point clouds

下载图片 查看所有图片

2.6 转换参数求解

在前述工作基础上采用四元数法对旋转矩阵R和平移矩阵T进行求解,以达到坐标归一化的目的。四元数是一个实单位和三个虚单位的超复数,

其算法具体如下。

1) 建立目标函数。在点集P2Q2中各提取k个点的子集{pipiP2,i=1,2,,k}和{qi|qi∈Q2,i=1,2,…,k},其中,pi为点集P2各点的空间向量,qi为点集Q2中各点的空间向量,建立目标函数为

J=i=1kqi-(Rpi+T)2,(5)

通过求解合适的RT使得J最小化;

2) 计算特征点集{pipiP2,i=1,2,,k}和 {qiqiQ2,i=1,2,,k}的质心:

μ=1ki=1kpiν=1ki=1kqi,(6)

将点集{pipiP2,i=1,2,,k}和{qi|qi∈Q2,i=1,2,…,k}相对于质心进行平移,得到

p'i=pi-μq'i=qi-ν,(7)

式中: p'iq'分别为piqi经平移后的集合。则相关矩阵Z

Z=1ki=1kp'i(q'i)T(8)

由3×3的相关矩阵Z各元素Zab(a,b=1,2,3)构造4维对称矩阵Z',即

Z'=Z11+Z22+Z33Z32-Z23Z13-Z31Z21-Z12Z32-Z23Z11-Z22-Z33Z12+Z21Z31+Z13Z13-Z31Z12+Z21-Z11+Z22-Z33Z23+Z32Z21-Z12Z13+Z31Z23+Z32-Z11-Z22+Z33(9)

计算Z'中最大特征根对应的单位特征向量h:

h=h0h1h2h3T,(10)

式中:h0,h1,h2,h3为单位特征向量h转置后的4个子列向量。

由此计算得到旋转矩阵R

R=h02+h12-h22-h322(h1h2-h0h3)2(h1h3+h0h2)2(h1h2+h0h3)h02+h22-h12-h322(h2h3-h0h1)2(h1h3-h0h2)2(h2h3+h0h1)h02+h32-h12-h22,(11)

平移矢量T

T=ν-(12)

3 点云精拼接

3.1 点云数据采集

点云的重叠区域与旋转角度和方向相关,为减少拼接次数,通常增大旋转角度、减少待拼接面,这导致未重叠区域(拼接无关区域)过大,实际操作时应避免此部分点云数据加入计算。另外,重叠区域的点云数据量较多,应在该区域内进行均匀、随机抽样,采集的点云尽量在重叠区域均匀分布。

重叠区域判定:1)使用kd-tree搜索并比较点云Q三轴阈值XmaxXminYmaxYminZmaxZmin;2)令点云P中点的坐标为(x,y,z),选择同时满足x∈(Xmin,Xmax),y∈(Ymin,Ymax),z∈(Zmin,Zmax)的点,即为重叠区域的点。除采用上述判断算法,也可直接对粗匹配得到的点云P2进行三轴最值判断,得到xmaxxminymaxyminzmaxzmin,选择P中同时满足x∈(xmin,xmax),y∈(ymin,ymax),z∈(zmin,zmax)的点。该算法缩小了计算范围,适合匹配点均匀分散在视图表面的情况。

点集选取:1)计算重叠点云中的质点坐标,采用范围查询的方式,以质心为中心,向外设置等间隔的距离阈值区间,选择符合条件内的点作为初始点集,阈值区间满足均匀分布;2)如果粗匹配后的点云P2数量足够,可直接作为初始点集,若数量不够,可采用K近邻搜索,增加多个邻近点,令采集完成的初始点集为P3

3.2 点集匹配方法

基于ICP的改进算法分3类:点到点、点到投影、点到面,其最终目的是在目标点云Q中寻找或构造与初始点云P3距离最近的点,对此本文将初始点集中一点到目标点云中最近点及次邻近点连线的垂足作为对应匹配点。具体算法为:1)选择P3中的一点pi,采用kd-tree搜索在Q中寻找最邻近点及次邻近点qi1qi2,计算pi到直线qi1qi2的垂足qi的坐标;2)遍历P3各点,重复步骤1),得到的相同数量的垂足点形成新的目标点集Q3,至此点对形成。

3.3 去除错误点对的方法

由于P3Q3中仍存在错误点对,需根据点云自身曲面几何特性和刚性运动一致性,引入多个约束条件和评价标准对点集进行进一步筛选。点云表面几何特性包括法矢量、曲率等,刚性运动一致性表示物体在理想运动过程中的形状特征不发生变化。

接着进行法矢量、曲率估算与约束。通常选用的法矢量及曲率估算的方法是利用最小二乘法拟合曲面,进而估算其值。该方法精度较高,但运算复杂,用时较多,不适用于多点云数据。另一种法矢量及曲率估算方法是主成分分析法(PCA法),该方法无需进行曲面拟合,构建了点与邻域的协方差矩阵,则最小特征值对应向量即为法矢量,基于法矢量得到曲率。

算法的具体步骤如下:

1) 选择P3中一点P3j,搜索m个邻近点构成点集{P'3j},计算中心点 p¯的公式为

p¯=1m+1P'3j,j=1,2,3,,m;(13)

2) 计算P3j的协方差矩阵C,即

C=P'3j-p¯P'3j-p¯T,j=1,2,3,,m;(14)

3) 计算特征值λi(i=0,1,2),最小特征值对应的向量 n¯3j即为法矢量;

4) 计算得到曲率cur 3j

cur3j=λ0λ0+λ1+λ2;(15)

5) 遍历P3P4中所有点的曲率与法矢量,进而计算点对间法向量夹角余弦值和曲率差值,分别设定阈值,将小于夹角余弦值的阈值或大于曲率插值阈值的点对剔除。

刚性运动一致性约束:1)判断P3Q4点对连接形成的向量集方向是否一致,计算所有点对间向量,添加一个参考向量,计算点对向量与参考向量的夹角余弦值,设置阈值,剔除小于阈值的点对;2)判断点云间局部欧氏距离偏差的最简单的方法是计算点对距离,剔除距离较大的点对,另一种方法是选择任意两组点对,理想情况下,其交叉相连线段距离应相等,考虑误差允许范围,设(P31,Q31)和(P32,Q32)为点云任意两个点对,应满足

-tP31-Q32-Q31-P32maxP31-Q32,Q31-P32t,(16)

式中:P31Q31为点集P3Q4的一组空间点对的空间坐标向量;P32Q32为点集P3Q4的另一组空间点对的空间坐标向量;t为阈值,本文取0.1。剔除所有不符合要求的点对,记剩余点对所在点云为P4Q4

3.4 坐标转换算法

精拼接的坐标转换计算仍采用四元数法, 精拼接过程与粗拼接的不同在于需缩小阈值,以保证拼接精度。具体算法:将剩余点对P4Q4代入(6)~(12)式,求出RT值,将其代入目标函数[(5)式]。若误差小于本次设定阈值,则停止迭代,拼接完成;若误差大于阈值,则需在此基础上重复上述数据采集、点集匹配、点对筛选、坐标转换工作,直至满足阈值要求。

4 实验与结果分析

实验搭建的结构光三维扫描系统如图5所示,为减小振动误差,将两组丝杆模组固定在光学平板(OM-SP)上,每个模组由两根同轴丝杆和一根与之垂直的丝杆组成,相机和投影仪通过可旋转式云台固定在丝杆上,上位机可控制丝杆,使相机和投影仪在10cm×10cm及20cm×20cm的方形区域内任意移动,移动最小距离为0.05mm,手动控制相机和投影仪在云台上的旋转和俯仰动作。另外,系统包括双垂直面立体标定板、待测物旋转平台和基于Labview设计的三维扫描系统。实验中使用的相机为黑白相机,型号为MV-UB130M,分辨率为1280pixel×1024pixel,投影仪分辨率为1366pixel×768pixel。

图 5. 三维扫描平台及软件系统

Fig. 5. 3D scanning platform and software system

下载图片 查看所有图片

4.1 标定误差验证与分析

为验证标定算法的有效性与可行性,设计如下实验:1)拍摄一幅标定板图像,利用图像处理算法求出各标志点坐标;2)在已标定的摄像机参数的基础上,采用2D-3D转换算法,获取三维坐标;3)计算标定板上任意相邻点的空间距离,将其与标准距离进行比较,得到误差。令标定板在世界坐标系中的横坐标为[-4,4]、纵坐标为[-5,5]的点为中间点,其余点为外围点。图6为标定板中120个相邻点对的距离误差结果,其中空心圆圈表示外围点,实心圆点表示中心点,通过计算可得总体标准差σ=0.0326mm,外围点标准差σ1=0.0491mm,中心点标准差σ2=0.0121mm。以上数据表明本标定方法具有较高的精度,同时可看出中心点误差比外围点误差明显要小,这验证了畸变影响下选择中间点坐标作为初值的必要性。

图 6. 标定板各相邻点对的距离误差

Fig. 6. Distance error of adjacent point pairs on calibration plate

下载图片 查看所有图片

4.2 二维图像预处理结果与分析

图7(a)、(b)为相机不同视角下的两个二维图像,转台振动误差、角度偏差、转台中心轴位置偏差等导致点云的空间转换难以使得不同位置的待拼接点云实现精准归一化,图7(c)为图7(a)映射的空间点云经平移旋转变换后的点云,图7(d)为图7(c)经透视投影变换得到的二维视图,其位置与图7(b)虽有偏差,但对后续的端点、分叉点的提取影响不大,只影响特征描述中的点间距离,通过设定距离误差阈值,忽略仿射转换引起的距离误差,对图7(b)、(d)分别进行图像分割、平滑、增强、二值化、亚像素级边缘提取、细化等预处理过程,分别得到图7(e)、(f),进行二维特征点提取。

图 7. 二维图像归一化及预处理。(a)(b)不同视角的二维图;(c)由图7(a)映射的空间点云经平移旋转变换后的图像;(d)图7(c)经透视投影变换得到的二维视图;(e)(f)预处理后的图像

Fig. 7. Normalization and preprocessing of 2D images. (a) (b) 2D graphs with different perspectives; (c) image after translational rotation transformation for mapped spatial point clouds of Fig. 7(a); (d) 2D image obtained by perspective projection transformation of Fig. 7(c); (e) (f) preprocessed images

下载图片 查看所有图片

4.3 匹配算法有效性分析与综合性评价

SIFT算法的具体步骤为:在DOG金字塔尺度空间中提取极值点,取梯度方向直方图的主要分量作为特征点方向,取特征点邻域4×4个块,每个块取8个方向梯度共计128维向量作为特征描述子,通过计算128维的特征点间欧氏距离进行匹配。SIFT算法对于表面纹理不明显的区域的特征识别效果较差,特征描述子的估算复杂,匹配时间较长。图8(a)为本文算法的关键点提取,圆圈标记为端点,三角形标记为分叉点。图8(b)为SIFT算法对骨针零部件的特征提取。对于表面纹理不明显的光滑图像,SIFT算法只能提取纹理明显的区域,对于视角转换较大、光线分布不一致等情况下的特征点匹配的鲁棒性不高。图9(a)为SIFT算法在不同视角下得到的两幅图像, SIFT算法的查全率及查错率均不高。SURF算法是SIFT算法的改进算法,其使用Hessian矩阵变换图像,只需计算Hessian矩阵行列式检测极值,通过Haar小波变换代替直方图统计,使特征描述方向的维度减半,同时通过Hessian矩阵判断特征点轨迹的方向可提高查错率,总体匹配速度提升了近3倍;ORB算法则结合了FAST角点检测及BRIEF特征描述,其特点是匹配速度快,但该算法对于尺度变化较大、仿射变换后的两幅图的匹配精度不如SIFT及其衍生改进算法;上述算法对于视角变化大的图像不具有较强的稳定性。采用ASIFT算法模拟了各种空间位置的匹配,其匹配精度高,但计算量大大增加,匹配时间长于SIFT算法,对纹理不明显图像的查全率不高。图9(b)为ASIFT算法匹配结果,其最终匹配点数较少。图9(c)为采用本文图像归一化的方法结合SIFT算法的图像匹配,其对纹理特征明显的区域的特征点匹配数增加、匹配准确度大大提高;通过对归一化图像进行预处理,增强纹理不明显区域特征,消除亮度及光滑度对检测的影响。同时,对二值细化图像的特征提取减小了检测复杂度,提取端点及分叉点的8邻域检测简化了FAST算法的16邻域检测,减少了提取时间。图9(d)为本文二维匹配算法的结果,本文算法的查全率相比于上述算法得到大大提高。

图 8. 特征点提取。(a)本文算法;(b)SIFT算法

Fig. 8. Extraction of feature points. (a) Algorithm of this paper; (b) SIFT algorithm

下载图片 查看所有图片

图 9. 特征点匹配。(a) SIFT法;(b) ASIFT法;(c)归一化+SIFT法;(d)本文算法

Fig. 9. Matching of feature points. (a) SIFT; (b) ASIFT; (c) normalization+SIFT; (d) algorithm of this paper

下载图片 查看所有图片

通常只需不共线的三个匹配点即可完成点云粗拼接,但此时的粗拼接精度不高,极大地影响精拼接的迭代次数。为提高粗拼接精度,需要更多的正确匹配点,并采用最小二乘等方法进行优化计算。本文在二维匹配的基础上,将匹配点映射至三维点云作为初始点集,根据空间一点与两邻域重心的距离及夹角特征对点集进行进一步筛选,以减少错误匹配点,点云匹配结果如图10所示。各算法匹配效果统计如表1所示,实验对象为上述骨针零部件的相机视角[图7(a)、(b)],比较了各个算法的特征点提取数、正确匹配数和匹配时间,将上述算法的匹配结果代入四元数法进行粗匹配,比较粗匹配下重叠区域的质心距离误差,设置目标函数的距离误差为0.01mm,进行传统ICP算法迭代,将迭代次数作为粗拼接效果的评价依据。通过实验对比,发现本文匹配算法得到的点集具有较高的查全率及准确性,匹配速度较快,粗拼接效果较好。

图 10. 双维度特征点协同匹配结果。(a)空间姿态1;(b)空间姿态2

Fig. 10. Collaborative matching results of dual-dimensional feature points. (a) Space posture 1; (b) space posture 2

下载图片 查看所有图片

表 1. 各算法匹配效果统计

Table 1. Statistics of matching effect of algorithms

Matching algorithmNumber ofextracted pointsNumber of correct matching pointsCorrect matchingrate /%Matchingtime /sBarycenterdistance /mmIterations
SIFT[11]181372.290.3099
SURF[12]15746.740.90411
ORB[13]8337.531.01317
ASIFT[15]9888.9140.1047
Normalization+SIFT534890.690.0316
2D matching in this article40236390.320.0245
2D+3D matching in this article797898.730.0183

查看所有表

为验证本文算法对复杂模型的普适性,获取人像雕塑模型在不同视角下的三维点云数据及相应的二维视图,采用本文双维度特征点交叉匹配的方法,对其特征进行匹配及拼接,所提取的二维特征点对数为359,正确匹配点对数为323,正确匹配率达89.97%。经三维特征匹配筛选,得到最终的点对数为121,正确匹配点对数为117,正确匹配率为96.69%,粗匹配中心距离误差为0.021mm。经迭代4次后,平均距离误差小于0.010mm,经7次迭代后平均距离误差小于0.005mm。图11为人像雕塑模型的匹配及拼接图像。

图 11. 雕塑模型拼接。(a)二维匹配;(b)三维匹配;(c)粗拼接;(d)精拼接

Fig. 11. Sculpture model splicing. (a) 2D matching; (b) 3D matching; (c) coarse splicing; (d) fine splicing

下载图片 查看所有图片

4.4 拼接算法综合性分析

在本文粗拼接基础上,加入0.1dB和0.5dB的噪声,比较传统ICP方法及本文改进的ICP对迭代次数及距离误差的影响,图12所示为4组实验数据,每组实验都对三角法、最小二乘法、矩阵奇异值分解法、四元数法等转换参数求解算法进行对比。图12的横坐标表示迭代次数,纵坐标表示每次迭代后两片重叠区域对应已匹配点对距离误差的平均值,平均距离阈值为0.005mm。观察4组数据,可以看出采用本文的四元数法进行转换参数求解时最先达到阈值条件,且该算法在多次迭代并趋于稳定后具有较高的精度;以下对比均在四元数法下进行,分别对比图12(a)、(b)和图12(c)、(d),可以看出:噪声增大时,改进ICP算法的迭代次数增加2次,传统ICP法的迭代次数增加5次,多次迭代趋于稳定后,改进方法与传统ICP法的距离误差分别增加0.002mm和0.004mm。对比图12(a)、(c)可以发现,噪声为0.1dB时,改进算法比传统算法的迭代次数少1次,稳定后距离误差相差0.002mm。对比图12(b)、(d)可以发现,噪声为0.5dB时,改进算法迭代9次,其平均距离误差达到阈值,且平均距离误差随着迭代次数的增加呈下降趋势,传统算法需迭代12次才能达到阈值且随着迭代次数的增加,距离误差下降不明显,当迭代15次时,两种算法的距离误差差值为0.003mm。通过上述实验及数据的对比可得,本文改进ICP算法具有较高的计算速度和拼接精度,在噪声影响下比传统ICP算法更具鲁棒性。图13为本文骨针零部件的拼接结果。

图 12. 噪声影响下传统及改进ICP算法的迭代次数-误差曲线。(a) 0.1dB噪声,改进ICP算法;(b) 0.5dB噪声,改进ICP算法;(c) 0.1dB噪声,传统ICP算法;(d) 0.5dB噪声,传统ICP算法

Fig. 12. Iterations-error curves of traditional and improved ICP algorithms under different noise. (a) Noise of 0.1dB,improved ICP algorithm;(b) noise of 0.5dB, improved ICP algorithm; (c) noise of 0.1dB, traditional ICP algorithm; (d) noise of 0.5dB, traditional ICP algorithm

下载图片 查看所有图片

图 13. 部分及整体精拼接结果。(a)~(d)部分精拼接;(e)(f)整体精拼接

Fig. 13. Results of partial and integral fine splicing. (a)--(d) Partial fine splicing; (e) (f) overall fine splicing

下载图片 查看所有图片

5 结束语

通过图像归一化、预处理,提取端点和分叉点作为关键点,三角形相似匹配等过程得到初始点集并将其映射至点云,利用kd-tree搜索得到双邻域质心,并利用三角形相似关系筛选点集。同SIFT、SURF、ORB、ASIFT等算法相比,所提算法具有较高的匹配精度和速度,对于视角变换、纹理不明显图像等具有良好的鲁棒性。基于四元数法、三角法、最小二乘法、矩阵奇异值分解法,分别对比了传统ICP及改进ICP算法在不同噪声下的迭代次数与平均距离误差,发现基于四元数法的本文改进ICP算法具有较高的计算速度和拼接精度,该方法在噪声影响下比传统ICP算法更具鲁棒性。二维图像归一化是基于三维重构系统并在转台旋转角度已知、转台与相机的相对位置关系可求的情况下实现的,不适用于无法移动的大场景如大型文物的二维图像匹配。下一步将重点研究不借助转台的情况下现有二维图像匹配算法的改进,实现快速准确匹配。

在医疗器械制造领域,利用3D打印、数控技术等完成对零部件的加工,其制造精度决定了后续组装的适配性及临床应用的安全性。在生产线中加入三维测量系统时,对零部件进行抽样检测及精度评估显得尤为重要。所设计的相机及投影位置可调整的光栅投影三维扫描系统的测量范围可调节,灵活性较高,可用于生产线上小型零部件的三维测量,对获取的三维图像进行宏观精度评价,确定生产品质, 及时停产不符合要求的零部件,避免不必要的经济损失。本文所使用的拼接算法能够提升三维扫描系统点云拼接的速度和精度。

参考文献

[1] 柴双武, 杨晓琴. 基于对偶四元数构建的直线基元点云拼接方法[J]. 光学学报, 2019, 39(12): 1228006.

    Chai S W, Yang X Q. Lineprimitive point cloud registration method based on dual quaternion[J]. Acta Optica Sinica, 2019, 39(12): 1228006.

[2] 王晓辉, 吴禄慎, 陈华伟, 等. 基于区域聚类分割的点云特征线提取[J]. 光学学报, 2018, 38(11): 1110001.

    Wang X H, Wu L S, Chen H W, et al. Feature line extraction from a point cloud based on region clustering segmentation[J]. Acta Optica Sinica, 2018, 38(11): 1110001.

[3] 何敏, 达飞鹏, 邓星. 结合径向线的局部遮挡下的3维人脸识别[J]. 中国图象图形学报, 2018, 23(8): 1163-1170.

    He M, Da F P, Deng X. Three dimensional face recognition under partial occlusions based on radial strings[J]. Journal of Image and Graphics, 2018, 23(8): 1163-1170.

[4] 侯增选, 李岩翔, 杨武, 等. 智能配镜三维特征参数提取方法研究[J]. 图学学报, 2019, 40(4): 665-670.

    Hou Z X, Li Y X, Yang W, et al. Feature extraction of facial point cloud data for intelligent spectacle frame fitting[J]. Journal of Graphics, 2019, 40(4): 665-670.

[5] 杨稳, 周明全, 张向葵, 等. 基于分层优化策略的颅骨点云配准算法[J]. 光学学报, 2020, 40(6): 0615001.

    Yang W, Zhou M Q, Zhang X K, et al. Skull point cloud registration algorithm based on hierarchical optimization strategy[J]. Acta Optica Sinica, 2020, 40(6): 0615001.

[6] 黄矿裕, 唐昀超, 邹湘军, 等. 基于改进法线方向的泊松曲面重构算法[J]. 激光与光电子学进展, 2019, 56(14): 141005.

    Huang K Y, Tang Y C, Zou X J, et al. Poisson surface reconstruction algorithm based on improved normal orientation[J]. Laser & Optoelectronics Progress, 2019, 56(14): 141005.

[7] 张彬, 熊传兵. 基于体素下采样和关键点提取的点云自动配准[J]. 激光与光电子学进展, 2020, 57(4): 041008.

    Zhang B, Xiong C B. Automatic point cloud registration based on voxel downsampling and key point extraction[J]. Laser & Optoelectronics Progress, 2020, 57(4): 041008.

[8] 汤慧, 周明全, 耿国华. 基于扩展的点特征直方图特征的点云匹配算法[J]. 激光与光电子学进展, 2019, 56(24): 241503.

    Tang H, Zhou M Q, Geng G H. Point cloud registration algorithm based on extended point feature histogram feature[J]. Laser & Optoelectronics Progress, 2019, 56(24): 241503.

[9] 彭真, 吕远健, 渠超, 等. 基于关键点提取与优化迭代最近点的点云配准[J]. 激光与光电子学进展, 2020, 57(6): 061002.

    Peng Z, Lü Y J, Qu C, et al. Accurate registration of 3D point clouds based on keypoint extraction and improved iterative closest point algorithm[J]. Laser & Optoelectronics Progress, 2020, 57(6): 061002.

[10] 侯彬, 金尚忠, 王赟, 等. 点云配准方法在粗配准中的比较[J]. 激光与光电子学进展, 2020, 57(8): 081502.

    Hou B, Jin S Z, Wang Y, et al. Comparison of point cloud registration methods in coarse registration[J]. Laser & Optoelectronics Progress, 2020, 57(8): 081502.

[11] 周露露, 路纲, 田艳玲. 拓扑约束优化特征匹配的图像配准与拼接[J]. 计算机技术与发展, 2019, 29(6): 37-41.

    Zhou L L, Lu G, Tian Y L. Image registration and stitching of feature matching of topology constraints optimization[J]. Computer Technology and Development, 2019, 29(6): 37-41.

[12] 童立靖, 刘博文. 基于投影图像SURF特征提取的三维模型配准[J]. 图学学报, 2018, 39(6): 1117-1122.

    Tong L J, Liu B W. 3D model registration based on SURF feature extraction of projection images[J]. Journal of Graphics, 2018, 39(6): 1117-1122.

[13] 丁小艳, 王婷. 基于交叉检验ORB和MCC的图像模板匹配算法[J]. 电子测量与仪器学报, 2019, 33(5): 39-45.

    Ding X Y, Wang T. Image template matching algorithm based on cross-check ORB and MCC[J]. Journal of Electronic Measurement and Instrumentation, 2019, 33(5): 39-45.

[14] 赵夫群, 耿国华. 基于图像特征和奇异值分解的点云配准算法[J]. 激光与光电子学进展, 2020, 57(10): 101101.

    Zhao F Q, Geng G H. Point cloud registration algorithm based on image feature and singular value decomposition[J]. Laser & Optoelectronics Progress, 2020, 57(10): 101101.

[15] 赵鹏图, 达飞鹏. 基于局部特征的大视角图像匹配[J]. 光学学报, 2019, 39(5): 0510002.

    Zhao P T, Da F P. Image matching with large viewing angle based on local features[J]. Acta Optica Sinica, 2019, 39(5): 0510002.

[16] 沈江华, 孙殿柱, 李延瑞, 等. 点云初始配准的优化求解算法[J]. 西安交通大学学报, 2019, 53(8): 167-174.

    Shen J H, Sun D Z, Li Y R, et al. An optimization algorithm for initial registration of point clouds[J]. Journal of Xi'an Jiaotong University, 2019, 53(8): 167-174.

[17] 陆军, 范哲君, 王婉佳. 点邻域信息加权的点云快速拼接算法[J]. 计算机辅助设计与图形学学报, 2019, 31(7): 1238-1246.

    Lu J, Fan Z J, Wang W J. Fast point cloud splicing algorithm based on weighted neighborhood information of points[J]. Journal of Computer-Aided Design & Computer Graphics, 2019, 31(7): 1238-1246.

[18] 辛伟, 普杰信. 点到邻域重心距离特征的点云拼接[J]. 中国图象图形学报, 2011, 16(5): 886-891.

    Xin W, Pu J X. Point cloud integration base on distances between points and their neighborhood centroids[J]. Journal of Image and Graphics, 2011, 16(5): 886-891.

[19] 解则晓, 徐尚. 三维点云数据拼接中ICP及其改进算法综述[J]. 中国海洋大学学报, 2010, 40(1): 99-103.

    Xie Z X, Xu S. A survey on the ICP algorithm and its variants in registration of 3D point clouds[J]. Periodical of Ocean University of China, 2010, 40(1): 99-103.

[20] 涂志强, 张轲, 杨成龙, 等. 三维模型重建中点云ICP拼接算法的改进[J]. 焊接学报, 2013, 34(1): 97-100, 118.

    Tu Z Q, Zhang K, Yang C L, et al. Improved ICP registration in 3-D model reconstruction[J]. Transactions of the China Welding Institution, 2013, 34(1): 97-100, 118.

[21] 秦绪佳, 王建奇, 郑红波, 等. 三维不变矩特征估计的点云拼接[J]. 机械工程学报, 2013, 49(1): 129-134.

    Qin X J, Wang J Q, Zheng H B, et al. Point clouds registration of 3D moment invariant feature estimation[J]. Journal of Mechanical Engineering, 2013, 49(1): 129-134.

[22] 袁志聪, 鲁铁定, 邓小渊. 点云的刚体运动参数估计方法的比较[J]. 测绘工程, 2018, 27(4): 34-40.

    Yuan Z C, Lu T D, Deng X Y. Comparison of parameter estimation methods for rigid motion of point cloud[J]. Engineering of Surveying and Mapping, 2018, 27(4): 34-40.

[23] Shao J, Zhang W M, Mellado N, et al. Automated markerless registration of point clouds from TLS and structured light scanner for heritage documentation[J]. Journal of Cultural Heritage, 2019, 35: 16-24.

[24] Li M Y, Liu J, Yang H M, et al. Structured light 3D reconstruction system based on a stereo calibration plate[J]. Symmetry, 2020, 12(5): 772.

[25] 郎威, 薛俊鹏, 李承杭, 等. 基于旋转台参数标定实现多视角点云拼接[J]. 中国激光, 2019, 46(11): 1104003.

    Lang W, Xue J P, Li C H, et al. Splicing of multi-view point clouds based on calibrated parameters of turntable[J]. Chinese Journal of Lasers, 2019, 46(11): 1104003.

[26] 周朗明, 郑顺义, 黄荣永. 旋转平台点云数据的配准方法[J]. 测绘学报, 2013, 42(1): 73-79.

    Zhou L M, Zheng S Y, Huang R Y. A registration algorithm for point clouds obtained by scanning objects on turntable[J]. Acta Geodaetica et Cartographica Sinica, 2013, 42(1): 73-79.

[27] 汤明辉, 程筱胜, 崔海华, 等. 面向结构光三维测量的高稳定映射拼接方法[J]. 光学学报, 2014, 34(11): 1112006.

    Tang M H, Cheng X S, Cui H H, et al. A high stability mapping stitching method for structured light three-dimensional measurement[J]. Acta Optica Sinica, 2014, 34(11): 1112006.

[28] 柴海燕, 田东平, 范九伦, 等. 基于相似三角形原理的指纹匹配算法[J]. 通信技术, 2009, 42(10): 57-59, 62.

    Chai H Y, Tian D P, Fan J L, et al. Fingerprint minutia matching algorithm based on similar triangle theory[J]. Communications Technology, 2009, 42(10): 57-59, 62.

陈毅, 杨海马, 刘瑾, 李筠, 虞梓豪, 潘骏, 夏季. 双维度交叉特征点协同匹配的点云拼接算法[J]. 激光与光电子学进展, 2021, 58(2): 0210003. Yi Chen, Haima Yang, Jin Liu, Jun Li, Zihao Yu, Jun Pan, Ji Xia. Point-Cloud Splicing Algorithm for Collaborative Matching of Two-Dimensional Cross Feature Points[J]. Laser & Optoelectronics Progress, 2021, 58(2): 0210003.

引用该论文: TXT   |   EndNote

相关论文

加载中...

关于本站 Cookie 的使用提示

中国光学期刊网使用基于 cookie 的技术来更好地为您提供各项服务,点击此处了解我们的隐私策略。 如您需继续使用本网站,请您授权我们使用本地 cookie 来保存部分信息。
全站搜索
您最值得信赖的光电行业旗舰网络服务平台!