一、效果展示

二、代码如下

#include <iostream>
#include <opencv2/opencv.hpp>
#include "opencv2/imgproc/imgproc_c.h"
using namespace cv;
using namespace std;//人脸识别
void datectFace(Mat& frame, CascadeClassifier cascade, double scale)
{//灰度化处理 节省内存Mat gray;cvtColor(frame, gray, COLOR_RGB2GRAY);//级联分类器比帧差法还更慢,因此,需要再将灰度图大小压缩一半左右 行列压缩Mat smalling(cvRound(frame.rows / scale), cvRound(frame.cols / scale), CV_8UC1);//按存储大小计算  压缩方式采用线性压缩resize(gray, smalling, smalling.size(), 0, 0, INTER_LINEAR);//直方图均值化 让灰度图经过直方图函数处理 黑白分明equalizeHist(smalling, smalling);//imshow("smalling",smalling);//调用级联分类器进行模型匹配并进行框选识别 使用模型去进行每一个像素点的遍历vector<Rect>faces;//使用CV_HAAR_SCALE_IMAGE算法 图像甄别cascade.detectMultiScale(smalling, faces, 1.1, 2, 0 | CASCADE_SCALE_IMAGE, Size(30, 30));//绘制矩形vector<Rect>::const_iterator iter;//使用到容器迭代器进行遍历for (iter = faces.begin(); iter != faces.end(); iter++){rectangle(frame,cvPoint(cvRound(iter->x * scale), cvRound(iter->y * scale)),//左上cvPoint(cvRound((iter->x + iter->width) * scale), cvRound((iter->y + iter->height) * scale)),//右下Scalar(0, 0, 255), 2, 8//颜色 像素位);}imshow("frame", frame);
}int main(int argc, char* argv[])
{//级联分类器对象CascadeClassifier cascade;//读取级联分类器cascade.load("D:/桌面上的文件/opencv/sources/data/haarcascades/haarcascade_frontalface_alt.xml");Mat frame;//视频路径的获取VideoCapture cap(0);while (cap.read(frame)){//将读到的帧进行显示imshow("frame", frame);//检测识别 图像 级联分类器 比例datectFace(frame, cascade, 2);waitKey(3);}return 0;
}

OpenCV人脸识别:识别是否是人脸,是的话用红线把人脸框出来相关推荐

  1. Python基于OpenCV的人脸表情识别系统[源码&部署教程]

    1.项目背景 人脸表情识别是模式识别中一个非常重要却十分复杂的课题.首先对计算机人脸表情识别技术的研究背景及发展历程作了简单回顾.然后对近期人脸表情识别的方法进行了分类综述.通过对各种识别方法的分析与 ...

  2. Python人脸微笑识别2-----Ubuntu16.04基于Tensorflow卷积神经网络模型训练的Python3+Dlib+Opencv实现摄像头人脸微笑检测

    Python人脸微笑识别2--卷积神经网络进行模型训练目录 一.微笑数据集下载 1.微笑数据集下载 2.创建人脸微笑识别项目 3.数据集上传至Ubuntu人脸微笑识别项目文件夹 二.Python代码实 ...

  3. QT OpenCV人脸考勤识别

    前言 突发奇想 要做一个人脸考勤系统 我编译的是最新的OpenCV3.4.17的库 这玩意编译了一晚上 这玩意我也很想写一个 Mingw32 OpenCV的编译 但是这个有可能我没报错的地方你们报错了 ...

  4. 树莓派4B爽上流安装python3的OpenCV(人脸检测识别—门禁“环境搭建篇”)

    树莓派4B安装OpenCV3.4.0人脸检测识别-门禁"环境搭建篇" 前言 一.准备工作 PC端软件 二.搭建树莓派环境 拓展TF内存卡 Tips:换源(python软件源) 修改 ...

  5. OpenCV人脸笑容识别

    OpenCV人脸笑容识别 一.JavaOpenCV环境搭建 二.人脸笑容识别 一.JavaOpenCV环境搭建 1.OpenCV下载 OpenCV官网:https://opencv.org/ 2.导入 ...

  6. JavaCV进阶opencv图像检测识别:摄像头图像人脸检测

    JavaCV免费教程目录: JavaCV入门教程(免费JavaCV教程) javacv实战专栏目录(2016年更新至今): JavaCV实战专栏文章目录(2016年更新至今) 2022年最新JavaC ...

  7. JavaCV进阶opencv图像检测识别:ffmpeg视频图像画面人脸检测

    JavaCV免费教程目录: JavaCV入门教程(免费JavaCV教程) javacv实战专栏目录(2016年更新至今): JavaCV实战专栏文章目录(2016年更新至今) 2022年最新JavaC ...

  8. opencv看图像同导致 python_OpenCV-Python速查:从载入图片到人脸识别

    resized = cv2.resize(img, dim, interpolation = cv2.INTER_AREA) viewImage(resized, "After resizi ...

  9. OpenCV中LBPH人脸识别器识别人脸实战(附Python源码)

    需要源码和图片请点赞关注收藏后评论区留言私信~~~ Local Binary Pattern Histofram简称LBPH,即局部二进制模式直方图,这是一种基于局部二进制模式算法,这种算法善于捕获局 ...

最新文章

  1. Python运维自动化psutil 模块详解(超级详细)
  2. 【thymeleaf】【SpringBoot】Thymeleaf 获取.properties中的配置项变量
  3. Python基础(5) - 文件
  4. UVA10474 Where is the Marble?
  5. Javascript获取文件自身URL路径
  6. Android之常用开发框架
  7. 判断IE版本与各浏览器的语句
  8. dubbo源码解析(二)
  9. Git和GitHub快速入门
  10. comparator接口_8000字长文让你彻底了解 Java 8 的 Lambda、函数式接口、Stream 用法和原理
  11. cisco LAP upgrade to Fat AP
  12. 2021年下半年系统集成项目管理工程师案例分析真题及答案解析
  13. MTK 驱动---(10) emmc总线
  14. exce小技巧,Mac Excel单元格内换行快捷键
  15. python实现将字符串转化为数字(逆序输出)
  16. Description: 80010105 / 服务器出现意外情况。【亲测可用】
  17. ATmega / AVR单片机型号标识规则及选型
  18. 字节跳动开源隐私合规检测工具appshark
  19. 供参考的the-gan-zoo,列出的GAN相关模型和论文
  20. 读书有益——》关于雪下很大的成语

热门文章

  1. 用Arduino让无源蜂鸣器响起来,并演奏《葫芦娃》。
  2. Servlet系列学习笔记14 --- Servlet文件上传和下载(一)
  3. 微软Azure PowerShell使用指南(2) - 控制虚拟机
  4. 靠手机软件免流是真的吗?什么原理?
  5. 企业微信中如何开启远程协助
  6. 使用win+e打开资源管理器时在原窗口中打开
  7. zara、hm、优衣库门店分布分析
  8. Houdini基础2
  9. 《C++捷径教程》学习笔记【一】:虚函数
  10. python基础教程知识点_Python基础教程学习应该掌握的知识点总结