基于条纹投影的连续相位自适应补偿方法

来源:优秀文章 发布时间:2023-02-10 点击:

李 瑾, 徐 锋, 周炳宏, 陈妍洁

(西南科技大学信息学院,四川 绵阳 621000)

三维形貌测量在计算机视觉领域中占有重要地位,广泛应用于逆向工程、生物识别、机器视觉、智能制造等领域[1-3]。在基于结构光的三维形貌测量方法中,相移法以其操作简便、灵活性高的优点被广泛应用[4-5]。传统相移法通过投影仪在待测物体上投影相移正弦图像,然后从相机中获取变形条纹图像,并利用相移算法来计算相位,但从变形条纹图像中计算得到的相位包裹在(-π,π)区间中,需要对其进行相位展开[6]。基于格雷码编码的时间相位展开方法是最常用的相位展开方法[7],该方法首先向待测物体投射一组由黑和白两种灰度码构成的格雷码图像,其次通过格雷码图像解码得到相位顺序,然后结合相移法将每一个编码区域排序进行相位展开,最终得到待测物体的连续相位[8]。然而在实际测量过程中,由于投影仪的离焦效应,相机捕获的格雷码图像不仅是黑和白两种灰度码,需要在相位展开之前对格雷码图像进行二值化操作,但是二值化的消晕效应[9]常常造成格雷码图像在某些区域向左或向右偏移一两个像素,即发生相位跳跃错误[10]。因此,在格雷码图像黑白交界的像素,格雷码解码得到的相位顺序可能会出现错误,从而导致相位展开出现错误像素,而且系统噪声和阴影也会造成条纹图像中的无效像素。

针对相位跳跃错误,文献[11]提出了一种补偿格雷码的方法,该方法采用1幅补偿格雷码图像与7幅传统格雷码图像形成互补码字,使它们在相位跳跃附近交错,通过改变解码方式来减少相位跳跃错误,然后再结合相移法得到物体的三维形貌;YU等[12]提出一种周期不相等的相移法与格雷码组合方法,该方法对格雷码编码周期和相移条纹周期进行了优化,减少了解码顺序错误。这两种方法虽然在一定程度上消除了相位跳跃误差,但存在解码复杂、通用性差的问题,而且除了相位跳跃引起的相位错误,系统噪声和阴影引起的无效像素也会使相位展开发生错误。KARPINSKY等[13]在实验中使用1×5的中值滤波器消除系统噪声和阴影引起的相位展开错误像素,然而该方法不能消除相邻无效像素造成的相位错误;AN等[14]在实验中使用11×11的中值滤波消除了大部分的噪声点,但大尺度的中值滤波却造成了相位获取精度的损失。

为了更有效地消除相位跳跃像素点和无效像素点,同时保证相位获取精度,本文提出了一种基于格雷码相移条纹投影的连续相位自适应补偿方法。首先通过相移法得到包裹相位图,其次使用正反格雷码计算出相位顺序,从而得到连续相位图,然后在连续相位图中寻找错误像素点进行自适应补偿,最终形成了一套高精度的三维形貌测量方法。

1.1 格雷码相移编解码技术

格雷码相移方法是在纯格雷码的基础上[15],摒弃了高频的格雷码图像,取而代之的是浮点型的相移正弦图像,不仅提高了捕获变形图像的稳定性,而且在一定程度上减少了投影图像的数量。

格雷码是一种具有反射特性和循环特性的单步自补码,对于任意一组格雷码,其任意两个相邻的编码只有一位二进制数不同,该特性有利于消除投影过程突变误差,可以有效地降低解码的出错率,图1为7幅不同的格雷码图像。

图1 格雷码编码图像Fig.1 Gray code encoded images

格雷码解码过程可以分为3个部分,首先对捕获的格雷码图像选取合适的阈值进行二值化,然后计算每一个像素的格雷码,最后转化为十进制码。由于物体表面的反射率不同,不同的区域又存在互相反射,可能导致格雷码图像的二值化不准确。针对这个问题,本文采用正反格雷码,即在投射格雷码图像之后再向待测物体投射一组格雷码反码图像[16]。通过编码得到的正反格雷码图像如图2所示,其中,图2(a)表示的是格雷码图像,图2(b)表示其对应的反码图像。从图中可以看出, 图2(a)中黑色条纹在图2(b)中为白色条纹,图2 (a)中白色条纹在图2(b)中为黑色条纹,该方法可以降低黑白分界处像素误判的发生概率。

图2 正反格雷码图像Fig.2 Positive and negative gray code images

