基于Point-to-Plane ICP的点云与影像数据自动配准∗
2018-01-04张双星
张 星 张双星
(华中科技大学自动化学院 武汉 430074)
基于Point-to-Plane ICP的点云与影像数据自动配准∗
张 星 张双星
(华中科技大学自动化学院 武汉 430074)
针对三维激光点云与二维影像数据的融合问题,采用了一种基于Point-to-Plane ICP的配准方法;该方法仅采用一块普通的平面黑白棋盘格作为标定板,能同时完成单目相机的标定与三维激光扫描仪和相机的联合标定,进而实现三维点云数据与二维影像数据的配准;与以往基于控制点或者边缘对应的配准方法不同,该方法使用RANSAC算法自动提取场景中的标定平面,通过优化点到平面的距离来求取两组数据的变换。实验结果表明,该配准方法减少了人工的干预,并获得了很高的精度。
三维点云;二维影像;自动配准;Point-to-Plane ICP
1 引言
随着三维激光扫描技术的快速发展,人们能够很便捷地通过三维激光扫描仪获得目标场景表面的信息,获取的表面信息是高密度的离散数据,被称为“点云”,相应的三维点云建模技术被广泛应用于逆向工程、数字城市可视化、虚拟现实等诸多领域,然而三维激光扫描仪仅能获取目标场景表面精确的三维点云坐标信息,缺乏颜色纹理信息并且分辨率较低,严重制约了点云建模技术在真实感重建、目标识别等领域的应用。与之相比,现代工业相机能够获取目标场景高分辨率高质量的影像信息,由此可见激光扫描仪提供的三维点云坐标信息与相机提供的影像色彩信息具有很强的互补性,因此两种信息的配准融合成为当前的研究热点。
目前针对点云数据与影像数据的配准一般分为三步:单目相机的标定;激光扫描仪与相机的联合标定;点云与影像数据的融合。单目相机的标定方法已经非常成熟,如基于直接线性变换的标定法[1]、基于径向排列约束的两步标定法[2]以及基于多姿态平面棋盘格标定法[3]。在激光扫描仪与相机的联合标定方面,国内外学者也进行了大量的研究,总的来说可以分为三种类型:基于特征控制点共线约束的标定,如采用手工选取对应控制点[4]和检测人工标志点的联合标定方法[5];基于点到线距离约束的标定,如Kiho Kwak[6]使用边缘明显的V形相交平面作为标定板,通过优化三维点到边缘线的距离来标定参数,Na Li[7]则巧妙的使用了一个可折叠的M形标定板;基于点到面约束的标定,如Qilong Zhang[8]使用了一个平面标定板,将点云投影在标定板上的约束转换成一个线性问题求解。然而由于三维激光扫描角分辨率较低且易受环境和激光传感器精度影响,不论手工还是自动选取控制点往往都不精确,而基于点到线距离约束的标定方法主要针对二维激光扫描仪与相机的标定。
本文提出了一种基于Point-to-Plane ICP的配准方法,能够很好的解决三维激光扫描仪与单目相机的标定,该方法使用和Qilong Zhang[8]相同的平面棋盘格标定板,将平面标定板放置在三维激光扫描仪与相机均可见的位置,获取不同位置的平面标定板的姿态,通过RANSAC算法自动提取平面标定板对应的点云数据,并采用Point-to-Plane ICP方法计算点云数据到相机坐标系下标定平面的刚性变换,最终完成三维点云与二维影像数据的配准。
2 点云与影像数据配准原理
点云与影像数据配准的目的是确定激光扫描仪扫描的空间物体表面某点的三维几何位置与其在相机拍摄的图像中的对应点之间的关系。其基本思想是先通过相机标定获得关于相机的空间三维几何位置在图像中的对应点的关系,再通过联合标定确定关于激光扫描仪的空间三维几何位置到相机坐标系之间的关系。
图1 点云与影像配准坐标变换图
在配准过程中主要涉及三个坐标系统:激光扫描仪坐标系(LCS)、相机坐标系(CCS)、图像坐标系(ICS)。考虑激光扫描仪坐标系下任意一点PL=[XL,YL,ZL]T,在相机坐标系中的坐标表示为PC=[XC,YC,ZC]T,PL到 PC的刚性变换可以用旋转矩阵RLC和平移矩阵tLC表示:
根据等式(1)可以将激光扫描仪坐标系下所有点云的坐标转换到相机坐标系下。在符合小孔成像模型的相机下,相机坐标系中任意一点PC可以使用下面的等式投影到图像坐标系中:
其中 pI=[u,v,1]T和 pC=[XC,YC,ZC,1]T分别表示图像坐标系中像素点和相机坐标系中的三维点的齐次坐标,s表示缩放因子,矩阵A是相机标定的内参数矩阵,具有下面的形式:
其中 fx和 fy是相机的焦距,cx和cy表示相机主点,r是畸变参数。
结合式(1)和式(2)就能得到激光扫描仪坐标系中任意一点与图像坐标系中像素点的关系:
点云与影像数据的配准就是要找出上式中空间坐标间的参数矩阵 A、RL,C、tL,C。
本文将点云与影像数据配准分为下面几个步骤,主要包括数据获取、数据预处理、坐标标定三个阶段,文章的第二节会具体介绍每个阶段的流程。
图2 点云与影像配准流程图
3 点云与影像数据配准的实现
3.1 点云与影像数据的获取
三维点云数据和二维影像数据分别由一台三维激光扫描仪和CCD面阵相机获取。本文数据获取阶段采用与Qilong Zhang[8]文中相同的平面棋盘格标定板,Qilong Zhang[8]在实施过程中只使用了一块平面标定板,依次摆放在不同位置若干次,同时保证标定板对两个设备可见,利用二维激光扫描仪和相机采集数据,最终得到若干对“点云—影像”数据集,与之不同的是本文采用的是三维激光扫描仪,与Qilong Zhang[8]采用的二维激光扫描仪相比,三维激光扫描仪扫描场景周期很长,同时考虑到相机采集一个场景的影像可以在极短的时间内完成,两个设备采集数据花费的时间及其悬殊。如果采用 Qilong Zhang[8]的实施方案,在数据获取阶段将花费大量的时间。
考虑到将一个平面标定板依次放置在不同位置若干次,使用激光扫描仪和相机分同等次数来采集若干对“点云—影像”数据集,等价于将若干个平面标定板同时摆放在场景中的不同位置,使用激光扫描仪扫描一次就能获取场景中所有平面标定板的点云数据,同时只需要相机拍摄一次就能获取包含所有标定板的影像数据,如图3所示,实验过程中要保证所有平面标定板具有同等规格,并且建议激光扫描仪与相机摆放的位置尽量靠近,为提高配准精度,建议摆放5个以上的标定板,如果相机视角有限,可以分多组来实施。采用这种方案巧妙的减少了采集数据的次数,能够很明显缩减获取数据的时间。
图3 点云与影像获取示意图
3.2 点云与影像数据预处理
在获取点云数据时,由于设备精度、环境因素、被测场景表面性质变化等的影响,点云数据中将不可避免地出现一些噪声点,这些噪声点尤其是离群点对后续激光扫描仪与相机的联合标定精度有很大的影响,本文采用 Radu Bogdan Rusu[9]等首次使用的基于高斯分布统计的离群点滤波方法对第一步采集的点云数据进行预处理。该方法的基本思想是:对每个点,计算它到它的所有临近点的平均距离,假设得到的结果是一个高斯分布,其形状由均值和标准差决定,平均距离在阈值之外的点,就被定义为离群点并可从数据集中去除掉。这里的阈值由均值和标准差定义,见式(5)。
对于影像数据,只需要进行简单的亮度均衡化处理就能使图像中的平面标定板黑白格更加清晰可见,具体方法是将影像从RGB颜色空间转换到YCbCr颜色空间,对亮度通道进行均衡化运算后再转回到RGB颜色空间,这个过程可以很容易通过OpenCV库实现。
3.3 相机标定与联合标定
对于单目相机的标定,其基本原理如图4所示,本文采用非常成熟的基于多姿态平面棋盘格标定法[3],Matlab 工具箱[10]和 OpenCV 库[11]中都有其相应的实现。
图4 相机标定原理图
相机标定可以得到相机的外参数矩阵RC,i和tC,i,分别是3×3的正交旋转矩阵和3×1的平移矩阵,其中i=1…m对应第i个标定板的外参数矩阵,m为标定板的个数,同时还能得到内参数矩阵A。
图5 世界坐标系
如图5所示,使用基于多姿态平面棋盘格标定法标定相机时世界坐标系规定在标定平面上,其中标定板平面在世界坐标系中即为Z=0的平面。在世界坐标系中,第i个标定板平面的单位法向量nW,i=[0,0,1]T,则在相机坐标系对应标定板平面的单位法向量可由下式计算得到:
其中 RC,i,3表示旋转矩阵 RC,i的第三列。此外还可以得到相机坐标系原点到标定平面的距离:
接下来需要在点云数据中提取相应的平面标定板点云,由于室内场景存在很多平面目标,以往的研究者大多采用从整个场景点云数据中通过可视化的手工定向选择的方式来选取对应标定板的点云区域数据,这种操作费时费力,且因为点云噪声点的影响,提取的平面点云精度不够高,为了解决这些问题,本文提出一种全自动的标定板点云提取方案。首先使用RANSAC[11]算法自动提取场景中所有的平面点云,记作Planeall,可以用平面的单位法向量nL,i和激光扫描仪坐标系原点到平面的距离dL,i表示。在使用RANSAC算法时设置的阈值为所使用激光扫描仪传感器的测距精度(本文实验中为1.5cm),使用RANSAC算法会自动保留属于平面的“内点”,进一步提高配准的精度。另外,考虑到平面标定板放置的位置对激光扫描仪可见度很高,因此落在标定板上的点云数量较大,通过遍历Planeall将点云数量小于kmin的平面过滤掉,其中kmin的值需要根据实际设置的扫描仪分辨率来设定,同理可以通过设置kmax排除实验平台、室内墙体等较大的平面点云。
鉴于数据获取阶段采用的是同时放置多个标定板的方式,通过上述操作,一个点云场景中仍然存在多个符合条件的平面点云区域。由于实验过程中激光扫描仪与相机的位置比较靠近,这里不妨假设同一个标定板在两个坐标系中的法向量(nC,i,nL,i)和到原点的距离 (dC,i,dL,i)如果分别满足一定的阈值εn和εd则为所对应的标定板。提取点云场景中对应标定板平面点云区域的操作可以用下面的数学模型表示。
最后进行激光扫描仪和相机的联合标定,即求取激光扫描仪坐标系到相机坐标系的刚性变换,ICP配准算法[12]常被用来求两个坐标系之间的刚性变换,但是对于激光扫描仪中平面标定板点云中的每一点很难找到其在相机坐标系中的对应点,因此无法实施Point-to-Point ICP算法,而采用Point-to-Plane可以解决这个问题,并且实践证明,Point-to-Plane ICP具有更高的精度和收敛速度[13]。
图6 (a)Point-to-Point(b)Point-to-Plane
如图6所示两种ICP方案的示意图,Point-to-Point ICP中源曲面上一点 p在目标曲面上的对应点为距离最近的点q,与此不同的是Point-to-Plane ICP方案中源曲面上一点 p在目标曲面上的对应点为过法向量与目标表面的交点q,在本文中,源表面和目标表面均为平面,使得寻找对应点的操作非常简单。采用Point-to-Plane ICP方案对两个坐标系进行配准的目标函数为
当目标表面为平面时,上式的空间几何解释为:将激光扫描仪坐标系下标定板平面点云到对应相机坐标系中平面标定板的距离作为最小化的优化目标函数,可以通过非线性优化方法[14]求得该函数的最优解 RL,C,tL,C,根据式(4)可以得到三维点云数据与二维影像的配准转换关系。
最后考虑到激光点云的分辨率远远小于影像数据的分辨率,影像中大量的像素点并没有与之对应的三维点,可以使用移动最小二乘法(MLS)[15]对三维点云进行上采样。
4 实验与结果分析
图7为自行设计的点云和影像采集系统,其中三维激光扫描仪为实验室自制,相机为BASLER piA2400-17gc彩色千兆网工业相机,其分辨率为2456×2058。激光扫描仪与相机的位置在实验过程中要保持相对静止,为了突出实验效果,实验过程中以每组一个标定板为例,共采集了15对“点云—影像”对,其中一对数据如图8所示。
图7 激光点云与影像采集平台
图8 点云与影像数据
本文实验的软件环境为:Windows10 64位操作系统,VS2013集成开发环境,图像处理和相机标定基于OpenCV2.4.9,点云数据处理基于PCL1.7.2。
相机标定的结果为镜头焦距为
相机主点坐标为
镜头畸变系数为
通过RANSAC算法和辅助信息自动提取的平面点云如图9所示。
图9 自动提取的标定板点云
通过Point-to-Plane ICP算法联合标定的结果为
根据标定结果,将三维点云数据与二维影像数据进行配准融合,将配准结果写入ASCII编码文件,该文件中每一行为6个域组成,分别对应X、Y、Z、R、G、B,使用CloudCompare软件显示配准后的结果如图10所示,可见三维点云数据与二维影像数据配准的相当准确,满足后续研究的需求。
图10 点云与影像配准结果图
5 结语
本文针对三维激光点云与二维影像数据的融合问题,采用了一种基于Point-to-Plane ICP的配准方法。该方法仅使用多个普通的平面黑白棋盘格同时完成单目相机的标定与三维激光扫描仪和相机的联合标定。使用RANSAC算法和辅助信息自动提取场景中的标定平面,通过优化点到平面的距离来实现两组数据的融合,进而实现三维点云数据与二维影像数据的配准。实验结果表明,该配准方法操作简单且大大减少了人工和时间成本,并获得了很高的精度。
[1]Abdel-Aziz Y,Karara H M.Direct linear transformation into object space coordinates in close-range photogramme⁃try,in proc.symp.close-range photogrammetry[J].Urba⁃na-Champaign,1971:1-18.
[2] Tsai R.A versatile camera calibration technique for high-accuracy 3D machine vision metrology using off-the-shelf TV cameras and lenses[J].IEEE Journal on Robotics and Automation,1987,3(4):323-344.
[3]Zhang Z.A flexible new technique for camera calibration[J].IEEE Transactions on pattern analysis and machine intelligence,2000,22(11):1330-1334.
[4]Naikal N,Kua J,Zakhor A.Image augmented laser scan matching for indoor localization[R].CALIFORNIA UNIV BERKELEY,2009.
[5]赵松.三维激光扫描仪与数码相机联合标定方法研究[D].解放军信息工程大学,2012.ZHAO Song.Study on the Joint Calibration Method of 3D Laser Scanner and Digital Camera[D].Library of Informa⁃tion Engineering,2012.
[6]Kwak K,Huber D F,Badino H,et al.Extrinsic calibration of a single line scanning lidar and a camera[C]//2011 IEEE/RSJ International Conference on Intelligent Robots and Systems.IEEE,2011:3283-3289.
[7]Li N,Hu Z,Zhao B.Flexible extrinsic calibration of a cam⁃era and a two-dimensional laser rangefinder with a folding pattern[J].Applied optics,2016,55(9):2270-2280.
[8]Zhang Q,Pless R.Extrinsic calibration of a camera and la⁃ser range finder(improves camera calibration)[C]//Intel⁃ligent Robots and Systems,2004.(IROS 2004).Proceed⁃ings.2004 IEEE/RSJ International Conference on.IEEE,2004,3:2301-2306.
[9]Rusu R B,Marton Z C,Blodow N,et al.Towards 3D pointcloud based object maps for household environments[J].Robotics and Autonomous Systems,2008,56(11):927-941.
[10]Bouguet,J.Y.“Camera Calibration Toolbox for Matlab.”Computational Vision at the California Institute of Tech⁃nology.
[11]Bradski,G.,and A.Kaehler.Learning OpenCV:Com⁃puter Vision with the OpenCV Library.Sebastopol,CA:O'Reilly,2008.
[11]Fischler M A,Bolles R C.Random sample consensus:a paradigm for model fitting with applications to image analysis and automated cartography[J].Communications of the ACM,1981,24(6):381-395.
[12]Besl P J,McKay N D.Method for registration of 3-D shapes[C]//Robotics-DL tentative.International Society for Optics and Photonics,1992:586-606.
[13]Rusinkiewicz S,Levoy M.Efficient variants of the ICP al⁃gorithm[C]//3-D Digital Imaging and Modeling,2001.Proceedings.Third International Conference on.IEEE,2001:145-152.
[14] Levenberg K.A method for the solution of certain non-linear problems in least squares[J].Quarterly of ap⁃plied mathematics,1944,2(2):164-168.
[15]Alexa M,Behr J,Cohen-Or D,et al.Computing and ren⁃dering point set surfaces[J].IEEE Transactions on visu⁃alization and computer graphics,2003,9(1):3-15.
Automatic Registration of Point Cloud and Image Data Based on Point-to-Plane ICP
ZHANG XingZHANG Shuangxing
(School of Automation,Huazhong University of Science and Technology,Wuhan 430074)
A Point-to-Plane ICP based registration method is used for the fusion of 3D laser point cloud and 2D image data.The method uses only an ordinary flat black and white checkerboard as the calibration board.The calibration of the monocular cam⁃era combined with the calibration of the 3D laser scanner and the camera can be completed at the same time,so as to realize the reg⁃istration of the 3D point cloud data and the 2D image data.Unlike the traditional registration methods based on the correspondence of control points or edges,RANSAC algorithm is adopted to automatically extracts the calibration plane in the scene and achieves the fusion of the two sets of data by optimizing the distance from the point to the plane.The experimental results show that the pro⁃posed method can reduce the manual operation and obtain high precision.
3D point cloud,2D iamge data,automatic registration,Point-to-Plane ICP
Class Number TP391
TP391
10.3969/j.issn.1672-9722.2017.12.039
2017年6月7日,
2017年7月25日
张星,男,硕士研究生,研究方向:三维点云数据处理,机器视觉与图像处理。张双星,男,硕士研究生,研究方向:三维点云数据处理及可视化。