基于Kinect的实物地质标本三维重建①

2018-01-08 03:12何小海滕奇志杨小鹏
计算机系统应用 2017年12期
关键词:三维重建实物标本

喻 芹,何小海,滕奇志,杨小鹏

(四川大学 电子信息学院,成都 610065)

基于Kinect的实物地质标本三维重建①

喻 芹,何小海,滕奇志,杨小鹏

(四川大学 电子信息学院,成都 610065)

基于多视点图像运动结构恢复的三维重建方法相当耗时且鲁棒性低,针对以上问题,提出了一种基于Kinect的实物地质标本的三维重建方法. 首先使用GrabCut算法提取前景目标,结合原始深度图像生成对应视角的点云,再基于SIFT特征利用RANSAC算法执行点云粗对准,然后在ICP算法中引入异常值拒绝方法和动态调整权重思想进行点云精细配准,最终重建出完整三维点云模型. 实验结果表明该方法能快速重建出良好的实物地质标本三维点云模型,能有效处理标本缺少结构特征的情况,并且鲁棒性高.

Kinect; GrabCut算法; 点云配准; 异常值拒绝; 动态调整权重; 三维重建

1 引言

实物地质资料是具有极大科研价值和经济价值的不可再生资源,在地质勘探、矿产开发等研究领域中起着重要作用[1]. 通常情况下,实物地质资料标本以二维图像形式存储,但是二维图像只能反映某一个特定观察视角的二维图像信息,不能反映出三维信息,而实物地质资料标本的三维模型可以更加直观地反映出它在各个不同视角的信息,因此,将实物地质标本进行三维重建是一个重要的研究方向.

激光扫描仪和立体相机可用于构建三维模型. 利用激光扫描仪进行三维重建,能得到精确的结果,但是激光扫描仪价格昂贵并且其全扫描速度很慢. 立体摄像机虽然不昂贵但是其深度信息的计算复杂度很高.基于多视点图像运动结构恢复的三维重建方法来重建实物地质标本[2],使用的是数码相机,成本低,但是相当耗时并且算法复杂、鲁棒性低、易受环境影响.Kinect相机含主动传感器,不受环境可见光谱的干扰[3],能够快速获取场景的深度信息; 此外,Kinect成本低,操作简单,易于使用,并且利用它能够获得比较密集的且精度良好的三维点云,故本文选择使用Kinect来重建实物地质标本模型.

基于Kinect的三维重建算法中,比较常用的方法是依据Kinectfusion[4]系统获取三维模型,但Kinectfusion需要性能比较强大的显卡来实现三维重建. 在来自不同视图的三维点云配准中,Kinectfusion使用ICP(迭代最近点)算法,此算法要求三维点云彼此接近,因此,必须缓慢移动Kinect扫描场景,以确保相邻视图具有很大的重叠性,从而实现点云的精确配准. 当Kinect移动速度较快或者目标处于运动状态时,Kinectfusion 重建结果很差. 另一方面,Kinectfusion 使用的ICP算法依赖于物体的显著特征,因此,当物体缺少突出结构特征时,其重建效果比较差. 而本文提出的基于Kinect的实物地质标本的三维重建方法在相邻图片具有较小重叠情况下且目标结构特征不突出时仍能得到比较好的三维点云模型,并且本文算法基于CPU进行运算,对显卡没有特殊要求,这降低了对计算机硬件的需求. 此外,本文方法相对于基于多视点图像运动结构恢复的三维重建方法鲁棒性更高、适用性更强、速度更快、所含的背景噪声更少.

2 三维重建

本文的实物地质标本重建系统主要包括三个设备:一个Kinect 1代传感器、一个电动旋转平台和一台计算机. 如图1所示,Kinect的三个摄像头位于不同的地方,所以用Kinect拍摄的彩色与深度图像有一定的偏差,于是本文选择使用Openni驱动Kinect,获取对齐(同步)的深度图像和彩色图像. 实验平台示意图如图2所示,将实物地质标本放在旋转台中,固定 Kinect,每隔一定时间间隔拍摄一幅彩色与深度图像. 再使用GrabCut算法分割彩色图像,提取前景目标,结合深度图像得到相应视角的点云,然后进行点云配准得到完整的实物地质标本三维点云模型. 在点云配准过程中,由于此实验装置所拍摄的图片具有较小的重叠性,若直接使用ICP算法则配准效果很不好,于是在执行ICP 算法之前,使用 RANSAC[5,6]进行初始配准,同时利用RGB图像的SIFT[7]特征粗略记录相邻视图的点云.在实物地质标本缺少结构特征的情况下,使用ICP算法配准效果很不好,于是在ICP算法中引入异常值拒绝方法,通过目标的点云结构和稀疏SIFT特征对的空间距离自适应地设置阈值[8]; 为了避免当SIFT特征不准确时而导致配准结果错误的情况,添加动态权重进行自适应约束[9]. 基于Kinect的实物地质标本三维重建的系统框图如图3所示.

