- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我在使用 Pyzbar 检测二维码时遇到问题。在完美的情况下,我能够使用原始 png 图像检测 QR 码。但是,当我从相机拍摄视频,然后将该帧保存为图像时,pyzbar 无法检测到 QR 码。
例如,这行得通
[Decoded(data=b'GOAL', type='QRCODE', rect=Rect(left=16, top=16, width=168, height=168))]
但即使在我手动裁剪周围环境以仅显示二维码后,以下内容也没有。
[]
对于这两个图像,我正在使用
decode(image, scan_locations=True)
我想知道我需要做什么才能让 pyzbar 解码我的二维码图像?
最佳答案
使用 OpenCV
将图像阈值化为黑白,然后 pyzbar
能够解码 QR 码。
首先,使用以下代码对图像进行阈值处理。
from pyzbar import pyzbar
import argparse
import numpy as np
import cv2
image =cv2.imread("QRCode.png")
# thresholds image to white in back then invert it to black in white
# try to just the BGR values of inRange to get the best result
mask = cv2.inRange(image,(0,0,0),(200,200,200))
thresholded = cv2.cvtColor(mask,cv2.COLOR_GRAY2BGR)
inverted = 255-thresholded # black-in-white
以下是处理后的图片
与,
barcodes = pyzbar.decode(inverted)
print (barcodes)
打印结果显示解码类型为QRCODE
,数据为GOAL
。
[Decoded(data='GOAL', type='QRCODE', rect=Rect(left=5, top=13, width=228, height=212),
polygon=[Point(x=5, y=222), Point(x=233, y=225), Point(x=220, y=19), Point(x=13, y=13)])]
希望这对您有所帮助。
关于python - 使用相机图像从 Pyzbar 检测 QR 码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50080949/
我想制作一个脚本来检测和读取照片中的二维码。我想为此使用 PyZbar,但我遇到了一些错误。 我在谷歌合作实验室工作 !sudo apt install tesseract-ocr !pip inst
Win 10 x64、Python 2.7、Spyder IDE 我正在使用 Adrian Rosebrock 的 OpenCV 博客中的一些代码... import pyzbar import cv
我想在 Ubuntu/Linux 上解码二维码。我安装了库并启动了代码。结果是一个空数组。在我的 Windows 设备上,结果是正确的代码数据。任何人都可以在 linux 设备上尝试代码,如果它有效,
我正在使用 Python 2.7 进行编码,我需要实现一个过程,在该过程中我将读取 PDF,然后获取文档第一页的图像,然后从包含两个条形码的图像中获取两者的值。到目前为止,这是我一直在研究的两个功能(
我正在尝试使用 pyzbar 模块从扫描的 QR 码中获取坐标。如果我使用下面的代码来执行此操作: test = decode(img) print(test) 我得到以下结果: [解
我刚刚开始熟悉 Pyzbar 库,但是在使用 decode 方法时出现错误。这是代码: import cv2 import numpy as np import pyzbar code_image =
我一直在尝试使用 Python 和 pyzbar 从图像中读取一些条形码。不幸的是,这些图像是在一些限制条件下从几英尺远的地方拍摄的,我无法将相机移动或缩放得更近。是否可以使用任何现有的 Python
我在使用 Pyzbar 检测二维码时遇到问题。在完美的情况下,我能够使用原始 png 图像检测 QR 码。但是,当我从相机拍摄视频,然后将该帧保存为图像时,pyzbar 无法检测到 QR 码。 例如,
我收到 FileNotFoundError: Could not find module 'C:\Users\new user.LAPTOP-5GLT5PL6\PycharmProjects\pyth
我是一名优秀的程序员,十分优秀!