Bonjour,
J'ai le même problème que dans cette discussion, j'utilise la FFT pour faire un recalage mais j'obtiens toujours un résultat faux. Aidez-moi s'il vous plait !
Code MATLAB : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 I1=imread('1.jpg'); I2=imread('5.jpg'); I1=rgb2gray(I1); I2=rgb2gray(I2); [m,n]=size(I1); F=fft(I1); G=fft(I2); F=conj(F); K=(G*F); K=ifft(K); mx=max(max(K)); for i=1:m for j=1:n if(K(i,j)==mx) a=i; b=j; end end end u=[(a-m)/2,(b-n)/2]; (a-m)/2 (b-n)/2 u u=int32(u); u=double(u); se=translate(strel(1),u); J=imdilate(I2,se);
Partager