一、效果展示

二、代码如下

#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. linux网络命令记录
  2. win7环境变量设置
  3. 二叉树的相关性质及其前中后层序遍历实现
  4. android封装aidl接口,Android远端接口AIDL及服务回调用法
  5. mysql启动失败 linux_如何解决MySQL内存不足启动失败的问题
  6. 电商主题BANNER传统促销喜庆红色节日海报,C4D打造时尚场景
  7. 串口速度,RS232与MAX232的区别
  8. 第二阶段冲刺 第四天
  9. C# PDF控件 pdfium、moonpdflib、pdf xchange、福昕、devexpress、aspose、spire
  10. Android多媒体:AudioTrack
  11. 真正决定你成败的,是时间管理!
  12. 使用SQLyog创建表
  13. C/C++求职者必备的20道面试题
  14. oracle 物化视图 on demand,oracle物化视图的两个典型应用场景
  15. Redhat8认证考试(第三题)
  16. Selenium元素定位神器工具谷歌浏览器插件-ChroPath介绍,安装与使用
  17. CVPR2022:计算机视觉中长尾数据平衡对比学习
  18. 滞回比较器 万字形状
  19. 「转」中文文案排版指北
  20. 实时的软件生成 —— Prompt 编程打通低代码的最后一公里?

热门文章

  1. 螺旋锥齿轮电机的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  2. 如何去掉input文本域选中后会出现蓝边框
  3. 用伪元素画横线,并使用一个盒子覆盖一部分
  4. 道路车辆先进驾驶辅助系统ADAS常用略缩语
  5. 腾讯AI Lab 崔乐阳博士忆西湖大学读博期间和张岳导师之间的故事
  6. 一个前端程序员的日常生活
  7. for/for of/for in
  8. imos学习笔记一 sdk开发环境
  9. MSP未来可期,Bespin Global小荷已露尖尖角
  10. (干货)换宝贝技术升级!日销暴涨2000件,SKU改价不降权