一种用于光栅精密测量的结构光条纹校正方法

文档序号:30726958发布日期:2022-07-13 01:50阅读:198来源:国知局
一种用于光栅精密测量的结构光条纹校正方法

1.本技术涉及到结构光条纹校正领域,具体而言,涉及一种用于光栅精密测量的结构光条纹校正方法。


背景技术:

2.光栅精密测量技术是光学三维测量领域的重要分支,该技术通过投影仪与工业相机配合,可以实现被测物体的三维重建与非接触测量,具有成本低、测量速度快、分辨率高等优势,广泛应用于质量检测、逆向工程、医学成像、机器人导航、增强现实等领域。
3.在光栅精密测量过程中,投影仪投射的结构光条纹的标准正弦化是高精度三维重建与检测的重要保证。当光栅精密测量技术应用于小区域时(例如印刷电路板的三维重建),为了保证重建区域的完整性,其系统结构通常是多个投影仪倾斜安装,相机垂直安装(例如日本基恩士的vr5000系列),这种安装方式将破坏结构光条纹的周期性与光强,严重影响测量的精度。因此,需要一种校正方法获得标准正弦化的结构光条纹。
4.在现有技术中,已经有方法能够对结构光条纹进行矫正以得到标准正弦化的结构光条纹,但是,现有技术中的用于光栅精密测量的结构光条纹校正方法存在的不足:
5.1、校正过程复杂,需要标定的系统参数过多,系统参数精度难以保证;
6.2、需要建立各类数据表,通过查表的方式进行校正,影响校正的速度;
7.3、需要投影仪投射多幅条纹图,经过相位的编码与解码等步骤,引入误差较多,不利于保证结构光条纹的相位精度。


技术实现要素:

8.本技术实施例提供了一种用于光栅精密测量的结构光条纹校正方法,以至少解决现有技术中的用于光栅精密测量的结构光条纹校正方法所存在的不足。
9.根据本技术的一个方面,提供了一种用于光栅精密测量的结构光条纹校正方法,包括:使用相机对投影仪投射在参考面上的图像进行拍摄,得到相机拍摄图像,其中,所述投影仪投射的图像为投影仪烧录图像;获取相机拍摄图像和投影仪烧录图像中的多对对应角点的坐标;根据所述多对对应角点的坐标求解方程得到位姿转换矩阵,其中,所述方程为所述相机坐标系与所述投影仪坐标系之间的位姿关系方程,所述关系方程中的未知参数为所述位姿转换矩阵,所述位姿转换矩阵用于描述所述相机坐标系和所述投影仪坐标系之间的关系;根据所述位姿转换矩阵对结构光条纹进行位姿矫正;使用所述相机对投影仪投射在参考面上的空白图案进行拍摄得到空白图案a0,其中,所述投影仪投射的空白图像经过了所述位姿矫正,所述投影仪投射的空白图像与所述结构光条纹背景光强一致;根据所述空白图案a0的灰度数据,确定结构光条纹的强度在所述在参考面上的衰减程度;根据所述衰减程度对结构光条纹的强度进行补偿,其中,补偿之后结构光条纹的强度与预先配置的理想结构光条纹的强度的差值小于误差阈值。
10.进一步地,所述投影仪烧录图像为棋盘格图案。
11.进一步地,根据所述位姿转换矩阵对结构光条纹进行位姿矫正包括:根据所述投影仪的分辨率和所述位姿转换矩阵确定标准结构光条纹的分辨率;根据所述标准结构光条纹的分辨率利用计算机生成标准结构光条纹;根据生成的标准结构光条纹和所述位姿转换矩阵对所述结构光条纹进行位姿矫正。
12.进一步地,根据所述多对对应角点的坐标求解方程得到位姿转换矩阵包括:
13.构建相机像素坐标系与投影仪像素坐标系的转换关系如下:
[0014][0015]
其中,所述位姿转换矩阵为h,h1到h9为矩阵h中的元素;m和n分别表示相机像素坐标系内的横纵坐标,u和v分别表示投影仪像素坐标系内的横纵坐标;根据所述多对对应角点的坐标对所述转换关系求解,得到所述所述位姿转换矩阵为h中的h1到h8,其中,h9为1,所述多对对应角点的坐标(m,n)以及(u和v)已知,所述多对为大于4对。
[0016]
进一步地,确定结构光条纹的强度在所述参考面上的衰减程度包括:基于空白图案a0的第x行灰度数据,利用多项式拟合得到第x行的光强函数s
x
(y):
[0017][0018]
式中,x,y分别表示图像的行列坐标,ai是多项式拟合的系数,1≤i≤n,n表示阶数;
[0019]
确定第x行光强的最大值第x行的衰减程度函数s'
x
(y)为:
[0020]

[0021]
进一步地,根据所述衰减程度对结构光条纹的强度进行补偿包括:
[0022]
基于结构光条纹图第x行的当前光强i
x
(y)除以衰减函数s'
x
(y)可以补偿当前条纹图第x行的正弦光强衰减,第x行补偿后的光强i'
x
为:
[0023]
i'
x
(y)=i
x
(y)/s'
x
(y);
[0024]
利用理想光强i”x
(y)与校正后的i'
x
(y),得到光强补偿误差e
x
(y),其中,所述理想光强i”x
(y)为预先配置的,所述e
x
(y)的定义如下:
[0025]ex
(y)=i”x
(y)-i'
x
(y);
[0026]
如果e
x
(y)大于预先配置的阈值,则调整多项式拟合的系数,直到得到合适的衰减拟合函数s'
x
(y);其中,i”x
(y)与使用所述合适的衰减拟合函数s'
x
(y)计算得到的i'
x
(y)的差值小于预先配置的误差阈值。
[0027]
在本技术实施例中,采用了使用相机对投影仪投射在参考面上的图像进行拍摄,得到相机拍摄图像,其中,所述投影仪投射的图像为投影仪烧录图像;获取相机拍摄图像和投影仪烧录图像中的多对对应角点的坐标;根据所述多对对应角点的坐标求解方程得到位姿转换矩阵,其中,所述方程为所述相机坐标系与所述投影仪坐标系之间的位姿关系方程,所述关系方程中的未知参数为所述位姿转换矩阵,所述位姿转换矩阵用于描述所述相机坐标系和所述投影仪坐标系之间的关系;根据所述位姿转换矩阵对结构光条纹进行位姿矫正;使用所述相机对投影仪投射在参考面上的空白图案进行拍摄得到空白图案a0,其中,所述投影仪投射的空白图像经过了所述位姿矫正,所述投影仪投射的空白图像与所述结构光
条纹背景光强一致;根据所述空白图案a0的灰度数据,确定结构光条纹的强度在所述在参考面上的衰减程度;根据所述衰减程度对结构光条纹的强度进行补偿,其中,补偿之后结构光条纹的强度与预先配置的理想结构光条纹的强度的差值小于误差阈值。通过本技术解决了现有技术中的用于光栅精密测量的结构光条纹校正方法所存在的不足,从而提高了光栅精密测量系统的精度。
附图说明
[0028]
构成本技术的一部分的附图用来提供对本技术的进一步理解,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:
[0029]
图1是根据本技术实施例的结构光条纹校正方法的流程图;
[0030]
图2是根据本技术实施例的投影仪烧录的棋盘格图;
[0031]
图3是根据本技术实施例的相机采集的棋盘格图;
[0032]
图4是根据本技术实施例的投影仪烧录的条纹图;
[0033]
图5是根据本技术实施例的校正前相机拍摄的条纹图;
[0034]
图6是根据本技术实施例的投影仪烧录的预校正条纹图;
[0035]
图7是根据本技术实施例的相机拍摄的位姿校正条纹图;
[0036]
图8是根据本技术实施例的校正前后第100行条纹间距波动示意图;
[0037]
图9是根据本技术实施例的校正位姿的第100行灰度曲线示意图;
[0038]
图10是根据本技术实施例的经过位姿校正的空白图a0;
[0039]
图11是根据本技术实施例的空白图a0第1000行光强变化示意图;
[0040]
图12是根据本技术实施例的光强校正前后光强对比示意图;
[0041]
图13是根据本技术实施例的相机拍摄的光强校正后条纹图;
[0042]
图14是根据本技术实施例的用于光栅精密测量的结构光条纹校正方法的流程图。
具体实施方式
[0043]
需要说明的是,在不冲突的情况下,本技术中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本技术。
[0044]
需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0045]
当光栅精密测量技术应用于小区域精密三维重建时,为了保证重建区域的完整性,其系统结构通常是多个投影仪倾斜安装,相机垂直安装,所以在投影仪倾斜投射的结构光正弦条纹间距从光轴到两侧依次增加,光强也从光轴至两侧衰减,这与测量系统需要的均匀光强的周期性正弦条纹相悖。因此,为了在投影平面获得标准的结构光正弦条纹,实现三维重建过程中的正确解相以保证测量精度,条纹的校正必不可少。本实施例也可用于投影仪的梯形校正,以及呈菱形阵列的dmd芯片导致的投影仪畸变校正(如ti公司的dlp4500投影仪)。
[0046]
在本实施例中,提供了一种用于光栅精密测量的结构光条纹校正方法,图14是根据本技术实施例的用于光栅精密测量的结构光条纹校正方法的流程图,如图14所示,该流程包括如下步骤:
[0047]
步骤s102,使用相机对投影仪投射在参考面上的图像(例如,所述投影仪烧录图像可以为棋盘格图案)进行拍摄,得到相机拍摄图像,其中,所述投影仪投射的图像为投影仪烧录图像;
[0048]
步骤s104,获取相机拍摄图像和投影仪烧录图像中的多对对应角点的坐标;
[0049]
步骤s106,根据所述多对对应角点的坐标求解方程得到位姿转换矩阵,其中,所述方程为所述相机坐标系与所述投影仪坐标系之间的位姿关系方程,所述关系方程中的未知参数为所述位姿转换矩阵,所述位姿转换矩阵用于描述所述相机坐标系和所述投影仪坐标系之间的关系;
[0050]
步骤s108,根据所述位姿转换矩阵对结构光条纹进行位姿矫正;
[0051]
在该步骤中,可以采用如下方式对结构光条纹进行位姿矫正:根据所述投影仪的分辨率和所述位姿转换矩阵确定标准结构光条纹的分辨率,根据标准结构光条纹的分辨率利用计算机生成标准结构光条纹,根据生成的标准结构光条纹和所述位姿转换矩阵对所述结构光条纹进行位姿矫正。
[0052]
步骤s110,使用所述相机对投影仪投射在参考面上的空白图案进行拍摄得到空白图案a0,其中,所述投影仪投射的空白图像经过了所述位姿矫正,所述投影仪投射的空白图像与所述结构光条纹背景光强一致;
[0053]
步骤s112,根据所述空白图案a0的灰度数据,确定结构光条纹的强度在所述在参考面上的衰减程度;
[0054]
步骤s114,根据所述衰减程度对结构光条纹的强度进行补偿,其中,补偿之后结构光条纹的强度与预先配置的理想结构光条纹的强度的差值小于误差阈值。
[0055]
通过上述步骤,首先对结构光条纹进行了位姿矫正,然后在对结构光条纹的强度进行补偿,从而解决了现有技术中的用于光栅精密测量的结构光条纹校正方法所存在的不足,从而提高了光栅精密测量系统的精度。
[0056]
在上述步骤s112中,确定衰减程度的方式有很多种,例如,
[0057]
基于空白图案a0的第x行灰度数据,利用多项式拟合得到第x行的光强函数s
x
(y):
[0058]

