現在、1 つの画像に含まれる複数の QR コードを読み取るスキャナーを開発しています。画像の QR コードを読み取ることはできましたが、一貫性のない結果が得られました。画像に 4 つの QR コードがあると仮定すると、2 つ、場合によっては 3 つ、または 1 つだけを読み取ることができます。元のスキャナー (ZXing スキャナー) とは異なり、高速にデコードされます。私の場合、十分な光があり、画像がぼやけてデコードされていないことを確認する必要があります。
を使用しQRCodeMultiReader
て画像をデコードしています。現在ZXing
ライブラリを使用してアプリケーションを作成しています。
以下は私のコードのスニペットです:
public void onPictureTaken(byte[] data, Camera camera) {
BitmapFactory.Options opt = new BitmapFactory.Options();
opt.inMutable = true;
Bitmap bitmap = BitmapFactory
.decodeByteArray(data, 0, data.length, opt);
Hashtable<DecodeHintType, Object> hints = new Hashtable<DecodeHintType, Object>();
hints.put(DecodeHintType.TRY_HARDER, Boolean.TRUE);
LuminanceSource source = new RGBLuminanceSource(bitmap);
QRCodeMultiReader multiReader = new QRCodeMultiReader();
Result[] results = multiReader.decodeMultiple(new BinaryBitmap(
new HybridBinarizer(source)), hints);
}