图1 Kinect 1 代实物图

图2 实物地质标本三维重建实验平台示意图

图3 基于Kinect的实物地质标本三维重建系统框图

2.1 彩色图像分割

图像分割是将感兴趣的目标区域从背景中提取出来,图像分割质量的好坏,很大程度上决定着后续三维重建的效果. 目前,国内外虽有大量的分割算法,但是其中适用于实物地质标本的分割却很少. 针对于实物地质标本分割,本文主要尝试了: 基于Lab空间的颜色分割和基于图论的GrabCut分割. 由于实物地质标本包含的颜色多样且不同样本之间差别很大,所以采用基于颜色的分割算法[10]效果不好且不具有适用性.GrabCut算法利用图像的纹理,颜色和边界信息,只需要少量的用户交互操作则可将一幅图像分为目标和背景两个不相交的区域,得到很好的分割结果,所以本文选择使用GrabCut算法进行图像分割,提取前景目标.

GrabCut算法的主要流程描述如下:

(1) 通过用户设定的背景区域TB来初始化图T,背景的补集(未知区域: 可能是目标)设为TU.TB内的像素,α设为 0;TU内的像素,α设为 1.

(2) 用α=0和α=1两个集合和K-Means聚类方法初始化前景和背景GMM模型.

(3) 求TU中的每个像素n所对应的GMM参数kn.

(4) 从数据z中获取GMM参数θ.

(5) 对TU构建s-t网络图,根据最小能量得到初始分割:

(6) 重复执行 (3)到 (5),直到收敛.

(7) 边界优化.

基于 Lab颜色空间的分割结果如图4(a) ,GrabCut算法分割结果如图4(b). 从图4中可看出,当背景不单一时,基于Lab颜色空间的分割算法提取实物地质标本失败; 而GrabCut分割效果很好,有效地提取出了实物地质标本.

图4 两种算法分割结果对比

2.2 点云初始配准

2.2.1 初始配准

将上述GrabCut算法分割后的彩色图像与深度图像结合生成相应视角的点云. 由于拍摄的相邻图片之间有显著的变化,所以此时相邻点云之间具有较小的重叠性. 若直接使用ICP算法进行点云配准则效果很不好,于是本文利用SIFT算子从相邻RGB图像中提取图像特征点并将其作为点云初始配准的基准点,再使用RANSAC进行初始配准,以解决相邻视图具有较小重叠的情况.

SIFT(尺度不变特征变换) 算法是 David Lowe 提出的一种基于尺度空间的图像局部特征描述算法.SIFT特征对旋转、尺度缩放、视角变化、亮度变化等具有良好的不变性[13].

SIFT算法分为以下四步:

图像的尺度空间L(x,y,σ)定义为高斯函数G(x,y,σ)与原图像I(x,y)的卷积:

m,n表示高斯模板的维度; (x,y)表示图像像素位置;σ为尺度空间因子;k为常量.

(2) 关键点定位: 在每个候选位置上,通过计算拟合曲面的极值来确定关键点的位置和尺度.

(3) 关键点方向参数的计算: 基于图像局部的梯度方向,确定每个关键点的主方向,使特征点的描述具备旋转不变性.

(4) 生成关键点描述子: 通过对关键点的邻域进行分块,在选定的尺度上计算块内梯度直方图,其生成的特征向量为关键点描述子.

RANSAC(随机采样一致) 算法是一种估计数学模型参数的迭代算法. 从样本中随机抽取一个样本子集,利用最小方差估计算法得到此子集的模型参数,然后计算其余样本与该模型的偏差,当偏差小于设定阈值时,将样本判定为模型内样本点,反之为模型外样本点,重复此过程. 根据期望的误差率、模型样本点数以及所设定的迭代次数来决定迭代是否结束.

定义相邻的两个三维点云为:P={P1...Pm}和Q={Q1...Qn},m、n分别为P和Q的点云数. 将

2.2.2 精细配准

假设T0是RANSAC之后和基于ICP的精细配准之前的变换结果.Tk是基于ICP的精细配准算法第k次迭代后的变换结果.

对于第k(k=1,2,...)次迭代:

(1) 对于点云P中的每个点Pi,根据最短距离找到它在点云Q中相应的点Q*k,

将Pi与Q*k的欧氏距离定义为最短距离:

(3) 计算抵制异常值[14]的自适应阈值:

