首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pyzbar将EAN-13条形码识别为PDF417?

Pyzbar将EAN-13条形码识别为PDF417?
EN

Stack Overflow用户
提问于 2021-05-07 13:38:21
回答 1查看 580关注 0票数 0

我正在尝试使用pyzbar构建一个实时条形码阅读器。我只有EAN-13条形码,其中一些被正确读取,但有些被确认为PDF417,我得到了这样的信息:警告:.\zbar\decoder\pdf417.c:89::断言"g >= 0& g1 >= 0& g2 >= 0“失败如何提高效率?也许还有另一个我可以使用的python库?

这是我的密码:

代码语言:javascript
复制
import cv2
import numpy as np
from pyzbar.pyzbar import decode

def decoder(image):
    imgGray = cv2.cvtColor(image,0)
    barcodes = decode(imgGray)

    for barcode in barcodes:
        (x, y, w, h) = barcode.rect

        cv2.rectangle(imgGray, (x-10, y-10),
                          (x + w+10, y + h+10), 
                          (255, 0, 0), 2)
              
        if barcode.data!="":
                
            print("Barcode: ", barcode.data)
            print(barcode.type)

cap = cv2.VideoCapture(0)
while True:
    ret, frame = cap.read()
    decoder(frame)
    cv2.imshow('Image', frame)
    code = cv2.waitKey(10)
    if code == ord('q'):
        break
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-07 13:57:55

如果您只有EAN-13,那么可以指定pyzbar只检查EAN-13。在调用symbols时,可以将所需的代码在列表中指定给参数decode(...)

代码语言:javascript
复制
from pyzbar.pyzbar import decode, ZBarSymbol
import cv2

image = cv2.imread("testImage.png")
decode(image, symbols=[ZBarSymbol.ZBAR_EAN13])

(从内存中编写的代码,如果符号不完全正确,很抱歉)

另一个要测试的库是中兴。在我的测试中,zxing比zbar慢得多,但得到了更好的结果。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67436051

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档