使用OpenCV中的haar級聯分類器實現人臉識別

2021-10-10 08:13:34 字數 1386 閱讀 4851

**實現

# 匯入模組

import cv2

#載入一張待檢測的人臉(人臉歪著可能檢測不到)

)# xml載入有兩種方法

# 載入人臉檢測的xml(第一種方法)

face_cascade = cv2.cascadeclassifier(

)# 先例項化乙個物件

# 這裡是你的xml存放路徑!!!(這個是載入人臉識別的引擎)

face_cascade.load(

'g:\anaconda3\opencv-master\data\haarcascades\haarcascade_frontalface_default.xml'

)# 載入人眼識別的xml(第二種方法)

# 直接載入xml的存放路徑

eye_cascade = cv2.cascadeclassifier(

'g:\anaconda3\opencv-master\data\haarcascades\haarcascade_eye.xml'

)# 開始人臉檢測

faces = face_cascade.detectmultiscale(img, scalefactor=

1.3, minneighbors =5)

# 先複製一張

img1 = img.copy(

)# 在檢測到的人臉中操作

for x,y,w,h in faces:

# 畫出人臉框

img2 = cv2.rectangle(img1,

(x,y)

,(x+w,y+h),(

0,255,0)

,2)# 找出人臉區域

face_area = img2[y:y+h, x:x+w]

# 在人臉區域檢測人眼

eyes = eye_cascade.detectmultiscale(face_area, scalefactor=

1.3, minneighbors=5)

for ex,ey,ew,eh in eyes:

cv2.rectangle(face_area,

(ex,ey)

,(ex+ew,ey+eh),(

0,0,

255),1

)cv2.imshow(

'img'

, img2)

cv2.waitkey(0)

cv2.destroyallwindows(

)

detectmultiscale:簡單介紹

輸出結果

opencv中haar特徵檢測人臉(適合小白)

本文的例程是我第一次用opencv自帶的利用haar特徵人臉識別的分類器檔案進行人臉檢測的收穫,注意,前提是已經有了分類器檔案xml,僅僅是利用它來進行檢測的過程。希望能幫到有需求的人 haar特徵的人臉檢測 使用opencv自帶的xml分類器檔案 問題 1.分類器檔案的載入,使用的是opencvc...

OpenCV中OpenMP的使用

vs2010中呼叫openmp,並新增標頭檔案 include 出處 include stdafx.h include cv.h include highgui.h include include include pragma comment lib,opencv core2410d.lib pra...

opencv中gpu模組的使用

cuda基本使用方法 在介紹opencv中gpu模組使用之前,先回顧下cuda的一般使用方法,其基本步驟如下 1.主機 執行 2.傳輸資料到gpu 3.確定grid,block大小 4.呼叫核心函式,gpu執行程式 5.傳輸結果到cpu 6.繼續主機 執行。下圖是兩個向量相加的簡單示例程式和處理流圖...