zXing: невозможно прочитать действительный QR-код

Я использую библиотеку zXing С# для декодирования QR-кода в моем приложении winforms в VS 2010. Он отлично работает для некоторых изображений, но не работает для некоторых.

сообщение об исключении:

"Было выдано исключение типа 'com.google.zxing.ReaderException'".

вот мой код:

Код функции, которая возвращает декодированные данные

    public string GetQRValue(Bitmap value)
    {
        string result = string.Empty;

        try
        {
            QRCodeReader reader = new QRCodeReader();
            //com.google.zxing.Reader re
            com.google.zxing.LuminanceSource source = new RGBLuminanceSource(value, value.Width, value.Height);
            var binarizer = new HybridBinarizer(source);
            var binBitmap = new BinaryBitmap(binarizer);
            result = reader.decode(binBitmap).Text;
        }
        catch(Exception ex)
        {
            result = ex.Message; //string.Empty;
        }

        return result;
    }

Код, который вызывает указанную выше функцию:

Bitmap image1 = (Bitmap)Image.FromFile(txtFile.Text , true);
lblData.Text = cls.GetQRValue(image1);

Здесь txtFile — путь к файлу, а cls — объект класса, содержащего функцию декодирования.

Ниже показано изображение, которое не удалось декодировать.

Qr-код, который не удается декодировать
Я пытался расшифровать его на следующем веб-сайте. И декодируется там.
http://www.patrick-wied.at/static/qrgen/

И следующее изображение успешно декодировано.

Qr-код, успешно декодированный

Пожалуйста, помогите мне решить проблему


person Krishanu Dey    schedule 02.11.2012    source источник


Ответы (1)


Порт C# несколько устарел и не поддерживается. Похоже либо проблема с вашей бинаризацией, либо какая-то проблема в порте, так как основная ветка (Java) прекрасно декодирует эти:

http://zxing.org/w/decode?u=http%3A%2F%2Fi.stack.imgur.com%2FTEiIH.jpg&full=true http://zxing.org/w/decode?u=http%3A% 2F%2Fi.stack.imgur.com%2FP8irV.png&full=true

person Sean Owen    schedule 02.11.2012
comment
:: Тогда что мне делать? Любое предложение сделать мою программу точной? - person Krishanu Dey; 03.11.2012