Auswahl der Gaußschen Kernelparameter bei der Tiefpassfilterung vor dem Resampling von Bildern?

7

Ich muss ein Signal um den Faktor q dezimieren.

mein Signal ein 3D- "Bild": , das ich in z-Richtung um den Faktor zwei verkleinern muss. I(xi,yj,zk)

Ich möchte vor der Dezimierung eine Tiefpassfilterung durchführen, indem ich sie mit einem Gaußschen Kern der Größe n falte.

Ich erstelle meine Gaußschen Kernel 2 Standardabweichungen unter und über 0, da dies 95% der Verteilung ausmacht.

Ich suche nach einer Faustregel, die mir sagt, wie groß n sein soll.

Habe ich Recht, wenn ich denke, dass der Gaußsche alle Frequenzen über fN / q herausfiltern sollte, wobei fN: Nyquist-Frequenz des ursprünglichen Signals?

Ich weiß, dass der Fourier eines Gaußschen mit Standardabweichung ein weiterer Gaußscher mit Standardabweichung . Ich bin mir nicht sicher, wie streng mein Tiefpassfilter sein soll. Sollte die Schnittfrequenz fc bei 2 oder 3 Standardabweichungen liegen? σ σ=1/σ

Wie lautet dann die Gleichung für die Schnittfrequenz fc eines Gaußschen Kerns mit der Größe n: fc (n) =?

Unten ist der Frequenzgang einiger in Matlab berechneter Gaußscher Kernel: Geben Sie hier die Bildbeschreibung ein

Mein eigentliches Problem betrifft q = 2, und aus dieser Abbildung sehe ich, dass n = 5 gut funktionieren sollte. Es wäre gut gewesen, eine Faustregel zu haben, also musste ich dies nicht für jedes q tun, dem ich begegne.

Andy
quelle
2
Gibt es einen bestimmten Grund, warum Sie einen Gaußschen Filter verwenden? Es gibt andere Filtertypen, die mehr Freiheit bei der Auswahl Ihrer Passband- / Stopband-Eigenschaften bieten. Ich würde wahrscheinlich keinen Gaußschen Filter als Antialiasing-Filter (dh Vordezimationsfilter) verwenden.
Jason R
1
Es gibt nicht wirklich einen "nächsten Schritt", aber die Fenstermethode ist auch eine sehr einfache Filterentwurfsmethode, die Ihren Anforderungen möglicherweise etwas besser entspricht. Optionale digitale Annäherungen an klassische analoge Filterfamilien wie Butterworth, Chebyshev und elliptische Filter sind ebenfalls möglich. Für eine bessere Kontrolle über die Reaktion des Filters können Sie den Parks-McClellan-Algorithmus verwenden , der auf ein spezifizierbares Equiripple-Verhalten sowohl im Stoppband als auch im Durchlassbereich abzielt.
Jason R
2
Ich würde sagen, da Sie neu darin zu sein scheinen, 'fdatool' in MATLAB zu verwenden. Wenn Sie darauf bestehen, ein Gauß-Fenster zu verwenden, schauen Sie sich das gut etablierte Fourier-Transformationspaar für Gauß-Signale an (Hinweis: Es ist ein anderes Gauß-Fenster!).
Bryan
1
@Andy: Ich habe schon einmal davon gehört, dass diese (Lanczos) Methode in der Bildverarbeitung verwendet wird (nicht mein Fachgebiet). Nur meine zwei Cent, aber ich denke, Sie werden feststellen, dass viele Bildverarbeitungsansätze im Allgemeinen weniger auf strengen Richtlinien für die Signalverarbeitung basieren als vielmehr auf dem, was als gut und gut beurteilt wurde. Insbesondere halte ich es nicht für typisch, ein Antialiasing-Filter vor der Dezimierung mit bestimmten räumlichen Frequenzen für Durchlass- und Sperrbänder rigoros zu entwerfen. Stattdessen gibt es einige Resampling- / Unschärfeansätze, die sich als gute Wahl erwiesen haben.
Jason R
1
@Andy: Sie können die Frage bearbeiten, um speziell anzuzeigen, dass Sie ein Bild-Resampling durchführen. Eine bessere Möglichkeit zum Liegen könnte darin bestehen, zu fragen: "Wenn Sie eine Gaußsche Unschärfe anwenden, bevor Sie ein Bild herunterabtasten, wie können Sie geeignete Parameter für den Gaußschen Kernel auswählen?"
Jason R

Antworten:

1

Ich denke, was Sie tun möchten, ähnelt der Bildgröße. In diesem Fall können zu diesem Zweck mehrere integrierte Funktionen in MATLAB verwendet werden, z. B. imresize .

Falle
quelle