因为Kinect相机分辨率的限制以及RANSAC本身的局限性,在初始配准之后,仍存在一些配准错误的SIFT特征点. 于是在一定距离的SIFT特征对集合中,取其35%而不是全部,然后再计算其平均空间距离,命名为dmk.c为常量,在实验中,将c设置为 28.rmk是Sk的最短距离的均方根 RMS,其中,Pi∈Sk.

(4) 定义函数f(T)

使用αi抵制异常值.

σ(*)表示表面变化[15].

(6) 当迭代次数达到所预设的值(本文设定为20)后,迭代终止.

式(17)中的函数第一项为内边界的最短距离的加权均方. 在式(17)中,将点到点的距离作为误差度量,抵制异常值,同时使用局部表面变化来控制权重αi(式(18)). 因为表面变化与曲率密切相关,但是计算复杂度比曲率变化低; 同时局部特征可以更好地表示表面结构,所以本文使用三维局部表面变化特征来控制权重αi. 如果最短距离的两个点具有相似的表面变化,则权重αi增大,反之减小.

式(17)的第二项是SIFT特征对的三维空间距离的加权均方. 动态调整权重βi是SIFT特征对(PFi,QFi)的动态权重. 如果权重βi设置得太大,则变换主要取决于相对较少数量的特征对,而当特征对不完全可靠时,这将产生错误结果. 另一方面,因为特征点对的数量与式(17)第一部分中的三维内点的数量相比非常小,如果权重βi设置得太小,则基于特征的第二项变得无用.为了解决上述问题,根据SIFT特征对的二维匹配距离以及SIFT特征对的空间距离的均方根与最短距离Sk的均方根rmk之间的比率,自适应地设置βi. 在式(21)中,如果二维SIFT特征对匹配距离大,则意味着匹配不准确,于是权重βi减小; 如果SIFT特征对的均方根距离与Sk的均方根距离相比相对较大,说明SIFT特征对可靠,则权重βi增大.

在上述算法中,自适应阈值t利用了点云结构信息和SIFT特征,αi根据t抵制异常值,同时为了避免当SIFT特征不准确时而导致配准结果错误的情况,添加动态权重βi进行自适应约束,这些有效地约束ICP算法使其正确收敛. 在标本缺少结构特征的情况下仍能得到良好的实物地质标本完整三维点云模型.

3 实验结果与分析

在白炽灯照明条件下,利用基于多视点图像运动结构恢复的三维重建方法,使用数码相机对每个标本拍摄40张图片(样本图片如图5(a)(c)),通过其重建实物地质标本的结果发现此算法对环境要求苛刻,耗时长,重建结果含有大量的噪声. 此外,该算法鲁棒性低,重建结果有时会有大量的孔洞,如图6(a)左图. 在本实验装置下,基于Kinectfusion重建出的结果很模糊,并且包含大量的噪声背景,如图6(b). 基于本文方法,在同等光照条件下使用Kinect对每个标本拍摄40张彩色图(如图5(b)(d))及其同步的40张深度图,经过实验得出本文方法鲁棒性高,能快速重建出良好的三维点云模型,并且含噪声少,几乎无孔洞现象,如图6(c). 从图6中可看出: 对于结构特征不明显的标本2,本文方法重建出的三维点云模型效果最好. 三种方法的运行时间对比如表1.

表1 三种方法的运行时间对比

图5 使用数码相机与Kinect拍摄的两个标本图

4 总结

本文提出了一种基于Kinect的实物地质标本的三维重建方法. 首先使用GrabCut算法提取彩色图像中的前景目标,结合原始深度图像生成对应视角的点云;再基于SIFT特征利用RANSAC算法执行点云粗对准,在ICP算法中引入异常值拒绝方法和动态调整权重思想进行点云精细配准,最终重建出良好的实物地质标本完整三维点云模型. 实验结果表明该方法相较于Kinectfusion能重建出较好的实物地质标本三维点云模型,并且对计算机硬件要求相对较低; 相对于基于多视点图像运动结构恢复的三维重建方法鲁棒性更高、适用性更强、速度更快、所含的背景噪声更少;此外本文方法能更好地重建出结构特征不明显的实物地质标本.

1陈阳. 国家实物地质资料管理标准研究[硕士学位论文]. 北京: 中国地质大学 (北京),2015.

2毛国庆. 实物地质资料多视点图像的三维重建研究[硕士学位论文]. 成都: 四川大学,2015.

3顾照鹏. 单目视觉同步定位与地图创建技术研究[博士学位论文]. 北京: 中国科学院自动化研究所.

4Izadi S,Kim D,Hilliges O. KinectFusion: Real-time 3D reconstruction and interaction using a moving depth camera.Proc. of the 24th Annual ACM Symposium on User Interface Software and Technology. Santa Barbara,California,USA.2011. 559–568.

