Inverse Filter berechnen?
-
Hi,
ich programmiere mit C++ ein kleines Tool als Test, dass folgende Funktion hat.
Man hat ein Originalbild und man hat ein gestoertes Bild das verauscht ist.Folgendes:
Mein Prof hat folgende Frage gestellt.Frage:
Kann zur Berechnung eines inversen Filters jedes beliebige Bildpaar (ungestörtes Bild, gestörtes Bild) heranziehen?Antwort:
Nein, nur zu den im ungestörten Bild vorhandenen Frequenzen kann die Störung und das inverse Filter aus den Bildpaaren berechnet werden.Ich verstehe die Antwort nicht, denn.
Originalbild * Störung = gestoertes Bild=> Filter das gebraucht wird = 1/Störung = gestoertes Bild/ Originalbild
Oder habe ich da etwas falsch verstanden?
Kann jemand die Antwort erläutern?
Ich meine das geht doch in allen Fällen oder?Lg
-
Gast89 schrieb:
Ich verstehe die Antwort nicht, denn.
Originalbild * Störung = gestoertes BildTjoa, das "*" hier ist ne Convolution.
Daher kannst du das auch nicht so einfach umdrehen.Bzw. schon, aber nur für ... eben die Frequenzen die in Originalbild nicht Null sind. Genau so wie es mit "normalen" Zahlen auch nur funktioniert wenn "Originalbild" nicht Null ist.
Überleg dir einfach folgendes:
* Du hast eine Audioaufnahme wo keine Töne oberhalb von sagen wir 1 kHz vorkommen
* Du hast einen beliebigen linearen Filter (Equalizer, Hochpass, Tiefpass, Bandpass - was auch immer)
* Du filterst die Audioaufnahme mit diesem FilterIm Ergebnis sind natürlich immer noch keine Frequenzen oberhalb von 1 kHz vorhanden. Der Filter kann ja nur verstärken oder abschwächen was im Original bereits existiert -- d.h. wo nix ist, da kann er nix hinzaubern.
Kannst du jetzt die Dämpfung/Verstärkung des Filters für Frequenzen oberhalb von 1 kHz aus dem originalen und dem gefilterten Signal errechnen?
Logischerweise nicht.
Was aber nicht heisst dass er in diesem Frequenzbereich neutral wäre.Bei Bildern ist es das selbe, bloss halt in 2 Dimensionen.