• 大小: 76KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-12
  • 语言: Matlab
  • 标签:

资源简介

伽博同轴全息记录与再现。通过衍射计算完成光学同轴全息记录与再现过程的仿真,可以观察再现像的特点。MATLAB代码

资源截图

代码片段和文件信息

Uo=imread(‘guang.bmp‘);             %调入作为物的图像
Uo=double(Uo (::1));              %取第一层,并转为双精度
[rc]=size(Uo);
Uo=ones(rc)*0.98-Uo/255*0.5;       %将物转换为高透射率射系数体
figureimshow(Uo[01])title(‘物‘)
lamda=6328*10^(-10);k=2*pi/lamda;   %赋值波长和波数
Lo=5*10^(-3)                        %赋值衍射面(物)的尺寸
xo=linspace(-Lo/2Lo/2r);yo=linspace(-Lo/2Lo/2c);
[xoyo]=meshgrid(xoyo);            %生成衍射面(物)的坐标网格
zo=0.20;                            %全息记录面到衍射面的距离单位:米
%下面用T-FFT算法完成物面到全息记录面的衍射计算
F0=exp(j*k*zo)/(j*lamda*zo);
F1=exp(j*k/2/zo.*(xo.^2+yo.^2));
fF1=fft2(F1);
fa1=fft2(Uo);
Fuf1=fa1.*fF1; 
Uh=F0.*fftshift(ifft2(Fuf1)); 
Ih=Uh.*conj(Uh);
figureimshow(Ih[0max(max(Ih))/1])title(‘全息图‘)
%下面用T-FFT算法完成全息面到观察面的衍射计算(重构再现像)
zi=0.20                            %赋值再现距离(可以调整)
F0i=exp(j*k*zi)/(j*lamda*zi);
F1i=exp(j*k/2/zi.*(xo.^2+yo.^2));  %T-FFT算法,物面、全息图和再现像尺寸相同
fF1i=fft2(F1i);
fIh=fft2(Ih); 
FufIh=fIh.*fF1i; 
Ui=F0i.*fftshift(ifft2(FufIh)); 
Ii=Ui.*conj(Ui);
figureimshow(Ii[0max(max(Ii))/1])title(‘再现像‘)

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      14601  2016-05-07 13:11  Bo coaxial holographic\1.jpg

     文件      34556  2016-05-07 13:11  Bo coaxial holographic\2.jpg

     文件      35657  2016-05-07 13:11  Bo coaxial holographic\3.jpg

     文件       1180  2014-02-12 11:37  Bo coaxial holographic\CX10_1.m

     文件       1517  2014-02-12 11:51  Bo coaxial holographic\CX10_1_1.m

     文件     786486  2008-10-26 11:59  Bo coaxial holographic\guang.bmp

     目录          0  2016-05-07 13:14  Bo coaxial holographic

----------- ---------  ---------- -----  ----

               873997                    7


评论

共有 条评论

相关资源