本发明属于光学三维形貌测量技术领域,具体涉及一种基于包裹相位高度的结构光编码方法。
背景技术:
随着近年来对物体的三维信息快速、准确的获取需求增加,三维轮廓表面测量技术得到了迅速地发展并且广泛的应用于多个领域当中。目前的三维测量技术主要分为接触式和非接触式。接触式测量系统主要通过测头系统接触待测物表面进行检测,测量精度高,但是对于柔软材质无法进行测量,而且测量效率较低。
而以光学原理、摄影测量、计算机视觉处理算法等为基础的非接触式三维测量技术随着计算机技术、光学检测技术、图像处理等技术的发展而变得热门起来,该技术测量效率高、适应性高、精度较高且能做到无损测量,目前在逆向工程、文物保护、医学图像处理、自动检测等领域都有广泛的应用。在非接触式三维测量技术中,基于面结构光的三维视觉重建方法拥有高精度、易操作、实时性强等特点,其中相移轮廓测量术(phasemeasurementprofilometry)更是受到众多学者的重视,成为近年来非接触式三维测量领域的研究热点。
由于目前工业上对测量速度的要求越来越高,该技术传统方法并不能满足高速测量的条件。为了获取被测物体的相位信息,pmp方法通常在单次测量中需要投射12幅光栅图像(传统三频四步相移算法),其中真正需要展开的是最高频率下的包裹相位,而其余图像只是为了解包裹相位而投射,大量的投射图像限制了相移轮廓测量术在现代工业中高速、实时环境中的测量应用。
技术实现要素:
为实现本发明目的而采用的技术方案是这样的,一种基于包裹相位高度的结构光编码方法,包括如下步骤:
1)搭建结构光测量系统。所述结构光测量系统包括工业相机、投影仪、控制操作终端和待测物体。所述工业相机和投影仪可通信的连接于所述控制操作终端。所述工业相机和投影仪分别布置在待测物体的前侧。
2)调整工业相机和投影仪的位置,待位置调整完毕后,对整个结构光测量系统进行标定,保存标定参数。
3)所述控制操作终端生成待使用的随机序列,序列由0码与1码组成,其总长度为l=2n,对应于投影条纹的周期数,n为子序列的长度。
4)所述控制操作终端根据生成的序列合成内含有序列信息的四张相移投影光栅图像。
5)所述控制操作终端将四张相移投影光栅图像输出至投影仪。所述投影仪将四张相移投影光栅图像投影到待测物体表面。所述工业相机采集经过待测物体表面调制变形后的四张条纹光栅图像,并输出至控制操作终端。
6)所述控制操作终端对四张条纹光栅图像进行解相,获得初始的包裹相位φo(x,y)。解相公式如下:
式(2)中,i1(x,y)、i2(x,y)、i3(x,y)、i4(x,y)分别为工业相机采集的四张条纹光栅图像在像素坐标(x,y)上的灰度值。
7)所述控制操作终端将初始包裹相位φo(x,y)中含有的序列信息与步骤3)中的序列进行对比,调整初始包裹相位φo(x,y)从而获得调整后的包裹相位φr(x,y),以及包裹相位φr(x,y)各部分对应的周期数k。
8)所述控制操作终端根据调整后的包裹相位φr(x,y)和周期数k,计算出绝对相位φ(x,y)。
9)所述控制操作终端通过绝对相位信息与步骤2)获得的标定参数计算待测物体表面点的三维坐标数据,完成待测物体的三维重建。
进一步,在步骤4)中,在所述控制操作终端合成内含有序列信息的四张相移投影光栅图像的过程中,所述控制操作终端对于步骤3)中的0码与1码,针对四步相移中的每步相移条纹都设计出对应的0条纹与1条纹,具体每级条纹形式如下:
式(2)中,m=1,2,3,4,对应四步相移中每一步相移图像,a为直流分量,b为振幅,w0为每级条纹所占的像素宽度,且
进一步,在步骤7)中,对初始包裹相位φo(x,y)进行调整的过程中,遍历初始包裹相位φo(x,y)水平方向相位的幅值,若幅值高度为2π,则其对应步骤3)中序列的1码,若其幅值高度为π,则其对应对步骤3)中序列的0码,并将幅值高度为2π的周期数记为k1,将幅值高度为π的周期数记为k2。
进一步,在步骤8)中,绝对相位φ(x,y)计算公式如下:
φ(x,y)=φr(x,y)+2πk1+πk2(3)
本发明的技术效果是毋庸置疑的,具有如下有益效果:
1.本发明方法适用于多数传统相移轮廓测量术,在保留传统方法的精度、优点和实验需求的情况下,极大的减少了投影所需的图像数量。
2.本发明方法通过在传统结构光光栅条纹中引入序列信息以及相移高度调制,更好的利用了传统方法中所浪费的空间信息进行解相,提高了效率。
3.本发明方法相比传统相移轮廓测量术更适合在高速环境中进行测量,且能够充分利用相机与投影仪的潜力。
附图说明
图1为本发明的结构光测量系统示意图;
图2为本发明的流程图;
图3为本发明所生成的条纹图像示意图;
图4为本发明所生成的初始包裹相位图。
图中:工业相机1、投影仪2、控制操作终端3和待测物体4。
具体实施方式
下面结合实施例对本发明作进一步说明,但不应该理解为本发明上述主题范围仅限于下述实施例。在不脱离本发明上述技术思想的情况下,根据本领域普通技术知识和惯用手段,做出各种替换和变更,均应包括在本发明的保护范围内。
实施例1:
本实施例公开一种基于包裹相位高度的结构光编码方法,以常用的四步相移方法为例,参见图1和图2,包括如下步骤:
1)安装结构光测量系统。所述结构光测量系统包括工业相机1、投影仪2、控制操作终端3和待测物体4。所述工业相机1和投影仪2可通信的连接于所述控制操作终端3。所述工业相机1和投影仪2分别布置在待测物体4的前侧,工业相机1和投影仪2的光轴相交,投影区域相互重叠,且所述待测物体4正好位于二者的公共视场内。
2)调整工业相机1和投影仪2的位置,待位置调整完毕后,对整个结构光测量系统进行标定,获取投影仪2、工业相机1的内外参数,保存标定参数。
3)所述控制操作终端3生成待使用的debruijn序列,序列由0码与1码组成,其总长度为l=2n,对应于投影条纹的周期数,n为子序列的长度。
4)对于0码与1码,针对四步相移中的每步相移条纹都设计出对应的0条纹与1条纹,具体每级条纹形式如下:
式(1)中,m=1,2,3,4,对应四步相移中每一步相移图像,a为直流分量,b为振幅,w0为每级条纹所占的像素宽度单位个,且
根据前面所生成的序列信息设计投射的结构光栅图像,对每一步相移图像中的每一级条纹进行对应赋值,0码对应0条纹,1码对应1条纹,长度为l的序列对应t个条纹周期,最终合成为内含有序列信息的四张相移投影图像i1,i2,i3,i4,即四张高度调制结构光光栅图像,如图3所示。
5)所述控制操作终端3将四张相移投影光栅图像i1,i2,i3,i4输出至投影仪2。所述投影仪2将四张相移投影光栅图像i1,i2,i3,i4投影到待测物体4表面。所述工业相机1采集经过待测物体4表面调制变形后的四张条纹光栅图像,并输出至控制操作终端3。
6)所述控制操作终端3使用三步相移算法对四张条纹光栅图像进行解相,获得初始的包裹相位φo(x,y),参见图4。解相公式如下:
式(2)中,i1(x,y)、i2(x,y)、i3(x,y)、i4(x,y)分别为工业相机1采集的四张条纹光栅图像在像素坐标(x,y)上的灰度值。
7)所述控制操作终端3将初始包裹相位φo(x,y)中含有的序列信息与步骤3)中的序列进行对比,调整初始包裹相位φo(x,y)从而获得调整后的包裹相位φr(x,y),以及包裹相位φr(x,y)各部分对应的周期数k。具体的,对初始包裹相位φo(x,y)进行调整的过程中,遍历初始包裹相位φo(x,y)水平方向相位的幅值,若幅值高度为2π,则其对应步骤3)中序列的1码,若其幅值高度为π,则其对应对步骤3)中序列的0码,并将幅值高度为2π的周期数记为k1,将幅值高度为π的周期数记为k2。
8)所述控制操作终端3根据调整后的包裹相位φr(x,y)和周期数k1和k2,计算出绝对相位φ(x,y)。绝对相位φ(x,y)计算公式如下:
φ(x,y)=φr(x,y)+2πk1+πk2(3)
9)所述控制操作终端3通过绝对相位信息与步骤2)获得的标定参数计算待测物体4表面点的三维坐标数据,完成待测物体4的三维重建。
本实施例提供的一种基于包裹相位高度的结构光编码方法,通过生成一组包含有序列信息且对高度调制的相移面结构光图像,用投影仪投射到被测物体上。并通过相对应的相位解算算法对被采集图像进行相位信息的解算得到初始包裹相位信息,同时将拍摄图像中蕴含的序列信息提取出来与初始生成的序列进行对比,参考其空间信息以展开包裹相位,达到提高三维重建精度。
实施例2:
本实施例提供一种较为基础的实现方式,一种基于包裹相位高度的结构光编码方法,以常用的四步相移方法为例,参见图1和图2,包括如下步骤:
1)安装结构光测量系统。所述结构光测量系统包括工业相机1、投影仪2、控制操作终端3和待测物体4。所述工业相机1和投影仪2可通信的连接于所述控制操作终端3。所述工业相机1和投影仪2分别布置在待测物体4的前侧,工业相机1和投影仪2的光轴相交,投影区域相互重叠,且所述待测物体4正好位于二者的公共视场内。
2)调整工业相机1和投影仪2的位置,待位置调整完毕后,对整个结构光测量系统进行标定,保存标定参数。
3)所述控制操作终端3生成待使用的debruijn序列,序列由0码与1码组成,其总长度为l=2n,对应于投影条纹的周期数,n为子序列的长度。
4)所述控制操作终端3根据前面所生成的序列信息设计投射的结构光栅图像,合成为内含有序列信息的四张相移投影图像i1,i2,i3,i4,即四张高度调制结构光光栅图像,如图3所示。
5)所述控制操作终端3将四张相移投影光栅图像i1,i2,i3,i4输出至投影仪2。所述投影仪2将四张相移投影光栅图像i1,i2,i3,i4投影到待测物体4表面。所述工业相机1采集经过待测物体4表面调制变形后的四张条纹光栅图像,并输出至控制操作终端3。
6)所述控制操作终端3使用三步相移算法对四张条纹光栅图像进行解相,获得初始的包裹相位φo(x,y),参见图4。解相公式如下:
式(1)中,i1(x,y)、i2(x,y)、i3(x,y)、i4(x,y)分别为工业相机1采集的四张条纹光栅图像在像素坐标(x,y)上的灰度值。
7)所述控制操作终端3将初始包裹相位φo(x,y)中含有的序列信息与步骤3)中的序列进行对比,调整初始包裹相位φo(x,y)从而获得调整后的包裹相位φr(x,y),以及包裹相位φr(x,y)各部分对应的周期数k。
8)所述控制操作终端3根据调整后的包裹相位φr(x,y)和周期数k,计算出绝对相位φ(x,y)。
9)所述控制操作终端3通过绝对相位信息与步骤2)获得的标定参数计算待测物体4表面点的三维坐标数据,完成待测物体4的三维重建。
本实施例提供的一种基于包裹相位高度的结构光编码方法,通过生成一组包含有序列信息且对高度调制的相移面结构光图像,用投影仪投射到被测物体上。并通过相对应的相位解算算法对被采集图像进行相位信息的解算得到初始包裹相位信息,同时将拍摄图像中蕴含的序列信息提取出来与初始生成的序列进行对比,参考其空间信息以展开包裹相位,达到提高三维重建精度。
实施例3:
本实施例主要步骤同实施例2,进一步,在步骤4)中,在所述控制操作终端3合成内含有序列信息的四张相移投影光栅图像的过程中,所述控制操作终端3对于步骤3)中的0码与1码,针对四步相移中的每步相移条纹都设计出对应的0条纹与1条纹,具体每级条纹形式如下:
式(2)中,m=1,2,3,4,对应四步相移中每一步相移图像,a为直流分量,b为振幅,w0为每级条纹所占的像素宽度单位个,且
根据前面所生成的序列信息设计投射的结构光栅图像,对每一步相移图像中的每一级条纹进行对应赋值,0码对应0条纹,1码对应1条纹,长度为l的序列对应t个条纹周期,最终合成为内含有序列信息的四张相移投影图像i1,i2,i3,i4。
实施例4:
本实施例主要步骤同实施例3,进一步,在步骤7)中,对初始包裹相位φo(x,y)进行调整的过程中,遍历初始包裹相位φo(x,y)水平方向相位的幅值,若幅值高度为2π,则其对应步骤3)中序列的1码,若其幅值高度为π,则其对应对步骤3)中序列的0码,并将幅值高度为2π的周期数记为k1,将幅值高度为π的周期数记为k2。
实施例5:
本实施例主要步骤同实施例4,进一步,在步骤8)中,绝对相位φ(x,y)计算公式如下:
φ(x,y)=φr(x,y)+2πk1+πk2(3)。