Zxing从灰度图像android构建二进制位图

时间:2015-12-08 12:52:58

标签: android zxing luminance

我正在开发一个Android应用程序,它需要解码包含qr代码的灰度图像。我一直在尝试将zxing与android集成。对于rgb色标图像,它工作正常。

对于rgb图像字节数组我已经使用此代码构建了binarybitmap。

RGBLuminanceSource source = new RGBLuminanceSource(width, height, data);
BinaryBitmap Binary_bitmap = new BinaryBitmap(new HybridBinarizer(source));

但是对于灰度图像,我不知道如何构建二进制位图。

1 个答案:

答案 0 :(得分:0)

我只是在没有RGB的情况下使用LuminanceSource。虽然我使用的是缓冲图像,但对于灰度图像效果很好。那就是LuminanceSource source = new BufferedImageLuminanceSource(grayscaleImg);

如果您需要将垫子转换为缓冲图像,请执行以下操作:

BufferedImage gray = new BufferedImage(mat.width(), mat.height(), BufferedImage.TYPE_BYTE_GRAY);
byte[] data = ((DataBufferByte) gray.getRaster().getDataBuffer()).getData();
mat.get(0, 0, data);