(八)基於OpenCV的人臉檢測功能

2021-09-23 23:48:02 字數 1059 閱讀 6319

我們都知道opencv是乙個開源的視覺庫,可以完成很多影象處理的工作,這次我要加入的功能是人臉檢測。從攝像頭獲取的資料中,再每一幀中尋找人臉,並且框處人臉的範圍。注意:這裡的人臉檢測並不是分辨不同的人臉,而是檢測影象中是否存在人臉。

首先我們要採集攝像頭的每一幀資料,這段**在第一章中就已經完成,接下來就是人臉檢測的環節。

我才用了haar級聯運算元進行人臉檢測,這也是opencv中最常用的一種方法,首先我們要宣告乙個級聯分類器

cv::cascadeclassifier facecascade;
有了級聯分類器之後,我們還需要載入級聯檔案,這個檔案在原始碼包的data資料夾下,可以看到有乙個haarcascades命名的資料夾

可以看到,這個資料夾裡面的檔案都是使用haar級聯運算元完成的,包括人臉檢測,人眼、身體,笑臉等等,這些檔案都是官方訓練好的檔案,可以直接使用。當然如果你需要其他的特徵的檢測,也可以自己進行訓練。

這一次我們使用的檔案是haarcascade_frontalface_alt2.xml

將檔案匯入分類器

facecascadename = "/home/project/opencv/test/7/opencv_7/haarcascades/haarcascade_frontalface_alt2.xml";

facecascade.load(facecascadename.tostdstring()

人臉檢測部分的**如下

cv::mat mainwidget::facecasepic(cv::mat img)

return frame;

}

傳入需要檢測的影象,返回框出人臉的影象,如果沒有檢測到人臉,則返回原影象。

基於OpenCV的簡單的人臉檢測

這個是在數字影象處理課程裡面的乙個小實踐內容。參考網上已有 重新配置編譯,效果不錯。人臉識別的庫使用的是haarcascade frontalface檔案,包含在opencv當中的。關鍵部分 如下 本原始碼只為學習交流之用 typersever from gzhu static cvmemstora...

基於opencv3的人臉檢測

目前opencv3中已經有人臉檢測的類了,只要呼叫函式庫的類就行 該程式需要兩個xml檔案,分別是haarcascade frontalface alt.xml和haarcascade eye tree eyeglasses.xml,它們分別是已經通過了大量訓練且能檢測出人臉和眼睛了,只要呼叫即可。...

Python基於OpenCV的人臉檢測並儲存

import cv2cv2.cascadeclassifier cv2.data.haarcascades haarcascade frontalface default.xml coding utf 8 import opencv的庫 import cv2 import os,math,opera...