以横向像素1024为例,使用5对正反格雷码把图像横向坐标分成32个区间,每一个区间包含 32个像素,在这个区间内所有像素的格雷码值相同,然后采用周期为32的四步相移法更精确地划分测量区间。按顺序将四步相移图像投射到待测物体表面后,相机捕捉到的变形条纹中每一个像素的值为In(x,y),即

(1)

式中:N表示相移模式,本文采用四步相移法,N=4;
n表示相移指数,n=0,1,2,3;
A(x,y)表示该点的平均强度;
B(x,y)表示该点的振幅值;
φ(x,y)为包裹相位,即

(2)

格雷码解码得到相位顺序K(x,y),格雷码结合四步相移法,可以得到每个像素点唯一确定的码字,将相位展开为Φ(x,y),即

Φ(x,y)=φ(x,y)+2π·K(x,y)。

(3)

1.2 连续相位自适应补偿

正如在引言中所提到的,捕获的格雷码图像在解码时位于黑白边界的像素有可能出现错误,从而导致相位展开错误,如图3所示。

图3 相位展开错误像素Fig.3 Pixels with phase unwrapping error

由图3中的连续相位图的局部放大区域可以发现,在相位跳跃附近发生了相位展开错误。经分析,连续相位图中相位跳跃引起的错误像素可被视为脉冲噪声,可以通过一个中值滤波器将其有效滤除,即

ΦM(x,y)=medifilter[Φ(x,y);Sx×Sy]

(4)

式中:Φ(x,y),ΦM(x,y) 分别为中值滤波前、后的相位;
medifilter表示中值滤波算子;
Sx×Sy表示滤波器的大小。

滤波器的大小由连续相位图包含错误像素的程度决定。当采集的图像不包含阴影生成的无效像素时,小尺寸的中值滤波器可以滤除[17];当采集的图像包含阴影生成的相邻无效像素时,大尺寸的中值滤波器可以滤除[18]。然而,大尺寸的中值滤波可能模糊相位跳跃边界,造成相位的细节丢失。为了有效地消除相位跳跃错误像素和无效像素的影响,本文基于中值滤波设计一种自适应的相位补偿方法。

自适应补偿方法分为两步,分别是判断错误像素和中值滤波:第1步是判断相位展开错误的像素,由式(3)可知,在连续相位图中,以像素A为中心的局部区域中,其邻近像素展开正确的相位值应该与像素A的相位值相近,展开错误的相位值与像素A周围的值相差较大,基本为2π的倍数,通过该原理可以找到展开错误的像素;
第2步是自适应中值滤波补偿相位,在检测到的错误像素上使用中值滤波,通过不断地扩大滤波范围尽可能地补偿错误像素。具体步骤如下所述。

1) 在连续相位图中选取以像素A为中心的5×5局部区域。

2) 判断像素A是否为错误像素,当|Φ(A)-Φ(B)|

3) 当像素A为展开错误像素时,在A的区域使用中值滤波,初始滤波窗口W=1×5,遍历整个图像对图像中错误像素进行中值滤波。

4) 扩大滤波窗口,窗口尺寸较短的增加2步长,即窗口尺寸从1×5,3×5,5×5,7×7不断扩大,窗口最大尺寸W=11×11,重复2)~3),直到遍历图像没有展开错误的像素为止或者滤波窗口已经是最大。

为了验证本文方法在连续相位图中对错误像素点的补偿可行性,搭建如图4所示的双目结构光三维测量系统:实验平台包括两个焦距16 mm的海康CA-060GC相机,分辨率为1024像素×768像素的SONY投影仪以及一台配有VS2015+OpenCV的笔记本电脑。其中,投影仪位于中间,投影仪两侧分别放置一个相机,构成双目立体视觉系统,待测物体为立体人脸石膏模型。

图4 双目结构光测量系统Fig.4 Binocular structured light measurement system

实验过程中,首先采用张正友标定法对相机进行标定,其次投射正反格雷码和图像相移条纹图像于待测物体表面,如图5(a)~5(d)所示,然后根据式(1)计算出待测物体的包裹相位,包裹相位具有周期性,如图5(e)所示。最后根据正反格雷码图像解码计算相位顺序,从而得到展开相位,将展开相位归一化为0~255的灰度范围,得到连续相位图,连续相位如图5(f)所示,其局部放大如图6(a)所示。

图5 相移法结合正反格雷码Fig.5 Phase shifting method combining positive gray code with negative gray code

图6 用不同中值滤波器补偿展开错误点的效果Fig.6 Effect of different median filters on compensating for unwrapping error points

