私のAndroidアプリでは、画像のキャプチャ方法としてUSBカメラを使用しています。そのために、UVCCameraライブラリを使用しています。この背後にあるアイデアは、このカメタでバーコードを読み取ることです。したがって、この入力からビットマップが作成され、ZBarライブラリでデコードされます。
しかし、私が今抱えている問題は、ZBar が "GRAY" と "Y800" の画像フォーマットしか読み取れないことです。私の質問は、ZBar でビットマップを読み取る方法です。
次の方法を試しましたが、失敗しました。
int[] intArray = new int[bMap.getWidth() * bMap.getHeight()];
bMap.getPixels( intArray, 0, bMap.getWidth(), 0, 0, bMap.getWidth(), bMap.getHeight() );
Image barcode = new Image(bMap.getWidth(), bMap.getWidth(), "RGB4");
barcode.setData(intArray);
imageScanner.scanImage(barcode2.convert("Y800"));
しかし、これを行うと、「Fatal signal 11 (SIGSEGV)」メッセージでプログラムがクラッシュします。
Android デバイスの処理能力とメモリに関して、このタイプの画像をスキャンする最良の方法は何でしょうか。
ありがとう。