面向深度相机位姿优化的帧间点云数据配准算法
Inter frame point clouds registration algorithm for pose optimization of depth camera
通讯作者:
收稿日期: 2018-08-9
Received: 2018-08-9
作者简介 About authors
李兴东(1983—),男,讲师.orcid.org/0000-0002-0057-9804.E-mail:
TOF相机能够同时采集灰度图像和深度图像从而优化相机位姿的估计值. 应用图结构调整框架优化多帧数据采集时的相机位姿,采用帧间配准决定优化的精度和效率. 从2帧图像上提取并匹配尺度不变特征点对,二维特征点被扩展到三维空间后,利用与特征点的空间位置关系将2帧三维点云配准;逐步应用提出的算法配准参与位姿优化的多帧点云中的任意2帧点云;最后将有效配准的点云帧对作为输入数据,采用图结构算法优化位姿. 实验结果表明,提出的帧间配准算法使得位姿估计值精度显著提高,同时保证了估计效率.
关键词:
TOF (time of flight) camera can collect gray and depth images simultaneously to optimize the estimation of camera pose. Graph-based adjustment structure was applied to optimize the poses of the TOF camera in acquiring several frames. Registration between frames is a key operation which determines both the efficiency and effectiveness of the camera pose optimization. Scale invariant features were detected from a pair of images and matched subsequently. After the 2D feature points were extended into 3D space, two point clouds were registered in terms of relative positions between the features and the normal 3D points. Among all of the point clouds participating in the optimization of camera pose, any two point clouds were registered pair by pair using the proposed registering method. Lastly, the graph based algorithm was employed to adjust the camera poses, with inputs of the valid pairs of registered point clouds. Results demonstrated that the proposed method can improve the precision of the optimized camera pose, and the estimating efficiency is guaranteed.
Keywords:
本文引用格式
李兴东, 高赫蔚, 孙龙.
LI Xing-dong, GAO He-wei, SUN Long.
TOF相机以其独特的优势在诸多领域均有广泛的应用,大致分为3类:场景建模类应用[3-4]、对象建模类应用[5-6]和人机交互类应用[7-8]. TOF相机视野有限,前述几种应用均需要根据相机位姿将不同位置采集的多帧数据拼接来生成完整的点云[9]. 多帧拼接的实质是计算每帧数据对应的相机位姿,从2帧点云数据公共区域匹配三维点对,计算其间的相对位姿,应用迭代最近点算法(iterative closest point,ICP)[10-12]循环“匹配-计算”迭代过程,提高相对位姿精度. 多帧数据的位姿可以通过连乘相对位姿得到,但是会导致位姿误差累积,从而降低数据拼接质量,为此,即时定位与地图构建(simultaneous localization and mapping,SLAM)问题的研究人员主要应用滤波器和平滑理论来设计抑制误差累积的算法. 常用的基于滤波的算法有扩展卡尔曼滤波[13-14]和粒子滤波[15]等方法,其最主要的问题在于线性化和更新效率,难以应用于场景较大的环境重建. 基于图的相机位姿优化算法[16-17]是平滑类算法的典型代表,现在仍是三维环境重建等研究领域的热点,最初由Lu等[16]提出并应用于二维空间中三自由度位姿的优化,后由Borrmann等[17]扩展到三维空间. 将位姿优化问题抽象在图结构中,相机采集数据时的绝对位姿作为顶点,相机两位置之间的相对位姿作为边. 图结构位姿优化的实质是调整顶点以满足边的约束.
计算相对位姿及表征其精度的协方差矩阵是应用图结构位姿优化算法的关键,而从2帧点云中匹配三维点对(即帧间配准)是基础. 近年来,各国研究人员对帧间配准的关注度越来越高,涌现出很多优秀的科研成果. 比如,为解决闭合环路问题[3],可以将当前帧点云与前一帧点云在整个模型中的光线投影侧面点云进行配准,避免与前一帧点云直接配准导致的误差累积. 舒程珣等[18]利用卷积神经网络进行点云配准,提高配准效率. 林桂潮等[19]假设点云元素服从高斯混合分布,通过融合高斯混合模型和点到面距离来实现点云配准过程. 现有的绝大多数图结构优化算法根据给定的初始相对位姿,采用ICP算法迭代搜索最近点作为匹配点,数据帧中每一点均要参与匹配过程,匹配时间复杂度较高;另外直接从整个点云数据中搜索匹配点(距离最近的点)容易产生误匹配,使得位姿优化精度较低. 本文针对现有应用图结构算法对TOF相机位姿优化时存在计算效率低、优化精度低等问题,利用TOF相机的优势,设计快速准确配准帧间点云数据的算法. 充分利用TOF相机能够采集图像的优势,从中提取尺度不变特征点[20],匹配2幅图像中的特征点,并扩展到三维空间,得到三维特征对. 根据齐次变换不改变三维空间中线段长度的原理,位于特征点周围的三维点,其在另一帧点云中的匹配点一定位于另一个特征点周围. 匹配点的搜索范围缩小到以特征点为中心的球形区域内,假设横滚角变化较小(该假设在大多数应用中可以得到满足),搜索范围可以进一步缩小. 将上述帧间配准算法应用于基于图结构的相机位姿优化过程,不仅能够提高优化效率,还可避免三维点对误匹配,从而保证相机位姿优化精度.
本文内容安排如下:详细阐述基于图像的帧间点云数据配准算法;简要介绍基于图结构的相机位姿优化算法后,将提出的帧间配准算法融入到图结构算法中;设计综合实验验证帧间点云数据配准算法在相机位姿优化效果改善上的重要作用并得出结论.
1. 帧间点云数据配准算法
1.1. 三维点集合对构建
图 1
假设共有
由于三维特征在点云中的分布不均匀性,应用网格法对三维特征对进行降采样. 网格法即是将来自一帧数据(以
式中:
由式(1)和(3)得到降采样后的特征对:
为搜索特征周围的三维点,针对任意一对(第k对)三维特征
图 2
图 2 以三维特征点为球心搜索的三维点集合对
Fig.2 Pairs of 3D point sets searched with 3D feature points as spherical centers
表 1 搜索半径及从两帧点云中提取的三维点子集
Tab.1
k | rk /m | | |
1 | 0.56 | 2 439 | 2 551 |
2 | 2.36 | 1 215 | 1 185 |
3 | 0.47 | 1 284 | 1 263 |
4 | 0.89 | 2 626 | 2 465 |
1.2. 三维点集合划分
假设TOF相机在连续采集数据过程中横滚角(Roll角)变化较小,根据三维点对应的像素在图像上的位置,式(5)、(6)中的三维点子集可以被进一步划分,从而使式(7)中的三维点子集对被细化. 将图2中的三维点子集重新投影到像面空间,每个三维点肯定可以找到对应的像素,将三维特征投影到二维特征. 令
式(5)~(7)中的元素均被进一步划分,分别如式(10)~(12)所示.
图 3
图 3 三维点子集对应的像素集合四象限划分结果
Fig.3 Pixel set related to subset of 3D points divided by quadrant method
将球形区域内的三维点云继续划分,进一步缩小搜索空间,提高搜索效率. 矩形被划分为4个象限,即根据三维点对应的像素在图像上的位置关系,将球形区域内的三维点划分为4份,进一步缩小匹配点搜索空间,提高匹配效率. 三维点子集
1.3. 帧间配准算法流程
根据前述方法,设计帧间点云数据配准流程,伪代码算法形式如算法1所示.
算法1:帧间点云配准
输入:2帧数据
输出:三维点对集合
匹配尺度不变特征点对
IF特征点对的数量小于3 THEN
RETURN Ø
END IF
根据特征点对估计相对位姿
生成三维点子集对:
IF需要划分三维点子集THEN
进一步划分:
FOR任意一对三维点子集
FOR任意一个三维点
经过
END FOR
END FOR
ELSE
FOR任意一对三维点子集
FOR任意一个三维点
经过
END FOR
END FOR
END IF
RETURN
END
算法1以2帧数据为输入,从2帧点云中生成匹配的三维点对集合,用于优化TOF相机的位姿. 算法首先从2幅图像中提取并匹配尺度不变特征点,若特征点对数量小于3,则算法终止,说明2帧数据的重叠部分较少,对位姿优化贡献比较有限. 算法应用匹配的三维特征对估计[22]2帧数据之间对应的相对位姿
根据算法1的流程,只有三维特征点周围的三维点才参与生成三维点对,因此生成的点对数量一定小于原始点云(
2. TOF相机位姿优化
2.1. 优化基本原理
图结构调整算法[16]的核心思想是将绝对位姿和相对位姿分别抽象为图中的顶点和边,通过调整顶点的位置达到优化位姿的目的.
构建如式(13)所示的马氏距离等式,其中
相对位姿可以表示为绝对位姿“差”的形式,如式(14)所示,其中
假设有
式中:矩阵M的维度为
表征X精度的协方差矩阵如下:
2.2. TOF相机位姿优化算法
根据第2.1节简述的基于图结构的六自由度位姿优化原理,将算法1所述的帧间配准过程融入到图结构优化算法中,其算法流程的伪代码形式如算法2所示. 算法2通过配准所有的2帧组合对,选用有效配准的帧对,所谓有效配准即是2帧数据有重叠区域,并且应用算法1能够获得足够数量的正确三维点对,搜寻所有可能对优化产生贡献的数据帧对. 综上,算法1与算法2之间的逻辑关系可以用图4中的流程图表示,左侧是优化主流程,其中2帧点云数据的帧间配准是优化过程的关键环节,用右侧虚线框标出. 算法2实现了TOF相机位姿优化主流程,算法1实现了2帧点云数据的帧间配准.
图 4
算法2:TOF相机位姿优化
输入:
输出:W帧数据采集时的绝对位姿
初始化有效数据帧对的数量
FOR EACH
FOR EACH
应用算法1配准数据帧
IF配准结果不为Ø的THEN
根据配准的三维点对计算相对位姿估计值
END IF
END FOR
END FOR
构造关联矩阵
应用最大似然法优化TOF相机位姿:
RETURN
END
3. 实验分析与讨论
从TOF相机位姿优化精度和效率2个方面分别说明本文的图结构优化算法的有效性,将优化得到的TOF相机位姿与真实位姿进行比较,计算误差值来度量精度,运动捕捉系统实时记录TOF相机的运动,将记录值作为TOF相机的真实位姿. 通过比较应用本文帧间配准算法前、后的图结构优化算法执行时间来说明本文算法在效率上的优势.
3.1. 六自由度位姿误差
令
式中:
其中,
3.2. 与原有图结构位姿优化算法比较
改进前、后的图结构位姿优化算法均用C++语言编写,在同一台装有64位Ubuntu16.04的笔记本电脑上执行,电脑CPU是Intel(R) Core(TM) i3-2350,主频2.3 GHz,内存4 G. 在实现本文提出的帧间配准算法时,降采样选用的三维网格的分辨率设置为(0.3 m,0.3 m,0.3 m).
原始图结构位姿优化算法中的帧间配准通过ICP迭代过程实现,若能够从2幅图像中提取出匹配特征点对,则应用该特征对计算ICP迭代过程的初始相对位姿;反之,借助中间数据帧计算迭代的初始相对位姿.
3.2.1. 数据采集实验环境搭建
如图5所示,应用Motion Analysis运动捕捉系统实时记录TOF相机的运动过程,根据时间戳确定采集数据时的“真实”位姿,该运动捕捉系统的最高定位频率为500 Hz,本文离线采集TOF相机数据,每秒抓拍2次,定位频率远高于TOF相机拍照频率,因此利用该运动捕捉系统对TOF相机进行定位是合理的. 标定系统后,经过多次测试,TOF相机直线运动2 m,运动捕捉系统测量误差能够控制在1 mm以内,因此将运动捕捉系统提供的定位数值作为TOF相机的“真实”位姿是可以接受的. 运动捕捉系统只识别由强反光材质制作的Marker点,实验中,在TOF相机上粘贴8个Marker点,采集数据之前需要标定其在TOF相机坐标系下的三维坐标. TOF相机选用的是PMD Camcube3.0,4 m测量范围内精度可以达到1 cm,分辨率是200×200.
图 5
图 5 深度相机原始数据采集试验环境
Fig.5 Experimental environment for capturing original data of depth camera
经多方向移动、多角度旋转TOF相机,连续采集1 000帧数据,如式(22)所示,运动捕捉系统同时记录下数据采集时的1 000个绝对位姿:
以第一帧
第二次优化基于以下数据帧,
依次类推,假设共执行
3.2.2. 优化精度比较
令
图 6
图 6 多次执行优化算法的平均旋转误差比较
Fig.6 Comparison of average rotation errors for executing optimization algorithm by several times
图 7
图 7 多次执行优化算法的平均平移误差比较
Fig.7 Comparison of average translation errors for executing optimization algorithm by several times several
从图中还可以看出,当每次优化参与数据帧数
3.2.3. 优化效率比较
原始图结构优化算法需要把任意2帧数据进行配准,即便无重叠区域,并且所有三维点参与到基于ICP的帧间配准过程中;算法改进后,无重叠区域的2帧数据不参与位姿优化,并且只有特征点周围的三维点才参与帧间配准过程,因此优化效率提高比较明显. 原始算法执行时间与参与优化的数据帧对数量成大致正比的关系,数据帧对的数量即是
图 8
图 8 执行一次图结构优化算法的平均时间
Fig.8 Average time for executing graph structure optimization algorithm by once
3.3. 多帧数据拼接实验
TOF相机随机移动5次,共采集6帧数据,6幅灰度图像如图9所示. 应用本文的改进图结构优化算法,执行2次位姿优化算法,第一次基于第1、2、3、4帧数据,第二次基于第4、5、6帧数据. 以第1帧数据采集时的TOF相机位姿为“基准”,其他5帧数据根据其位姿分别变换到“基准”坐标系下,最终将6帧数据拼接在一起,结果如图10所示. 位姿优化的精度直接决定点云拼接的质量,对比图10中的上、下2幅点云拼接效果图,不难看出,改进后的算法使得6帧数据拼接效果较好,说明位姿优化精度较高. 其相机在不同位姿条件下拍摄同一场景时,灰度值有所不同,而三维点用对应像素的灰度值赋予颜色信息,因此不同数据帧的三维点存在色差.
图 9
图 9 数据拼接实验多帧原始灰度图像
Fig.9 Multiple original grayscale images for data registration experiment
图 10
图 10 采用不同算法的位姿优化后6帧数据三维点云拼接比较
Fig.10 Comparison Registration for six point clouds from six frames data after pose optimization using different algorithms
4. 结 语
本文以应用图结构位姿优化算法对TOF相机采集数据时的位姿进行优化为研究背景,提出了基于图像及尺度不变特征的帧间数据配准算法,帧间配准效率和精度均得到较大程度的改善. 帧间配准是图结构优化算法的关键操作步骤,实验结果显示,融合本文提出的帧间配准策略的图结构优化算法的优化效率和精度与原始算法相比均显著提高. 从优化效率上来说,本文算法比原算法平均提升39.2%;从优化精度上来说,平移精度平均提升57.7%,旋转精度平均提升65.7%.
本文的帧间配准算法不仅能够用于TOF等三维相机,也为应用双目、单目等其他相机进行定位和环境重建提供了新思路. 下一步研究是将此算法应用于移动机器人平台,实时定位机器人的位姿,同时构建周围环境的准确地图.
参考文献
结合同场景彩色图像的深度图超分辨率重建
[J].
Depth image super-resolution construction combined with high-resolution color image of the same scene
[J].
基于Kinect v2 的实时精确三维重建系统
[J].
Real-time accurate 3D reconstruction based on Kinect v2
[J].
RGB-D mapping: using Kinect-style depth cameras for dense 3D modeling of indoor environments
[J].DOI:10.1177/0278364911434148 [本文引用: 1]
A method for registration of 3D shapes
[J].DOI:10.1109/34.121791 [本文引用: 1]
LieTrICP: an improvement of trimmed iterative closest point algorithm
[J].DOI:10.1016/j.neucom.2014.03.035
On the representation and estimation of spatial uncertainty
[J].DOI:10.1177/027836498600500404 [本文引用: 1]
基于EKF和LKF级联的频偏和相位估计联合方案
[J].
A joint frequency offset and phase estimation scheme based on cascaded EKF and LKF
[J].
Globally consistent range scan alignment for environment mapping
[J].DOI:10.1023/A:1008854305733 [本文引用: 4]
Globally consistent 3D mapping with scan matching
[J].DOI:10.1016/j.robot.2007.07.002 [本文引用: 3]
基于卷积神经网络的点云配准方法
[J].
Point cloud registration based on convolutional neural network
[J].
融合高斯混合模型和点到面距离的点云配准
[J].
Point cloud registration algorithm combined gaussian mixture model and point-to-plane metric
[J].
Distinctive image features from scale invariant key points
[J].DOI:10.1023/B:VISI.0000029664.99615.94 [本文引用: 2]
Closed-form solution of absolute orientation using unit quaternion
[J].DOI:10.1364/JOSAA.4.000629 [本文引用: 1]
/
〈 |
|
〉 |
