源代码下载(需要安装Emgu CV,安装方法请百度)

很多朋友使用Emgu CV遇到CvInvoke()的报错,我找到一种解决方法。

把EmguCV目录下bin里面的所有dll复制到C:\WINDOWS\SYSTEM32文件夹下,这样就OK了。

如果还不OK,试试把dll复制到程序目录(\Debug)下。

我这是玩玩而已,欢迎高手指教,但别说我这没意思。hello world也没意思,每天无数人照写。

刚刚学着老外的作品做了一个。嗯,没错,自从有了Emgu CV,模式识别的做法和模式简直成了标准。

当然,这给我这样图像处理还给老师很多年的差生来说,是个福音。

人脸识别特指利用分析比较人脸视觉特征信息进行身份鉴别的计算机技术。

人脸识别是一项热门的计算机技术研究领域,它属于生物特征识别技术,是对生物体(一般特指人)本身的生物特征来区分生物体个体。

我预期的设计目标是

  1. 检测人脸
  2. 学习检测到的人脸
  3. 利用学习库认人
  4. 支持摄像头和图片文件输入

做了1个多小时,目前只支持摄像头。已经完成了1、2、3功能,有些使用上的细节还没有调整。

效果如下(用了火箭队的图,其实我真心不是篮球迷)

已知bug

  1. 误识,如果学习库容量太少,那么会出现把好几个人认成同一个人,随着容量增大问题消失
  2. 重复识别,对认人来说不影响(认出2次和认出1次有太大区别吗)
  3. 功能不全(我只能说请看本贴标题)

使用方法

  1. 确定你要有摄像头
  2. 选择webcam模式
  3. 建议选择「auto stop」在识别出内容后会自动停止
  4. 「start/stop」开始/暂停
  5. 「Learn」可以吧识别到的(如果你觉得效果好)脸存起来
  6. 给脸改名字(Emgu CV的Draw方法绘制的文字是不支持中文的,使用下面的代码完成中文人名绘制)
  7. 在摄像头面前跑跑,看能不能认出你来。
绘制中文人名
Dictionary<string, Rectangle> foundPeople = new Dictionary<string, Rectangle>(); float xfactor;
float yfactor; private void imageBox_Paint(object sender, PaintEventArgs e)
{
if (foundPeople.Count > )
{
// 缩放
xfactor = (float)imageBox.Width / (float)current.Bitmap.Width;
yfactor = (float)imageBox.Height / (float)current.Bitmap.Height; foreach (string name in foundPeople.Keys)
{
e.Graphics.DrawString(
name,
this.Font,
Brushes.Red,
foundPeople[name].X * xfactor,
foundPeople[name].Y * yfactor);
}
}
}

效果如下

(全文完)

 
 
 
标签: C#图形机器视觉

可学习的多人人脸识别程序(基于Emgu CV)的更多相关文章

  1. 关于运行“基于极限学习机ELM的人脸识别程序”代码犯下的一些错误

    代码来源 基于极限学习机ELM的人脸识别程序 感谢文章主的分享 我的环境是 win10 anaconda Command line client (version 1.6.5)(conda 4.3.3 ...

  2. 基于Dlib、OpenCV开发人脸识别程序的开发建议

    前言 在去年十月的时候参加了一个小比赛,做了一个人脸识别程序并很意外地获得省里面的一等奖,视频演示链接在这里,有同学想要做这方面的毕业设计or课程设计,发一篇博客来分享一下当时的开发过程. 视频演示链 ...

  3. Dome 多人人脸识别 face_recognition

    Dome 多人人脸识别 face_recognition 注意 face_recognition 依赖 face_recognition_models 中文字体文件需要自己下载 1.多人人脸识别 # ...

  4. 人脸识别系统 —— 基于python的人工智能识别核心

    起因 自打用python+django写了一个点菜系统,就一直沉迷python编程.正好前几天公司boss要我研究一下人脸识别,于是我先用python编写了一个人脸识别系统的核心,用于之后的整个系统. ...

  5. 【从零学习openCV】IOS7人脸识别实战

    前言 接着上篇<IOS7下的人脸检測>,我们顺藤摸瓜的学习怎样在IOS7下用openCV的进行人脸识别,实际上非常easy,因为人脸检測部分已经完毕,剩下的无非调用openCV的方法对採集 ...

  6. ng-深度学习-课程笔记-14: 人脸识别和风格迁移(Week4)

    1 什么是人脸识别( what is face recognition ) 在相关文献中经常会提到人脸验证(verification)和人脸识别(recognition). verification就 ...

  7. 腾讯云技术专家卢萌凯手把手教你Demo一个人脸识别程序!

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文来自腾讯云技术沙龙,本次沙龙主题为Serverless架构开发与SCF部署实践 卢萌凯:毕业于东南大学,曾就职于华为,熟悉云行业解决方案 ...

  8. ubuntu16.04环境下安装配置openface人脸识别程序

    参考http://blog.csdn.net/weixinhum/article/details/77046873 最近项目需要用到人脸训练和检测的东西,选用了OpenFace进行,因而有此文. 本人 ...

  9. 基于opencv的人脸识别程序

    1. 解析opencv自带人脸识别源码(……/opencv-3.1.0/samples/cpp/facedetect.cpp) @ 操作系统:Ubuntu 15.04 OpenCV版本:3.1.0 # ...

随机推荐

  1. redmine一键安装包下载链接

    windows版本一键安装包:<bitnami-redmine-3.1.1-1-windows-installer.exe> 下载地址:http://pan.baidu.com/s/19D ...

  2. visio2010去除直线交叉处的跨线

    设计(最上方)->连接线(最右侧)->显示跨线(取消打钩)

  3. 概率图模型之有向图与无向图之间的关系 I map D map perfect map(完美图) 概念

    我们已经讨论了有向图和无向图框架下的概率模型,那么我们有必要讨论一下它们二者的关系.

  4. nginx + tomcat

    http://blog.csdn.net/sun305355024sun/article/details/8620996

  5. android系统平台显示驱动开发简要:LCD驱动调试篇『四』

    平台信息: 内核:linux3.4.39系统:android4.4 平台:S5P4418(cortex a9) 作者:瘋耔(欢迎转载,请注明作者) 欢迎指正错误,共同学习.共同进步!! 关注博主新浪博 ...

  6. Lambda表达式 =>(msdn)

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  7. Android开发之多线程下载、断点续传、进度条和文本显示

    代码实现了在Android环境下的多线程下载.断点续传.进度条显示和文本显示百分数: import java.io.BufferedReader; import java.io.File; impor ...

  8. 菜单练习-关机&取消

    #include<stdio.h> #include<string.h> #include<stdlib.h> #include<time.h> voi ...

  9. Repeater实例应用

    在实际开发过程中,涉及到数据绑定,分页,以及一对多展示数据时,遇到这样的需求我们怎么解决呢?下面以帖子展示来逐一说明. 帖子主要由两部分组成,第一部分是发帖人的原创内容部分,第二部分是用户评论部分,这 ...

  10. 异步加载DOM造成的高度问题造成iScroll不能滚动

    今天在使用iscroll4 做一个简单触屏滚动demo,发现上下拖动的时候总是会回弹,不能看到下面的内容.这个问题苦恼了很久,终于解决,下来就分享一下: 我的需求是这样的: 1.获取json数据app ...