1

我在摩托罗拉 Xoom 上做了一个使用xzing库识别 QrCode 的应用程序。我已经在我的计算机上完成了相同的应用程序,它在我的计算机上运行良好,但在 Xoom 上,它很难识别 QrCode。它需要一个非常好的照明,没有直接的聚光灯。问题来自相机。前置摄像头的工作还不错,但永远不如我实验室上的网络摄像头。后置摄像头是最差的,即使它有更好的分辨率。后置摄像头效果最差有点奇怪,但考虑到对焦效果不佳,我认为这是正常的。您需要一张非常清晰的图片才能获得良好的效果。

现在我使用来自 zxing 的名为PlanarYUVLuminanceSource的算法。

所以我想知道你们是否找到了一些将xoom相机的彩色图像转换为单色图像的好算法。用于识别单色图像的 xzing 库已经足够好,因此只有单色图片质量不好。无需向我推荐另一个单色图像二维码阅读器。

4

1 回答 1

1
Bitmap yourPhoto = //The bitmap of the photo from your camera
Bitmap tempBitmap = Bitmap.createBitmap(yourPhoto.getWidth(), yourPhoto.getHeight(), Bitmap.Config.ARGB_4444);
Canvas c = new Canvas(tempBitmap);
Paint paint = null;
ColorMatrix cm = new ColorMatrix();
paint = new Paint();
cm.setSaturation(0);
ColorMatrixColorFilter f = new ColorMatrixColorFilter(cm);
paint.setColorFilter(f);        
c.drawBitmap(yourPhoto, 0, 0, paint);

现在您的“tempBitmap”包含您正在寻找的黑白图像:)

于 2011-07-31T08:03:05.047 回答