单波长傅里叶变换解包裹matlab代码
立即下载
资源介绍:
单波长傅里叶变换解包裹是一种在数字全息术中常用的技术,用于解决相位包裹问题。在数字全息成像过程中,相位信息通常被限制在
−π到π的范围内,这会导致相位包裹,即相位差超过π时出现不连续跳变。解包裹的目的是恢复原始的连续相位信息。单波长傅里叶变换解包裹的基本步骤如下:傅里叶变换:首先对全息图进行傅里叶变换,将图像转换到频域。滤波:在频域中,通过滤波器去除直流分量和噪声,保留感兴趣的频率成分。相位提取:从滤波后的频域图像中提取相位信息。解包裹:应用解包裹算法,如分支切割法、最小二乘法或快速傅里叶变换解包裹算法,来恢复连续的相位信息。这些算法通过分析相位变化,识别并校正包裹点,从而实现相位的连续性。逆傅里叶变换:最后,对解包裹后的相位信息进行逆傅里叶变换,得到空间域中的相位分布。单波长傅里叶变换解包裹技术在实际应用中具有重要意义,它能够提高相位测量的精度,对于研究材料的光学特性、表面形貌以及生物组织的光学特性等方面具有重要作用。此外,该技术在提高成像质量和定量分析方面也显示出了其独特的优势。
[X,Y] = meshgrid(1:100,1:100);% 生成坐标网格
k1 = 2*pi/10; % 第一个波长的空间频率
phase1 = k1*X-5;% 模拟相位信息(两个波长的正弦条纹相位)
I1 = 1+10*cos(phase1);% 模拟光强分布,添加直流分量(背景光强)
figure;% 绘制原始干涉条纹图的三维图
surf(X, Y, I1); % 绘制三维曲面图
colormap('parula'); % 设置颜色
shading interp; % 使颜色平滑过渡
title('干涉条纹图');
F1 = fft2(I1);% 对图像进行二维离散傅里叶变换
F1_shifted = fftshift(F1);% 将零频分量移到频谱中心
magnitude_spectrum1 = abs(F1_shifted);% 计算频谱的幅度(取绝对值得到幅度谱)
figure;% 绘制第一个波长的频谱的三维图
[M,N] = size(magnitude_spectrum1);
[X_f,Y_f] = meshgrid(1:N,1:M);
surf(X_f,Y_f,magnitude_spectrum1);
xlabel('频率 X方向');
ylabel('Y方向');
zlabel('幅度');
colormap('parula'); % 设置颜色
shading interp; % 使颜色平滑过渡
title('第一个波长干涉条纹图频谱');
% 定义滤波器半径和位置
D0 = 5; % 滤波器半径,根据需要调整以只通过一个频率成分
center_x = 60; % 频谱中心的X坐标
center_y = 50; % 频谱中心的Y坐标
% 创建滤波器,只通过一个频率成分
[U, V] = meshgrid(1:N, 1:M);
D = sqrt((U-center_x).^2 + (V-center_y).^2);
H = double(D <= D0);
% 应用滤波器
G = H .* magnitude_spectrum1;
shift_X=-10;
shift_Y=0;
I3=circshift(G,[shift_Y,shift_X]);
% 绘制滤波后三维表面图
figure;
[M,N] = size(I3);
[X_f,Y_f] = meshgrid(1:N,1:M);
surf(X_f,Y_f,I3);
xlabel('频率 X方向');
ylabel('Y方向');
zlabel('幅度');
colormap('parula'); % 设置颜色映射为'jet',也可以选择其他如'hsv', 'hot', 'cool', 'spring'等
shading interp; % 使颜色平滑过渡
title('第一个波长干涉条纹图滤波后频谱的三维表示');
% 将滤波后的频谱移回原始位置
G_shifted = ifftshift(I3);
% 绘制滤波后的频谱图
% 进行逆傅里叶变换得到滤波后的图像
I1_filtered = ifft2(G_shifted);
% 绘制滤波后的干涉条纹图的三维图
figure;
surf(X, Y, real(I1_filtered)); % 取实部以显示图像
colormap('parula'); % 设置颜色
shading interp; % 使颜色平滑过渡
title('滤波后的干涉条纹图');
%解包裹
phi_unwrapped = unwrap(angle(I1_filtered));
% 显示解包裹后的相位图的3D视图
figure;
surf(phi_unwrapped); % 使用surf显示3D图形
title('解包裹后的相位图');
colorbar; % 显示色标,以便更好地理解相位值
shading interp; % 平滑着色,使图形更美观
资源文件列表:
单波长傅里叶.zip 大约有1个文件
- untitled9.m 2.58KB