基于python OpenCV实现动态人脸检测


Posted in Python onMay 25, 2018

本文实例为大家分享了python动态人脸检测的具体代码,供大家参考,具体内容如下

直接上代码: 按Q退出

import cv2 
import numpy as np 
 
cv2.namedWindow("test") 
cap = cv2.VideoCapture(0) #加载摄像头录制 
# cap = cv2.VideoCapture("test.mp4") #打开视频文件 
success, frame = cap.read() 
# classifier = cv2.CascadeClassifier("/Users/yuki/anaconda/share/OpenCV/haarcascades/haarcascade_frontalface_alt.xml") 

# 确保此xml文件与该py文件在一个文件夹下,否则将这里改为绝对路径 
 
#haarcascade_frontalface_default.xml 
classifier = cv2.CascadeClassifier("/Users/yuki/anaconda/share/OpenCV/haarcascades/haarcascade_frontalface_default.xml") 

# 确保此xml文件与该py文件在一个文件夹下,否则将这里改为绝对路径 
 
while success: 
 success, frame = cap.read() 
 size = frame.shape[:2] 
 image = np.zeros(size, dtype=np.float16) 
 image = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) 
 cv2.equalizeHist(image, image) 
 divisor = 8 
 h, w = size 
 minSize = (w // divisor, h // divisor) 
 faceRects = classifier.detectMultiScale(image, 1.2, 2, cv2.CASCADE_SCALE_IMAGE, minSize) 
 if len(faceRects) > 0: 
  for faceRect in faceRects: 
   x, y, w, h = faceRect 
   cv2.rectangle(frame,(x,y),(x+h,y+w),(0,255,0),2) 
   #锁定 眼和嘴巴 
#cv2.circle(frame, (x + w // 4, y + h // 4 + 30), min(w // 8, h // 8), (255, 0, 0)) # 左眼 
#cv2.circle(frame, (x + 3 * w //4, y + h // 4 + 30), min(w // 8, h // 8), (255, 0, 0)) #右眼 
#cv2.rectangle(frame, (x + 3 * w // 8, y + 3 * h // 4), (x + 5 * w // 8, y + 7 * h // 8), (255, 0, 0))#嘴巴 
 cv2.imshow("test", frame) 
 key = cv2.waitKey(10) 
 c = chr(key & 255) 
 if c in ['q', 'Q', chr(27)]: 
  break 
cv2.destroyWindow("test")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python写的一个简单监控系统
Jun 19 Python
python安装教程
Feb 28 Python
Python使用字典实现的简单记事本功能示例
Aug 15 Python
Python中__repr__和__str__区别详解
Nov 07 Python
python计算无向图节点度的实例代码
Nov 22 Python
Django单元测试中Fixtures用法详解
Feb 25 Python
Python图像处理库PIL的ImageFilter模块使用介绍
Feb 26 Python
tensorflow实现残差网络方式(mnist数据集)
May 26 Python
Python使用jupyter notebook查看ipynb文件过程解析
Jun 02 Python
改变 Python 中线程执行顺序的方法
Sep 24 Python
分享一个python的aes加密代码
Dec 22 Python
如何用Python徒手写线性回归
Jan 25 Python
使用matplotlib画散点图的方法
May 25 #Python
python调用OpenCV实现人脸识别功能
May 25 #Python
matplotlib subplots 设置总图的标题方法
May 25 #Python
Python3.6.0+opencv3.3.0人脸检测示例
May 25 #Python
Python unittest模块用法实例分析
May 25 #Python
使用Python的Django和layim实现即时通讯的方法
May 25 #Python
matplotlib subplots 调整子图间矩的实例
May 25 #Python
You might like
php的header和asp中的redirect比较
2006/10/09 PHP
用PHP实现多服务器共享SESSION数据的方法
2007/03/16 PHP
深入理解PHP之require/include顺序 推荐
2011/01/02 PHP
php使用PDO方法详解
2014/12/27 PHP
PHP CURL 内存泄露问题解决方法
2015/02/12 PHP
Zend Framework教程之配置文件application.ini解析
2016/03/10 PHP
JS查看对象功能代码
2008/04/25 Javascript
JQuery.Ajax之错误调试帮助信息介绍
2013/07/04 Javascript
jquery新的绑定事件机制on方法的使用方法
2014/04/15 Javascript
JSP中使用JavaScript动态插入删除输入框实现代码
2014/06/13 Javascript
JS解析XML文件和XML字符串详解
2015/04/17 Javascript
vue-router:嵌套路由的使用方法
2017/02/21 Javascript
JavaScript中document.referrer的用法详解
2017/07/04 Javascript
vue实现单选和多选功能
2017/08/11 Javascript
微信小程序使用input组件实现密码框功能【附源码下载】
2017/12/11 Javascript
AngularJS实现的鼠标拖动画矩形框示例【可兼容IE8】
2019/05/17 Javascript
vue 使用post/get 下载导出文件操作
2020/08/07 Javascript
React实现全选功能
2020/08/25 Javascript
python读写二进制文件的方法
2015/05/09 Python
简单解决Python文件中文编码问题
2015/11/22 Python
Python中的左斜杠、右斜杠(正斜杠和反斜杠)
2016/08/30 Python
python利用urllib和urllib2访问http的GET/POST详解
2017/09/27 Python
Python 导入文件过程图解
2019/10/15 Python
python实发邮件实例详解
2019/11/11 Python
Python使用PyQt5/PySide2编写一个极简的音乐播放器功能
2020/02/07 Python
Python实现一个简单的递归下降分析器
2020/08/01 Python
python 第三方库paramiko的常用方式
2021/02/20 Python
Looking4Parking美国:全球排名第一的机场停车比较品牌
2019/08/26 全球购物
奥巴马胜选演讲稿
2014/05/15 职场文书
求职教师自荐书
2014/06/19 职场文书
纪检干部先进事迹材料
2014/08/23 职场文书
反对四风问题自我剖析材料
2014/09/29 职场文书
MBA推荐信怎么写
2015/03/25 职场文书
交通安全主题班会
2015/08/12 职场文书
2016基督教会圣诞节开幕词
2016/03/04 职场文书
不想升级Win11?教你彻底锁定老版Windows系统的方法(附下载地址)
2022/09/23 数码科技