精华内容
下载资源
问答
  • 四步相移法-解相

    2016-09-22 19:11:02
    基于结构光的四步相移法
  • 四步相移法 matlab

    2015-12-12 15:48:30
    四步相移法的matlab程序,自带相位解缠绕
  • 四步相移法的非线性相位误差补偿方法
  • 四步相移法程序

    热门讨论 2013-04-23 23:05:37
    这是一个用matlab编写的用来求解四步相移法的光栅相位主值的程序
  • 对于给定的利用四步相移法获得的四张图片(本实验中的图片为鱼),本实验利用matlab对图片进行处理,得到图片中包含高度的相位信息,即恢复图片中物体的轮廓信息。
  • 四步相移法中的提取相位问题 %% 清理工作空间clc;close all;clear; %% 系统标定L = 200; %摄像机光心到参考平面距离(标定获得)D = 60; %投影仪光心到摄像机光心连线距离(标定获得)f = 1/32; %投影的光栅频率W_...

    四步相移法中的提取相位问题 

    %% 清理工作空间
    clc;
    close all;
    clear;

    %% 系统标定
    L = 200; %摄像机光心到参考平面距离(标定获得)
    D = 60; %投影仪光心到摄像机光心连线距离(标定获得)
    f = 1/32; %投影的光栅频率
    W_Scale = 12;
    H_Scale = 12;

    %% 读四副图片(调制图案)
    image1 = imread('o_1000000.bmp');
    I1=double(rgb2gray(image1))/255; %将0-255转化为0-1
    image2 = imread('o_1000001.bmp');
    I2=double(rgb2gray(image2))/255;

    image3 = imread('o_1000002.bmp');
    I3=double(rgb2gray(image3))/255;

    image4 = imread('o_1000003.bmp');
    I4=double(rgb2gray(image4))/255; %转成灰度图像

    %% 读参考图像
    image5 = imread('o_1000005.bmp');
    I5=double(rgb2gray(image5))/255; %将0-255转化为0-1
    image6 = imread('o_1000006.bmp');
    I6=double(rgb2gray(image6))/255;

    image7 = imread('o_1000007.bmp');
    I7=double(rgb2gray(image7))/255;

    image8 = imread('o_1000008.bmp');
    I8=double(rgb2gray(image8))/255; %转成灰度图像

    %% 调制后的图像相位计算
    for i=1:512
    for j=1:512
    if (I1(i,j)==I3(i,j))
    if(I2(i,j)>I4(i,j))
    I(i,j)=pi/2;
    elseif(I2(i,j)<I4(i,j))
    I(i,j)=3*pi/2;
    else
    I(i,j)=0;
    end

        elseif (I1(i,j)>I3(i,j))
            if I2(i,j)>=I4(i,j)
                I(i,j)=atan((I2(i,j)-I4(i,j))/(I1(i,j)-I3(i,j)));
            else
                I(i,j)=2*pi-atan((I4(i,j)-I2(i,j))/(I1(i,j)-I3(i,j))); 
            end
    
        else
            if I2(i,j)>=I4(i,j)
                I(i,j)=pi-atan((I2(i,j)-I4(i,j))/(I3(i,j)-I1(i,j)));
            else
                I(i,j)=pi+atan((I4(i,j)-I2(i,j))/(I3(i,j)-I1(i,j))); 
            end
        end
    end
    

    end

    %% 参考图像相位计算
    for i=1:512
    for j=1:512
    if (I5(i,j)==I7(i,j))
    if(I6(i,j)>I8(i,j))
    phase(i,j)=pi/2;
    elseif(I6(i,j) phase(i,j)=3*pi/2;
    else
    phase(i,j)=0;
    end
    elseif (I5(i,j)>I7(i,j))
    if I6(i,j)>=I8(i,j)
    phase(i,j)=atan((I6(i,j)-I8(i,j))/(I5(i,j)-I7(i,j)));
    else
    phase(i,j)=2*pi-atan((I8(i,j)-I6(i,j))/(I5(i,j)-I7(i,j))); 
    end
    else
    if I6(i,j)>=I8(i,j)
    phase(i,j)=pi-atan((I6(i,j)-I8(i,j))/(I7(i,j)-I5(i,j)));
    else
    phase(i,j)=pi+atan((I8(i,j)-I6(i,j))/(I5(i,j)-I7(i,j))); 
    end
    end
    end
    end

    转载于:https://www.cnblogs.com/tansuoxinweilai/p/10588122.html

    展开全文
  • 详解多频四步相移法投射图案生成(matlab源码)

    万次阅读 多人点赞 2019-08-16 17:29:15
    关于四步相移以及多步相移法的解相可以参考我的另一篇博文的公式详细推导,在解相完成后即可进行相位展开。 (独家原创)多步相移法解相位详细推导 https://blog.csdn.net/qq_15295565/article/details/97412222 ...

    该博文主要以12张三频率的四步相移光栅图像生成为例:

    关于四步相移以及多步相移法的解相可以参考我的另一篇博文的公式详细推导,在解相完成后即可进行相位展开。

    (独家原创)多步相移法解相位详细推导

    https://blog.csdn.net/qq_15295565/article/details/97412222

     

    相移法原理已经清楚,多频外差进行解相的原理也清楚后,那我们如何下手去实现呢?先从投射光栅图像的生成开始。

    以12张三频率的四步相移光栅图像生成为例:

     

    首先光栅图像是对二维数据进行操作,所以需要新建空的矩阵来存储图像,同时设置图像的尺寸height和width,分别对应投影仪的分辨率。

    首先说明的是论文中所看到的的三套条纹图案其实就是三个频率的图像。

    三个频率这里设置为73 64 56。

    这三个频率的含义是在光栅条纹的条纹方向上有多少个正弦条纹。

     

    重点来了!

    如何控制不同的频率和不同的相位在图案上进行显示呢?换句话说,

    投影的光栅条纹图像强度分布公式如何在代码中体现呢?

    测量中不存在相移误差(不会有多余的相移加入,按理论计算),且背景光强与条纹对比度均为常数 0.5,对应如下式表示:

                                                  I(x,y) =0.5+0.5cos(2*pi*y*f/(heigth)+n*pi2/N);

    这里你应该会有疑问,即

    需要解释的是这里用的是cell元胞来进行存储图像数据,相当于二维数据里的每一个元素仍然是个二维数据,每个元素都是一张生成图案。

    (1)因为是四步相移,N=4,n-1用j表示,从0~3;

    (2)f对频率进行控制,q控制条纹的方向为横向。

    (3)这个公式里的2*pi*q*f(i)/(heigth),f(i)/(heigth)为正弦函数的频率,周期是指(heigth)/f(i),一个正弦函数有多少个像素长度,倒数为频率,这也是与多频中频率含义的不同之处。

    个人理解,条纹在产生时的频率是和图像的尺寸有关,如果改变正弦条纹本身周期内的像素个数,即改变了它的周期数,频率也会改变,但是图像尺寸确定后条纹的周期不变,频率不变,这只是针对条纹的产生而言,如果投影仪投射出去,无论拍摄相机的分辨率如何变化,在展开相位时均与不同帧图像的相同像素位置的相差有关。

    for i = 1:3 % 控制三种不同的频率
        for  j = 0:3 % 控制四步相移
            for k = 1:width 
                for q=1:heigth
                  Ce{i,j+1}(k,q) =0.5+0.5*cos(2*pi*q*f(i)/(heigth)+j*pi/2);
                end
            end
        end
    end

    完整的代码段(包括生成和存储)如下:

    %%%投影3套共12幅条纹图
    %%%三频分别为73 64 56
    clc;
    clear all;
    Ce = cell(3,4);  
    f= [73 64 56];
    width =1080;  
    heigth =1920;
    
    %先
    for i=1:3
        for j=1:4
            Ce{i,j} = zeros(width,heigth);
        end
    end
    for i = 1:3 % 控制三种不同的频率
        for  j = 0:3 % 控制四步相移
            for k = 1:width 
                for q=1:heigth
                  Ce{i,j+1}(k,q) =0.5+0.5*cos(2*pi*q*f(i)/(heigth)+j*pi/2);
                end
            end
        end
    end
    for i = 1:3  %循环存储12幅投影条纹图
         for j=1:4
             tmp=Ce{i,j};
             if i==1
               filename=['C:\Users\Administrator\Desktop\111\',num2str(j),'.bmp'];
             elseif i>1
               filename=['C:\Users\Administrator\Desktop\111\',num2str(2.^(i)+j),'.bmp']; 
             end
             imwrite(tmp,filename,'bmp');
         end
    end

     效果图为:

    有疑问,欢迎留言和加我qq学习交流:857467352。

    展开全文
  • %% 读副图片(调制图案) image1 = imread('o_1000000.bmp'); I1=double(rgb2gray(image1))/255; %将0-255转化为0-1 image2 = imread('o_1000001.bmp'); I2=double(rgb2gray(image2))/255; image3 = imread('o_...
  • 四步相移公式: 可得: 1、如何生成90度的相移 可以用干涉,现在多用计算机程序生成,具体怎么得到90度的相移呢 2、如何确定相位值 虽然tan值都是-1,但是相位值不一样,该如何确定呢 I4-I2相当于sin I

    光强公式:
    在这里插入图片描述
    理解:a(x,y)是背景光强,b(x,y)是调制,a/b为对比度,对比度很重要,理想状态下对比度为1(即a=b)时最好,但是实际情况下,光强I不可能为0.
    另外,一般存储为8位,255个灰度级,a=b=127.5,通常灰度级不可能是小数;所以,考虑取a=128,b=127
    在这里插入图片描述
    四步相移公式:
    在这里插入图片描述
    可得:在这里插入图片描述
    1、如何生成90度的相移
    可以用干涉,现在多用计算机程序生成,具体怎么得到90度的相移呢
    在这里插入图片描述

    2、如何确定相位值
    虽然tan值都是-1,但是相位值不一样,该如何确定呢
    在这里插入图片描述
    在这里插入图片描述
    I4-I2相当于sin
    I1-I3相当于cos

    展开全文
  • 四步移相法

    2015-10-18 11:21:44
    针对simulation中单频四步相移图像IM0-3及IMR0-3图像们进行四步相移测量的程序 refphase1是对参考面的测量并接缠绕得到相位角 solvephase是对测量物体的测量并得到相位角后,进行处理回复面形
  • 提出了一种能大大地减小由于移相器的位移误差而引起相位复原误差的新方法,即重叠四步平均.给出了这种方法的相位复原精度与移相器的位移误差之间的关系式,从关系式中可见,OAF算法大大地减小由于移相器的位移误差而...
  • 为了测量物体的三维形貌,通过投射正弦光栅,采用四步相移法求得包裹相位;运用质量引导路径解包裹方法对包裹相位进行解包裹处理,得到正确的相位值;最后通过三维重建获得物体的三维形貌。用人脸面具进行试验。结果表明:...
  • 在C++平台上实现了光栅投影三维重建中的,初始结构光栅的产生,以及四步相移法求得包裹相位并展开。
  • 根据电压相位标定曲线采集多组周期干涉图,对干涉图中的光强值进行均匀分布抽样后,对其进行随机移相计算,求取每帧干涉图精确的步进移相量,从中筛选出移相量为π/2的四帧干涉图,利用四步移相计算公式求得精确的...
  • 提出一种新的投影栅相位测量方法――两步相移法。该方法只需两幅相移条纹图,因此计算量小,速度快。给出了实验及计算结果,并同四步相移法进行了比较,证明了该方法具有较高的精度。
  • 本文介绍了移相干涉技术中最基础却也非常重要的一步——相位提取,主要阐述了移相干涉测量原理、四步移相法提取相位、多步平均推导过程、多步解包裹后平均这四个部分,希望能给同样从事该领域研究的你带来一点...

    作者:Steven
    版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处

    注:本文所讲内容为本人硕士毕业论文:《基于干涉图像质量分析的激光干涉仪抗振技术研究》,如有引用需要标注来源哈,如有疑问可以评论回复也可以邮箱1257147469@qq.com联系我。

     

    目录

    前言

    一、移相干涉测量原理

    二、四步移相法

    三、多步平均法(5-9步)

    四、多步解包裹后平均法


     

    前言

    自二十世纪末以来,移相干涉技术(Phase Shifting Interferometry, PSI)因其高分辨率、高计算精度的优势,逐渐取代了传统的波面测量技术并被作为一种标准波面测量技术沿用至今。PSI是以光波波长作单位的纳米级超高精度测量手段,通过移相式激光干涉仪实现,被广泛应用在光学领域中,特别是在光学系统成像质量评价和光学器件面形检测方面。

    本文介绍了移相干涉技术中最基础却也非常重要的一步——相位提取,主要阐述了移相干涉测量原理、四步移相法提取相位、多步平均法推导过程、多步解包裹后平均法这四个部分,希望能给同样从事该领域研究的你带来一点帮助。

     

    一、移相干涉测量原理

    过去的干涉测量技术是通过人的肉眼或者相机拍摄,来直观判断干涉图中条纹特征进而完成测量,该方法的不稳定因素(比如人的主观意志)很多,其精度误差在λ/10左右;现代干涉测量技术通过将电子技术、计算机技术、光电图像处理技术、算法模型和高精度光学元件结合,大大推动了干涉测量领域的发展,使其进入高精度时代。移相干涉技术(PSI)作为现代干涉测量技术的代表,已经成为干涉测量领域学者的研究重点。

    移相干涉技术测量的原理:移相式激光干涉仪通过控制压电陶瓷驱动器(PZT)移动参考镜位置或者改变激光器波长的方式,令参考光和测试光的光程差改变,从干涉图像中可看出干涉条纹进行了相应的位移。在移相过程中,通过光电探测器(CCD或者CMOS)采集不同移相量下的干涉图,图1所示为一组移相间隔为90°的移相干涉图组。计算机根据特定的数学算法和模型对干涉图组的像素数据进行系列运算,进而可以求得被测元件的面形信息,并根据计算好的相关参数进行质量评价。

    图1 移相间隔为90°的9帧移相干涉条纹图

    基于PZT实现移相的过程为:当PZT控制模块发出指定命令时,PZT伸长量进行相应改变,即参考镜和被测镜的相对距离改变,进而完成相位调制以达到移相目的。

    在上述移相干涉测量过程中,干涉图像中的条纹分布是由参考光束和测试光束叠加形成的干涉场导致,干涉场的光强信息与干涉图中像素点的灰度信息相关,其分布函数公式(1)可表示为:

    \mathrm{I}_{i}(\mathrm{x}, \mathrm{y})=A(\mathrm{x}, \mathrm{y})+B(\mathrm{x}, \mathrm{y}) \cos \left(\varphi(\mathrm{x}, \mathrm{y})+\delta_{i}\right) (1)

    其中:A(x,y)是干涉图的背景光强,B(x,y)是调制度,\varphi(\mathrm{x}, \mathrm{y})是待测物的波面初始相位信息,\delta_{i}是移相量,(x,y)是干涉图中像素点的坐标信息。

    参考镜和被测镜间的面形差P(x,y)与位相分布的关系可表示为公式(2):

    P(\mathrm{x}, \mathrm{y})=\frac{\varphi(\mathrm{x}, \mathrm{y})}{4 \pi} \lambda (2)

    λ为激光器波长(本文为He-Ne激光器——632.8nm),在移相干涉测量技术中,测量单位为λ。当通过解相算法处理干涉图组的像素数据,可计算出\mathrm{I}_{i}(\mathrm{x}, \mathrm{y}),并进一步得到面形信息\varphi(\mathrm{x}, \mathrm{y})以完成检测工作。

    下面开始介绍3种比较常见和基础的相位提取算法。

     

    二、四步移相法

    作为经典的解相算法,四步移相法可以有效计算出理想移相图组的相位分布。先获取无移相的干涉图像,再进行三次移相间隔为π/2的移相,每次移相完成采集1帧图像,共得到4帧相位相差π/2的干涉图像,其图像光强信息分别为:

    \begin{array}{l} \mathrm{I}_{1}(\mathrm{x}, \mathrm{y})=A(\mathrm{x}, \mathrm{y})+B(\mathrm{x}, \mathrm{y}) \cos (\varphi(\mathrm{x}, \mathrm{y})) \\ \mathrm{I}_{2}(\mathrm{x}, \mathrm{y})=A(\mathrm{x}, \mathrm{y})+B(\mathrm{x}, \mathrm{y}) \cos (\varphi(\mathrm{x}, \mathrm{y})+\pi / 2) \\ \mathrm{I}_{3}(\mathrm{x}, \mathrm{y})=A(\mathrm{x}, \mathrm{y})+B(\mathrm{x}, \mathrm{y}) \cos (\varphi(\mathrm{x}, \mathrm{y})+\pi) \\ \mathrm{I}_{4}(\mathrm{x}, \mathrm{y})=A(\mathrm{x}, \mathrm{y})+B(\mathrm{x}, \mathrm{y}) \cos (\varphi(\mathrm{x}, \mathrm{y})+3 \pi / 2) \end{array} (3)

    公式(3)中4个式子进行公式变换消去A和B可得到和四帧图像像素信息的关系式:

    \varphi(\mathrm{x}, \mathrm{y})=\arctan \left(\frac{\mathrm{I}_{4}(\mathrm{x}, \mathrm{y})-\cdot \mathrm{I}_{2}(\mathrm{x}, \mathrm{y})}{\mathrm{I}_{1}(\mathrm{x}, \mathrm{y})-{ }^{\cdot} \mathrm{I}_{3}(\mathrm{x}, \mathrm{y})}\right) (4)

    该算法求解速度快,适合对理想干涉图组进行求解。当有外部干扰时,相位变化呈无规则态,此时四步移相法的解相效果非常糟糕,无任何抗振能力。与四步移相法类似的单周期定步长算法还有三步算法等。

     

    三、多步平均法(5-9步)

    为了抑制移相器线性移相误差或外在环境干扰带来的影响,相关学者在四步移相法的基础上引入了平均技术(本文介绍的平均法基于四步移相法,移相间隔均为π/2):通过获取T+K(T=4)帧移相间隔为π/2的干涉图像,使干涉图组的相位变化不再局限于一个2π周期内,避免因单周期内干扰过大而导致求解偏差较大的情况发生;鉴于余弦分布的特点,不同周期下干涉图的移相量均可化为单周期移相值,即0、π/2、π、3π/2,每个移相值对应多帧不同周期下的干涉图,对这些干涉图而言,其光强信息在理论上应完全一致,考虑到现实环境干扰的复杂性和无规则性,每帧图的信息都会出现或多或少的偏差,应用平均技术的思想能一定程度上起到减少误差的作用。

    基于平均技术思想,多步平均法虽能有效抑制振动干扰,但当帧数过多时,也可能会出现因取图时间过长而引入过量振动的问题。最佳帧数的设置是多步平均法非常关键的一步,综合考虑干涉仪内置相机的性能(如果CCD或CMOS的帧率很高,可以适当增加获取图像的帧数),一般获取9帧图像最佳,既可以保证图组的相位信息跨过两个周期以使平均法达到抑制振动影响的效果,又可以避免引入过量的扰动。

    接下来推导九步平均算法的解相公式:

    a.将四步移相法公式(4)变形得公式(5):

    \varphi(\mathrm{x}, \mathrm{y})=\arctan \left(\frac{\mathrm{I}_{4}(\mathrm{x}, \mathrm{y})- \mathrm{I}_{2}(\mathrm{x}, \mathrm{y})}{\mathrm{I}_{1}(\mathrm{x}, \mathrm{y})- \mathrm{I}_{3}(\mathrm{x}, \mathrm{y})}\right)=\arctan \left(\frac{N_{0}}{D_{0}}\right) (5)

    上式中,N_{0}D_{0}分别代表从第一帧图(即移相量从0开始)开始的4帧干涉图像间解相运算的分子分母部分。四步移相法作为后续平均算法的基本算法式,基础步数为T(=4)。

    如果继续获取第五帧图,该干涉图的移相量为2π,化为单周期移相值为0,此时将以第二帧图(即移相量从)开始的4帧干涉图作四步解相运算,可得公式(6):

    \varphi(\mathrm{x}, \mathrm{y})=\arctan \left(\frac{\mathrm{I}_{4}(\mathrm{x}, \mathrm{y})- \mathrm{I}_{2}(\mathrm{x}, \mathrm{y})}{\mathrm{I}_{5}(\mathrm{x}, \mathrm{y})- \mathrm{I}_{3}(\mathrm{x}, \mathrm{y})}\right)=\arctan \left(\frac{N_{\pi/2 }}{D_{\pi/2}}\right) (6)

    将公式(5)和(6)结合可得五步(T+1)平均算法,公式(7):

    \begin{aligned} \varphi(\mathrm{x}, \mathrm{y}) &=\arctan \left(\frac{N_{0}+N \frac{\pi}{2}}{D_{0}+D_{\frac{\pi}{2}}}\right) \\ &=\arctan \left(\frac{2 \cdot\left( \mathrm{I}_{4}(\mathrm{x}, \mathrm{y})-\mathrm{I}_{2}(\mathrm{x}, \mathrm{y})\right)}{\mathrm{I}_{1}(\mathrm{x}, \mathrm{y})+\mathrm{I}_{5}(\mathrm{x}, \mathrm{y})-2 \mathrm{I}_{3}(\mathrm{x}, \mathrm{y})}\right) \end{aligned} (7)

    b.继续获取第六帧图,该干涉图的移相量为2π+π/2,化为单周期移相值为π/2。同理可获得公式(8):

    \varphi(\mathrm{x}, \mathrm{y})=\arctan \left(\frac{\mathrm{I}_{4}(\mathrm{x}, \mathrm{y})-\mathrm{I}_{6}(\mathrm{x}, \mathrm{y})}{\mathrm{I}_{5}(\mathrm{x}, \mathrm{y})-\mathrm{I}_{3}(\mathrm{x}, \mathrm{y})}\right)=\arctan \left(\frac{N_{\pi}}{D_{\pi}}\right) (8)

    此时运用“扩展平均”思想以获得进一步的补偿,即运用N+2的处理方式:分别对前T+1(5)帧和后T+1(5)帧图采用五步平均算法,累加平均得到六步(T+2)平均算法(也可称作扩展平均算法,后文将其统一作平均算法),公式(9):

    \begin{array}{c} \varphi(\mathrm{x}, \mathrm{y})=\arctan \left(\frac{N_{0}+N_{\frac{\pi}{2}}+\left(N_{0}+N_{\frac{\pi}{2}}\right) \frac{\pi}{2}}{D_{0}+D_{\frac{\pi}{2}}+\left(D_{0}+D_{\frac{\pi}{2}}\right)_{\frac{\pi}{2}}}\right)=\arctan \left(\frac{N_{0}+2 N_{\frac{\pi}{2}}+N_{\pi}}{D_{0}+2 D_{\frac{\pi}{2}}+D_{\pi}}\right) \\ =\arctan \left(\frac{4 \cdot \mathrm{I}_{4}(\mathrm{x}, \mathrm{y})-3 \cdot \mathrm{I}_{2}(\mathrm{x}, \mathrm{y})-\mathrm{I}_{6}(\mathrm{x}, \mathrm{y})}{\mathrm{I}_{1}(\mathrm{x}, \mathrm{y})-4 \cdot \mathrm{I}_{3}(\mathrm{x}, \mathrm{y})+3 \cdot \mathrm{I}_{5}(\mathrm{x}, \mathrm{y})}\right) \end{array} (9)

    c.以此类推,继续扩展可得到T+K步平均算法。

    当K=3时,获取到第七帧图,四到七帧图作四步运算得公式(10):

    \varphi(\mathrm{x}, \mathrm{y})=\arctan \left(\frac{\mathrm{I}_{4}(\mathrm{x}, \mathrm{y})- \mathrm{I}_{6}(\mathrm{x}, \mathrm{y})}{\mathrm{I}_{5}(\mathrm{x}, \mathrm{y})- \mathrm{I}_{7}(\mathrm{x}, \mathrm{y})}\right)=\arctan \left(\frac{N_{3 \pi / 2}}{D_{3 \pi / 2}}\right) (10)

    分别对前T+2(6)帧和后T+2(6)帧作六步平均运算并累加可得七步(T+3)平均算法,公式(11):

    \begin{aligned} \varphi(\mathrm{x}, \mathrm{y}) &=\arctan \left(\frac{N_{0}+2 N_{\frac{\pi}{2}}+N_{\pi}+\left(N_{0}+2 N_{\frac{\pi}{2}}+N_{\pi}\right) \frac{\pi}{2}}{D_{0}+2 D_{\frac{\pi}{2}}+D_{\pi}+\left(D_{0}+2 D_{\frac{\pi}{2}}+D_{\pi}\right) \frac{\pi}{2}}\right) \\ =& \arctan \left(\frac{N_{0}+3 N_{\frac{\pi}{2}}+3 N_{\pi}+N_{3 \pi / 2}}{D_{0}+3 D_{\frac{\pi}{2}}+3 D_{\pi}+D_{3 \pi / 2}}\right) \cdots \cdots . \\ =& \arctan \left(\frac{4 \cdot\left(2 \cdot \mathrm{I}_{4}(\mathrm{x}, \mathrm{y})-\mathrm{I}_{2}(\mathrm{x}, \mathrm{y})-\mathrm{I}_{6}(\mathrm{x}, \mathrm{y})\right)}{\mathrm{I}_{1}(\mathrm{x}, \mathrm{y})-7 \cdot \mathrm{I}_{3}(\mathrm{x}, \mathrm{y})+\cdot 7 \cdot \mathrm{I}_{5}(\mathrm{x}, \mathrm{y})-\mathrm{I}_{7}(\mathrm{x}, \mathrm{y})}\right) \end{aligned} (11)

    当K=4时,获取到第八帧图,五到八帧图作四步运算得公式(12):

    \varphi(\mathrm{x}, \mathrm{y})=\arctan \left(\frac{\mathrm{I}_{8}(\mathrm{x}, \mathrm{y})-\cdot \mathrm{I}_{6}(\mathrm{x}, \mathrm{y})}{\mathrm{I}_{5}(\mathrm{x}, \mathrm{y})-\cdot \mathrm{I}_{7}(\mathrm{x}, \mathrm{y})}\right)=\arctan \left(\frac{N_{2 \pi}}{D_{2 \pi}}\right) (12)

    分别对前T+3(7)帧和后T+3(7)帧作七步平均运算并累加可得八步(T+4)平均算法,公式(13):

    \begin{array}{l} \varphi(\mathrm{x}, \mathrm{y}) \\ =\arctan \left(\frac{N_{0}+3 N \frac{\pi}{2}+3 N_{\pi}+N_{3 \pi / 2}+\left(N_{0}+3 N \frac{\pi}{2}+3 N_{\pi}+N_{3 \pi / 2}\right) \frac{\pi}{2}}{\left.D_{0}+3 D_{\frac{\pi}{2}}+3 D_{\pi}+D_{3 \pi / 2}+D_{0}+3 D_{\frac{\pi}{2}}+3 D_{\pi}+D_{3 \pi / 2}\right) \frac{\pi}{2}}\right) \\ =\arctan \left(\frac{N_{0}+4 N_{\frac{\pi}{2}}+6 N_{\pi}+4 N_{3 \pi / 2}+N_{2 \pi}}{D_{0}+4 D_{\frac{\pi}{2}}+6 D_{\pi}+4 D_{3 \pi / 2}+D_{2 \pi}}\right) \\ =\arctan \left(\frac{15 \cdot \mathrm{I}_{4}(\mathrm{x}, \mathrm{y})-\cdot 5 \cdot \mathrm{I}_{2}(\mathrm{x}, \mathrm{y})-11 \cdot \mathrm{I}_{6}(\mathrm{x}, \mathrm{y})+\mathrm{I}_{8}(\mathrm{x}, \mathrm{y})}{\mathrm{I}_{1}(\mathrm{x}, \mathrm{y})-11 \cdot \mathrm{I}_{3}(\mathrm{x}, \mathrm{y})+\cdot 15 \cdot \mathrm{I}_{5}(\mathrm{x}, \mathrm{y})-5 \cdot \mathrm{I}_{7}(\mathrm{x}, \mathrm{y})}\right) \end{array} (13)

    当K=5时,获取到第九帧图,六到九帧图作四步运算得公式(14):

    \varphi(\mathrm{x}, \mathrm{y})=\arctan \left(\frac{\mathrm{I}_{8}(\mathrm{x}, \mathrm{y})-\cdot \mathrm{I}_{6}(\mathrm{x}, \mathrm{y})}{\mathrm{I}_{9}(\mathrm{x}, \mathrm{y})-\mathrm{I}_{7}(\mathrm{x}, \mathrm{y})}\right)=\arctan \left(\frac{N_{5 \pi / 2}}{D_{5 \pi / 2}}\right) (14)

    分别对前T+4(8)帧和后T+4(8)帧作八步平均运算并累加可得九步(T+5)平均算法,公式(15):

    \begin{array}{l} \varphi(\mathrm{x}, \mathrm{y}) \\ =\arctan \left(\frac{N_{0}+4 N_{\frac{\pi}{2}}+6 N_{\pi}+4 N_{3 \pi / 2}+N_{2 \pi}+\left(N_{0}+4 N_{\frac{\pi}{2}}+6 N_{\pi}+4 N_{3 \pi / 2}+N_{2 \pi}\right) \frac{\pi}{2}}{D_{0}+4 D_{\frac{\pi}{2}}+6 D_{\pi}+4 D_{3 \pi / 2}+D_{2 \pi}+\left(D_{0}+4 D_{\frac{\pi}{2}}+6 D_{\pi}+4 D_{3 \pi / 2}+D_{2 \pi}\right) \frac{\pi}{2}}\right) \\ =\arctan \left(\frac{N_{0}+5 N_{\frac{\pi}{2}}+10 N_{\pi}+10 N_{3 \pi / 2}+5 N_{2 \pi}+N_{5 \pi / 2}}{D_{0}+5 D_{\frac{\pi}{2}}+10 D_{\pi}+10 D_{3 \pi / 2}+5 D_{2 \pi}+D_{5 \pi / 2}}\right) \\ \end{array}

    \varphi(\mathrm{x}, \mathrm{y})=\arctan \left(\frac{26 \cdot \mathrm{I}_{4}(\mathrm{x}, \mathrm{y})-\cdot 6 \cdot \mathrm{I}_{2}(\mathrm{x}, \mathrm{y})-26 \cdot \mathrm{I}_{6}(\mathrm{x}, \mathrm{y})+6 \cdot \mathrm{I}_{8}(\mathrm{x}, \mathrm{y})}{\mathrm{I}_{1}(\mathrm{x}, \mathrm{y})-16 \cdot \mathrm{I}_{3}(\mathrm{x}, \mathrm{y})+\cdot 30 \cdot \mathrm{I}_{5}(\mathrm{x}, \mathrm{y})-16 \cdot \mathrm{I}_{7}(\mathrm{x}, \mathrm{y})+\mathrm{I}_{9}(\mathrm{x}, \mathrm{y})}\right)

    (15)

    至此,九步平均算法的表达式推导完成。

     

    四、多步解包裹后平均法

    从上文推导的多步平均算法公式不难看出,多帧图的光强信息权重并不一样,当每帧干涉图均有强度接近的振动干扰时,上述算法能起到一定的误差平衡效果,一旦某帧图像受扰动影响过大,比如(15)式中第四帧图,其高权重系数会导致解相过程受到成倍的振动干扰。

    为了解决因权重系数差异大而带来的解相不稳定问题,本文还提出了一种多步解包裹后平均法。设解包裹运算符号为unwrap,对一组帧数为9的干涉图组,从第一帧图开始每4帧图进行一次四步运算得到,K的意义同多步平均法中一致,可得到六组包含不同移相量的相位分布,公式(16):

    \begin{array}{c} \varphi(\mathrm{x}, \mathrm{y})^{(0)}=\varphi(\mathrm{x}, \mathrm{y})=\arctan \left(\frac{\mathrm{I}_{4}(\mathrm{x}, \mathrm{y})-\cdot \mathrm{I}_{2}(\mathrm{x}, \mathrm{y})}{\mathrm{I}_{1}(\mathrm{x}, \mathrm{y})-\cdot \mathrm{I}_{3}(\mathrm{x}, \mathrm{y})}\right) \\ \varphi(\mathrm{x}, \mathrm{y})^{(1)}=\varphi(\mathrm{x}, \mathrm{y})+\frac{\pi}{2}=\arctan \left(\frac{\mathrm{I}_{5}(\mathrm{x}, \mathrm{y})-\cdot \mathrm{I}_{3}(\mathrm{x}, \mathrm{y})}{\mathrm{I}_{2}(\mathrm{x}, \mathrm{y})-\cdot \mathrm{I}_{4}(\mathrm{x}, \mathrm{y})}\right) \\ \varphi(\mathrm{x}, \mathrm{y})^{(2)}=\varphi(\mathrm{x}, \mathrm{y})+\pi=\arctan \left(\frac{\mathrm{I}_{6}(\mathrm{x}, \mathrm{y})-\cdot \mathrm{I}_{4}(\mathrm{x}, \mathrm{y})}{\mathrm{I}_{3}(\mathrm{x}, \mathrm{y})-\cdot \mathrm{I}_{5}(\mathrm{x}, \mathrm{y})}\right) \\ \end{array}

    \begin{array}{c} \varphi(\mathrm{x}, \mathrm{y})^{(3)}=\varphi(\mathrm{x}, \mathrm{y})+\frac{3 \pi}{2}=\arctan \left(\frac{\mathrm{I}_{7}(\mathrm{x}, \mathrm{y})-\cdot \mathrm{I}_{5}(\mathrm{x}, \mathrm{y})}{\mathrm{I}_{4}(\mathrm{x}, \mathrm{y})-\cdot \mathrm{I}_{6}(\mathrm{x}, \mathrm{y})}\right) \\ \varphi(\mathrm{x}, \mathrm{y})^{(4)}=\varphi(\mathrm{x}, \mathrm{y})+2 \pi=\arctan \left(\frac{\mathrm{I}_{8}(\mathrm{x}, \mathrm{y})-\cdot \mathrm{I}_{6}(\mathrm{x}, \mathrm{y})}{\mathrm{I}_{5}(\mathrm{x}, \mathrm{y})-\cdot \mathrm{I}_{7}(\mathrm{x}, \mathrm{y})}\right) \end{array}

    \begin{array}{l} \varphi(\mathrm{x}, \mathrm{y})^{(5)}=\varphi(\mathrm{x}, \mathrm{y})+\frac{5 \pi}{2}=\arctan \left(\frac{\mathrm{I}_{9}(\mathrm{x}, \mathrm{y})-\mathrm{I}_{7}(\mathrm{x}, \mathrm{y})}{\mathrm{I}_{6}(\mathrm{x}, \mathrm{y})- \mathrm{I}_{8}(\mathrm{x}, \mathrm{y})}\right) \end{array}

    (16)

    反三角函数arctan通过计算机程序计算得到的区间为单周期(-π,π),因此干涉图的相位分布会出现断层式变化,如图所示是由四帧实际获取的干涉图解相后的相位分布情况,其中图2为二维展示,图3为三维展示。此时的相位分布虽然携带了面形信息,但并非真实的周期性相位信息,因此公式(16)的相位分布无法直接叠加,否则叠加后的相位分布将受到跨周期交错的影响,而呈现异常的波浪式分布,则无法通过解包裹算法还原真实的相位分布。

    图2 解相后的相位分布二维
    图3 解相后的相位分布三维

    为此,将公式(16)的相位分布分别进行解包裹运算,使其还原成真实的相位信息,即相位变化呈连续性而不是断崖式。虽然这六组相位分布的初相信息不一致,但这仅会导致相位的整体平移量变化,而平移量对面形测量而言是无关紧要的。对单组相位分布来说,其变化趋势是相对的且携带面形信息,将六组数据信息直接叠加并取平均,即可获得进行了一定程度误差平衡的真实相位分布\bar{\varphi}(\mathrm{x}, \mathrm{y})^{\prime}

    \bar{\varphi}(\mathrm{x}, \mathrm{y})^{\prime}=\frac{\sum_{0}^{K} \text { unwrap }\left(\varphi(\mathrm{x}, \mathrm{y})^{(K)}\right)}{K+1} (17)

    该算法的优势在于不仅能起到减少误差的作用,还可避免受某帧对应高权重系数的干涉图中振动信息的较强干扰;劣势在于算法的运算效率受解包裹算法效率影响。

     

    注:

    1.公式虽多,其实明白了内在逻辑很容易就推出来了,如果想做课题研究,建议自己推一遍,如果有不一样的想法或者思路或者发现我有错误,随时欢迎来找我一起交流,共同进步!

    2.后期看情况可能跟大家分享下基于最小二乘原理的迭代算法AIA,这个算法非常不错,应用于现实场景很棒,而不像许多算法仅仅适用于仿真的“漂亮数据”。

    3.相位提取算法的代码就不贴了,就是直接将图像矩阵,按照公式的系数加起来再乘除操作就实现了。

     

    展开全文
  • 首先从理论上推导准相干或宽带光照明下空间光干涉光场的...由于相干光的四步相移法和宽带光的四步相移法重建结果相差较小,因此,在追求成像速度的场合且细胞厚度较小时,可不对四步相移法进行修正,以加快相位重建的速度。
  • 运用传统的四步移相算法,结合波面迭代算法复原波面。通过理论公式的推导、计算机的模拟分析,以及初步的实验测试,验证了偏振相应用于径向剪切干涉的可行性,模拟结果显示均方根精度优于λ/100。具有抗振特点的光栅分...
  • 首先, 通过标准四步相移法求解包裹相位; 然后, 使用全频解相法, 通过绝对相位与光栅节距之间的关系, 转换不同节距的光栅包含的细节信息, 从而提高解相相位细节的精度。相比现有方法, 所提方法抑制解相产生的跳跃性...
  • 该方法利用透射液晶显示器(LCD)显示垂直和水平两个方向的正弦光栅,由摄像机记录经被测镜面反射产生的光栅变形条纹图,通过四步相移法获得条纹图的相位分布。由变形条纹和光栅的同名相位点确定被测镜面每一点的横向...
  • 包含用于条纹图像的旋转滤波、四步相移法程序和多频外差算法程序,用于光栅投影法的三维重建
  • 格雷码+相移法既可以减少格雷码的编码位数,加快解码...的区域作为一个编码周期,然后再采用四步相移法,依次投射四幅相移图案,使得每个编码区域被进一步连续细分。但投射的格雷码图案和相移图案必须满足如下关系...
  • 数值模拟结果显示,波片相移方法与传统四步相移法结果一致。基于本方法的相移原理,制作与CCD 像素匹配的波片阵列,可以实现实时相移测量,既克服了传统时间相移只能测量静态或准静态物体的缺点,也克服了传统空间相移...
  • 基于波前相位调制技术,利用连续序列算法结合四步相移法对入射激光的波面进行相位调制,使其通过散射介质在目标位置处形成聚焦。实验着重研究激光经过不同厚度的强散射片样品的聚焦,讨论散射介质的厚度与聚焦点光强...
  • PMP patterns 中每一张图像表示四步相移法中的一次相移图,即0,pi/2,pi,3pi/2。数学表达式如下: carrier patterns 是载波频率所对应的图像,分别表示四个不同的频率。 这里可以看到PMP图案的相位方向和...
  • 利用数字图像处理技术实现了四步相移法,并通过相位展开实现了三维变形相位测试,省略了压电位移器、位移控制器等器件,简化了测试系统,缩短了测试时间,测试精度容易达到λ/10。实验研究表明,该研究方法简单、...
  • 在分析传统四步相移法的基础上, 提出了一种基于灰度互补关系的重叠相移光栅分离方法, 该方法通过调整投影的相移光栅的时间及次序, 在不改变原有测量系统结构的基础上有效消除了重叠部分的干扰信号; 为了验证该分离...
  • 结果表明:当Horn-Schunck算法的相对误差和Lucas-Kanade算法的相对误差小于2%时,两种算法的相位分辨力都能够达到10 -13π,对应像面上的位移分辨力为1.6×10 -12 pixel,两种算法在理论上与四步相移法的分辨力相当;...
  • 推导了平面元件斜率检测公式和面形恢复算法,使用可编码条纹的液晶显示器作为照明光源,四步相移法来识别显示器像素点坐标。针孔摄像机采集被测表面对条纹所成的像,将该系统用于有机玻璃板在加热条件下的面形测量,...
  • Zemax 光学设计软件建立起 Fizeau 干涉仪通用模型,利用四步相移法对干涉仪的面形检测进行仿真并利用编写的 解包裹程序计算出待测面的面形。仿真面形检测结果与真实情况一致表明 Fizeau 干涉仪通用模型能较好的对...

空空如也

空空如也

1 2 3
收藏数 48
精华内容 19
关键字:

四步相移法