Welche Abstandsmetrik kann ich zum Vergleichen von Bildern verwenden?

14

Normalerweise verwende ich den mittleren quadratischen Fehler (MSE) oder das Spitzen-Signal-Rausch-Verhältnis (PSNR), um zwei Bilder zu vergleichen, aber das ist nicht gut genug. Ich muss eine Formel finden, die einen sehr großen Abstand zwischen einem Bild A und seiner pixelierten (oder unscharfen) Version B zurückgibt, weiß aber nicht, wie ich vorgehen soll. Was wäre eine gute Metrik für meine Bedürfnisse?

Lezebulon
quelle
3
Wollen Sie damit sagen, dass Sie 2 Bilder haben, die aus derselben Quelle stammen, 1 unverändert und dann andere unscharf sind, und dann möchten Sie in der Lage sein, zu erkennen, welche unscharf sind?
Kellenjb
2
Was ist die Art der Pixelung / Unschärfe? War es auf schlechte Aufnahmebedingungen (Pixelrauschen und Unschärfe) oder digitale Manipulation zurückzuführen?
rwong

Antworten:

7

Das Folgende ist keine Antwort, sondern eine Statistik, die uns bei der Auswahl eines geeigneten Bildvergleichs anhand der Eigenschaften der von Ihnen analysierten Bilder hilft.

Der erste Schritt besteht darin, ein "Delta-Histogramm" wie folgt zu zeichnen:

for (x,y) in [0, width] x [0, height] begin
    delta = abs( SecondImage(x, y) - FirstImage(x, y) )
    hist[delta] += 1
end

Bei einer grafischen Darstellung dieses Histogramms wissen wir etwas mehr über das "Ausmaß" der Änderungen, nach denen Sie suchen, und geben Ihnen bessere Empfehlungen.

(Alternativ können Sie auch einige Beispielbilder posten. Beachten Sie, dass wir möglicherweise schlechtere Empfehlungen aussprechen, wenn die Beispielbilder nicht für die Bildunterschiede repräsentativ sind, an denen Sie interessiert sind.)


Sie können auch Structural Similarity (SSIM) in Ihrem Bildsatz testen und Ihre Ergebnisse hier veröffentlichen. Denken Sie daran, dass SSIM so konzipiert ist, dass es die Fähigkeit des Menschen nachahmt, die Behinderung der Bildverschlechterung zu erkennen, sodass Pixelbildung erkannt wird, aber möglicherweise keine Unschärfe auftritt.


Wenn es sich bei Ihren Bildern nicht um fotografische Bilder handelt (oder wenn es sich um wissenschaftliche Bilder handelt, die keine gewöhnlichen fotografischen Objekte sind), senden Sie bitte auch Beispiele für deren 2D-Autokorrelation, die entsprechend zugeschnitten und skaliert sind.


Die Gesichtserkennung ist ein zu großes Thema, um in einer einzigen Frage diskutiert zu werden. Unschärfe tritt bei der Gesichtserkennung in mehreren Kontexten auf - es kann ein Problem der Datenqualität sein oder es kann absichtlich als Zwischenschritt bei der Datenverarbeitung durchgeführt werden.

Bei der Gesichtserkennung möchten wir die Identität von Gesichtern erkennen, daher müssen wir Bildunterschiede ignorieren, die nicht durch Identitätsunterschiede verursacht werden. Die grundlegende Kategorie von Unterschieden, die bei der Gesichtserkennung ignoriert werden sollten, sind: Pose, Beleuchtung und Gesichtsausdruck.

Ein allgemeiner Ansatz zum Ignorieren irrelevanter Unterschiede wird als Normalisierung bezeichnet , bei der versucht wird, verschiedene Operationen anzuwenden und das Eingabebild zu transformieren, um ein "kanonisches" oder "vorverarbeitetes" Bild zu erhalten, das wiederum zur Identifizierung verwendet werden kann.

Ein zweiter Ansatz ist Merkmale aus Bildern zu extrahieren , die hoch- sind unveränderlich von den irrelevanten Faktoren.

Die Qualität eines Gesichtsbildes hängt vom Aufnahmegerät und der Umgebung ab, in der es aufgenommen wurde. Wenn ein Gesichtsbild ohne Mitwirkung des Motivs (z. B. von einer Überwachungskamera) aufgenommen wird, ist eine schlechte Bildqualität eine unvermeidliche Folge und musste durch Software behoben werden, um die Identifizierung nicht zu beeinträchtigen.

Bei der kooperativen Erfassung ist ein computergestütztes Maß für die Bildqualität gut: Der Bediener kann über Qualitätsprobleme informiert werden, und das Bild kann erneut aufgenommen werden.

Unschärfe kann auch ein Beispiel für böswillige Manipulationen an biometrischen Daten sein, um der Erkennung zu entgehen (zusammen mit Okklusion und Verkleidung). Wenn das Bild digital codiert ist, reichen eine digitale Prüfsumme und eine kryptografische Signatur aus, um das Problem vollständig zu lösen. Wenn das unscharfe Bild in physischem Druck von einem Imitator übermittelt wird, kann ein computergestütztes Maß für die Gesichtsbildqualität verwendet werden, um solche Übermittlungen abzulehnen.


Das Fehlen von 2D-lokalisierbaren Merkmalen oder Interessenpunkten in einem bestimmten Teil des Gesichtsbilds kann ein Zeichen für absichtliche Unschärfe sein.

Die breite Kategorie der digitalen Bildmanipulation (durch einen erfahrenen Benutzer von Bildbearbeitungssoftware) kann jedoch nur mit der digitalen Bildforensik behandelt werden, die Pixelstatistiken mit bekannten Kameramodellen vergleicht.

rwong
quelle
Ok, ich schaue mir deine Links an. Die Bilder ich arbeite auf sind Gesichtsbilder, und ich versuche , eine Metrik zu finden , die mir geben würde , gute Ergebnisse , wenn zwei Gesichtsbilder ähnlich sind (die Eigenschaften Verwischung so ein schlechtes Ergebnis geben soll)
lezebulon
3
@lezebulon, Sie möchten wahrscheinlich eine Distanzmetrik, die auf den Inhalt abgestimmt ist, z. B. en.wikipedia.org/wiki/Eigenface
Datageist