Kurz gesagt kann ich nicht auf alle Pixel eines Bitmap-Bildes zugreifen.Wie kann man auf Pixel eines Bitmap-Bildes auf Android zugreifen?
Ich habe eine Absicht verwendet, um die native Kamera-Anwendung zu starten und ein Bitmap-Bild an meine Anwendungsaktivität zurückgegeben. Die Daten sind definitiv ein Bitmap-Objekt und ich bin in der Lage, anzuzeigen, erhalten Sie die Höhe/Breite etc und Zugriff auf einige Pixel mit getPixel(). Wenn ich jedoch die Werte von getHeight() und getWidth() verwende, bekomme ich einen Array-Fehler außerhalb der Grenzen. Durch Trail und Error habe ich festgestellt, dass ich nur auf eine reduzierte Anzahl von Pixeln des Bildes zugreifen kann, beispielsweise mit einem Bild, das einen Höhen- und Breitenwert von 420.380 zurückgibt, könnte ich auch auf 200.100 zugreifen. Ich mache dann einige Bildbearbeitung und verwendet setPixel() auf das Originalbild. Wenn ich das Bild zeige, zeigt es die, sagen wir 200,100, Verarbeitungspixel und der Rest normal, deshalb sind die Pixel offensichtlich da und für Android erreichbar, aber nicht von mir. Ich muss mit anderen Leuten sprechen, die dieses Problem mit Bildern hatten.
Weiß jemand mehr darüber, Gründe? oder eine Arbeit?
Vielen Dank im Voraus.
Es scheint, dass es keinen Weg gibt, glaubt jemand, dass es besser/möglich wäre, das Bild direkt im Speicher zu verwenden, vielleicht mit dem NDK?
Danke für die Antwort, Yeah, ich bin mir bewusst, 0-indiziert, das Problem ist, kann ich nicht mehr als die Hälfte der Pixel zugreifen. Grundsätzlich habe ich einige verschachtelte for-Schleifen (int y = 0; y