基于法向量特征的点云配准方法

2017-04-13 10:41崔水军李荣
科技创新导报 2017年3期
关键词:点云

崔水军++李荣

摘 要:在工程实践中,三维激光扫描技术越来越多地得到应用,在多站点三维激光扫描观测时,不同站点间的点云配准是数据应用的关键。在不借助站点信息的情况下,根据点云数据中的法向量特征,通过搜索匹配点对,利用同名点对实现点云之间的自动配准。实验表明自动配准的方式提高了点云配准的速度和精度,为点云数据的后续应用提供前提。

关键词:点云 配准 法向量特征

中图分类号:P258 文献标识码:A 文章编号:1674-098X(2017)01(c)-0134-03

三维激光点云数据的自动配准是解决多站点下对同一目标扫描所得的三维激光扫描数据的拼接问题。点云配准按是否有人工干预可分为手动配准和自动配准,手动配准效率较低其精度也不稳定,目前研究较多的是自动配准方法[1]。点云自动配准一般可概述为4个步骤:(1)匹配基元的选取;(2)相似性测度;(3)对应关系确定;(4)坐标转换。在点云自动配准中,配准的关键在于匹配基元的选取,匹配基元反应的是点云的特征点或者属性,它应该具有单一性、稳定性和可区分性。

目前点云自动配准算法研究中,用到的匹配基元有特殊点,如,角点、曲率最大点等;还有使用线特征或者面特征等[2]。这些方法有些过程需要人工干预或者最终精度不太理想。该文研究一种基于点云法向量特征的配准方法,该方法可实现点云的全自动配准,且配准结果具有较高的精度。

1 特征提取

法向量特征是利用目标点p在半径为r的邻域内的点构建一个协方差矩阵,通过求取协方差矩阵的特征值和特征向量,取最小的特征值对应的特征向量作为p点在该邻域下的法向量。

在每一幅点云数据当中特征点的数量只占很小的一部分,提取特征点后点的数量将大大减少,对于后续匹配点对的搜索、转换矩阵的求解等操作将大大提高效率。因此,需要对待配准的点云数据进行处理,获得其特征点集。根据目标点p的邻域法向量设计一个关键点获取方法。首先构建目标点及其邻域内点的协方差矩阵,即:

(1)

(2)

其中,k为目标点p在半径为r的邻域内点的数量;pi为邻域内的点;为该邻域的质心;λi为所构建的协方差矩阵的特征值;υi为λi对应的特征向量。以最小的特征值所对应的特征向量为p点在该邻域下的法向量n。

计算点p在不同半径r1、r2(r1≠r2)的邻域下的方向量,然后根据方向量之间的夹角约束选择。由于在不同的半径下邻域曲面的变化程度不同,因此两个方向量之间必然存在角度偏差,且角度偏差越大,表示曲面变化越剧烈。通过计算两个法向量之间的夹角余弦,并根据设定的阈值提取特征点,即:

(3)

设待配准的两个点云数据分别为源点集P和目标点集Q,利用上述特征点提取方法对两点集中的特征点进行提取,构成特征点集Pt和Qt。

2 拼接方法

2.1 匹配点对获取

点的特征描述是寻找特征点、集中点的对应关系的重要依据,丰富的几何特征描述不仅可以提高特征点之间的区分度,同时也提高算法的稳健性。该文设计3种几何特征的描述方法,实现特征点集中的点的初始匹配。以点集Pt为例设计如下特征描述方法。

(1)以点集Pt中每个点pti的两邻域内法向量夹角的余弦值作为第一种特征量,记为:

(4)

(2)计算点集Pt中每一个点pti在源点集P中,以pti为原点r为半径的球形邻域内所有点的质心pti,以该点到其邻域质心的距离作为第二种特征量,记为:

(5)

(3)以点集Pt中每个点pti与该点邻域质心之间连线和其法向量ni的夹角余弦作为第三种特征量,记为:

(6)

对于特征点集Pt中的每个点pti,根据3个特征量搜索其在特征点集Qt中的对应点。设置如下3个条件,当两点满足这3个条件时,则将其判定为同名点,即:

≤ (7)

≤ (8)

≤ (9)

