我正在尝试使用 python 通过 rasp 读取数据矩阵代码。
我正在使用 pylibdmtx 来阅读代码,但它只适用于我的笔记本电脑。当我将相同的代码放在覆盆子上时,它无法读取代码。目前我的覆盆子只能读取二维码和条形码。
我有两个 rasp 一个带有 raspbian,另一个带有 ubuntu 核心,这两个都不起作用。
下面的示例代码
import cv2
import time
from pylibdmtx.pylibdmtx import decode
data = None
video = cv2.VideoCapture(0)
video.set(cv2.CAP_PROP_FPS, 19)
while video.isOpened():
time.sleep(1/9)
ret, frame = video.read()
if ret is False:
break
decodeObjects = decode(frame,
timeout=1000,
max_count=1,
corrections=3)
for obj in decodeObjects:
if obj.data:
data = obj
if data:
break
video.release()
cv2.destroyAllWindows()
print(data)
最佳答案
pylibdmtx 只是 的包装器libdmtx .要使其工作,您必须先安装 native 库。
.whl 文件已包含适用于 Windows 的 .DLL 文件:
至于 macOS 和 Linux,您可以通过命令行工具安装该库。
Mac OS X :
brew install libdmtx
Linux :
sudo apt-get install libdmtx0a
我想 没有预建库树莓派 .所以你可以自己构建它。这是源代码:
https://github.com/dmtx/libdmtx
采取 3 个步骤来构建和安装 libdmtx 库:
$ ./configure
$ make
$ sudo make install
安装 libdmtx 库后,您的 Python 代码应该可以工作。
关于python-3.x - 带有覆盆子的数据矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59989893/