【问题标题】:Is the threshold of Haar-feature is calculated by the only way, Viola-Jones described in their paper?Haar-feature 的阈值是通过 Viola-Jones 在他们的论文中描述的唯一方法计算的吗?
【发布时间】:2013-10-09 22:19:58
【问题描述】:

我正在实施 Viola-Jones 人脸检测算法,但对 haar 特征阈值有点困惑。我正在使用跟随计算 haar-feature 的阈值。步骤:

a) 计算同一位置的所有正(人脸)图像中的 haar-feature 值。 b) 获取介于最小特征值和平均特征值之间的所有特征值得到列表,MinToAvg = [] c) 对于 MinToAvg 中的每个值,对数据(正和负)进行分类并获得 pos 的数量。图像(Pos.)它分类为面部和误报数(FP)。 d) 特征值被认为是特定特征的阈值 我得到最大值(Pos-FP)。

对于每一轮提升,Haar 特征的阈值保持不变,相反,Viola-Jones 论文中讨论的 Haar 特征的阈值随着每一轮提升而变化。

我的问题是: 1)我在计算 Haar 特征阈值的方法是否正确? 2) 每轮提升的门槛需要改变吗?

我正在使用 Python。

谢谢!

【问题讨论】:

  • 看来您与 Viola 和 Jones 所做的事情相差甚远。你能澄清你的问题吗?很难理解你的意思。
  • 哦,您可能正在寻找的内容在 Freund 和 Schapire 的书“Boosting: Foundations and Algorithms”的第 3.4.2 节中有详细介绍。顺便说一句,您目前可以在亚马逊上预览本书的部分内容。
  • 仔细阅读 Viola 和 Jones 的“鲁棒实时人脸检测”第 3.1 节可能会给您一些启示。此外,您可能会发现阅读“Fast Asymmetric Learning for Cascade Face Detection”第 4.2 节很有用。
  • @Ramiro:我的做法与 Viola-Jones 相同,但阈值计算不同。在“鲁棒实时人脸检测”第 3.1 节中描述的 Viola-Jones 中,Haar 特征的阈值是在每一轮提升中计算的,而我是在提升开始之前计算每个 haar 特征的阈值。对于每个强分类器,这只是一次。每一轮提升对 haar 特征使用相同的阈值。
  • 从您在问题中所写的内容来看,您所做的似乎与 Viola 和 Jones 为设置弱分类器阈值所做的完全不同。我不确定,所以我请你澄清你的解释。像 Viola 和 Jones 的工作中使用的决策树桩在每一轮都设置了阈值,因为训练数据的权重在每一轮提升中都会发生变化。这样一来,您的最佳弱分类器阈值也可能与前几轮有很大不同。你当然可以为每个分类器设置一个固定的阈值,但我敢打赌它的性能会很差。

标签: threshold adaboost haar-wavelet viola-jones


【解决方案1】:

@Ramiro,user2766019:我对你之前的评论有一个疑问。训练权重如何影响阈值?阈值不是仅使用每个训练样本的特征值确定的,然后通过以下公式计算每个特征值的误差吗:

e = MIN((S+) + (T-) - (S-), (S-) + (T+) - (S+))

我的意思是弱分类器(单个特征)的阈值,用于计算错误,作为错误分类样本的权重之和。我是对的还是我在某个地方弄错了?谢谢。

【讨论】:

    猜你喜欢
    • 2016-12-30
    • 2012-04-04
    • 2013-12-01
    • 1970-01-01
    • 2013-11-27
    • 1970-01-01
    • 2017-06-13
    • 2013-09-23
    • 1970-01-01
    相关资源
    最近更新 更多