Python OpenCV人臉檢測

2021-09-10 09:20:20 字數 975 閱讀 9992

在 opencv根目錄\sources\data\haarcascades中提供了很多訓練好的分類器,我們使用haarcascade_frontalface_alt.xml分類器。

haar cascade是paul viola和 michael jone在2023年,**」rapid object detection using a boosted cascade of ****** features」提出的一種object detection方法。

import cv2

# 讀入影象

# 載入人臉特徵,該檔案在 python安裝目錄\lib\site-packages\cv2\data 下

face_cascade = cv2.cascadeclassifier(r'haarcascade_frontalface_default.xml')

# 將讀取的影象轉為color_bgr2gray,減少計算強度

gray = cv2.cvtcolor(img, cv2.color_bgr2gray)

# 檢測出的人臉個數

faces = face_cascade.detectmultiscale(gray, scalefactor = 1.15, minneighbors = 5, minsize = (5, 5))

print("face : ".format(len(faces)))

# 用矩形圈出人臉的位置

for(x, y, w, h) in faces:

cv2.rectangle(img, (x, y), (x + w, y + h), (0, 255, 0), 2)

cv2.namedwindow("faces")

cv2.imshow("faces", img)

cv2.waitkey(0)

cv2.destroyallwindows()

Python OpenCV實現簡單的人臉檢測

匯入opencv庫 import cv2 載入特徵分類器 opencv自帶 face cascade cv2.cascadeclassifier haarcascade frontalface default.xml 開啟電腦攝像頭 capture cv2.videocapture 0 獲得攝像頭捕...

python opencv實現人臉和眼睛檢測

coding utf8 import cv2 import time defdetect 定義乙個檢測函式 face cascade cv2.cascadeclassifier d program files opencv opencv sources data haarcascades haarc...

python opencv人臉識別

從影象中提取出區域性特徵,用lbp這種方式提取出的特徵具有較低的維度。會發現影象的表達不受光照變化的影響。區域性二值模式的基本思想是通過比較畫素和它的鄰域歸納出影象的區域性構成。以乙個畫素為中心,與其鄰域進行比較。如果中心畫素的灰度值大於它的鄰域,則將其賦值為1,否則為0.由此,每乙個畫素點最終會得...