有会相位恢复算法的吗?能帮我看看下面的代码错哪儿了吗?不胜感激 0m,A`*o
0Mt2Rg}
2d centered Fourier transform,居中的傅里叶变换 1d!7GrD F
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 4vTO # F
% Citation for this code and algorithm: joDnjz=
% Tatiana Latychevskaia and Hans-Werner Fink Ld? tVi
% "Practical algorithms for simulation and reconstruction of digital in-line holograms", gs 8w/
% Appl. Optics 54, 2424 - 2434 (2015) ]CH@T9d5V
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% I#@iA!
% The code is written by Tatiana Latychevskaia, 2002 "^gZh3
% The version of Matlab for this code is R2010b XETY)<g
H~1la V
function [out] = FT2Dc(u0); N+l~r]: &
k(o[T),_%0
[Nx, Ny] = size(1i,1j); @/yRE^c
Jl&bWp^3
f1 = zeros(Nx,Ny); G;V@oT
@B
~![l
for ii = 1:Nx pOD|
for jj = 1:Ny 8-cG[/|0
f1(ii,jj) = exp(1i*pi*(ii + jj)); "e g`3v
end !`\W8JT+
end ^G=wRtS
Ri4_zb
FT = fft2(f1.*in); !^!<Xz;
QL}5vSl
out = f1.*FT; E!Hq%L!/
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%