资源简介
傅里叶变换轮廓术的MATLAB实现。基于参考光栅和变形光栅得出折叠相位,进过相位展开,最后根据相位高度关系得出物体高度信息。
代码片段和文件信息
I=imread(‘C:\Users\NQZ-PC\Desktop\CHENGXV\image.jpg‘);
figure; imshow(I);title(‘变形光栅图‘);
I_fft=fftshift(fft2(rgb2gray(I)));a=abs(I_fft);
figure;
imshow(log(1+abs(I_fft))[]);title(‘频谱图‘);
figureplot((abs(I_fft(257:))));title(‘中间行频谱图‘);
[maxvaluezuobiao]=max(abs(I_fft(257260:end)));
zuobiao=260+zuobiao-1;
W=19;
Window=ones(2*W+12*W+1);
figure;mesh(Window);title(‘滤波器‘);
jipin=zeros(512);
jipin(257-W:257+W257-W:257+W)=I_fft(257-W:257+Wzuobiao-W:zuobiao+W).*Window; %取基频
figure;
imshow(log(1+abs(jipin))[]);title(‘基频转移至中心‘);
jipin_ifft=(ifft2(ifftshift(jipin))); % 逆傅立叶变换
wrapped_Phase=angle(jipin_ifft); % 得到折叠相位
figure;
mesh(wrapped_Phase);title(‘包裹位相图‘);
for n=1:200
wrapped_Phase(n:)=uphase(wrapped_Phase(n:));
end
for n=1:150
wrapped_Phase(:n)=uphase(wrapped_Phase(:n));
end
for n=380:512
wrapped_Phase(n:)=uphase(wrapped_Phase(n:));
end
for n=150:512
wrapped_Phase(200:380n)=uphase(wrapped_Phase(200:380n));
end
figure;
mesh(wrapped_Phase);title(‘相位展开图‘);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 92943 2018-06-15 09:24 CHENGXV\image.jpg
文件 1084 2018-06-30 11:37 CHENGXV\test.m
文件 144 2018-06-30 11:37 CHENGXV\uphase.m
目录 0 2018-06-30 11:36 CHENGXV\
- 上一篇:基于matlab的整流器仿真
- 下一篇:《生命游戏》的matlab实现
相关资源
- Pattern Recognition and Machine Learning(高清
- MATLAB 编程 第二版 Stephen J. Chapman 著
- 均值滤波和FFT频谱分析Matlab代码
- 《MATLAB扩展编程》代码
- HDB3码、AMI码的MATLAB实现
- 3点GPS定位MATLAB仿真
- MATLAB数字信号处理85个实用案例精讲入
- matlab从入门到精通pdf94795
- 欧拉放大论文及matlab代码
- 跳一跳辅助_matlab版本
- 全面详解LTE MATLAB建模、仿真与实现
- MIMO-OFDM无线通信技术及MATLAB实现_孙锴
- MATLAB Programming for Engineers 4th - Chapman
- matlab 各种谱分析对比
- 分数阶chen混沌matlab程序
- 基于粒子群算法的非合作博弈的matl
- MATLAB车流仿真 包括跟驰、延误
- matlab空间桁架计算程序
- 基于MATLAB的图像特征点匹配和筛选
- DMA-TVP-FAVAR
- GPS信号的码捕获matlab代码.7z
- 一维光子晶体MATLAB仿真代码吸收率折
- newmark法源程序
- 传统关联成像、计算鬼成像matlab
- pri传统分选算法
- 摆动滚子推杆盘形凸轮设计
- 医学图像重建作业matlab源码
- Matlab实现混沌系统的控制
- 检测疲劳驾驶
- Matlab锁相环仿真-Phase Locked Loop.rar
评论
共有 条评论