[0059]
式中,x,y分别表示图像的行列坐标,ai是多项式拟合的系数,1≤i≤n,n表示阶数;
[0060]
确定第x行光强的最大值第x行的衰减程度函数s'
x
(y)为:
[0061]

[0062]
此时,根据所述衰减程度对结构光条纹的强度进行补偿可以包括:
[0063]
基于结构光条纹图第x行的当前光强i
x
(y)除以衰减函数s'
x
(y)可以补偿当前条纹图第x行的正弦光强衰减,第x行补偿后的光强i'
x
为:
[0064]
i'
x
(y)=i
x
(y)/s'
x
(y);
[0065]
利用理想光强i”x
(y)与校正后的i'
x
(y),得到光强补偿误差e
x
(y),其中,所述理想光强i”x
(y)为预先配置的,所述e
x
(y)的定义如下:
[0066]ex
(y)=i”x
(y)-i'
x
(y);
[0067]
如果e
x
(y)大于预先配置的阈值,则调整多项式拟合的系数,直到得到合适的衰减拟合函数s'
x
(y);其中,i”x
(y)与使用所述合适的衰减拟合函数s'
x
(y)计算得到的i'
x
(y)的
差值小于预先配置的阈值。
[0068]
下面结合附图对一个可选的实施例进行说明。图1是根据本技术实施例的结构光条纹校正方法的流程图,在图1中对本实施例中的总体流程进行了说明。如图1所示,首先投影仪投影棋盘格,相机拍摄投影的棋盘格,然后识别两个棋盘格的角点坐标(例如,可以通过角点坐标识别算法来进行识别,使用现有的角点坐标识别算法即可,只要能够识别出角点坐标就可以进行本实施例中的计算)。求解位姿转换矩阵,然后根据投影仪的分辨率计算标准条纹图像长宽,利用计算机生成数字标准图像(在该步骤中增加一个空白图)。根据位姿转换矩阵矫正结构光条纹位姿。相机拍摄投影仪投影的空白图,获取光强衰减曲线并通过多项式拟合,确定衰减曲线上光强的最大值,定义光强补偿函数,完成条纹光强初步矫正,然后进行矫正误差分析,如果合适,则完成结构光条纹矫正,如果不合适,则返回到获取光强衰减曲线的步骤。
[0069]
在图1示出的步骤中,主要涉及到条纹的位姿矫正方法和条纹的光强矫正方法。下面对这两个方面分别进行说明。其中step(步骤)1至step 3是条纹的位姿校正方法,step 4至step 7是条纹的光强校正方法。
[0070]
step 1:建立位姿转换模型
[0071]
由相机的标定过程可知,相机像素坐标系与世界坐标系的转换关系为:
[0072][0073]
式中,sc是比例系数,m和n分别表示相机像素坐标系内的横纵坐标,ac是相机的内部参数,只与相机的硬件结构有关,rc与tc是外部空间位姿变化矩阵;hc是描述像素坐标与世界坐标之间映射关系的单应性矩阵,xw、yw、zw分别为世界坐标系中的x轴、y轴和z轴对应的坐标。
[0074]
因为投影仪是将硬件内部的投影图像投射到真实世界,是与相机拍摄图像相逆的过程,所以基于相机的像素坐标系到世界坐标的转换模型,可以得到对于投影仪而言的坐标转换关系:
[0075][0076]
式中,u和v分别表示投影仪像素坐标系内的横纵坐标,其余参数意义与式(1)类似,其中,s
p
是比例系数,a
p
是投影仪的内部参数,r
p
与t
p
是投影仪的外部空间位姿变化矩阵;h
p
是描述世界坐标与像素坐标之间映射关系的单应性矩阵。
[0077]
所以,基于投影仪世界坐标系与像素坐标系的转换关系,构建相机像素坐标系与投影仪像素坐标系的转换关系如下:
[0078]
[0079][0080][0081]
所以投影仪像素坐标系与相机像素坐标系的位姿转换模型如式(5)所示,其中位姿转换矩阵h(h1到h9为矩阵h中的元素)的意义是,将相机的像素坐标系作为投影仪的“世界坐标系”,确定二者像素坐标系之间的位姿转换关系,基于此关系,以相机像素坐标系中的未变形条纹为基准,可以反求投影仪像素坐标系中的“预调制条纹”,实现结构光条纹的正弦化位姿校正。
[0082]
step 2:求解位姿转换矩阵h。
[0083]
(1)、相机拍摄投影仪投射的棋盘格图案。
[0084]
(2)、利用matlab工具箱或opencv的findchessboardcorners()函数,确定投影仪烧录图像的角点坐标与相机拍摄图像的角点坐标(默认相机和相机已标定)。
[0085]
(3)、找出至少4对对应点,其中相机采集图像的角点坐标带入到(m,n),投影仪烧录图像的角点坐标带入(u,v)。
[0086]
(4)、由相机标定过程的透视几何变换可知,对于两个平面的位姿转换矩阵h,其定义了8个自由度,所以相机像素坐标系—投影仪像素坐标系中对应的4对角点可以求解h矩阵中的8个参数,但是通常情况下,采集到的角点坐标含有大量噪声,难以估计真实角点坐标值,所以需要利用远大于4对的角点进行估计真实的h矩阵。
[0087]
(5)、多对角点构成的方程是齐次超定方程,使用奇异值分解(svd)的方法,可以求解h矩阵的8个参数。在此处求解的是h矩阵中的h1到h8,其中,h9因为如(5)所示的齐次坐标系的尺度不变性,所以是1。
[0088]
需要说明的是,可以从投影仪烧录图像的角点坐标与相机拍摄图像的角点坐标找到多对对应点,将多对对应点带入上述位姿转换模型公式(5)中,这样可以求解得到位姿转换矩阵h,求解过程可以使用现有的数学求解方法,在本实施例中就不再一一赘述了。
[0089]
step 3:求解“预校正图像”。
[0090]
确定单应性矩阵后,由投影仪的分辨率和位姿转换矩阵h确定结构光“标准正弦条纹图像”的分辨率。这一过程会出现“理想位姿图像”分辨率不是整数的问题,选择就近取整函数得到整数,这一函数的缺点是图像边缘呈锯齿形,但考虑数据的保真性,不建议用优化算法处理得到光滑的图像边缘。
[0091]
然后,基于求取的结构光“标准正弦条纹图像”分辨率,利用数字图像生成算法得到的“理想位姿图像”。其中,理想位姿图像即结构光标准正弦条纹图像。确定理想位姿图像分辨率,简单来说就是:假如投影仪烧录的图像分辨率是912*1140,那么式(5)中u=912,v=1140,h1到h9已知,理想位姿的分辨率m和n可以求解。然后确定m和n以后,利用计算机生成m*n的结构光标准正弦条纹图像。
[0092]
结构光标准正弦图像每一行的光强定义:
[0093]in
(x,y)表示坐标为(x,y)处的光强,a(x,y)为背景光强,b(x,y)为调制光强,
为对应的正弦相位,δn为相移步长。
[0094]
按照上述光强定义公式,编写相关代码即可获得结构光标准正弦图像。
[0095]
最后,基于结构光条纹结构光“标准正弦条纹”图像和位姿转换矩阵h,反求条纹的“预校正图像”即可完成结构光条纹的位姿校正。
[0096]
反求条纹的预校正图像即利用式(5)建立的(u,v)与(m,n)的关系,将(u,v)处的光强替换为(m,n)处的光强,预校正图像即可得到。预校正图像:对结构光标准位姿图像进行位姿预校正(如图6),这样投影仪倾斜投影的条纹图像,条纹依然是竖直的,相位依然是标准正弦变化的(如图7)。
[0097]
step4:确定条纹光强衰减程度。
[0098]
投影仪投射与结构光条纹背景光强一致的空白图案到参考面(此时投影图案已经过step1-step 3的位姿校正),相机采集空白图案a0以获得其灰度数据。其中,参考面在测量系统中指的是与相机光轴垂直的测量平面。
[0099]
step 5:确定条纹光强的衰减函数。
[0100]
基于空白图案a0的第x行灰度数据,利用多项式拟合得到第x行的光强函数s
x

