在哈尔级联训练中,numPos可以是负数

时间:2017-06-02 21:08:40

标签: opencv haar-classifier

我正在尝试自己的haar级联分类器我有2139个正面图像但是我有16000个负面图像这是对的吗?所以我有一个负数numPos 因为:  numPos< =(阳性样本 - 阴性样本)/(1+(阶段编号-1)(1-minhitrate)))  所以:   (2139-16000)/(1+(17-1)(1-0.995))= - 12834  这是正常的??

1 个答案:

答案 0 :(得分:1)

不,numPos与您的阴性样本无关。 numPos是您希望在每个阶段中使用的正数。这必须略低于您的阳性样本总数,因为您将在每个阶段丢失所有假阴性(=分类器不再错误地检测到的阳性样本)。

例如,如果您将numPos设置为1000并将minHitRate设置为0.999,则每个阶段最多会丢失1个正样本(1000 - 1000 * 0.999)。因此,如果要计算2个阶段,在选择numPos = 1000时,最多需要1001个样本。

对于20个阶段,我大致选择numPos为90%的阳性样本,尽管这对于minHitRate 0.999来说过于悲观(非常适合0.995)。如果要计算最佳/最大保存值,openCV Q& A中有一个公式。