<!-- 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>
是什么?
我认为每个弱分类器都与一个类似哈尔的特征匹配
但是当我看到这个XML代码时,有两个节点,我很困惑。
结束我没有得到right / left_node或right / left_val也意味着什么。
答案 0 :(得分:0)
您可以采用不同的方式训练样本。一种方法是使“nsplits”选项小于2,其中只生成根节点,每个根节点对应一个haar特征,但如果“nsplits”大于1,则将根节点拆分为叶节点使得根节点+叶节点= nsplits值并且具有与以回归决策树形式(CART)排列的每个“节点”相关联的1个哈尔特征。
简单地回答你的问题,即使在这里,每个分类器都是一个haar功能,但是以具有多于1片叶子的desision树形式排列。对于这个特定的例子,训练是用nsplits = 2完成的。
答案 1 :(得分:0)
OpenCV代码不适用于Viola-Jones特定算法,因此XML文件具有树状结构,而Viola-Jones具有多个阶段的线性结构。简而言之,您会发现每个根节点都是一个阶段,当然内部节点是特征,而每个特征都有2或3个矩形。