1

私はzxing libraryQRコードが初めてです。I have generated QR codeを使用しzxing library 1.7て、これらの QR コードを用紙に貼り付け、後で用紙をスキャンして PDF にします。zxingもちろん、このスキャンされたPDFをページごとに読み取り、ページにQRコードが見つかった場合はQRコードテキストを表示するライブラリ自体を使用してクライアントプログラムを作成しました。スキャンした PDF の各ページから複数の QR を読み取ろうとしています。

一部の QR コードを読み取ることはできますが、結果に一貫性がありません。PDF ページの一部の QR コードを読み取ることができますが、一部はクライアント プログラムによって認識されません。同じトピックの他のスレッドを調べました。100%の結果を得ることができませんが、コードを少し修正しました。

これは、私が正確に何をしているのかについてより多くのアイデアを与えるための私のコードスニペットです。

注:ここに示すように、itext PDFライブラリのPdfReaderContentParserを使用して、各pdfページのスキャン画像を抽出しています

private void extractBarcodeText(BufferedImage bufferedImage) {

    try {
        Hashtable<DecodeHintType, Object> hints = new Hashtable<DecodeHintType, Object>();
        hints.put(DecodeHintType.TRY_HARDER, BarcodeFormat.QR_CODE);
        LuminanceSource source = new com.google.zxing.client.j2se.BufferedImageLuminanceSource(bufferedImage);
        BinaryBitmap bitmap = new BinaryBitmap(new GlobalHistogramBinarizer(source));
        List<String> innerTextList = new ArrayList<String>();
        QRCodeMultiReader multiReader = new QRCodeMultiReader();
        Result[] results = multiReader.decodeMultiple(bitmap, hints);

        for (int k = 0; k < results.length; k++) {
            String text = results[k].getText();
            innerTextList.add(text);
            System.out.println("####################  Rendered Text from Image #################"+ " " + text);
        }       
    } catch (NotFoundException e) {
        e.printStackTrace();
    }
}

私は多くの組み合わせを試しましたが、うまくいきませんでした。画質が悪いからですか?しかし、その後、一部の画像がどのように認識され、一部は謎のままです:(

この問題を克服するために何をすべきか知っている人はいますか? 最初の画像は上記のコードを使用して認識されていますが、2 番目の画像(HRA) は認識されていません。

4

1 に答える 1

0

あなたが言ったことに基づく私の推測では、画像を軽くぼかすかダウンサンプリングする必要があるということです。大量のホワイト ノイズが検出を妨げます。

于 2012-02-16T09:33:56.537 に答える