Opencv学习笔记 基于HOG和SVM的行人检测

一、概述

        OpenCV提供了一个基于HOG和SVM且经过训练的行人检测器。和级联分类器一样,可以用这个SVM分类器以不同尺度的窗口扫描图像,在完整的图像中检测特定物体。

1、代码参考

        窗口步长决定了这个128×64的模板(getDefaultPeopleDetector()内置的是128×64大小的模板)在图像上移动的方式(这里是水平和垂直方向每次移动4个像素)。

        步长越大,检测速度就越快(因为计算的窗口少),但是可能会丢失窗口之间的行人。填充图像参数只是为了在图像边框上添加一些像素,以便检测到图像边缘的行人。

        SVM分类器的标准阈值是0(1表示正样本,-1表示负样本)。如果你要确保检测到的图片一定有一个人,可以提高阈值(这意味着提高检测准确度,但可能会漏掉一些人);反之,如果要确保检测到所有行人(即希望有较高的召回率),那就要降低阈值,但这样可能会有更多的错误结果。

        另外有一点很重要,在完整的图像上使用分类器时,会在连续的位置上使用多个窗口,这样就会在正样本附近得到多个检测结果。当同一位置上有两个或两个以上矩形时,最好只保留一个。函数cv::groupRectangles可以把位置相近、大小相似的矩形合并(detectMultiScale会自动调用该函数)。实际上,如果在同一位置检测到多个结果,甚至可以据此判定这个位置真的有正实例。基于这种现象,cv::groupRectangles函数中可以设定一个最小集群值,超过这个值就判定结果为真实的(孤立的检测结果将会被丢

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

坐望云起

如果觉得有用,请不吝打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值