级联分类器原理(级联器是什么)

级联分类器即为Emgucv中的CascadeClassifier。使用CascadeClassifier来加载一个.xml分类器文件,然后使用DetectMultiScale函数来对图片进行检测。这是DetectMultiScale函数。publicRectangle[]DetectMultiScale(IInputArrayimage,doublescaleFactor=1.

大家好,又见面了,我是你们的朋友全栈君。

级联分类器即为Emgucv中的 CascadeClassifier。使用 CascadeClassifier来加载一个.xml分类器文件,然后使用DetectMultiScale函数来对图片进行检测。
这是DetectMultiScale函数。

public Rectangle[] DetectMultiScale(IInputArray image, double scaleFactor = 1.1, int minNeighbors = 3, Size minSize = default(Size), Size maxSize = default(Size));

第一个参数为待检测的图片,对类型没有要求。
第二个参数为用于缩放的因子。
第三个参数为两个检测到指定物体的最小距离。
第四第五个分别为检测到物体的最小和最大尺寸。

在进行检测时,如果要求检测速度(比如通过摄像头实时检测),那就需要对后面的参数进行修改,要把缩放参数调大点火把最小尺寸调大一点。
代码非常简短

public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();     
            CascadeClassifier haar = new CascadeClassifier("haarcascade_frontalface_default.xml");    //初始化分类器
            Image<Bgr, byte> frame= new Image<Bgr, byte>("e9bbb8525c7da64cd78beed8b237c5e4.jpg");
            Rectangle[] faces = haar.DetectMultiScale(frame, 1.3, 3, new System.Drawing.Size(40, 40));       //检测并将数据储存
            foreach (Rectangle face in faces)
            {
                CvInvoke.Rectangle(frame, face, new Bgr(Color.Red).MCvScalar, 2);  //在检测到的区域绘制红框
            }
            imageBox1.Image = frame;
        }
    }

运行效果图:
这里写图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/127556.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • hashmap基本原理_哈希表的实现原理

    hashmap基本原理_哈希表的实现原理HashMap其实也是一个线性的数组实现的,所以可以理解为其存储数据的容器就是一个线性数组。这可能让我们很不解,一个线性的数组怎么实现按键值对来存取数据呢?这里HashMap有做一些处理。  首先HashMap里面实现一个静态内部类Entry,其重要的属性有key,value,next,从属性key,value我们就能很明显的看出来Entry就是HashMap键值对实现的一个基础bean,我们上面说到HashMap的基础就是一个线性数组,这个数组就是Entry[],Map里面的内容都保存在Ent

    2025年8月12日
    3
  • tabnine 激活码【注册码】

    tabnine 激活码【注册码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月19日
    45
  • 密码库LibTomCrypt学习记录——(2.12)分组密码算法的工作模式——OMAC认证模式

    密码库LibTomCrypt学习记录——(2.12)分组密码算法的工作模式——OMAC认证模式OMACOMAC是一种认证模式,LibTomCrypt中涉及的OMAC,而NIST中提到的是CMAC。它们之间的关系是这样的:为避免基本的MAC算法CBC-MAC存在的安全缺陷,Black和Rogaway对其进行了改进,提出了避免CBC-MAC安全缺陷的XCBC算法。Iwata和Kurosawa对XCBC进一步改进,提出了One-KeyCBC-MAC(OMAC),接着又精益求精地提出了OM…

    2022年7月14日
    19
  • java中使用tika_Tika基本使用

    java中使用tika_Tika基本使用Tika是一个内容抽取的工具集合(atoolkitfortextextracting)。它集成了POI,Pdfbox并且为文本抽取工作提供了一个统一的界面。其次,Tika也提供了便利的扩展API,用来丰富其对第三方文件格式的支持。Tika提供了对如下文件格式的支持:PDF-通过PdfboxMS-*-通过POIHTML-使用nekohtml将不规范的html整理成为xhtml…

    2025年5月29日
    3
  • 公网RTSP视频流「建议收藏」

    公网RTSP视频流「建议收藏」公网RTSP视频流测试地址:rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov

    2022年10月18日
    3
  • SpringBoot面试题及答案 110道(持续更新)

    SpringBoot面试题及答案 110道(持续更新)最新SpringBoot面试题【附答案解析】SpringBoot面试题及答案,SpringBoot最新面试题及答案,SpringBoot面试题新答案已经全部更新完了,有些答案是自己总结的,也有些答案是在网上搜集整理的。这些答案难免会存在一些错误,仅供大家参考。如果发现错误还望大家多多包涵,不吝赐教,谢谢~如果不背SpringBoot面试题的答案,肯定面试会挂!这套SpringBoot面试题大全,希望对大家有帮助哈~博主已将以下这些面试题整理成了一个面试手册,是PDF版的1、SpringBo

    2022年5月12日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号