ZBar无法解码图像中的有效条形码

时间:2019-06-10 10:03:32

标签: c++ zbar

我正在遍历包含Code 128条形码的视频,逐帧读取条形码值。 ZBar适用于大多数视频帧,然后遇到一个无法解码条形码的帧。

此框架与其他框架一样,是完美的白色背景上的条形码。

框架:https://i.imgur.com/tThmVlH.jpg

在上面的图像中,此示例代码不会打印出任何解码后的条形码,但可以打印出来。 (我使用的是C ++,但是这个简单的Python代码段演示了相同的问题)

import zbar
import zbar.misc
import cv2
from PIL import Image

image = cv2.imread('coded-img.jpg', 0)

scanner = zbar.Scanner()
results = scanner.scan(image)
print(results)
for result in results:
    print(result.data, zbar.misc.upca_is_valid(result.data.decode('ascii')))

关于为什么会发生这种情况的任何想法,或者无论如何,我都可以更改将条形码写入图像的方式进行修复?我的条形码可与此在线阅读器https://www.onlinebarcodereader.com/

配合使用,因此100%有效。

1 个答案:

答案 0 :(得分:0)

我的“解决方案”是停止使用zbar,而改用https://github.com/nu-book/zxing-cpp