本文涉及三维成像技术,尤其涉及一种基于结构光场成像的三维轮廓测量方法,可以用于自动化、工业检测、医学检测等诸多领域。
背景技术:
三维轮廓测量技术分为接触式和非接触式测量,其中非接触式测量又分为主动式测量和被动式测量。主动式测量方法包含结构光法、激光三角法等。其中相位测量轮廓术是一种基于结构光法的三维轮廓测量技术,该技术首先向物体表面投射结构光栅,其次使用传统相机拍摄经物体表面轮廓调制的光栅条纹图,然后对该光栅条纹图进行处理得到包裹相位,通过对包裹相位进行解包裹得到解包裹相位,最后根据解包裹相位实现三维重建。相位测量轮廓术的特点在于精度较高,但难以实现实时测量,而传统的解包裹算法:遗传算法、多频外差等,这些算法都无法实现三维轮廓的实时测量。被动式测量方法包含立体视觉方法等,其具有结构轻便、数据采集迅速等优点,但其立体匹配精度、光线信息丢失等问题导致三维重建精度较差。
技术实现要素:
光场相机能够记录三维空间中光线的位置信息和角度信息,从而建立几何约束重建物体的三维信息。本发明通过构建由光场相机和投影仪组成的成像系统,投影仪对被测物体投射编码光栅,并用光场相机进行拍摄,然后对所得图像进行解相,最后根据所得相位对物体轮廓进行三维重建。其中,使用光场相机获取富含深度编码信息的光线信息,实现三维重建,是本发明的核心所在。
为实现上述目的,本发明采用的技术方案如下:一种基于结构光场成像的三维轮廓测量方法,其特征在于,建立由光场相机与投影仪构成的成像系统,投影仪向被测物体投射原始编码光栅,光场相机拍摄经被测物体轮廓调制后的编码光栅图像,对光场相机所拍摄得到的经被测物体轮廓调制后的编码光栅图像进行解码,根据解码后所得信息对物体轮廓进行三维重建;将三维轮廓测量问题归结为求解含有物点三维坐标三个未知数的三个方程,其中,对成像系统进行标定后,由待测物体成像于光场相机中心子孔径图像的过程确定二个方程,由采用解码后的图像信息确定第三个方程,通过求解上述三个方程构成的方程组,实现三维轮廓测量。
进一步的,包括以下步骤:
第一步,以光场相机和投影仪构建成像系统,对该成像系统进行标定:投影仪向标定板投射原始编码光栅,光场相机拍摄得到经标定板调制的编码图像,采用传统的双目立体视觉标定方法,首先将投影仪视作“反相机”,对光场相机拍摄的调制编码图像进行解码,得到标定板特征点的编码信息,然后对光场相机丰富的光线信息处理,获得标定板特征点的深度信息,进而建立标定板特征点的编码信息与深度之间的对应关系,生成投影仪的dmd图像,最后,以光场相机的中心子孔径图像和投影仪的dmd图像为基础,得到投影仪和光场相机的内外参数矩阵:
其中,m1为光场相机的内参矩阵,m2为光场相机的外参矩阵,d为光场相机的微透镜直径,hm′为光场相机的主透镜所在平面到微透镜所在平面的距离,(x0,y0)为光场相机中心子孔径图像的中心像素坐标,rl、tl分别为世界坐标系到光场相机坐标系的旋转矩阵和平移向量;
其中,m3为投影仪的内参矩阵,m4为投影仪的外参矩阵,fx为投影仪透镜的横向焦距,fy为投影仪透镜的纵向焦距,(xd0,yd0)为dmd图像的中心像素坐标,rp、tp分别为世界坐标系到投影仪坐标系的旋转矩阵和平移向量;
第二步,投影仪向被测物体投射编码光栅,用光场相机拍摄被测物体,得到经被测物体调制的编码图像;
第三步,根据光场相机的成像模型,得到两个方程;
对于空间一点p=(xw,yw,zw)t,其经光场相机成像,在中心子孔径图像中的像为
将其写成含有二个方程的方程组形式即为:
其中,(xw,yw,zw)t为待求解坐标,l1~l4、r1~r9、t1~t3为光场相机标定参数,
第四步,基于光场相机的中心子孔径图像,计算被测物体的包裹相位;光场相机的中心子孔径图像能够等效于传统相机拍摄所得的条纹图,中心子孔径图像信息包含背景光强、调制光栅信息、噪声信息,对中心子孔径图像进行处理,获得被测物体的包裹相位;
第五步,基于光场相机极图和内、外参数矩阵m1、m2,计算物点坐标并重投影至dmd图像平面,得到被测物体的重投影相位,光场相机记录了光线的位置信息和方向信息,而二维极图同时反映光线的位置和方向信息,基于极图理论并应用结构张量、深度学习等算法计算检测直线斜率,实现深度估计,然后根据光场相机的内外参数矩阵m1、m2得到初始的三维坐标,最后根据投影仪内外参数矩阵m3、m4将物点重投影至dmd图像平面,得到被测物体的重投影相位;
第六步,用被测物体的包裹相位校正被测物体的重投影相位,实现包裹相位的解包裹,根据解包裹相位和投影仪成像模型建立第三个方程;若深度估计准确,则重投影相位即为最终解包裹相位,然而由于光场相机角度分辨率较低,所得深度精度较低,因此重投影相位误差较大,但同一物点的解包裹相位去周期化后应与包裹相位相等,且由中心子孔径所得的包裹相位相对准确,因此利用包裹相位对重投影相位进行校正,实现包裹相位的解包裹;对于物点p=(xw,yw,zw)t,其经光场相机成像,在中心子孔径图像中的像为
其中,f(·)为psai的解包裹相位到pd的y坐标的映射函数,该函数形式由所投编码光栅的形式决定;
另一方面,物点p成像于dmd图像中pd的过程可由下式表示:
其中,(xw,yw,zw)t为待求解坐标,l7~l8、m1~m9、n1~n3为投影仪标定参数,
第七步,分别对第三步与第六步得到的三个方程进行简化:将分母乘到等号右侧,然后移项,将未知数置于等号左侧、常数项置于等号右侧,最后合并同类项,得到如下方程组:
其中,l1~l4、l7~l8、r1~r9、m1~m9、t1~t3、n1~n3为系统标定参数,其值由第一步获得;(xw,yw,zw)t为待求解坐标,对于中心子孔径图像中每一点
所述标定板为其上设有一系列半径不等,圆心等距排列的标准圆,其圆心为特征点。
本发明的优点及效果:光场相机能够记录三维空间中光线的位置信息和角度信息,从而建立几何约束重建物体的三维信息。本发明通过构建由光场相机和投影仪组成的成像系统,投影仪对被测物体投射编码光栅,并用光场相机进行拍摄,然后对所得图像进行解相,最后根据所得相位对物体轮廓进行三维重建。
附图说明
图1是本发明工作流程示意图;
图2是光场相机结构示意图;
图3是本发明流程各步骤结果图;其中:图3(a)是投有正弦光栅条纹的石膏像;图3(b)是光场相机的中心子孔径图像包裹相位图;图3(c)是石膏像的视差图;图3(d)是投影仪的dmd图像的重投影相位图;图3(e)是投影仪的dmd图像的重投影相位图的相对相位图;图3(f)是校正后的重投影相位图;图3(g)是校正后的重投影相位图的相对相位图;
图4是重投影相位校正图;其中:图4(a)是光场相机的中心子孔径图像的包裹相位示意图;图4(b)是投影仪的dmd图像的重投影相位的相对相位示意图;图4(c)是重投影相位校正示意图。
具体实施方式
参看图1,结合实施例,使用的光场相机为lytroillum,角度分辨率为15×15像素,位置分辨率为434×625像素。其结构如图2所示,光场相机主要由主透镜、微透镜阵列、ccd传感器组成,s为主透镜上的子孔径的s轴坐标,x为微透镜中心的x轴坐标,d为一个微透镜的直径,d为相邻子孔径之间的距离,hm′为主透镜所在平面到微透镜阵列所在平面的距离,hm为主透镜所在平面到微透镜阵列所在平面的共轭平面的距离,b为微透镜阵列所在平面到ccd传感器所在平面的距离。使用的投影仪为benqgp1,其分辨率为600×800像素。投影的结构光栅为标准正弦光栅;选取的实验对象为石膏像,同时具有细节丰富部分与平滑部分,投有光栅条纹的石膏像如图3(a)所示。
第一步:系统标定:
首先,用待标定的光场相机拍摄无光栅条纹的标定板,然后用待标定的投影仪投三个不同周期的正弦光栅条纹至标定板,每个周期相移4次,每次相移90°,同时用光场相机进行拍摄,共13幅图像。本实例中选取周期分别为25,30,36的正弦光栅条纹。该标定板为一系列半径不等,圆心等距排列的标准圆,其圆心为特征点。接着,提取13幅光场图像的中心子孔径图像,并使用多频外差原理进行相位解包裹,得到中心子孔径图像中特征点的解包裹相位,即调制信息。然后,根据该解包裹相位和dmd图像分辨率得到特征点在dmd图像平面的坐标。接着,通过特征点检测算法计算中心子孔径图像中特征点的坐标。最后,基于特征点在中心子孔径图像和dmd图像的坐标,以标定板平面为世界坐标系x-y平面,以垂直平面方向为世界坐标系z轴,进行标定,得到光场相机的内参矩阵m1、外参矩阵m2,投影仪的内参矩阵m3、外参矩阵m4。
标定结果如下:
光场相机内参矩阵:
光场相机外参矩阵:
光场相机参数:
f=40.11mm
hm′=40.88mm
hm=2116.34mm
b=48.38um
d=1.18mm
投影仪内参矩阵:
投影仪外参矩阵:
第二步:投影仪向被测物体投射一任意周期条纹,本实例中投影周期为36,同时用光场相机采集一副图像,如图3(a)所示,石膏像呈白色、无花纹,图中纵向变化的黑白条纹即为所投的正弦光栅条纹。
第三步:根据光场相机的成像模型,得到两个方程:
对于空间一点p=(xw,yw,zw)t,其经光场相机成像,在中心子孔径图像中的像为
将其写成方程组形式即为:
其中,(xw,yw,zw)t为待求解坐标,l1~l4、r1~r9、t1~t3为光场相机标定参数,其值可参考第一步结果,
第四步:基于光场相机的中心子孔径图像,计算包裹相位:
一般地,照相机拍摄的调制正弦光栅条纹图可表达为:
i=a+bcos(φ)
其中,a为背景光强,b为光栅条纹调制幅度,φ为所求的包裹相位,其值变化范围为0~2π。
对上式应用欧拉公式,并做傅立叶变换可得到:
f[i]=fa+fb+fb*
其中,fb为包含包裹相位φ的频段,即所求频段。fa为背景光强的频段,由于实验在黑暗环境进行,其频率较低,因此可使用高通滤波器去除。接着使用低通滤波器,可得到频段fb,再对其做反傅立叶变换,即可得到
第五步:基于光场相机极图和内外参数矩阵,计算物点坐标并重投影至dmd图像平面,得到物体的重投影相位:
根据极图理论可知,空间中一物点p对应极图中一条直线,且该直线的斜率与视差、深度的关系如下所示:
其中,zc为物点在光场相机坐标系下的z轴坐标,dis是物点p的视差,k是该直线的斜率,d为一个微透镜的直径,hm′为主透镜平面与微透镜平面之间的距离,hm为主透镜平面与微透镜的共轭平面之间的距离,d为相邻子孔径之间的距离。
因此,计算物点深度只需检测其对应直线的斜率即可。斜率的计算基于相位一致性。对于一物点p=(xw,yw,zw)t,其对应的极图直线由该物点在不同子孔径图像中的像组成,由于同一物点在不同子孔径视角下的相位值近似相等,即像素值近似相等,因此可认为该直线上所有像素相位值相同,该性质称为相位一致性。物点p在中心子孔径图像中的像为
由此可得到视差图,如图3(c)所示,物点深度越小、其视差越大,因此图中像素的灰度值越大,其对应物点的深度越小;由于背景区域深度恒定且最大,因此图中背景区域灰度值最小,且无变化。根据标定结果和光场成像原理,可得到物点p的坐标如下:
其中,(xm,ym)t为psai在ccd平面上的物理坐标,(xc,yc,zc)t为重建的点p在光场相机坐标系下的三维坐标。然后根据光场相机和投影仪的内外参数矩阵,将点p重投影至dmd成像平面,得到
最后根据条纹周期数与投影仪分辨率计算重投影相位,由于投影仪所投正弦光栅为纵向周期变化,则重投影相位与其在dmd图像中纵坐标关系如下:
其中,φre(pd)为用pd坐标计算得到的点p重投影相位,n为所投正弦光栅周期数,yd为像素pd在dmd图像中的纵坐标,resy为投影仪y方向的分辨率。重投影相位在[0,2πn]内取值,归一化后如图3(d)所示,光栅条纹纵向变化,因此越靠近图像底部,重投影相位越大,像素灰度值越大;另外由于重投影相位受物体深度调制,因此可呈现出物体的轮廓。
第六步:使包裹相位校正重投影相位,实现包裹相位的解包裹,并根据解包裹相位和投影仪成像模型建立第三个方程:
对于空间一物点p=(xw,yw,zw)t,其在中心子孔径的像为psai,在dmd图像的像为pd。将其基于极图计算的重投影相位图对2π取余即可得到相对相位图,该过程由下式实现:
φ′re(pd)=mod(φre(pd),2π)
其中,φre(pd)为基于极图得到的重投影相位,φ′re(pd)为φre(pd)对应的相对相位,其在[0,2π]内取值,归一化后如图3(e)所示,相对相位与包裹相位相同,呈周期重复的条纹;其中杂乱的点为误差点,误差来源于初步估计的三维坐标误差引起的重投影误差。理论上,对于点psai,若其基于极图得到的深度准确,即重建的点p坐标准确,则重投影相位即为psai的解包裹相位,且有φ′re(pd)=φwrap(psai)。然而,实际上由于光场相机角度分辨率受限,重投影相位偏离解包裹相位较大,因此可基于以上思想,使用包裹相位对重投影相位进行校正,得到psai的解包裹相位。校正过程如图4所示,具体描述如下:
图4(a)为中心子孔径图像的包裹相位图,给定中心子孔径图像一点psai,其在第三步中重建的物点为p,重投影至dmd图像为pd。如图4(b)-(c)所示,在pd所在周期内找一点
其中,φunw(psai)为psai的解包裹相位,φre(pd)为pd的重投影相位,
因此,对于点psai,基于其解包裹相位可得对应dmd图像中
同时,
由此可得如下方程:
其中,l7~l8、m1~m9、n1~n3为投影仪标定参数,其值可参考第一步结果。
第七步:求解方程组,实现三维重建:
根据第三步与第六步的结果,可得如下方程组:
其中,l1~l4、l7~l8、r1~r9、m1~m9、t1~t3、n1~n3为系统标定参数,其值可参考第一步结果;