Python调用PC摄像头实现扫描二维码(python调用电脑摄像头)燃爆了

随心笔谈2年前发布 编辑
160 0
🌐 经济型:买域名、轻量云服务器、用途:游戏 网站等 《腾讯云》特点:特价机便宜 适合初学者用 点我优惠购买
🚀 拓展型:买域名、轻量云服务器、用途:游戏 网站等 《阿里云》特点:中档服务器便宜 域名备案事多 点我优惠购买
🛡️ 稳定型:买域名、轻量云服务器、用途:游戏 网站等 《西部数码》 特点:比上两家略贵但是稳定性超好事也少 点我优惠购买

import cv2
from pyzbar import pyzbar
import winsound

# 打开摄像头
cap=cv2.VideoCapture(0)

# 设置窗口名和窗口大小
cv2.namedWindow(‘Scan QR Code’, cv2.WINDOW_NORMAL)
cv2.resizeWindow(‘Scan QR Code’, 800, 600)

# 创建声音提示函数
def beep():
frequency=2500
duration=1000
winsound.Beep(frequency, duration)

while True:
# 读取摄像头画面
_, frame=cap.read()

# 转换为灰度图像
gray=cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

# 检测二维码
barcodes=pyzbar.decode(gray)

# 遍历所有检测到的二维码
for barcode in barcodes:
# 提取二维码的边界框坐标
(x, y, w, h)=barcode.rect

# 在图像中绘制二维码的边界框和文本
cv2.rectangle(frame, (x, y), (x+w, y+h), (0, 0, 255), 2)
cv2.putText(frame, barcode.data.decode(‘utf-8’), (x, y-10), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 0, 255), 2)

# 发出声音提示
beep()

# 输出扫描到的二维码内容
print(barcode.data.decode(‘utf-8’))

# 显示图像
cv2.imshow(‘Scan QR Code’, frame)

# 按下ESC键退出程序
if cv2.waitKey(1)==27:
break

# 释放摄像头资源
cap.release()

# 关闭所有窗口
cv2.destroyAllWindows()

© 版权声明

相关文章