Frage

Ich versuche, Kamera-Metadaten in eine Bitmap zu kopieren, und sei, da jeder Wert in der Metadaten ein 16-Bit (oder Ushort) ist, dachte ich, dass es sinnvoll wäre, es in einer 16-beigeg-Garyscale-Bitmap anzuzeigen.Der Code, den ich geschrieben habe, ist wie folgt: generasacodicetagpre.

Wenn Sie die XRES= 640 und Yres= 480 der Metadaten ausgeführt werden. Der Code löst einen Speicherzugriffsausnahme in den To-Loops auf "PTRDESTINATION [X]= (Ushort) * PTRMETREDADATA;"Nachdem er nur 240 läuft, halb die Summe, Linien.

Ich habe dies mit 8BPP verwendet, bei dem ich die Auflösung reduzierte und gut funktionierte, also sehe ich nicht, warum es nicht hier sollte.Vielleicht findet jemand das Problem.

danke schon

War es hilfreich?

Lösung

generasacodicetagpre.

Der Data.Stude-Wert wird in Bytes ausgedrückt, nicht Ushorts.Der Zeiger ist also um den Faktor von 2, also bombiert bei Bitmap.Height / 2.Ihr für Loops ist kaputt, Swap Bitmap.Width und Bitmap.hight.Das Schlüsselwort Lock macht hier nicht viel Sinn, Sie können auf Thread-lokale Daten zugreifen, andere als DataSource.Fix: generasacodicetagpre.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top