大佬教程收集整理的这篇文章主要介绍了OpenCV:良好的训练输出但是级联分类器很差,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
<?xml version="1.0"?> <opencv_storage> <params> <stageType>BOOST</stageType> <featureType>HAAR</featureType> <height>64</height> <width>80</width> <stageParams> <boostType>GAB</boostType> <minHitRate>9.9900001287460327e-01</minHitRate> <maxfalseAlarm>5.0000000000000000e-01</maxfalseAlarm> <weightTrimRate>9.4999999999999996e-01</weightTrimRate> <maxDepth>1</maxDepth> <maxWeakCount>100</maxWeakCount></stageParams> <featureParams> <maxCatCount>0</maxCatCount> <featSize>1</featSize> <mode>ALL</mode></featureParams></params> </opencv_storage>
在最后阶段,Neg计数接受率降至0.000579 – 我认为这意味着0.0579%的阴性样本被错误地归类为阳性,即当他们没有时将其中有狗.换句话说,99.942%的样本被正确识别.这对我来说似乎是非常好的数字,但是当我将分类器.xml文件插入到面部检测程序中时,结果非常糟糕.这是用于分析完全黑色图像的分类器的图片(设备的相机平放在工作台上以防止任何光线进入):
(想象一下黑色的屏幕,几个绿色的矩形边框随机定位,有些重叠.可悲的是,似乎我没有必要的声誉来发布真实的东西…)
我对修正分类器的最佳猜测是,我需要使用更大的负面和正面样本池进行重新训练.
我真正想知道的是:为什么验收比率和分类器的真实性能如此不同?我误解了接受率的含义吗?如果我对比率的理解是正确的,我应该期待什么样的数字会给我一个有效的分类器?
任何帮助将不胜感激.
>训练样本(正片和负片)与测试样品有很大不同.在这种情况下,您应该增加样本数,以获得更好的训练分类器的泛化能力.
>学习的分类器过度使用:在这种情况下,学习阶段达到的接受率非常小(1e-6的顺序).通常当正样本和负样本数量较少时(与阶段数相比),会出现此问题.因此,您可以通过减少阶段数量或增加倾斜样本数量(正面和负面)来避免过度拟合.
你可以检查两种可能性.我建议你测试其他功能提取方法,如HOG和LBP.为此,您只需将featureType更改为HOG或LBP.
正样本和负样本的数量取决于样本的多样性.这意味着如果您的外观变化较大的对象(在测试图像中),则需要增加正样本数(> 500)以覆盖所有可能的外观(负样本相同).
不要忘记更改用于测试图像的输入参数(min-neighbor,scale,minSize和maxSizE).
以上是大佬教程为你收集整理的OpenCV:良好的训练输出但是级联分类器很差全部内容,希望文章能够帮你解决OpenCV:良好的训练输出但是级联分类器很差所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。