在我的 android 应用程序中,我使用 USB 摄像头作为图像捕获方法。为此,我正在使用UVCCamera库。这背后的想法是用这个cameta读取条形码,因此从这个输入中创建位图,并将使用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"));
但是当我这样做时,程序会因“致命信号 11 (SIGSEGV)”消息而崩溃。
关于 android 设备的处理能力和内存,扫描此类图像的最佳方法是什么。
谢谢。