liuxiaohui110 发表于 2010-4-19 16:05

求助,关于求两幅图像的位移!

POC算法的编程 我自己编了一个 但是最后得出的结果不正确!
I= imread('01.bmp'); figure,imshow(I1); title('原图');
N=double(I); J = imnoise(I,'salt & pepper',0.02); K = medfilt2(J,);
imshow(J); title('去噪图像');
figure, imshow(K); title('中值滤波之后的图像');
figure,imhist(K); title('直方图');
L=graythresh(K); M=im2bw(K,L);
figure,imshow(M); title('otsu算法处理后');
F=double(M); C=fft2(F);
figure; imshow(log(abs(C)),[ ]); title('fft2');
D=fftshift(C); rr=real(C); ii=imag(C); A=sqrt(rr.^2+ii.^2); angle=atan(ii/rr)
%变形图像
I2= imread('02.bmp'); figure,imshow(I2); title('变形图');
N2=double(I2); J2 = imnoise(I,'salt & pepper',0.02); K2 = medfilt2(J,);
imshow(J2); title('去噪图像2');
figure, imshow(K2); title('中值滤波之后的图像2');
figure,imhist(K2); title('直方图2');
L2=graythresh(K2); M2=im2bw(K2,L2);
figure,imshow(M2); title('otsu算法处理后2');
F2=double(M2); C2=fft2(F2);
figure; imshow(log(abs(C2)),[ ]); title('fft2');
D2=fftshift(C2); rr2=real(C2); ii2=imag(C2); angle2=atan(ii2/rr2);
%相位的合成(目前使用的是将两个的相位相减)
P=imsubtract(angle,angle2); figure,imshow(P);
H=A*(exp(-(j*2*pi*P))); G=ifft2(double(H)); figure;surf(G);
用这个程序得出的结果不正确,谁能指正一下!谢谢!

补充上述流程图:C:\Documents and Settings\Administrator\桌面\POC.jpg (?? by ChaChing)

[ 本帖最后由 ChaChing 于 2010-7-10 11:16 编辑 ]
页: [1]
查看完整版本: 求助,关于求两幅图像的位移!