%画像読み込み
imgdata1=imread('test01a.jpg');
imgdata2=imread('test01b.jpg');

%フーリエ変換
fftdata1 = fft2(imgdata1);
fftdata2 = fft2(imgdata2);

%振幅と位相の抽出
fftdata1_abs = abs(fftdata1);
fftdata1_ang = angle(fftdata1);
fftdata2_abs = abs(fftdata2);
fftdata2_ang = angle(fftdata2);

%複素数作成
cfftdata1 = fftdata1_abs.*exp(1i*fftdata2_ang);
cfftdata2 = fftdata2_abs.*exp(1i*fftdata1_ang);

%逆フーリエ変換
ifftdata1 = ifft2(cfftdata1);
ifftdata2 = ifft2(cfftdata2);
imwrite(uint8(ifftdata1),'2a.jpg','jpg'); %画像表示
imwrite(uint8(ifftdata2),'2b.jpg','jpg'); %画像表示