[0101][0102]
式中,x,y分别表示图像的行列坐标,ai是多项式拟合的系数,1≤i≤n,n表示阶数。
[0103]
然后,确定第x行光强的最大值所以第x行的衰减函数s'
x
(y)
[0104][0105]
需要注意的是,因为相机拍摄的图像行数较多,对每行都调整拟合参数不利于校正效率,所以将图像的行数划分多个区间,在每个区间内使用相同的拟合函数。例如对于2048*2448的条纹图,可将2048划分为j个区间,即区间长度为2048/j,j的大小取决图像校正的要求,若要求精度较高,则设置较大的j;若要求校正效率较高,则设计较小的j。
[0106]
step 6:计算条纹的补偿光强。
[0107]
基于结构光条纹图第x行的当前光强i
x
(y)除以衰减函数s'
x
(y)补偿当前条纹图第x行的正弦光强衰减,第x行补偿后的光强i'
x

[0108]
i'
x
(y)=i
x
(y)/s'
x
(y)
ꢀꢀꢀꢀꢀꢀꢀ
(8)
[0109]
step 7:迭代优化多项式拟合函数的参数,获取最优的光强补偿函数。
[0110]
利用理想光强i”x
(y)与校正后的i'
x
(y),得到光强观察补偿情况e
x
(y),如果e
x
(y)较大,则优化多项式拟合的参数,得到合适的衰减拟合函数s'
x
(y),直至e
x
(y)小于预先配置的阈值,
[0111]
其中e
x
(y)的定义如下:
[0112]ex
(y)=i”x
(y)-i'
x
(y)
ꢀꢀꢀꢀꢀꢀꢀ
(9)
[0113]
通过上述实施例,将结构光条纹校正分为位姿校正与光强校正,实现结构光条纹的高精度校正。在上述实施例提出的结构光条纹位姿校正方法仅投影一张棋盘格图案,不需要实际标定板;上述实施例中的条纹位姿校正借助成熟的相机标定程序完成投影图案角点的精确识别,有效保证的位姿转换模型的精度。
[0114]
上述实施例中的条纹位姿校正方法不仅适用于光栅精密测量领域结构光条纹的
正弦化校正,同时也适用于投影仪的梯形校正以及使用菱形阵列的dmd芯片的投影仪畸变校正(如ti公司的dlp4500);
[0115]
上述实施例中的结构光条纹光强校正利用投影空白图确定光强衰减,量化了光栅条纹的衰减程度。并且,上述实施例中的结构光条纹光强校正利用多项式拟合的方法精确地逼近结构光条纹的衰减模型,有利于提高条纹校正的精度。
[0116]
下面结合一个例子对本实施例的效果进行说明。
[0117]
利用投影仪烧录的图案(图2)与相机采集的图像(图3),应用本发明的方法首先求出位姿转换矩阵位姿转换矩阵h=[0.1169,-0.0167,289.2146;-0.0417,0.2468,331.2363;-2.87e-5,-1.75e-5,1]。
[0118]
利用位姿转换矩阵将需要烧录到投影仪的图案的条纹图(图4)转换为预校正图(图6);对应地,相机拍摄的图案也将从畸变图像(图5)校正为标准位姿条纹图(图7),图8表示位姿校正前后结构光条纹的间距变化波动,可以发现校正后的间距波动在8个像素以内,校正效果较好,图9是校正后的光栅条纹位姿变化,可以发现结构光条纹的间距基本相同,但是条纹的光强还存在一定的衰减。
[0119]
然后,基于相机采集已位姿校正的空白图a0(如图10),其第1000行的光强灰度数据与多项式拟合情况如图11所示。使用本发明提出的光强校正方法,条纹图第1000行光强灰度数据补偿前后如图12所示,可以发现本发明提出的方法有效校正了结构光条纹的正弦性。校正后的光强校正条纹图如图13所示,对比原始图像(图5),原图像结构光条纹的间距不相等,且左侧光强偏暗,右下侧光强偏亮,而校正后的图像图13,不仅条纹间距几乎相同,条纹的整体灰度变化更加均匀,左右两侧的灰度变化几乎没有差异。
[0120]
通过上述实施例解决了现有技术中的用于光栅精密测量的结构光条纹校正方法所存在的不足,从而提高了光栅精密测量系统的精度。
[0121]
以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1