View Full Version : [Frage] Fourier 5
Hi!
Wie macht man die Rücktransformation? Durch IFFT?
Was meinen die mit dem Auschneiden?
Eine kleine Schritt-für-Schritt-Anleitung wär da ganz fein http://hades.gothic.at/iforum/images/smilies/smile.gif
lg,
leadpen
Wir haben ein anderes Problem - wenn ich das geglättete Bild in den Ortsraum rücktransformiere, schaut es nicht identisch aus wie das Originale geglättete(gefaltete)
Was ist denn an diesem Code falsch?
I = zeros(256,256);
I(138:168, 138:158) = 1;
A=fftshift(fft2(I));
FG1=fspecial('gaussian', [3 3], 1.5);
B=conv2(A, FG1);
A1=log(abs(A));
B1=log(abs(B));
B2=ifft2(fftshift(B1));
C=conv2(I, FG1);
subplot(2,2,1), mesh(A1);
title('DFT des Originals');
subplot(2,2,2), mesh(B1);
title('DFT des Geglaetteten');
subplot(2,2,3), mesh(real(B));
title('Ruecktransformiertes Geglaettetes');
subplot(2,2,4), mesh(C);
title('Geglättetes Original');
in der doc zur image processing toolbox ist die korrekte vorgehensweise ziemlich gut beschrieben:
http://www.mathworks.com/access/helpdesk/help/toolbox/images/images.shtml beim punkt "applications of the fourier transform"
der trick ist eigentlich nur, das bild und den filter mit nullen aufzufüllen und diese dann nach der rücktransformation wieder rauszulöschen.
der trick ist eigentlich nur, das bild und den filter mit nullen aufzufüllen und diese dann nach der rücktransformation wieder rauszulöschen.
Rauslöschen musst du aber nur, wenn du die Matrizen nicht nach der Formel auf (M+P-1, N+Q-1) erweiterst, sondern aus Performance-Gründen auf die nächste Zweier-Potenz...
A = Bild ist M*N - Matrix
B = Filter ist P*Q - Matrix
Größe der "aufgeblasenen" Matrix = (M+P-1, N+Q-1) = (264,264)
Wenn du nur auf (264,264) erweiterst brauchst du nichts wegschneiden, wenn du auf (512,512) erweiterst musst du nach der Transformation den Bereich(1:264,1:264) ausschneiden.
vBulletin® v3.7.1, Copyright ©2000-2009, Jelsoft Enterprises Ltd.