[英]Viola-Jones in Python with openCV, detection mouth and nose
[英]haar cascade XML for Viola-jones
<!-- tree 0 -->
-<_>
**<!-- root node -->**
-<feature>
-<rects>
<_>2 7 16 4 -1.</_>
<_>2 9 16 2 2.</_>
</rects>
<tilted>0</tilted>
</feature>
<threshold>4.3272329494357109e-003</threshold>
<left_val>0.0383819006383419</left_val>
<right_node>1</right_node>
</_>
-<_>
**<!-- node 1 -->**
-<feature>
-<rects>
<_>8 4 3 14 -1.</_>
<_>8 11 3 7 2.</_>
</rects>
<tilted>0</tilted>
</feature>
<threshold>0.0130761601030827</threshold>
<left_val>0.8965256810188294</left_val>
<right_val>0.2629314064979553</right_val>
<root node>
和<node 1>
分別是什么?
我認為每個弱分類器都具有一個類似haar的特征
但是當我看到這個XML代碼時,有兩個節點,我很困惑。
結束我也沒有得到right / left_node或right / left_val的意思。
訓練樣本有不同的方法。 一種方法是使“ nsplits”選項小於2,其中僅生成根節點,每個根節點對應於一個haar特征,但是如果“ nsplits”大於1,則將根節點分為葉節點這樣,根節點+葉節點= nsplits值,並具有1個與以回歸決策樹形式(CART)排列的“節點”相關聯的haar特征。
為了簡短地回答您的問題,即使在這里每個分類器都是haar特征,但以具有多個葉子的目標樹形式排列。 對於此特定示例,使用nsplits = 2進行訓練。
OpenCV代碼不是Viola-Jones特定算法的通用代碼,因此XML文件具有樹狀結構,而Viola-Jones具有多個階段的線性結構。 簡而言之,您會發現每個根節點都是一個階段,而內部節點當然是要素,而每個要素都有2或3個矩形。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.