19. OpenCV--人臉檢測

》》點(diǎn)贊,收藏+關(guān)注,理財(cái)&技術(shù)不迷路《《

記住知識:HAAR與LBP數(shù)據(jù),我們得知道從哪里獲取數(shù)據(jù)。OpenCV人臉檢測-Haar級聯(lián)和LBP,這里不展開細(xì)講,直接上使用過程應(yīng)用過程。

"""

使用Haar分類器進(jìn)行面部檢測

1. 簡單介紹Haar特征分類器對象檢測技術(shù)

????它是基于機(jī)器學(xué)習(xí)的,通過使用大量的正負(fù)樣本圖像訓(xùn)練得到一個(gè)cascade_function,最后再用它來做對象檢測。

????如果你想實(shí)現(xiàn)自己的面部檢測分類器,需要大量的正樣本圖像(面部圖像)和負(fù)樣本圖像(不含面部的圖像)來訓(xùn)練分類器。

????可參考https://docs.opencv.org/2.4/doc/user_guide/ug_traincascade.html,這里不做介紹,現(xiàn)在我們利用

????OpenCV已經(jīng)訓(xùn)練好的分類器,直接利用它來實(shí)現(xiàn)面部和眼部檢測。


2. 主要步驟:

????1)加載xml分類器,并將圖像或者視頻處理成灰度格式 cv.CascadeClassifier()

????2)對灰度圖像進(jìn)行面部檢測,返回若干個(gè)包含面部的矩形區(qū)域 Rect(x,y,w,h)face_detector.detectMultiScale()

????3)創(chuàng)建一個(gè)包含面部的ROI,并在其中進(jìn)行眼部檢測


3. 重要方法分析:def detectMultiScale(self, image, scaleFactor=None, minNeighbors=None, minSize=None, maxSize=None)

????原理:檢測輸入圖像在不同尺寸下可能含有的目標(biāo)對象

#minSize – Minimum possible object size. Objects smaller than that are ignored.

#maxSize – Maximum possible object size. Objects larger than that are ignored.

????入?yún)ⅲ?/p>

????????1)image:輸入的圖像

????????2)scaleFactor:比例因子,圖像尺寸每次減少的比例,要大于1,這個(gè)需要自己手動調(diào)參以便獲得想要的結(jié)果

????????3)minNeighbors:最小附近像素值,在每個(gè)候選框邊緣最小應(yīng)該保留多少個(gè)附近像素

????????4)minSize,maxSize:最小可能對象尺寸,所檢測的結(jié)果小于該值會被忽略。最大可能對象尺寸,所檢測的結(jié)果大于該值會被忽略

????返回:若干個(gè)包含對象的矩形區(qū)域

"""

可以基于HAAR也可以基于LTP的檢測,下面是以HAAR為例來檢測:

通過攝像頭人臉檢測:

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容