首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我的部分QR代码没有显示QR代码数据。

我的部分QR代码没有显示QR代码数据。
EN

Stack Overflow用户
提问于 2021-01-16 00:50:39
回答 1查看 244关注 0票数 0

我正在做我自己的小Python驱动的OMR多重选择标记程序。对我来说是个大挑战!!

第一步是为每个学生创建qr代码。这是工作的好,我产生162 qr代码为1门课程。

我要检查它们,确保数据在代码中。

数据应该是这样的,一个学生号码和一个名字:

2025010105:段赵元

2025010106:段卓含

2025010108:范玉虹

例如,如您所见,学生2025010107的数据没有显示在我的循环中。然而,使用我的手机扫描qr代码为2025010107,我看到了正确的数据。数据就在那里。

代码语言:javascript
复制
QRfiles = os.listdir(savepathQRcodes)
QRfiles.sort()

for f in QRfiles:
    img = cv2.imread(savepathQRcodes + f)
    detector = cv2.QRCodeDetector()
    data, bbox, straight_qrcode = detector.detectAndDecode(img)
    #text = data.split(':')
    #print('number, name: ', text[0], text[1])
    print(data)

,你知道为什么某些qr码的数据没有显示出来吗?数据在那里,用我的手机确认了。(我猜是电脑内存问题)。

在162 qr码中,20左右不要在此循环中显示数据。大多数qr代码在这个循环中显示数据。

但是,如果我用qr码打开文件夹,我可以扫描那些没有用我的手机显示数据的代码,并看到正确的数据。我做的所有其他qr码也是如此。

在进行标记时,我将需要这些数据,因此我需要确保qr代码可以在Python中成功读取。

而且,不显示数据的并不总是相同的qr码。我已经做了很多次,并阅读了很多次,以供测试。

我有最新版的opencv。

我注意到的一件事是,当我将qr代码边框缩小到border=1时,没有显示数据的代码减少了。我不知道这是否是问题的线索。

EN

回答 1

Stack Overflow用户

发布于 2021-01-17 03:10:05

也许你可以尝试添加一个循环?

代码语言:javascript
复制
for f in QRfiles:
    img = cv2.imread(savepathQRcodes + f)
    detector = cv2.QRCodeDetector()
    data = None
    while not data:
        data, bbox, straight_qrcode = detector.detectAndDecode(img)
    #text = data.split(':')
    #print('number, name: ', text[0], text[1])
    print(data)

或者可能是数据== '',所以首先确定空白数据(可能是None类型或' ')中的内容,然后执行循环

这可能是一个可能的解决办法,但不幸的是,我不知道是什么原因造成的。如果它发生在随机的qrcode,它可能不是您的错。

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

https://stackoverflow.com/questions/65745429

复制
相关文章

相似问题

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