Warum konvertiert ein Teil von FFT das Bild in Rotation + Original?


16

Ich habe dieses Bild gelesen:

Bildbeschreibung hier eingeben

Nimm seine FFT (2D) und dann Inverse FFT, um genau das Bild zurückzubekommen. Der Code dient als Referenz:

imfft = fft2(photographer);
im = uint8(ifft2(imfft));

imshow(im); %Output is same image

Aber wenn ich den Fourier ändere und nur den Realteil nehme,

imfft = real(fft2(photographer));
im = uint8(ifft2(imfft));
imshow(im);

Ich erhalte ein Bild wie das folgende ( Beachten Sie, dass die Größenänderung irrelevant ist und nur aufgrund des Speicherns im Matlab Figure Handler ):

Bildbeschreibung hier eingeben

Kann mir jemand die Theorie (Mathematik) dahinter erklären? Vielen Dank

Antworten:


15

Angenommen, Ihr Bild wird von . Dann ist seine Fourier-Transformation gegeben durch ich(x,y)

ichf(ωx,ωy)=xyich(x,y)ejωxxejωyydxdy

Nun nehmen Sie den Realteil und führen die Umkehrung durch:

ichm(α,β)=ωxωy{ichf(ωx,ωy)}ejωxαejωyβdωxdωy=ωxωy{xyich(x,y)ejωxxejωyydxdy}ejωxαejωyβdωxdωy=xyich(x,y)ωxωy{ejωxxejωyy}ejωxαejωyβdωxdωydxdy

Sie können deutlich sehen, dass das innere Integral die 2D-Fourier-Transformation von ist, die

cos(ωxx)cos(ωyy)+Sünde(ωxx)Sünde(ωyy)
12[δ(x-α)δ(y-β)+δ(x+α)δ(y+β)]

Einsetzen des Ergebnisses in ergibt ichm

ichm(x,y)=12[ich(x,y)+ich(-x,-y)]

Natürlich ist in Ihrem Fall , jedoch nimmt die diskrete Fourier-Transformation an, dass Ihr Signal periodisch ist und Sie erhalten wobei die Abmessungen Ihres Bildes sind. Ich denke, Sie können jetzt sehen, warum Sie dieses Ergebnis erzielt haben.x,y>0N

ichm(x,y)=12[ich(x,y)+ich(N-x,M-y)]
N,M

Gute Antwort! +1
Peter K.

3
I think you can see now why got that result.Ja. Da diese Frage jedoch in der HNQ-Liste auftaucht, sollten Sie möglicherweise den letzten Schritt für diejenigen hinzufügen, die von weniger mathematisch orientierten Standorten kommen.
Mast

9

Das Ergebnis, das ThP liefert, kann auch sehr einfach ausgedrückt werden: Wenn Sie einen Datensatz haben, der rein reell ist, hat seine (inverse) Fouriertransformation eine hermitische Symmetrie: Wenn Sie den Wert an der Position , dann Sie finden den komplexen Konjugatwert an der punktreflektierten Position um den Ursprung. Beachten Sie, dass der Ursprung hier das Zentrum des Fourier-Raums ist. Dies kann natürlich umformuliert werden, wenn sich die DC-Komponente nicht im Zentrum Ihrer FFT-Implementierung befindet. Und das sehen Sie in Ihrem Bild: Eine punktuelle Version überlagert das wahre Bild - weil Sie einen Raum gezwungen haben, einen echten Wert zu haben.( x , y ) z ( - x , - y )z(x,y)z(-x,-y)

Diese Eigenschaft wird in einigen Fällen sogar zur Beschleunigung der Magnetresonanztomographie (MRT) genutzt: Die MRT erfasst die Daten direkt im Fourier-Raum. Da ein ideales MR-Bild nur durch reale Werte beschrieben werden kann (alle angeregten Magnetisierungsvektoren haben Phase 0), müssen Sie nur die Hälfte des Datenraums erfassen, was Ihnen die Hälfte der Bildgebungszeit spart. Natürlich sind MR-Bilder aufgrund der Realitätsbeschränkungen nicht wirklich wertvoll ... aber mit ein paar Tricks können Sie diese Technik immer noch vorteilhaft anwenden.


2
Ich mochte die einfache Art, die gleiche Antwort zu geben, die ThP lieferte. Und danke für Informationen über MRT. Wusste nichts davon.
Failed Scientist
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.