前言
移相干涉技术(PSI)具有较高的测量精度,但在实际应用中容易受到多种外部因素的影响,如光学元件质量、激光光源稳定性、移相器非线性、传感器噪声以及环境振动等。其中,环境振动是主要误差来源之一。尽管通常采用隔振设施来减少振动影响,但仍难以彻底消除。
本文介绍一种基于AIA(Advanced Iterative Algorithm)改进的移相干涉抗振算法,在不依赖额外硬件的情况下,通过算法手段实现一定的抗振效果。

一、技术背景
传统平均算法虽然能在一定程度上抑制干扰,但对于较强的振动(如人员走动、气流扰动等)仍然无效,导致相位解算结果失真,精度下降。
常见的抗振算法包括:
- 时域分析法:需大量干涉图参与计算,但采集时间越长,外界干扰越大,实用性较低。
- 空间载频移相法:只需单帧图像,抗振能力强,但存在非共路误差大、高频信息丢失等问题,且需重新设计硬件。
- 迭代法:通过对相位和移相量进行迭代优化以补偿误差,具有较好的抗振性能。然而,常规迭代法对图像对比度差异敏感,可能导致收敛不稳定。
本文提出的算法属于第三类,是对 AIA 算法的改进版本,旨在提升其在图像对比度不一致情况下的鲁棒性和准确性。
二、AIA 原理及实现
核心思想
AIA 将干涉图中所有像素点的背景光强和调制度视为一致,仅对移相量和相位分布两个变量进行双迭代拟合,从而提高收敛速度与精度。
实现步骤
(1)移相量计算
将光强表达式改写为:
$$ I_{ij} = a'_i + b'_i \cos\varphi_j + c'_i \sin\varphi_j $$
其中 $ i $ 表示干涉图序号(共 M 帧),$ j $ 表示像素点编号(共 N 个)。假设 $ a'_i, b'_i, c'_i $ 与像素位置无关,则可通过最小二乘法建立方程组并求解得到移相量 $ \delta_i $。
(2)相位分布计算
将公式进一步简化为:
$$ I_{ij} = a'_j + b'_j \cos\delta_i + c'_j \sin\delta_i $$
同样利用最小二乘原理构建目标函数,并通过矩阵运算求得各像素点的相位值 $ \varphi_j $。
(3)循环迭代与收敛判断
不断交替执行上述两个过程,直至满足预设的收敛条件为止:
$$ \frac{\sum_{j=1}^{N}(\varphi_j^t - \varphi_j^{t-1})^2}{\sum_{j=1}^{N}(\varphi_j^t)^2} < \varepsilon $$
其中 $ \varepsilon $ 是设定的小量阈值,一般设置为 $ 10^{-6} $ 左右。
完整的 AIA 流程如下所示:

三、基于 AIA 改进的抗振算法原理及实现
当干涉图之间亮度对比度差异较大时,原始 AIA 不加权处理会造成过度拟合,增大误差。为此,我们在 AIA 的基础上引入了对比度补偿因子 $ m_i $ 和 $ n_i $,用于反映每一帧图像相对于参考帧的强度变化比例。
修改后的光强模型为:
$$ I_{ij} = A_j + B_j(m_i\cos\varphi_j + n_i\sin\varphi_j) $$
其中 $ A_j $ 和 $ B_j $ 分别代表第 $ j $ 个像素点的背景光强和调制度;$ m_i $ 和 $ n_i $ 则表示第 $ i $ 帧图像的波动系数,初始设为 1。