通过上述3个条件可以初步确定特征点之间的对应关系,构建对应点集。但是由于点云本身存在一些相似区域,因此不可避免地存在一对多的对应关系,为了提高配准的精度和效率需要将错误的对应关系剔除。该文利用RANSAC算法剔除错误对应关系,具体过程为,首先从得到的对应关系集M中随机抽取一个大小为n(n≥3)的样本子集S,根据样本S求出一个参数模型(在此参数模型指源点集和目标点集之间的转换矩阵);然后用该模型去测试总样本集中所有的对应关系,如果其中源点和目标点经模型变换后的距离偏差小于设定阈值,則认为该对应关系属于模型内样本,如果有足够多的对应关系归类为模型内样本,那么估计的模型就足够合理;再用所得到的模型内样本重新估计模型;最后通过模型内样本和模型的错误率来评估模型。重复执行以上步骤,每次产生的模型要么因为局内点太少而被舍弃,要么因为比现有的模型更好而被选用。直到迭代次数达到设定值则迭代结束,最后得到的模型内的对应关系则是剔除错误后的对应关系。

2.2 精确拼接

在获得初始匹配参数后就可以对点云进行初始拼接,拼接后的点云已具有满足ICP算法对初始位置接近的要求。传统的ICP算法主要是对配准的点云数据使用最小二乘算法进行迭代计算,最后使得拼接误差满足要求为止。在选取最近点时,直接选取两点云中欧式距离最近的两个点作为最近点,这样做的后果是一旦出现错配点则会导致迭代计算不收敛的情况[3]。该文选用改进ICP算法的做法是在选取最近点时,对于点云P中选取的任意一点,先求出在另一点云Q中与其欧式距离最近的4个点,然后计算这4个点构成的邻域空间的重心,将重心点作为与点云P中所选取点的最近点。例如点集Pt中任意一个点Pti,其在点集Qt中欧式距离最近的4点qt1、qt2、qt3、qt4,这4点所构成的四面体中心qi为:

(10)

改进ICP算法的基本步骤如下。

(1)求取匹配点集Pt上每一点在中的欧氏距离最近的4个点,并计算这四点所构建的四面体的重心。

(2)运用最小二乘法计算配准参数,其中平移矩阵为Rs+1和Ts+1旋转矩阵为,第ds和ds+1表示第S和s+1次迭代后得到的配准参数。

(11)

(3)将得到的参数应用于点集Ps。

(12)

(4)检测结果是否满足设定条件,不满足则重复以上步骤,否则停止迭代。

3 实验

该文在Visual Studio 2013平台上,利用OpenGL函数库实现算法和显示界面。实验采用数据为斯坦福大学的Bunny数据,Bunny数据是包含10个视角的点云数据,如图1所示,在数据中抽取0°和45°视角的两个点云数据进行初始配准和精确配准。

图2所示为0°Bunny数据和45°Bunny数据的配准结果,图2为利用两点云的法向量特征進行初始配准的结果,可以看出两点云的初始配准位置比较精确,可以满足ICP配准算法的初始位置要求。图3为两点云精确配准后的结果,可以看到边角的分叉消除,两点云完全重合在一起。

4 结语

该文主要对点云数据的配准技术进行研究。给出了一种基于法向量特征的点云数据自动配准方法。该方法不需要附加任何关于仪器的位置或角度信息,也不需要人工选取特征点,仅利用点云数据自身所具有的几何信息进行匹配。通过构造特征点局部区域的法向量特征获得两点云数据的特征点集合,根据刚体变换下的不变量特点,引入角度约束和距离约束等匹配约束,获得两特征点集中的匹配点对与初始配准参数。最后利用邻域空间的重心作为最近点参与ICP算法的迭代运行,避免了当出现错配点时则迭代计算不收敛的情况,有效地提高了ICP算法的稳定性。通过实验证明该方法具有有效性和精确性。

参考文献

[1] 姜如波.基于三维激光扫描技术的建筑物模型重建[J].测绘通报,2013(S):80-83.

[2] 邓非,张祖勋,张剑清,等.一种激光扫描数据与数码照片的配准方法[J].武汉大学学报:信息科学版,2007,32(4):290-292,296.

[3] 戴静兰,陈志杨,叶修梓.ICP算法在点云配准中的应用[J].中国图象图形学报,2007(3):517-521.

猜你喜欢
点云
基于立体视觉的无人机位姿测量方法
基于DNSS与点到平面的ICP结合的点云配准算法
基于Geomagic的汽车内门把手逆向设计
基于三维激光扫描点云的树冠面积快速精准计算方法