树莓派实验——人脸识别

import numpy as np        #导入numpy科学计算库
import cv2                      #导入OpenCV函数库

#装载人脸识别特征文件
face_cascade = cv2.CascadeClassifier('/usr/local/lib/python3.5/dist-packages/cv2/data/haarcascade_frontalface_alt.xml')

cap = cv2.VideoCapture(0)                       #开启摄像头
scaling_factor = 0.5                            #定义缩小的比例

while True:                                     #定义一个循环
    ret, frame = cap.read()               #获取一个动态图片
    frame = cv2.resize(frame, None, fx=scaling_factor, fy=scaling_factor, interpolation=cv2.INTER_AREA) #缩小动态图片
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)    #转为灰阶

    face_rects = face_cascade.detectMultiScale(gray,1.2,minNeighbors=5) #实现人脸识别

    for (x,y,w,h) in face_rects:  #画矩形框
        cv2.rectangle(frame, (x,y), (x+w,y+h), (255,0,0),2)

    cv2.imshow('Face Detector', frame)          #显示动态人脸识别的结果
    c = cv2.waitKey(1)                          #等待用户按键
    if c == 27:                                 #如果按下Esc键
        break                                   #结束循环

cap.release()                                   #关闭摄像头
cv2.destroyAllWindows()            #关闭所有窗口

你可能感兴趣的:(opencv,python,计算机视觉)