Bildvergleich mit php + gd

Was ist der beste Ansatz, um zwei Bilder mit PHP und dem zu vergleichen?Grafikbibliothek (GD)?

Dies ist das Szenario:

Alternativtext http://img262.imageshack.us/img262/4849/imagecomparison.jpg

Ich habe ein Bild und möchte herausfinden, welches Bild einer bestimmten Menge diesem am ähnlichsten ist. Das ähnlichste Bild ist in der Tat dasselbe Bild, nicht die perfekte Pixelübereinstimmung, sondern dasselbe Bild. Ich habe den Unterschied zwischen den beiden Bildern mit der Nummer eins des Beispiels dramatisiert, um das Verständnis für meine Bedeutung zu erleichtern.

Obwohl es keine konsistenten Ergebnisse brachte, bestand mein Ansatz darin, die Bilder mit der auf 1px zu reduzierenimagecopyresampled Funktion und sehen, wie nahe die RGB-Werte zwischen den Bildern liegen.

Die Summe der Werte zum Abziehen der einzelnen roten, grünen und blauen Dezimaläquivalente vom roten, grünen und blauen Dezimaläquivalentwert der möglichen Übereinstimmung ergab einen Unähnlichkeitsindex, der zwar seitdem nicht wie erwartet funktioniert hatnicht immer Das RGB-ähnlichste Bild war das Zielbild, mit dem ich ein Bild aus den verfügbaren Zielen auswählen konnte.

Hier ist ein Beispiel für die Ausgabe beim Vergleich von 4 Bildern mit einem Zielbild, in diesem Fall dem Apple-Logo, das mit einem dieser Bilder übereinstimmt, aber nicht genau dasselbe ist:

Original Bild:

http://www.lshtm.ac.uk/its/remote/images/os-apple.png Rot: 222 Grün: 226 Blau: 232

Im Vergleich zu:

http://a1.twimg.com/profile_images/571171388/logo-twitter_normal.png Rot: 183 Grün: 212 Blau: 212 und ein Ähnlichkeitsindex von 56

http://icons-search.com/img/fasticon/fruits_lnx.zip/fruits_lnx-Icons-48X48-apple.png-48x48.png Rot: 117 Grün: 028 Blau: 028 und ein Unähnlichkeitsindex 530

http://www.1sd.org/wp-content/uploads/2008/10/48x48-apple.png Rot: 218 Grün: 221 Blau: 221 und ein Indiz für Unähnlichkeit13 Richtig abgestimmt.

 Rot: 061 Grün: 063 Blau: 063 und ein Unähnlichkeitsindex 491

Vielleicht geht es nicht einmal besser mit besseren Ergebnissen als dem, was ich bereits erhalte, und ich verschwende meine Zeit hier, aber da es anscheinend viele erfahrene PHP-Programmierer gibt, können Sie mir wohl die richtigen Anweisungen geben, wie ich mich verbessern kann diese.

Ich bin offen für andere Bildbibliotheken wieiMagick, Gmagick oderKairo für php würde ich aber lieber andere sprachen als php meiden.

Danke im Voraus.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage