Teilbild in JPG finden



  • Hallo zusammen,

    ich möchte in einem JPG ein Bild finden, das mir separat vorliegt.
    Das Problem ist natürlich, dass die Pixel wegen des Qualitätsverlust
    beim Speichern von JPG nicht mehr identisch sind. Da gibt doch bestimmt
    ne Menge schlaue Leute, die sich darüber Gedanken gemacht haben 🙂
    Kann mir jemand nen guten Algorithmus dafür nennen? Sonst muss ich
    meinen eigenen schreiben, der evtl. qualitativ nicht ganz so gut ist...

    Gruß,
    *Cpp-Anfänger*



  • Kling nach Pattern Matching. Da gibts verschiedene Methoden. Die Traditionelle ist die Grauwerte über normalisierte Kreuzkorrellation zu vergleichen, dann gibts noch neuere Verfahren nicht direkt auf den Grauwerten basieren sondern zum Beispiel Eigenschaften der Kanten messen. Letztere basieren oft auf der Hough-Transformation.



  • ne Hough-TRansformation tue ich mir nicht an ^^

    Ich werde die normalisierte Kreuzkorrellation nehmen.
    Warum soll ich denn auf den Grauwerten arbeiten und nicht die
    Farben einzeln betrachte und addieren, wie ich es bei Google gefunden hab.

    Hat das irgendeinen Vorteil?

    Gruß,
    *Cpp-Anfänger*



  • Wenn nichts skaliert/rotiert/... wurde, also die Pixel noch 1:1 "übereinander liegen" dann könnte man einfach ne Kreuzkorrelation verwenden.
    Ist halt u.U. sehr rechenaufwändig, je nachdem wie gross die beiden Bilder sind.



  • Um den Rechenaufwand mach ich mir keine Sorgen, da es relativ kleine Ausschnitte sind.

    Danke,
    I'll try



  • durch die kompression hast du eh schon informationen verloren. dann noch auf zusatzinformationen der farbkomponenten zu vertrauen ist eigentlich überflüssig, da du wahrscheinlich eh an irgendeiner stelle normalisieren willst. einfach von vornherein grauwertbilder zu verwenden - also normalisierte werte - spart einen schritt.


Log in to reply