影響adaboost人臉檢測訓練演算法速度很重要的兩方面是特徵選取和特徵計算。選取的特徵為矩特徵為haar特徵,計算的方法為積分圖。
(1)haar特徵:
haar特徵分為三類:邊緣特徵、線性特徵、中心特徵和對角線特徵,組合成特徵模板。特徵模板內有白色和黑色兩種矩形,並定義該模板的特徵值為白色矩形畫素和減去黑色矩形畫素和。在確定了特徵形式後 harr- like特徵的數量就取決於訓練樣本影象矩陣的大小,特徵模板在子視窗內任意放置,一種形態稱為一種特徵,找出所有子視窗的特徵是進行弱分類訓練的基礎。
(2)積分圖:
積分圖(integral image)主要的思想是將影象從起點開始到各個點所形成的矩形區域畫素之和作為乙個陣列的元素儲存在記憶體中,當要計算某個區域的畫素和時可以直接索引陣列的元素,不用重新計算這個區域的畫素和,從而加快了計算。「積分圖"能夠在多種尺度下,使用相同的時間來計算不同的特徵,因此大大提高了檢測速度。
目標檢測方法最初由paul viola [viola01]提出,並由rainer lienhart [lienhart02]對這一方法進行了改善. 首先,利用樣本(大約幾百幅樣本)的 harr 特徵進行分類器訓練,得到乙個級聯的boosted分類器。訓練樣本分為正例樣本和反例樣本,其中正例樣本是指待檢目標樣本(例如人臉或汽車等),反例樣本指其它任意,所有的樣本都被歸一化為同樣的尺寸大小(例如,20x20)。
分類器訓練完以後,就可以應用於輸入影象中的感興趣區域(與訓練樣本相同的尺寸)的檢測。檢測到目標區域(汽車或人臉)分類器輸出為1,否則輸出為0。為了檢測整副影象,可以在影象中移動搜尋視窗,檢測每乙個位置來確定可能的目標。為了搜尋不同大小的目標物體,分類器被設計為可以進行尺寸改變,這樣比改變待檢影象的尺寸大小更為有效。所以,為了在影象中檢測未知大小的目標物體,掃瞄程式通常需要用不同比例大小的搜尋視窗對進行幾次掃瞄。
分類器中的「級聯」是指最終的分類器是由幾個簡單分類器級聯組成。在影象檢測中,被檢視窗依次通過每一級分類器,這樣在前面幾層的檢測中大部分的候選區域就被排除了,全部通過每一級分類器檢測的區域即為目標區域。目前支援這種分類器的boosting技術有四種: discrete adaboost, real adaboost, gentle adaboost and logitboost。"boosted" 即指級聯分類器的每一層都可以從中選取乙個boosting演算法(權重投票),並利用基礎分類器的自我訓練得到。基礎分類器是至少有兩個葉結點的決策樹分類器。 haar特徵是基礎分類器的輸入,主要描述如下。目前的演算法主要利用下面的harr特徵。
每個特定分類器所使用的特徵用形狀、感興趣區域中的位置以及比例係數(這裡的比例係數跟檢測時候採用的比例係數是不一樣的,儘管最後會取兩個係數的乘積值)來定義。例如在第三行特徵(2c)的情況下,響應計算為覆蓋全部特徵整個矩形框(包括兩個白色矩形框和乙個黑色矩形框)象素的和減去黑色矩形框內象素和的三倍。每個矩形框內的象素和都可以通過積分圖象很快的計算出來。(察看下面和對cvintegral的描述). 通過haa***cedetect 的演示版可以察看目標檢測的工作情況。
關於人臉檢測中的Haar特徵提取
關於人臉檢測中的haar特徵提取 影響adaboost人臉檢測訓練演算法速度很重要的兩方面是特徵選取和特徵計算。選取的特徵為矩特徵為haar特徵,計算的方法為積分圖。1 haar特徵 haar特徵分為三類 邊緣特徵 線性特徵 中心特徵和對角線特徵,組合成特徵模板。特徵模板內有白色和黑色兩種矩形,並定...
opencv中haar特徵檢測人臉(適合小白)
本文的例程是我第一次用opencv自帶的利用haar特徵人臉識別的分類器檔案進行人臉檢測的收穫,注意,前提是已經有了分類器檔案xml,僅僅是利用它來進行檢測的過程。希望能幫到有需求的人 haar特徵的人臉檢測 使用opencv自帶的xml分類器檔案 問題 1.分類器檔案的載入,使用的是opencvc...
Task03 Haar特徵描述運算元 人臉檢測
3.1簡介 haar like特徵最早是由papageorgiou等應用於人臉表示,在2001年,viola和jones兩位大牛發表了經典的 rapid object detection using a boosted cascade of features 和 robust real time f...