zbar не может декодировать штрих-код

У меня есть два изображения одного и того же штрих-кода. Когда я использую библиотеку zbar (или оболочку qrtools) для декодирования изображений QR-кодов, ImageScanner.scanner возвращает 0 для некоторых из них. Например, я не могу понять, почему этот первый qr-код не может быть декодирован: не декодируемый QR-код

а второй можно расшифровать: рабочий код Qr

Ниже приведен код, который я использую для декодирования. Значение Результат равно 0 для первого изображения и 1 для второго.

        import zbar
        from PIL import Image

        scanner = zbar.ImageScanner()
        # configure the reader
        scanner.parse_config('enable')
        # obtain image data
        pil = Image.open(filename).convert('L')
        width, height = pil.size
        raw = pil.tostring()
        # wrap image data
        image = zbar.Image(width, height, 'Y800', raw)
        # scan the image for barcodes
        result = scanner.scan(image) #Value is 0, -1, 1

Любые отзывы о том, как я могу заставить декодер zbar работать для 1-го изображения?


person benImaging    schedule 20.12.2015    source источник


Ответы (1)


Проблема заключалась в удалении теней. Как только изображение было преобразовано в бинарную форму и тень была удалена, zbar смог его декодировать.

person benImaging    schedule 21.12.2015