收藏 分享(赏)

全息图matlab程序.doc

上传人:精品资料 文档编号:8160952 上传时间:2019-06-11 格式:DOC 页数:4 大小:32KB
下载 相关 举报
全息图matlab程序.doc_第1页
第1页 / 共4页
全息图matlab程序.doc_第2页
第2页 / 共4页
全息图matlab程序.doc_第3页
第3页 / 共4页
全息图matlab程序.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、%Modified off-axis reference beam CGH of Burch% %读入原始图象 PI=3.14159; Image=imread(lena256.jpg); N=512; A=zeros(N,N); B=zeros(N,N); for I=1:1:256 for J=1:1:256 ImageNum=double(Image(I,J,1); A(I,J)=ImageNum/255; B(I,J)=0; end;end; figure; imshow(A); %为降低全息图的动态范围,乘一随机位相因子% for I=1:1:N for J=1:1:N R=rand

2、(1,1); B(I,J)=A(I,J)*sin(R*2*PI); A(I,J)=A(I,J)*cos(R*2*PI); F(I,J)=A(I,J)+j*B(I,J); end;end; %为降低全息图的动态范围,乘一随机位相因子% %对物函数做二维 FFT变换% F=fft2(F); Max=max(max(abs(F); F=F/Max; A=real(F); B=imag(F); %对物函数做二维 FFT变换% %定义载波参数 alpha=0.5; for I=1:1:N for J=1:1:N Xcos=(J-1)/127; A1(I,J)=cos(2*PI*alpha*Xcos);

3、B1(I,J)=sin(2*PI*alpha*Xcos); end;end; %定义载波参数 %全息图数据区 for I=1:1:N for J=1:1:N Holodata(I,J)=0.5+0.5*(A(I,J)*A1(I,J)+B(I,J)*B1(I,J); end;end; %全息图数据区 %绘制全息图,制作灰阶全息图像,灰度等级 256 M=512;%定义全息图的大小, Hologram=zeros(M,M); S=M/N;%定义每个抽样单元大小为 S,S for I=1:1:N for J=1:1:N Xa=(J-1)*S+1; Xb=J*S; Ya=(I-1)*S+1; Yb=I

4、*S; for Ix=Xa:1:Xb for Iy=Ya:1:Yb Hologram(Iy,Ix)=Holodata(I,J); end;end; end;end; Max=max(max(Hologram); Hologram=Hologram/Max; figure; imshow(Hologram); %绘制全息图,制作灰阶全息图像,灰度等级 256 %再现 Object=fft2(Hologram); Object=fftshift(Object); Object=abs(Object); Object=1000*Object/max(max(Object); figure; imshow(Object);

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报