19. OpenCV--人脸检测

》》点赞,收藏+关注,理财&技术不迷路《《

记住知识:HAAR与LBP数据,我们得知道从哪里获取数据。OpenCV人脸检测-Haar级联和LBP,这里不展开细讲,直接上使用过程应用过程。

"""

使用Haar分类器进行面部检测

1. 简单介绍Haar特征分类器对象检测技术

    它是基于机器学习的,通过使用大量的正负样本图像训练得到一个cascade_function,最后再用它来做对象检测。

    如果你想实现自己的面部检测分类器,需要大量的正样本图像(面部图像)和负样本图像(不含面部的图像)来训练分类器。

    可参考https://docs.opencv.org/2.4/doc/user_guide/ug_traincascade.html,这里不做介绍,现在我们利用

    OpenCV已经训练好的分类器,直接利用它来实现面部和眼部检测。

 

2. 主要步骤:

    1)加载xml分类器,并将图像或者视频处理成灰度格式 cv.CascadeClassifier()

    2)对灰度图像进行面部检测,返回若干个包含面部的矩形区域 Rect(x,y,w,h)face_detector.detectMultiScale()

    3)创建一个包含面部的ROI,并在其中进行眼部检测

 

3. 重要方法分析:def detectMultiScale(self, image, scaleFactor=None, minNeighbors=None, minSize=None, maxSize=None)

    原理:检测输入图像在不同尺寸下可能含有的目标对象

#minSize – Minimum possible object size. Objects smaller than that are ignored.

#maxSize – Maximum possible object size. Objects larger than that are ignored.

    入参:

        1)image:输入的图像

        2)scaleFactor:比例因子,图像尺寸每次减少的比例,要大于1,这个需要自己手动调参以便获得想要的结果

        3)minNeighbors:最小附近像素值,在每个候选框边缘最小应该保留多少个附近像素

        4)minSize,maxSize:最小可能对象尺寸,所检测的结果小于该值会被忽略。最大可能对象尺寸,所检测的结果大于该值会被忽略

    返回:若干个包含对象的矩形区域

"""

可以基于HAAR也可以基于LTP的检测,下面是以HAAR为例来检测:

通过摄像头人脸检测:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值