FFT auf einem nicht rechteckigen Teil des Bildes


7

Ich muss eine FFT für ein Bild durchführen, um das Rauschen zu reduzieren, aber das Problem ist, dass ich nicht das vollständige Bild benötige, sondern nur einen Kreis in der Mitte. Die Ränder sind ein festes Rig, daher interessiert mich nicht, was es anzeigt, aber es hat einen Einfluss auf das Ergebnis der FFT.

Gibt es eine Möglichkeit, einfach ein kreisförmiges Teil auszuschneiden und dieses für die FFT zu verwenden? Beachten Sie, dass bei Verwendung von schwarzem Hintergrund die Kante zwischen Hintergrund- und Bilddaten erhebliche Auswirkungen hat.

Antworten:


7

Anstatt eine harte Kante zwischen den interessierenden Bilddaten und dem Hintergrund zu haben, könnten Sie eine zweidimensionale verjüngte Fensterfunktion verwenden , wie dies häufig bei der Spektralanalyse der Fall ist. Sie könnten zunächst ein Gaußsches Fenster ausprobieren , das für einen zweidimensionalen Fall ungefähr so ​​aussehen würde:

w[x,y]=e(xNx12)22(σxNx12)2e(yNy12)22(σyNy12)2

Nx und sind die Abmessungen der gewünschten Transformation in bzw. Richtung, und und sind Parameter, mit denen Sie die Form des Fensters steuern können. Bei kleinen Werten konzentriert sich der größte Teil der Energie in der Fensterfunktion auf die Mitte, wobei dieser Effekt mit zunehmendem abnimmt .Nyxyσxσyσσ


Wäre ein flacheres Fenster nicht besser, da er das Zeug in der Mitte nicht verzerren möchte?
Jim Clay

Sicher; Das Obige wurde nur als Beispiel für ein Fenster gegeben. Es gibt viele Fensterfunktionen, die verwendet werden könnten, obwohl sie normalerweise nur für den eindimensionalen Fall beschrieben werden.
Jason R

Okay danke. Ich habe bereits über die Verwendung einer Fensterfunktion nachgedacht, wusste aber nicht, ob es etwas Besseres / völlig anderes gibt.
SinisterMJ

3

Verwenden Sie eine konische Flat-Top- Fensterfunktion mit einer flachen Top- und Kantenverjüngung, z. B. ein sich verjüngendes Cosinusfenster oder ein Tukey-Fenster (drehen Sie es um eine Polarachse, um es zu einer kreisförmigen 2D-Schablone zu machen) und ein Null-Pad, wie es für jedes Fasten erforderlich ist Faltungsfilterung. Das Fenster, das an den Kanten auf Null geht, verringert den Effekt der Kantendiskontinuitäten vom Kreis auf die FFT. Mischen Sie nach dem Filtern oder einer anderen Verarbeitung das Ergebnis wieder, indem Sie die subtraktive Umkehrung Ihrer Fensterfunktion für die vorhandenen Bilddaten verwenden.


0

Eine einfache Lösung könnte darin bestehen, die Randbedingungen Ihres nicht rechteckigen interessierenden Bereichs in das Rechteck um ihn herum zu verteilen.

Sie können dies mit einem Algorithmus für den nächsten Nachbarn durchführen.

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.