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

级联分类器即为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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • webstorm根据eslint保存的时候格式化代码

    webstorm根据eslint保存的时候格式化代码前言:用webstrom把vue项目设置eslint规则,然后保存的时候根据eslint规则格式化当前组件的代码目录:操作步骤:(参考入口)1、点击settings->pluings->搜索eslint->Install安装​​2、安装好之后,找到settings中ESLint,选中,就会进入配置页面,3、到这一步,实际规则已经配置好了,下来就是调用的问题了,搜索keymap,然后把右边的去掉,改成esli,就可以看到FixESLintP…

    2022年6月6日
    59
  • jar 解压war_war包解压命令

    jar 解压war_war包解压命令文章来源:java实现可压缩或解压缩WAR文件packageutils;importjava.io.BufferedInputStream;importjava.io.BufferedOutputStream;importjava.io.File;importjava.io.FileInputStream;importjava.io.FileNotFoundException;impo…

    2022年10月5日
    1
  • Macbook OBS 录制系统声音

    Macbook OBS 录制系统声音安装好OBS软件下载并安装soundflower软件,也可以在GitHub中下载打开midi音频设置构建多输出设备例如,我现在是带着外置耳机,并且录制系统声音,那么多输出设备就勾选这两个配置完成后,我们可以右键选择该设备用于声音输出最后在OBS软件中选择桌面音频即可,点击Soundflower…

    2022年5月27日
    55
  • 用户测试用例模板「建议收藏」

    用户测试用例模板「建议收藏」用户测试用例模板

    2022年7月17日
    15
  • Pacemaker+corosync实现高可用集群

    Pacemaker+corosync实现高可用集群一 Pacemaker 和 corosync 概述 Pacemaker 心脏起搏器 是一个集群管理资源器 但是其不提供心跳信息 pacemaker 是一个延续的 CRM Pacemaker 到了 V3 的版本以后拆分了多个项目 其中 pacemaker 就是拆分出来的资源管理器 Heart3 0 拆分之后的组成部分 Heartbeat 将原来的消息通信层独立为 heartbeat 项目 新的 hea

    2025年10月14日
    2
  • kill命令杀死所有进程_ubuntu杀死进程命令

    kill命令杀死所有进程_ubuntu杀死进程命令常规篇: 首先,用ps查看进程,方法如下:$ps-ef……smx      1822    1 011:38?       00:00:49gnome-terminalsmx      1823 1822 011:38?       00:00:00gnome-pty-helpersmx      1824 1822 011:38

    2022年9月21日
    3

发表回复

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

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