Ich habe etwas ähnliches getan, indem Sie Bilder in Signaturen mit wavelet transform zerlegen.
Mein Ansatz bestand darin, die wichtigsten n Koeffizienten aus jedem transformierten Kanal auszuwählen und deren Position aufzuzeichnen. Dies wurde getan, indem die Liste der (Potenz-, Orts-) Tupel nach abs (Potenz) sortiert wurde. Ähnliche Bilder werden Ähnlichkeiten aufweisen, da sie an denselben Stellen signifikante Koeffizienten haben.
Ich fand es am besten, in das Bild in YUV-Format zu transformieren, das effektiv Ähnlichkeit in Form (Y-Kanal) und Farbe (UV-Kanäle) ermöglicht.
Sie können in meiner Umsetzung der oben in mactorii finden, die habe ich leider nicht so viel gearbeitet wie ich :-)
Eine andere Methode haben sollte, die einige Freunde von mir mit überraschend verwendet haben gute Ergebnisse, ist einfach zu verkleinern Sie Ihr Bild nach unten, sagen, ein 4x4 Pixel und speichern, die Ihre Unterschrift sind. Wie ähnlich 2 Bilder sind, kann z. B. durch Berechnen der Manhattan distance zwischen den 2 Bildern unter Verwendung entsprechender Pixel ermittelt werden. Ich habe nicht die Details, wie sie die Größenänderung durchgeführt haben, also müssen Sie vielleicht mit den verschiedenen Algorithmen, die für diese Aufgabe verfügbar sind, spielen, um eine passende zu finden.
Es gibt einige gute Antworten auf diese ähnliche Frage: http://stackoverflow.com/questions/25977/how-can-i-measure-the-similarity-between-two-images – blak
a Viele "Könner" und "Könner". Jeder versucht all diese Vorschläge und weiß, was das Beste ist? –
Es ist eine Weile her, dass ich Computer Vision tat, aber Matlab Check-out, es gibt einige gute Funktionen gibt es in Bilder zu analysieren und dann die Ähnlichkeit der resultierenden Matrizen zu vergleichen, basierend auf verschiedenen Metriken für Ihren Vergleich. – Mason