python识别二维码内容的三种方法,分别是pyzbar、zbarlight和zxing。不清楚前两者之间是否底层是同一套算法。zxing的效果要强于前两个算法。
下方img是numpy格式。
- pyzbar
import pyzbar
barcode = pyzbar.decode(img)
(x, y, w, h) = barcode.rect #
barcodeData = barcode.data.decode("utf-8")
barcodeType = barcode.type
- zbarlight
需要将numpy转换为PIL格式。
import zbarlight
from PIL import Image
img = Image.fromarray(cv2.cvtColor(img, cv2.COLOR_BGR2RGB))
codes = zbarlight.scan_codes(['qrcode'], img)
- zxing
识别效果最好。
貌似需要将图像存储到本地,且不可以使用绝对路径。未详细测试,仅简单使用。
import zxing
reader = zxing.BarCodeReader()
barcode = reader.decode('decode.jpg')
本文介绍了使用Python进行二维码内容识别的三种方法:pyzbar、zbarlight和zxing,探讨了它们的优缺点及zxing在效果上的优势。通过实例展示了如何在numpy图像上运用这些库,并提到了zxing对本地文件和路径的要求。
1301

被折叠的 条评论
为什么被折叠?



