gpt4 book ai didi

python - 如何使用 python-qrtools/ZBar 获取 QR/条形码的编码样式类型?

转载 作者:太空狗 更新时间:2023-10-30 02:43:50 27 4
gpt4 key购买 nike

在我的 Ubuntu 服务器上,我安装了 python-qrtools package (使用 zbar )使用 sudo apt-get install python-qrtools 解码 Python 中的二维码和条形码图像,如下所示:

>>> qr = qrtools.QR()
>>> qr.decode('the_qrcode_or_barcode_image.jpg')
True
>>> print qr.data
Hello! :)

这工作得很好。

我现在想存储这些数据并在稍后的某个时间点重新生成图像。但问题是我不知道原始图像是二维码还是某种条形码。我检查了 qr 对象的所有属性,但它们似乎都没有给我编码样式 (QR/bar/other) 的类型。

this SO thread据描述 ZBar 确实返回了 Encoding Style 的类型,但它只给出了 Objective-C 中的示例,而且我不确定这是否真的是我正在寻找的答案。

有谁知道我如何在 Python 中找出编码样式的类型(例如 QR 码/条形码/其他)(最好使用 python-qrtools 包)?如果不是在 Python 中,是否有任何 Linux 命令行工具可以找到它?欢迎所有提示!

最佳答案

查看 qrtools 的源代码,我看不到任何获取类型的方法,但是有一个基于 scan_image zbarexample python 库,下面的代码似乎可以满足您的需求:

import zbar
import Image

scanner = zbar.ImageScanner()

scanner.parse_config('enable')

img = Image.open("br.png").convert('L')
width, height = img.size
stream = zbar.Image(width, height, 'Y800', img.tostring())

scanner.scan(stream)

for symbol in stream:
print 'decoded', symbol.type, 'symbol', '"%s"' % symbol.data

使用我从 net 中抓取的随机条形码:

decoded UPCA symbol "123456789012"

使用这个 qr code 输出:

 decoded QRCODE symbol "http://www.reichmann-racing.de"

关于python - 如何使用 python-qrtools/ZBar 获取 QR/条形码的编码样式类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31986216/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com