opencv扫描二维码的代码
时间: 2023-11-05 08:52:51 浏览: 94
下面是使用OpenCV扫描二维码的示例代码:
```python
import cv2
import pyzbar.pyzbar as pyzbar
# 打开摄像头
cap = cv2.VideoCapture(0)
while True:
# 读取摄像头数据
ret, frame = cap.read()
# 转换为灰度图像
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
# 检测二维码
decoded = pyzbar.decode(gray)
# 遍历检测到的二维码
for d in decoded:
# 绘制二维码边框
cv2.rectangle(frame, (d.rect.left, d.rect.top), (d.rect.left + d.rect.width, d.rect.top + d.rect.height), (0, 255, 0), 2)
# 解码二维码数据
data = d.data.decode('utf-8')
# 绘制二维码数据文本
cv2.putText(frame, data, (d.rect.left, d.rect.top - 5), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 2)
print('Found QR code with data:', data)
# 显示帧图像
cv2.imshow('QR code scanner', frame)
# 等待按键输入
if cv2.waitKey(1) & 0xFF == ord('q'):
break
# 释放摄像头资源
cap.release()
# 关闭所有窗口
cv2.destroyAllWindows()
```
运行上述代码可以打开摄像头,实时检测二维码并解码,将识别到的二维码数据显示在帧图像上,并将数据打印到控制台。按下“q”键退出程序。
阅读全文