Pixel Checksumme von einem Bild als Hex-String

  • Guten Morgen,

    weiß jemand, wie ich die Pixel Checksumme von einem Bild bekomme, welches als Hex-String im Script steht. Es ist nur eine 10x10 Pixel großes Bild.

  • Hallo,
    die Checksum musst du dir dann schon selber erstellen, für einen Hex-String funktioniert Checksum schließlich nicht.
    Um Checksum zu benutzen müsstest du das Bild wahrscheinlich auf dem Bildschirm anzeigen.

    Die Checksum kannst du irgendwie selber berechnen, ich weiß aber nicht genau wie checksum da vorgeht..

    PS:
    In der Hilfe steht was von ADLER und CRC32, evtl kannst du gucken welches das richtige ist und es nachbauen für Hex-Strings ^^


    EDIT:
    Willst du ein Bild auf einem Bildschirm suchen? Dann könntest du auch statt dem HexString die Checksum speichern oder ich kann dir mein Skript dafür mal zeigen, ist aber mit Assembler ^^

  • Stimmt, ist wesentlich sinnvoller die Checksum direkt zu speichern.

    Genau ich will ein Bild suchen, welches ein Teil eines Screenshots ist von einem externen Programm. Und dann anhand dessen, meine GUI ausrichten. Hast du ein Script, dass die Checksum ausgibt von einem Bild? Dann bitte her damit :D.

  • Danke erstmal. Könntest du es noch als Zip bitte hochladen. Bin mit meinem Android on. Der kann Rar nicht runterladen.

  • Mit der Pausentaste geht die Maus übrigens zur ersten gefundenen Stelle und mit Esc beendet sich das Programm ^^

  • WEnn ich das noch genau wüsste ^^
    Der Hauptteil liegt ja im ASM-Code
    Ich prüfe für jede Position die Differenz der beiden jewiligen Pixel (also Bild und Screen) und prüfe dann mit der angegebenen Toleranz ob der Unterschied zu groß ist, dann kommt die nächste Position. WEnn alle Pixel in Ordnung sind wird die FUnktion abgebrochen und die Koordinaten zurückgegeben

  • PushTheButton sucht Bilder auf dem Screen und hat eine Gebrauchsanleitung eingebaut :rofl:

  • _F ist auskommentiert, darin ist der ASM Code, der jetzt in einem Hexcode gespeichert im Script ist

    Ist deins denn genauso schnell Andy? :P

  • Ahh in Codebuffer.

    Andy: danke. Wenn das schneller, als mit Checksum ist, dann werde ich den Bitmapvergleich machen.

  • Zitat

    Andy: danke. Wenn das schneller, als mit Checksum ist....

    Checksum lohnt sich nur, wenn du direkt 2 Bilder miteinander vergleichen willst
    PtB benutzt diverse Methoden, um Bilder schnellstmöglich zu finden.
    Zunächst wird das "Suchbild" analysiert und anhand der darin enthaltenen Farben bezüglich zum gesamten Screen die Suchmethode festgelegt.
    Da sowohl die AutoItfunktion stringinstr() sauschnell ist, als auch die (alternative) Assemblerfunktion aus der prospeed.dll dauert die Suche uber den gesamten Screen nur einige Millisekunden.

    Darauf zu achten ist, dass die oberste Zeile des zu suchenden Bildes möglichst unterschiedliche Farben enthält!
    Dadurch beschleunigt sich die Suche enorm.

  • Ich sehe schon, ich habe keine Chance gegen deine Optimierung ^^
    Aber unterschiedliche Farben in der ersten Reihe verschnellern auch meine Funktion