提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 一、概述
  • 二、相关概念
  • 三、实际操作
    • 1.图片检测
    • 2.打开摄像头进行人脸检测

一、概述

`本文为我学习python环境下用opencv检测人脸的内容总结。

二、相关概念

##opencv中提供了三种训练好的级联分类器(通过不同特征进一步筛选,最终得出所属的分类)。在相应的haarcascades、hogcascades、lbpcascades文件夹中分别存放着HAAR、HOG、LBP级联分类器,他们以.xml的文件形式存放在opencv的源文件中。

不同的.xml文件可检测不同的类型,如:眼睛、眼镜、正面人脸、鼻子等。

三、实际操作

1.图片检测

代码如下(示例):

import cv2 as cv
def fac_detect_demo():#人脸检测函数gray=cv.cvtColor(img,cv.COLOR_BGR2GRAY)#图片变为灰度图,人脸特征需在灰度图中查找face_detector=cv.CascadeClassifier('E:/opencv/data/haarcascades/haarcascade_frontalface_default.xml')#通过级联检测器cv.CascadeClassifier,加载特征数据faces= face_detector.detectMultiScale(gray)#在尺度空间对图片进行人脸检测for x,y,w,h in faces:#绘制矩形,cv.rectangle(img,(x,y),(x+w,y+h),color=(23,255,255),thickness=3)#矩形第一个顶点,对角线上另一个顶点,颜色,宽度#cv.circle(img,center=(x+w//2,y+h//2),radius=w//2,color=(23,255,255),thickness=3)圆形绘制
img = cv.imread('filename')
fac_detect_demo()
cv.imshow('detect',img)
cv.waitKey(0)
cv.destroyAllWindows

2.打开摄像头进行人脸检测

代码如下(示例):

import numpy as np
def face_detect_demo(image):gray = cv.cvtColor(image, cv.COLOR_BGR2GRAY)face_detector = cv.CascadeClassifier('E:/opencv/data/haarcascades/haarcascade_frontalface_alt_tree.xml')faces = face_detector.detectMultiScale(gray, 1.02, 5)for x, y, w, h in faces:cv.rectangle(image, (x, y), (x+w, y+h), (0, 255, 255), 2)cv.imshow("result", image)
capture = cv.VideoCapture(0)
cv.namedWindow("result", cv.WINDOW_AUTOSIZE)
while (True):#按帧读取视频,ret,frame是获cap.read()方法的两个返回值。其中ret是布尔值,如果读取帧是正确的则返回True,如果文件读取到结尾,它的返回值就为False。frame就是每一帧的图像,是个三维矩阵。ret, frame = capture.read()# cv.flip函数表示图像翻转,沿y轴翻转, 0: 沿x轴翻转, <0: x、y轴同时翻转frame = cv.flip(frame, 1)face_detect_demo(frame)c = cv.waitKey(10)if c == 27:#当键盘按下‘ESC’退出程序break
cv.waitKey(0)
cv.destroyAllWindows()

python-opencv之人脸检测相关推荐

  1. python + OpenCV 实现人脸检测(全网之最通俗易懂)

    文章目录 先看一下效果 采集人脸信息 人脸识别 以上源码 本文人脸识别检测具体是通过程序采集图像并进行训练,并且基于这些训练的图像对人脸进行动态识别. 人脸识别前所需要的人脸库可以通过两种方式获得: ...

  2. 基于python+opencv的人脸检测+

    人脸检测分为两种:一种是基于知识的,一种是基于深度学习的.深度不会学习 人脸识别属于目标检测,主要涉及两个方面: ①先对检测的物体进行概率统计,从而知道待检测对象的一些特征,建立其目标的检测模型 ②用 ...

  3. python+opencv摄像头人脸检测+代码注释

    比较简单直接上代码: #导入模块 import cv2 #摄像头 cap=cv2.VideoCapture('1.mp4')falg = 1 num = 1while(cap.isOpened()): ...

  4. Python+OpenCV进行人脸检测(调用笔记本摄像头)

    最近需要对研究生论文进行开题,我的方向定位为人工智能机器学习-计算机视觉这个方向,所以先做一些小东西来对自己的所选方向有一个大致熟悉! 首先我所用到的工具是 PyCharm+Python3.7.0+O ...

  5. Python图像处理,cv2模块,OpenCV实现人脸检测蔡徐坤

    前言 利用Python实现OpenCV实现人脸检测,废话不多说~ 让我们愉快地开始吧~ 开发工具 Python版本: 3.6.4 相关模块: cv2模块: 以及一些Python自带的模块. 环境搭建 ...

  6. 基于opencv的人脸检测与识别(python)(1)

    基于opencv的人脸检测与识别(python语言)(1) 人脸检测和识别技术就目前而言,已经相对成熟,各类算法层出不穷,这都归功于各位奋斗在一线的大佬的努力(站在巨人的肩膀上的感觉就是爽).本文是参 ...

  7. 使用OpenCV进行人脸检测和戴墨镜特效实战(附Python源码)

     需要源码和图片请点赞关注收藏后评论区留言私信~~~ 人脸识别是基于人的脸部特征信息进行身份识别的一种生物识别技术,也是计算机视觉重点发展的技术.机器学习算法诞生之后,计算机可以通过摄像头等输入设备自 ...

  8. Python人脸识别黑科技(二):教你使用python+Opencv完成人脸解锁

    继上一篇"Python人脸识别黑科技(一):50行代码运用Python+OpenCV实现人脸追踪+详细教程+快速入门+图像识",那么今天我们来讲关于使用python+opencv+ ...

  9. 【OpenCV实战】OpenCV实现人脸检测详解(含代码)

    OpenCV中有许多可以进行人脸.人眼检测的特征文件,今天我们利用OpenCV中自带的特征文件haarcascade_frontalface_default.xml来进行人脸检测. [OpenCV实战 ...

  10. 基于opencv实现人脸检测

    基于opencv实现人脸检测 opencv简述 opencv是一个开源的计算机视觉库,它有着C++,Python,Java等接口,支持Windows,Linux,Mac OS,IOS 和 Androi ...

最新文章

  1. Access restriction required library rt.jar
  2. Hyper-V下的Linux虚拟机网卡丢失问题原因及解决办法
  3. 西门子博途编程 - 另类状态机
  4. NuGet社区使用体验调查
  5. poj 3254 状压dp
  6. 如何建立一个完整的游戏AI
  7. 中国银联深夜道歉 称将进一步优化赔偿机制
  8. 经典算法题--求对策字符串的最大长度
  9. 蓝桥杯 ALGO-129 算法训练 特殊的数字四十
  10. Handler 消息传递机制
  11. Android kernel源码下载与编译
  12. 主成分分析法案例_主数据管理第一步——识别主数据
  13. springMVC3学习(十)--注解式控制器
  14. Linux入门及安装教程
  15. 质量值体系 Phred33 和 Phred 64 的由来 及其在质量控制中的实际影响
  16. 整人游戏-色盲在线测试
  17. java 英文翻译工具类
  18. 测试体质的软件有哪些,有哪些APP可以测体脂?测体脂率APP分享
  19. 经济法期末模拟试卷及答案
  20. m基于matlab的光通信误码率仿真,分别对比了OFDM+BPSK和OFDM+4QAM的误码率和星座图

热门文章

  1. 信息安全服务资质-CCRC证书如何正确使用?
  2. 无形资产评估的9个必要性
  3. 李涛老师笔记(可供复习)
  4. 赵小楼《天道》《遥远的救世主》深度解析(138)不强生不恶死。当下的情况就是:最好的求生就是不求生
  5. matlab实现同类物体简单计数
  6. 如何在工作中保持稳定情绪
  7. 谷粒商城三阶段课件_初一地理课堂37:(课件)4.1人口与人种
  8. 女子因太漂亮6年恋情告吹 想做整形将自己变丑
  9. 服装供应链只是企业转型的缩影
  10. 如何成为一名合格的Java工程师?读完这篇文章你就明白了!