光栅投影
页尾有惊喜!
目标:获取包裹相位以及相位的展开
相位法是指分别投射同一频率的多幅光栅图像至物体表面用以获得物体表面信息对应相位,一组图像之间有固定的相位差。目前主要以三步相移,四步相移和五步相移为主。区别在于一组之间的相位差不同,以四步相移为例周期为2pi 所以同一组之间的相位差为(2pi/4 = pi/2)
一:包裹相位的获取
投影到参考面的正弦光栅投影光强为:
经物体调制后的光强图为;
其中方程组共有N个方程,三个未知量,原理上当N>=3时可以求解。在实际中为保证精度一般取N>=4,使求解体系变为超定方程求解。
上面是N步相移的通用推导方式。下面以四步相移为例进行展示。
条纹投影时每个频率投影四幅图片,每幅图片之间的相移为pi/2则公式为:
可以联立方程组得:
此时相位的范围在(-pi/2,pi/2)之间,一般在matlab中使用atan2()将范围扩至(-pi,pi)。
解包裹(求取绝对相位)
解包裹算法很多,下面以时域解包裹算法中的多频外差进行介绍。以三频四相为例。
(三个频率,每个频率四幅图片)
因为我们要知道每个点的绝对相位,可以通俗理解为要知道在第几个周期的某个地方。
比如这副光栅图像中,在包裹相位中只能知道在当前周期的什么位置,却不知道处于第几周期。求取绝对相位就是确定在整幅图像中的位置。(第xx周期第xx列)
首先我们了解一下双频外差,即只有两个不同的频率。
Teq为等效周期也就是P12, T1为P1,T2为P2. 用两个不同的频率合成一个可以覆盖整幅图像的等效周期。三频外差的具体流程如下:
1.选择合适的三种条纹周期T1,T2,T3,满足T1< T2 < T3 < T12 < T23 < T123,且T123 > width则有
2.将得到的包裹相位缩放到【0,2*pi)之间
3.按照上式进行相位差分
证明如下
4.因为T123已经可以覆盖整幅图像所以其中的相位可以认为为绝对相位。下面就是对某一包裹相位进行展开一般最后选择频率最高的进行相位展开,这是因为高频的信噪比比较高,误差较小。
这样我们就得到了调制以后的绝对相位。可以根据两个相位差进行物体形貌的复原。
结构光之相机标定代码:请参考文章
https://blog.csdn.net/weixin_43263382/article/details/146886786?spm=1001.2014.3001.5502
提供测试数据以及代码。
*/*/w_x:_3dVision,