Opencv+Python+USB攝像頭 人臉識別

準備工作:

USB攝像頭 接入PC電腦USB口,並調試正常打開視頻;這裏Linux上推薦一款視頻軟件來測試Guvcview,或者其他檢測USB攝像頭正常的軟件都可以。

1、下載模型文件

XML模型庫:https://github.com/opencv/opencv/tree/master/data/haarcascades

1).找到haarcascade_frontalface_default.xml 文件,點擊進去.

2).找到Raw,右鍵鏈接(目標)另存爲。

 

Opencv+Python+USB攝像頭 人臉識別

 

2、利用USB攝像頭,實現人臉識別,並在視頻中框出人臉顯示位置

打開pycharm開發工具,繼續在項目中新建 video.py 文件,video.py 文件代碼如下:

# -*- coding:utf-8 –*-
import cv2
# 調用模型庫文件
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
# 打開內置攝像頭
cap = cv2.VideoCapture(0)
# 設置視頻窗口大小
cap.set(3, 640)
cap.set(4, 480)
faceNum = 0

while True:
    # 讀取視頻幀
    ret, frame = cap.read()
    # 圖像灰度處理
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    # 設定人臉識別參數
    faces = face_cascade.detectMultiScale(gray, scaleFactor=1.3, minNeighbors=3)

    faceNum = len(faces)
    print("人臉數量: %s" % faceNum)

    if len(faces) > 0:
        for faceRect in faces:
            x, y, w, h = faceRect
            # -------- 在人臉周圍繪製矩形
            cv2.rectangle(frame, (x, y), (x + w, y + h), (255, 255, 0), 2)
    
    # 顯示圖像
    cv2.imshow('img', frame)

    # -------- Q鍵推出
    if cv2.waitKey(1) & 0xff == ord('q'):
        break
# 釋放資源
cv2.destroyAllWindows()
cap.release()

攝像頭打開運行結果如下:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章