5Fischler MA,Bolles RC. Random sample consensus: A paradigm for model fitting with applications to image analysis and automated cartography. Readings in Computer Vision,1987,24(6): 726–740.

6Inomata R,Terabayashi K,Umeda K,et al. Registration of 3D geometric model and color images using SIFT and range intensity images. Proc. of the 7th International Conference on Advances in Visual Computing. Las Vegas,NV,USA. 2011.325–336.

7Lowe DG. Distinctive image features from scale-invariant keypoints. International Journal of Computer Vision,2004,60(2): 91–110. [doi: 10.1023/B:VISI.0000029664.99615.94]

8Jun X,Hsu YF,Feris RS,et al. Fine registration of 3D point clouds with iterative closest point using an RGB-D camera.Proc. of IEEE International Symposium on Circuits and Systems (ISCAS). Beijing,China. 2013. 2904–2907.

9Xie J,Hsu YF,Feris RS,et al. Fine registration of 3D point clouds fusing structural and photometric information using an RGB-D camera. Journal of Visual Communication and Image Representation,2015,32: 194–204. [doi: 10.1016/j.jvcir.2015.08.007]

10Jaiswal M,Xie J,Sun MT. 3D object modeling with a Kinect camera. Proc. of Asia-Pacific Signal and Information Processing Association Annual Summit and Conference(APSIPA). Siem Reap,Cambodia. 2014. 1–5.

11Rother C,Kolmogorov V,Blake A.“GrabCut”: Interactive foreground extraction using iterated graph cuts. ACM Trans.on Graphics (TOG),2004,23(3): 309–314. [doi: 10.1145/1015706]

12柳欢欢,姚明海,王宪保. 基于小波变换的 GrabCut图像分割. 计算机系统应用,2014,23(8): 154–157. [doi: 10.3969/j.issn.1003-3254.2014.08.028]

13王程冬,程筱胜,崔海华,等. SIFT 算法在点云配准中的应用. 传感器与微系统,2012,31(2): 149–152.

14Zhang ZY. Iterative point matching for registration of freeform curves and surfaces. International Journal of Computer Vision,1994,13(2): 119–152. [doi: 10.1007/BF01427149]

15Pauly M,Gross M,Kobbelt LP. Efficient simplification of point-sampled surface. Proc. of the Conference on Visualization. Boston,Massachusetts. 2002. 163–170.

3D Reconstruction of Physical Geological Specimen Based on Kinect

YU Qin,HE Xiao-Hai,TENG Qi-Zhi,YANG Xiao-Peng

(College of Electronics and Information Engineering,Sichuan University,Chengdu 610065,China)

The three-dimensional reconstruction method based on multi-view image motion structure restoration is quite time-consuming and has little robustness. Aiming at these issues,a new three-dimensional reconstruction method for physical geological specimen based on Kinect is proposed in this paper. First,the GrabCut algorithm is used to extract the foreground objects,combining with the original depth images to generate the point cloud corresponding point of view.Then,it uses RANSAC algorithm to perform point cloud alignment crudely based on the SIFT feature. Next,the ICP algorithm is improved by introducing the methods of rejecting outliers and adjusting the weight dynamically to perform fine registration of point cloud. Finally,a complete three-dimensional point cloud model is constructed. The experimental results demonstrate that the proposed method can reconstruct the three-dimensional point cloud of physical geological specimen quickly,excellently and robustly. When the specimens lack structural features,the proposed method can handle it effectively.

Kinect; GrabCut; point cloud registration; outlier rejection; dynamically adjusted weights; 3D reconstruction

何小海,E-mail: hxh@scu.edu.cn

喻芹,何小海,滕奇志,杨小鹏.基于Kinect的实物地质标本三维重建.计算机系统应用,2017,26(12):244–249. http://www.c-sa.org.cn/1003-3254/6104.html

国家自然科学基金(61372174); 四川大学研究生课程建设项目(2016KCJS5113)

2017-03-14; 修改时间: 2017-03-31; 采用时间: 2017-04-07

猜你喜欢
三维重建实物标本
不明原因肝损害的32例肝组织活检标本的29种微量元素测定
巩义丁香花园唐墓出土器物介绍
三维重建的飞机机动动作库设计与可视化
COVID-19大便标本采集器的设计及应用
基于Mimics的CT三维重建应用分析
基于Arduino控制的半实物模拟驾驶系统
立体视觉技术在交通对象三维重建中的应用研究
班主任进行实物分析的实践路径
三维重建结合3D打印技术在腔镜甲状腺手术中的临床应用