基于Intel Real Sense 3D实感技术的三维脚型测量与重构
2018-04-25,,,
,,,
(安徽大学 计算智能与信号处理教育部重点实验室,合肥 230039)
0 引言
随着计算机视觉的发展,深度图像中三维点云的配准[1-2]在三维重构中占据着越来越重要的角色在三维建模与场景复原应用中有着广泛的应用。其中找到各点云之间相对应的点在二维、三维空间内的对应关系一直都是计算机视觉中要解决的基本问题[3]。三维重构就是依据获取的富含深度信息的图像来对物体进行三维信息复原的过程,可以应用各个领域,比如根据获取的深度图可以开发光探测和测距(激光雷达)传感器[4-7],任务跟踪,人机交互性游戏开发,三维重构等。三维重构主要包括两个方面:1)点云配准;2)点云融合。点云配准找到空间中两个点之间的想对应关系。点云融合融合检测到的所有点集,最终获得完整的模型。
SR300 视觉传感器能够同时采集二维 RGB及深度图像信息[8-9]。目前,国内外在这方面的研究都取 得了一些进展,如障碍物的检测[10]、手关节跟踪[11]、手势识别[12]、人体复健[13]等。传统的果实定位采用双 目视觉技术,但需要进行相机标定,计算复杂,且仅能在可见光范围内识别。使用SR300 传感器无需进行参数标定即可获得深度数据实现番茄三维定位,减少了光线的干扰,同时SR300传感器相对于Kitnect传感器还具有廉价且购买方便的优势。
脚型三维形状测量技术是制鞋业、足患诊疗康复以及足部生物力学分析研究等领域的基础技术。早期往往采用人工测量,存在劳动强度大、效率低、精确差等缺陷,且缺乏对足部形态的整体特征信息的描述。随着测量技术的发展,出现了利用扫描技术[14-15]、拍照合成技术[16]、倒模技术等技术手段,提高了测量效率和精度。其中利用光电扫描的非接触式三维脚型扫描技术较为常见。Silvia Menato和Giuseppe Landolfi[17]等人开发的通过3D脚扫描应用程序获取个性化的足部三维模型,精度达到0.15 mm但耗时长达15分钟。
本系统针对Real Sense SR300相机对足型三维重建进行了研究,实现了一种多视角实时三维脚型建模系统,能够快速、精确并且安全可靠地对足部进行三维重构以及相关足部参数提取。运用多个Real Sense SR300在开放空间下无遮挡地扫描脚型通过对足部点云数据获取、去噪、平滑、修复以及渲染贴图等步骤,实现了脚型的三维重构和足部参数提取。实验结果表明,该系统不仅具有计算精度高、处理速度快的优点,而且具有较强的鲁棒性。
1 RealSense SR300
本文研究都是由4台SR300实感摄像机构成的图像获取系统,SR300有3个镜头,中间是分辨率为1 920*1 080的RGB摄像头,左右两侧分别为红外线发射器和红外线摄像机如图1所示,获取深度图像的核心技术是光编码技术,深度测量原理是三角测距原理。SR300设备的红外线发射器(IR Laser Projector)发射的“结构光”,经物体反射后会被红外线传感器(IR Camera Lens)接收。由于红外线到反射物体表面的距离不同,红外传感器捕到的“结构光”图案的位置和形状会发生变化,根据这些由实感图像处理芯片就能计算出物体表面的空间信息,再用三角测距原理进行“深度”计算,进而重现3D场景。
图1 RealSense SR300
1.1 SR300标定
本系统是采用4个SR300构成的成像获取系统如图2,所以相机间的内、外参数标定是保证系统保证测量准确度的重要环节。
图2 图像获取系统
通过Real Sense 的SDK可以获得SR300原始红外图,但由于红外发射器的功率小以及受红外发射器点阵图的干扰,相机抓取的棋盘图非常不稳定导致标定结果偏差很大。为解决该问题使用以下方案:将SR300相机红外发射器当住,使用红外补光灯照射保定板,这样就能得到清晰的标定板红外图像再结合单个相机使用Zhang标定法[18]标定,对相机进行初始化,获得相机摄像头焦距fu、fv,摄像头u轴与v轴方向的尺度因子f/dx和f/dy以及摄像头主点坐标(tu,tv)。
就单个摄像机而言,摄像机外参数标定所要解决的问题就是摄像机坐标系相对于世界坐标系的位置参数,对多摄像机系统外参数是指各个摄像机间的相对位置参数。通常有了各自摄像机相对于世界坐标系的外参数之后,可利用世界坐标系作为中介,将双摄像机间的外参数求出。假设4个相机分别为C1、C2、C3、C4。使用一种基于立体标定件的双摄像机外参数标定法[19]分别获得4个相机的外参数依次为:(R1,T1)、(R2,T2)、(R3,T3)、(R4,T4)以及相对于相机C1的各个相机的空间几何位置分别为(R12,T12)、(R13,T13)、(R14,T14)。
1.2 投影建模
相机投影模型是将空间内一点P(X,Y,Z)根据相机内参数矩阵得到与投影像平面内点(x,y)之间的关系,即根据深度数据获得对应的像平面像素:
△:R3(X,Y,Z)→R2(x,y)
(1)
(2)
(3)
根据相机获取的像平面像素点(x,y)从而获得该点所对应的深度值,即T的逆变换:
△-1:R2(x,y,z)→R3(X,Y,Z)
(4)
(5)
(6)
Z=Z
(7)
1.3 姿态建模
在初始化的世界坐标系中相机的姿态为:
(8)
式中,Qwtc∈SE(3),Rwtc、twtc分别为世界坐标系到相机坐标系下的3*3的旋转矩阵和3*1的平移向量,wtc表示从世界坐标系到相机坐标系。
根据矩阵指数函数得到:
Qwtc=exp(G)
(9)
其中:
(10)
式中,μ1、μ2、μ3为世界坐标系下的平移量;μ4、μ5、μ6为相机坐标系下的旋转量。
可以得到相机坐标系下的点pc与世界坐标系下的点pw的关系为:
pc=Qwtc*pw
(11)
使用相机标定内外参数将每台 SR300传感器的点云数据由图像坐标系转换到世界坐标系中,即将多组点云数据合并到同一个坐标系中表示。调整算法如下:
1)创建点云P1、P2、P3、P4∈R3保存相机C1、C2、C3、C4抓取的深度点云数据;
2)遍历相机C2抓取的点云点集,依次对点云顶点P(x,y,z) ∈P2作[R12|T12]变换,得到变换后的点P*(X,Y,Z),
(12)
然后将P2加入到P1中去。
3)重复操作相机C3、C4抓取的点云P3、P4。
2 总体方案设计
2.1 硬件平台设计
系统选用4个Intel RealSense SR300 3D实感摄像头作为三维脚型测量的立体视觉传感元件,包括足部待测平台(100 cm*100 cm)且中心画有80 cm*80 cm的正方形扫描区域以及两个脚型区域作为目标测量区域,相机安装在四根支撑杆顶端、四根相机支撑杆(15 cm、25 cm各两根)安装至平台4个顶角处如图3所示。4个视角互补的3D实感摄像头同步获取不同视角下被测物体的图像点云,包括坐标、色彩和深度信息,利用深度增强摄影模块同步记录照片的3D 深度信息,后期三维脚型测量分析程序利用定点拍摄获取到的3D增强照片的深度信息完成脚型的三维重构和足部关键尺寸和角度信息的提取。
图3 系统结构示意图
2.2 系统软件流程
已有的诸多光学扫描技术和三维重构算法,多局限在密闭暗箱空间下进行测量,受光源精度、标定物、背景光和物体表面漫反射等影响,获取的图像噪声难以抑制。本算法运用3D实感摄像头,同时获取红外光和可见光图像,实现在开放空间下的光学检测,简化测量过程,通过图像点云数据的滤波处理、边缘识别、去噪、光滑以及点云修复精确重构出三维模型。
2.2.1 三维脚型重构技术方案
该系统持续跟踪摄像机的6自由度(DOF)姿态,并将场景的新视点转换为基于全局的基于表面的表示。当传感器打开时,它会产生许多深度图像帧。对于每一个深度图像帧,我们应该处理如下:
1)首先我们将SR300中获取的原始深度帧数据转换为以米为单位的浮点数据帧,得到第i时刻的图像Di′(p),包含的像素点表示为p(x,y)T, 然后采用双边滤波[20]法对深度浮点图像进行平滑去噪。它是一种用于边缘保持平滑的简单的非迭代方案。 为了获得更好的滤波效果,双边滤波结合了域和范围滤波。在本文中,我们在高斯情况下使用双边滤波,可以描述为:
Nσr(‖Di′(p)-Di′(q)‖)Di′(q)
(13)
2)然后将包含去噪后浮点类型数据的平面坐标系映射到相机坐标系:
vi(p)=Di(p)K-1[pT,1]T
(14)
最终得到一个点击映射vi,其中vi(p)是映射后的三维点云集,K是SR300红外摄像机的固有校准矩阵。K-1是其逆矩阵。
每个顶点对应的标准化向量是在相邻的映射顶点之间使用一个叉积计算的:
ni(p)=(vi(x+1,y)-vi(x,y)×vi(x,y+1)-vi(x,y)
(15)
ni(p)表示每个顶点对应的标准化向量,该过程在GPU线程中并行计算。
3)最后把相机坐标系点云转化为全局坐标系下,Mi为第i时刻相机的刚体旋转矩阵。
(16)
RI、ti为i时刻时相机的3×3旋转矩阵和平移向量。相应的点云与向量转换如下:
Vi(p)=MIVI(P)
(17)
NI(p) =RIni(p)
(18)
Vi(p),NI(p)均为全局坐标系下的点集和相应的向量。
本系统的三维重建最重要的一步是根据深度图像来解决复杂自由形态曲面配准问题。主要使用了ICP算法,这是一个解决复杂配准问题的关键方法算法,主要用于解决基于自由形态曲面的配准问题如图4。
图4 ICP算法配准两条曲线
设点集P中有Np个数据点,有{pi}表示;这些点集来自模型X,X中包含Nx个数据点,用{xi}表示。给定一个刚体变换,用矢量表示q=[qR|qT],把该刚体变换应用到点集P中,对变换后的P中的任意一点,在X中寻找起最近点,然后由找到的最近点求得起欧氏距离平方和:
(19)
为了最小化f(q),需要首先得到场景点集与模型点集的重心:
(20)
通过重心来计算来两个数据集间的互协方差矩阵:
(21)
通过∑px的反对称矩阵Aij-(∑px-∑pxT)ij构造矢量Δ=[A23A33A12]T,由此列矢量,便可获得一个4*4对称矩阵,其中I3表示3*3恒等矩阵:
(22)
矩阵Q(∑px)的最大特征值所对应的单位特征向量qR=[q0q1q2q3]即为由单位4元数来表示的最有旋转,qR可以通过一个变换转成3*3的矩阵形式,旋转矩阵得到后,再根据qT=μx-R(qR)μp便可得到对应的平移向量。
重复以上迭代过程,直到最近点的欧氏距离平方和收敛到指定的阈值。
最终得到完整点云数据,如图5、6所示。
图5 配准前 图6 配准后
对于合并之后的点云数据采用纹理贴图技术进行渲染得到一个3D立体的场景视图。纹理贴图技术是计算机图形学领域里广泛使用的一项3D渲染技术,它的主要作用是简化三维场景模型,提高场景渲染的真实感。纹理恢复是将纹理空间中的纹理像素映射到屏幕空间中的像素的过程。在对空间点云进行网格化后,纹理的恢复就变成了寻找纹理图像坐标与网格坐标对应关系的映射过程,如图7。
图7 渲染后足部模型
2.2.2 足部关键脚型参数的计算
在测量和计算足部关键脚型参数时,以足底轮廓中过第二趾前端中心与后跟端点的连线为轴线,将此轴线作为测量足长、足宽的基准线如图8。根据量脚选鞋/量脚制鞋垫的需要,以及国民脚型调查、足部形态学研究的需要,通过三维点云的坐标映射和空间维度计算,计算足长、足宽、跖趾围、跗围、踵宽、足弓高(内踝高)、足背高、足背长、足弓长、外弓角度等足部关键脚型参数。
图8 足部关键点示意图
本文对足部扫描图像的处理与这些关键点的自动求解[21-23],实验结果如图9、10所示。
图9 足长、足宽、足跟宽、足斜宽 图10 足弓高、足背高、足背长、足弓长
3 实验结果
本系统实现了上述图9、图10中参数的自动测量,并选择了三组人员进行了测量,这项研究依据的客观参考标准有:1)精度允许在两个欧盟一半号码(3.33毫米)之间;2)实验的可重复性;3)数据采集独立于测量方法的个体间和个体内变化;4)广泛采用。精度允许两个欧半号码之间指的是精度要满足在3.33毫米以内。可重复性指的是实验可以多次(至少三次)的测量。数据采集独立性是指相同的个体在量时与不同个体在测量时采集到的数据不会相互影响广泛采用是指该系统能够在不同环境条件对用户进行测量。我们选择50位正常足型的人员做为待测者,可以先用测量工具根据C.Witan和 S.Xiong[24]等人提出的足部参数标准手工获取测量数据并与该系统获取的参数做对比。
首先根据测得的数据计算各个参数的变异数分析,变异系数和极差、标准差和方差一样,都是反映数据离散程度的绝对值。其值越小,离散程度越小,数据越集中。表 1的数据统计表明,10个脚型参数的标准差和变异系数均较小,数据集中,离散程度小。
(23)
表2为两名随机被测试人员在传统手工方式下足 部参数的测量结果,以及系统 5 次参数测量结果的对比。通过大量重复性测试,所有参数计算误差均小于1 mm,参数计算结果满足测量需求。
表1 参数分析 cm
表2 被测人员的手工与系统测量结果
4 总结
本系统针对Real Sense SR300相机对足型三维重建进行了研究,实现了一种多视角实时三维脚型建模系统,能够快速、精确并且安全可靠的对足部进行三维重构以及相关足部参数提取。实验过程中只需自然站立在测量平台的指定位置,然后开启扫描功能,该系统就能够通过4个SR300相机同时对双脚进行实时的彩色图像抓拍以及相对应的深度数据存储然后进行点云的去噪、平滑、配准、修复、渲染,最终获得逼真的3D立体图像,还可以通过旋转获得多视角的三维图像同时完成相关足部参数的提取。结果表明该系统多个相机同时工作大大缩短了重构时间也提高了重构精度能够高效、精确以及具有较高鲁棒, 能够通过较大规模人群三维脚型建模与个体穿着舒适性的大数据学习,确定个性化鞋垫的结构参数和不同负重区域的材质弹性,据此建立生物力学适应性好的个性化鞋垫生成模型,作为对接鞋垫设计软件的核心模块,推动鞋业科技升级。
参考文献:
[1] He B W, Lin Z M, Li Y F. An automatic registration algorithm for the scattered point clouds based on the curvature feature[J]. Optics & Laser Technology,2013,46: 53-60.
[2] Cai J, Dong L, Sun X P. Parallel soft assign algorithm for 3D human ear point clouds registration[J]. Computer Engineering and Design, 2013, 34 (10): 3629-3634.
[3] Tevs A,Berner A,Wand M,et al. Animation Cartography & Mdash;Intrinsic Reconstruction of Shape and Motion[J]. 2012,31(2) : 1-15.
[4] Mendes E. ICP-based pose-graph SLAM[A]. 2016 IEEE International Symposium on Safety, Security, and Rescue Robotics (SSRR)[C].2016,10(1095): 195-200.
[5] 钟泽宇, 周海婷, 古炜豪,等. 基于Kinect传感器的机械手自主抓取技术研究[J]. 仪表技术与传感器, 2016(7):123-126.
[6] 张 洪, 郑梓均, 孙春龙. Kinect深度测量的系统误差补偿研究[J]. 仪表技术与传感器, 2015(12):120-122.
[7] 蓝 箭, 孙 娟, 杨裕炳,等. 基于Kinect骨骼追踪的控制方法的研究[J]. 仪表技术, 2014(8):20-22.
[8] 薛彦涛, 吕洪波, 孙启国. 基于Kinect深度数据的移动机器人障碍检测方法研究[J]. 计算机测量与控制, 2017, 25(2):61-63.
[9] Khoshelham K, Elberink S O. Accuracy and Resolution of Kinect Depth Data for Indoor Mapping Applications[J]. Sensors, 2012, 12(2):1437.
[10] 赵美荣,田卫萍,熊风光,等.基于Kitnect和Unity的虚拟手抓取碰撞检测算法[J]. 计算机测量与控制, 2015, 23(6):2076-2078.
[11] 魏 元, 韩 燮, 况立群. 三维人手关节点的提取研究[J]. 计算机测量与控制, 2015, 23(2):561-564.
[12] 周天彤,徐飞林,张旖帆,等. 基于unity与kitnect的交警手势识别仿真系统的设计和实现[J]. 计算机测量与控制, 2016, 5:156 -159.
[13] Chang Y J, Chen S F, Huang J D. A Kinect-based system for physical rehabilitation: a pilot study for young adults with motor disabilities.[J]. Research in Developmental Disabilities, 2011, 32(6):2566-2570.
[14] Shih N J, Kuo H C, Chang C F.3D scan for special urban evening occasion[A] . 2016 International Conference on Applied System Innovation (ICASI)[C]. 2016:1-4.
[15] Stefan P E.3D face and hand scans acquisition system dedicated for Multimodal Biometric identification [A].MIXDES[C]. 2016:389-393.
[16] Jurdjani D, Dany Laksono.Open source stack for Structure from Motion 3D reconstruction: A geometric overview[A].2016 6th International Annual Engineering Seminar (InAES)[C].2016,10:196-201.
[17] Menato S, Landolfi G, Alge M, et al.Empowering widespread shoe personalization via a 3D foot scanning App [A]. ICE[C]. 2014:1-7.
[18] Zhang Z.A flexible new technique for camera calibration[J].Pattern Analysis and Machine Intelligence,2000,22(11):1330-1334.
[19] 周立丽,车仁生.一种基于立体标定件的双摄像机外参数标定法[J].宇航计测技术,2005,25 (4):1-4
[20] Tomasi C, Manduchi R. Bilateral filtering for gray and color images[A]. Proceedings of the International Conference on Computer Vision (ICCV)[C].1998:839-846.
[21] 刘国忠,王伯雄,史 辉,等.激光线扫描足部三维测量方法及其应用[J].清华大学学报(自然科学版), 2008, 48(5):821-823.
[22] 刘国忠,王伯雄,史 辉,等.三维足型测量系统足部参数自动提取方法[J]. 中国生物医学工程学报, 2009,28(1):79-81.
[23] 王俊青, 周 旭, 姚志明,等. 基于计算机视觉的脚型参数测量系统的设计与实现[J]. 仪表技术, 2012(7):40-44.
[24] Witana C, Xiong S, Zhao J,et al. Foot measurements from 3D scans: a comparison and evaluation of different methods [J] . International Journal of Industrial Ergonomics, 2006, 10:708-807.