根据1.2节原理进行相位跳跃错误搜寻检测,连续相位图确实存在如图6(a)中红色点所示相位展开的错误像素。当针对连续相位应用本文所述自适应补偿方法后,其连续相位局部放大图如图6(b)所示,其错误像素已经消除。为了验证本文方法的效果,针对同一个区域直接使用1×3,3×3,7×7,11×11中值滤波进行处理,其结果如图6(c)~6(f)所示。从实验结果可以发现,1×3,3×3的小尺寸中值滤波器可以补偿大部分的错误像素,但从图中可以明显地看出被替代的痕迹,且仍然存在错误像素。7×7,11×11大尺寸中值滤波器虽然可以补偿大部分的错误像素,但可以明显地看出它模糊了相位跳跃边界,如图6(e)和图6(f)箭头所指区域。而本文方法可以补偿大部分的错误像素,而且不会模糊相位跳跃边界,相较于仅使用固定值中值滤波的方法有着更好的补偿效果。

为了进一步验证本文方法的有效性,将连续相位图进行双目立体匹配处理,得到视差图,接着利用获得的深度信息得到三维点云。分别获得了仅采用相移法结合格雷码方法重建得到的点云图、采用3×3中值滤波方法处理后的点云图和采用本文提出的自适应补偿方法处理后的点云图,如图7(a)~7(c) 所示。从实验结果可以得出:在传统相移法结合格雷码方法重建出来的点云图中存在错误像素造成的明显的裂纹;
而直接使用3×3中值滤波可以消除部分裂纹,但在鼻梁、眼睛等纹理丰富的区域补偿效果不明显;
使用本文方法可以重建出被测物体的细节,在待测物体上也没有明显的裂纹,重建表面较为平滑,因此能够更好地重建出被测物体的表面形貌。

图7 3种方法的重建效果Fig.7 Reconstruction effect of three methods

实验中同样针对上述3种方法获得的点云进行了点云配准,其配准的基础点云为采用KSCAN高精度三维激光扫描仪(扫描精度可以达到0.02 mm)扫描待测物体建立一个接近Ground Truth的三维点云模型。结合迭代最近点法(ICP)进行精配准,匹配点数为50 000,传统方法的RMSE为0.253 082,3×3中值滤波方法的RMSE为0.243 47,本文方法的RMSE为0.208 439。由此可知,本文方法提高了三维形貌测量的精度,减小了传统相移法结合格雷码方法相位展开跳跃错误对三维形貌测量的影响。

本文基于格雷码相移双目结构光系统,提出一种连续相位自适应补偿方法来消除连续相位图中展开错误的像素点。该方法从两个方面提高了三维测量的精度:1) 本文方法仅应用于展开错误的像素点而不是整个图像,提高了补偿错误像素点的准确性,对原始图像的影响较小;
2) 本文方法会自适应扩大检索范围,当像素与周围像素值相近时结束操作,不会模糊图像细节区域。实验结果表明,采用本文方法能够补偿大部分的错误像素并保留待测物体的细节,重建效果优于传统格雷码相移方法和应用固定值中值滤波的处理方法。然而,本文方法在进行错误像素处理时需要耗费一定的时间,下一步需要对其加速处理进行研究。

猜你喜欢 中值条纹解码 《解码万吨站》中国石油石化(2022年12期)2022-07-16Lagrange中值定理的证明及其应用科教导刊·电子版(2021年23期)2022-01-15解码eUCP2.0中国外汇(2019年19期)2019-11-26谁是穷横条纹衣服的人小福尔摩斯(2019年2期)2019-09-10别急!丢了条纹的斑马(上)小学生必读(低年级版)(2019年9期)2019-04-13别急!丢了条纹的斑马(下)小学生必读(低年级版)(2019年10期)2019-04-13NAD C368解码/放大器一体机家庭影院技术(2018年11期)2019-01-21Quad(国都)Vena解码/放大器一体机家庭影院技术(2018年11期)2019-01-21Lagrange中值定理的巧妙应用数学学习与研究(2018年5期)2018-03-28高等数学中拉格朗日中值定理的教学处理教育教学论坛(2017年34期)2017-08-30推荐访问:相位 条纹 自适应
上一篇:两种OFDM信号的雷达探测性能研究
下一篇:基于DTTD-MCR-PLUS模型的三生空间格局优化——以长沙市为例

Copyright @ 2013 - 2018 优秀啊教育网 All Rights Reserved

优秀啊教育网 版权所有