一、算法原理
1、最小范数法
最小范数法是寻求在解包裹相位的局部微分与包裹相位微分相一致的条件下, 逼近于真实相位分布的解包裹相位分布。目标是使解包裹相位与包裹相位曲面的差最小,数学描述为:
2、 最小二乘算法的过程
3、基于离散余弦变换的解法
4、参考文献
[1] 崔鹏. 数字全息面形测量中的相位解包裹技术研究[D]. 天津大学, 2007.
二、代码实现
clc;
clear;
close all;
%% --------------------------------初始相位--------------------------------
phi0 = peaks(200)*3;
figure(1);
surf(phi0);
title('山峰3D图')
%% -------------------------------包裹相位---------------------------------
phi = angle(exp(1i*phi0));
figure(2);
%imshow(phi,[]);
imagesc(phi)
xlabel('X/Pixels','FontSize',14);
ylabel('Y/Pixels','FontSize',14);
%title('Wrapped Phase','FontSize',14)
set(figure(2),'name','包裹相位','Numbertitle','off');
axis on
%% ------------------------------DCT最小二乘相位解缠--------------------------------
phi333 = leastSquareUnwrap_DCT(phi); % 核心代码已封装为函数,这里直接调用即可!
figure(5);
surf(phi333,'FaceColor','interp', 'EdgeColor','none','FaceLighting','phong');
camlight left, axis tight
xlabel('X/Pixels','FontSize',14);
ylabel('Y/Pixels','FontSize',14);
zlabel('Phase/Radians','FontSize',14);
%title('Four LSBLS Phase Unwrapping','FontSize',14)
set(figure(5),'name','最小二乘相位解缠结果','Numbertitle','off');