有会相位恢复算法的吗?能帮我看看下面的代码错哪儿了吗?不胜感激 &~8}y+z
*?S\0a'W@
2d centered Fourier transform,居中的傅里叶变换 K^ lVng
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% jQhf)B
% Citation for this code and algorithm: <4Fd~
% Tatiana Latychevskaia and Hans-Werner Fink kMA>)\
% "Practical algorithms for simulation and reconstruction of digital in-line holograms", M<729M
% Appl. Optics 54, 2424 - 2434 (2015) 6~s,j({^
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% U&NOf;h$
% The code is written by Tatiana Latychevskaia, 2002 %j,Ny}a
% The version of Matlab for this code is R2010b ;&!l2 UB%
2%I:s6r
function [out] = FT2Dc(u0); cD\Qt9EI
tkmW\
[Nx, Ny] = size(1i,1j); ,\M'jV"SK
T-\,r
f1 = zeros(Nx,Ny); q%"nk
VF-d^AGt
for ii = 1:Nx E$T#o{pai
for jj = 1:Ny U7W ct %
f1(ii,jj) = exp(1i*pi*(ii + jj)); Z7v~;JzC#
end 2:abe
end C"}x=cK
) E\pQ5&
FT = fft2(f1.*in); TsD
>m
1\2 m'o
out = f1.*FT; km^AX:r1
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%