基于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实现strcmp函数功能示例
Mar 25 Python
python版本的读写锁操作方法
Apr 25 Python
详解Python import方法引入模块的实例
Aug 02 Python
numpy中实现二维数组按照某列、某行排序的方法
Apr 04 Python
Python GUI编程 文本弹窗的实例
Jun 11 Python
python word转pdf代码实例
Aug 16 Python
Python3常用内置方法代码实例
Nov 18 Python
Python发送手机动态验证码代码实例
Feb 28 Python
基于Django集成CAS实现流程详解
Nov 28 Python
详解python中的三种命令行模块(sys.argv,argparse,click)
Dec 15 Python
简单介绍Python的第三方库yaml
Jun 18 Python
基于Python实现对比Exce的工具
Apr 07 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
下载文件的点击数回填
2006/10/09 PHP
orm获取关联表里的属性值
2016/04/17 PHP
php生成Android客户端扫描可登录的二维码
2016/05/13 PHP
使用PHP+Redis实现延迟任务,实现自动取消订单功能
2019/11/21 PHP
JavaScript的9个陷阱及评点分析
2008/05/16 Javascript
js控制框架刷新
2008/08/01 Javascript
由Javascript实现的页面日历
2011/11/04 Javascript
JavaScript打开word文档的实现代码(c#)
2012/04/16 Javascript
收集json解析的四种方法分享
2014/01/17 Javascript
jquery选择器之层级过滤选择器详解
2014/01/27 Javascript
让图片跳跃起来  javascript图片轮播特效
2016/02/16 Javascript
Bootstrap与KnockoutJs相结合实现分页效果实例详解
2016/05/03 Javascript
jquery实用技巧之输入框提示语句
2016/07/28 Javascript
微信小程序下拉框组件使用方法详解
2018/12/28 Javascript
在vue中使用G2图表的示例代码
2019/03/19 Javascript
js实现轮播图效果 z-index实现轮播图
2020/01/17 Javascript
详解钉钉小程序组件之自定义模态框(弹窗封装实现)
2020/03/07 Javascript
ES6函数实现排它两种写法解析
2020/05/13 Javascript
javascript读取本地文件和目录方法详解
2020/08/06 Javascript
Ant-design-vue Table组件customRow属性的使用说明
2020/10/28 Javascript
Python利用Beautiful Soup模块修改内容方法示例
2017/03/27 Python
Python递归函数 二分查找算法实现解析
2019/08/12 Python
pytorch打印网络结构的实例
2019/08/19 Python
python3中利用filter函数输出小于某个数的所有回文数实例
2019/11/24 Python
python随机生成大小写字母数字混合密码(仅20行代码)
2020/02/01 Python
Python项目实战之使用Django框架实现支付宝付款功能
2021/02/23 Python
Html5之svg可缩放矢量图形_动力节点Java学院整理
2017/07/17 HTML / CSS
出国导师推荐信
2014/01/16 职场文书
护士的自我鉴定
2014/02/07 职场文书
《小小竹排画中游》教学反思
2014/02/26 职场文书
党员创先争优公开承诺书
2014/03/28 职场文书
爱耳日活动总结
2014/04/30 职场文书
厂区绿化方案
2014/05/08 职场文书
学生检讨书
2015/01/27 职场文书
2016年中秋节晚会领导致辞
2015/11/26 职场文书
python脚本框架webpy模板赋值实现
2021/11/20 Python