树莓派zero python+opencv+pyzbar识别二维码

安装cmake
sudo apt-get install build-essential git cmake pkg-config -y

安装opencv(3.2):
sudo apt install python3-opencv

安装zbar:
sudo apt-get install libzbar-dev
pip3 install zbar

安装 pyzbar:
pip3 install pyzbar

import threading
import time

import cv2
from pyzbar import pyzbar
#二维码动态识别
camera=cv2.VideoCapture(0)
camera.set(3,128) #设置分辨率
camera.set(4,128)
camera.set(5,120)
fps = 0

def fun_timer():
    global fps
    print(fps)
    fps = 0
    global timer
    timer = threading.Timer(1,fun_timer)
    timer.start();
  
timer = threading.Timer(1,fun_timer)
timer.start();

while True:
    (grabbed,frame)=camera.read()
    if grabbed:
        fps = fps + 1
    #continue
    #获取画面中心点
    #h1,w1= frame.shape[0],frame.shape[1]
 
    # 纠正畸变(这里把相机标定的代码去除了,各位自行标定吧)
    dst = frame
    #cv2.imshow('dst',dst)
    # 扫描二维码
    text = pyzbar.decode(dst)
    for texts in text:
        textdate = texts.data.decode('utf-8')
        print(textdate)
        (x, y, w, h) = texts.rect#获取二维码的外接矩形顶点坐标
        print('识别内容:'+textdate)
 
    
    if cv2.waitKey(1) & 0xFF == ord('q'):  # 按q保存一张图片
        cv2.imwrite("./frame.jpg", frame)
        break
 
camera.release()
cv2.destroyAllWindows()

你可能感兴趣的:(opencv)