Entfernen periodische Rauschen aus einem Bild mit Hilfe der Fourier-Transformation

Ich bin der Durchführung der 2D-FFT auf ein bestimmtes Bild und ich bekomme seine spektralen Komponenten. Dieses Bild wurde überlagert durch ein anderes Bild zu erstellen, periodischen Lärm.

Das original-Bild als auch der periodische Lärm-version ist unten dargestellt:

Original Bild

Entfernen periodische Rauschen aus einem Bild mit Hilfe der Fourier-Transformation

Periodischen Lärm Bild

Entfernen periodische Rauschen aus einem Bild mit Hilfe der Fourier-Transformation

Filtern diese heraus, die ich verwendet, manuelle Boxen, die maskiert die Komponenten in der Größenordnung Spektrum, die sind ziemlich groß im Vergleich zu den anderen Komponenten wie unten gezeigt.

Entfernen periodische Rauschen aus einem Bild mit Hilfe der Fourier-Transformation

Nachdem dies geschehen ist, die ich durchführen einer inversen FFT, aber ich komme nicht auf das ursprüngliche Bild zurück.

Entfernen periodische Rauschen aus einem Bild mit Hilfe der Fourier-Transformation

Weiß jemand, was ich falsch mache?

Hier ist der code, den Masken, die die Werte und geht dann weiter zu tun, eine inverse 2D-FFT auf die maskierten spektrale Bild:

pat1 = imread('Pattern1.png');

spec_orig = fft2(double(pat1));     
spec_orig2 = abs(spec_orig); 
spec_img = fftshift(spec_orig2);

for j = 115:125
    for n = 96:106
        spec_img(n,j) = 0; 
    end
    for n = 216:226
        spec_img(n,j) = 0; 
    end
    for n = 274:284
        spec_img(n,j) = 0; 
    end
    for n = 298:308
        spec_img(n,j) = 0; 
    end
    for n = 12:22
        spec_img(n,j) = 0; 
    end
    for n = 37:47
        spec_img(n,j) = 0; 
    end
end

%Getting Back the Image for Pattern1
figure;subplot(2,1,1);
spec_img = log(1 + spec_img);
imshow(spec_img,[]); 

subplot(2,1,2);
ptnfx = ifft2(spec_img);
imshow(ptnfx);
  • Die doppelte for-Schleife am Anfang entfernt werden kann durch die Verwendung von array-Indizierung: spec_img([96:106 216:226],115:125)=0 etc.
  • War nicht bewusst, dass Sie das tun könnten - danke!!!
  • Kein problem. Dies ist der Grund, warum ich vorgeschlagen, vertraut mit matlab selbst:) wir Haben einen festen Griff auf die Grundlagen der Sprache kann Ihr Leben viel einfacher, und Ihr code viel eleganter und effizienter.
  • Ich habe mir die Freiheit genommen, zu verbessern die flow von deiner Frage. Das ist eine gute Frage, und ich möchte, dass es ein gutes Beispiel für eine MATLAB-Frage/Antwort für die Rekordbücher. Danke für die Nachfrage eine große Frage!
  • kein problem, ich war über das löschen der Frage, wie es war downvoted, aber ich denke, das war nicht der Fall.
  • bitte lassen Sie die Frage intakt. Mit den änderungen die ich gemacht habe, es ist jetzt eine noch höhere Qualität Frage 🙂 Auch, Sie bekam nur 1 downvote... es gibt 2 upvotes. Das ist ein win! Es werden noch mehr kommen. Mach dir keine sorgen :)... und ich hoffe, dass die person, die downvoted werden, nehmen Sie seine/Ihre downvote, weil die änderungen die ich gemacht habe.
  • Ich hatte eine faire paar Leute sagen, dass meine MATLAB-Fragen, die zu breit sind, aber außerhalb der MATLAB-Central-forum, ich glaube nicht, dass eine Menge Leute haben gefragt, Fragen über Bildbearbeitung
  • Haben Sie Fragen, Fragen, die in der MATLAB-Central-forum, in dem Sie sagte, es war zu breit oder hier? Diese Frage ist sicher nicht zu breit. Sie zeigte uns, was du versucht hast und wo du steckengeblieben ist. Dies ist sehr geeignet für StackOverflow.
  • BTW, können Sie natürlich weiterhin Fragen, Bildverarbeitung Fragen :D. ich bin der einzige, der zwei Leute, die haben das gold-Abzeichen in den tag, so ist es ein Beweis dafür, wie sehr ich mag die Gegend.
  • Die Menschen haben gesagt, es ist zu breit für SO. Ich würde gebeten haben, M Mittel -, aber ich glaube, dass SO die Zukunft der APIs und codierungsreferenzen. Ja! Danke!!! Ich glaube, ich bin fast fertig mit dieser Aufgabe, wie dieses Frage - aber diese Zuordnung führt zu einer Bildverarbeitungs-Praktikum-erwarten Sie also mehr von mir hier.
  • Ah, ich verstehe. Es ist schade, ich war nicht rund um, bevor diese Fragen verschloss. Ich hätte Sie beantwortet. In jedem Fall, ich freue mich auf Ihre weiteren Fragen. Viel Glück bei deinem Praktikum!
  • Lassen Sie uns weiter, diese Diskussion im chat.

Schreibe einen Kommentar