我們都知道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...