python opencv3实现人脸识别(windows)


Posted in Python onMay 25, 2018

本文实例为大家分享了python人脸识别程序,大家可进行测试

#coding:utf-8 
 
import cv2 
import sys 
from PIL import Image 
 
 
def CatchUsbVideo(window_name, camera_idx): 
  cv2.namedWindow(window_name) 
 
  # 视频来源,可以来自一段已存好的视频,也可以直接来自USB摄像头 
  cap = cv2.VideoCapture(camera_idx) 
 
  # 告诉OpenCV使用人脸识别分类器 
  classfier = cv2.CascadeClassifier("C:\\opencv\\build\\etc\\haarcascades\\haarcascade_frontalface_alt2.xml") 
 
  # 识别出人脸后要画的边框的颜色,RGB格式 
  color = (0, 255, 0) 
 
  while cap.isOpened(): 
    ok, frame = cap.read() # 读取一帧数据 
    if not ok: 
      break 
 
      # 将当前帧转换成灰度图像 
    grey = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) 
 
    # 人脸检测,1.2和2分别为图片缩放比例和需要检测的有效点数 
    faceRects = classfier.detectMultiScale(grey, scaleFactor=1.2, minNeighbors=3, minSize=(32, 32)) 
    if len(faceRects) > 0: # 大于0则检测到人脸 
      for faceRect in faceRects: # 单独框出每一张人脸 
        x, y, w, h = faceRect 
        cv2.rectangle(frame, (x - 10, y - 10), (x + w + 10, y + h + 10), color, 3) #5控制绿色框的粗细 
 
    # 显示图像 
    cv2.imshow(window_name, frame) 
    c = cv2.waitKey(10) 
    if c & 0xFF == ord('q'): 
      break 
 
      # 释放摄像头并销毁所有窗口 
  cap.release() 
  cv2.destroyAllWindows() 
 
 
if __name__ == '__main__': 
  CatchUsbVideo("FaceRect", 0) 
  # if len(sys.argv) != 2: 
  #   print("Usage:%s camera_id\r\n" % (sys.argv[0])) 
  # else: 
  #   CatchUsbVideo("识别人脸区域", int(sys.argv[1]))

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

Python 相关文章推荐
用python实现批量重命名文件的代码
May 25 Python
Python3实现发送QQ邮件功能(附件)
Dec 23 Python
Python实现备份MySQL数据库的方法示例
Jan 11 Python
Python嵌套列表转一维的方法(压平嵌套列表)
Jul 03 Python
解决Python print输出不换行没空格的问题
Nov 14 Python
Python 导入文件过程图解
Oct 15 Python
Python程序控制语句用法实例分析
Jan 14 Python
jupyter 实现notebook中显示完整的行和列
Apr 09 Python
解决更改AUTH_USER_MODEL后出现的问题
May 14 Python
用Python 执行cmd命令
Dec 18 Python
python中zip()函数遍历多个列表方法
Feb 18 Python
Python使用Web框架Flask开发项目
Jun 01 Python
基于python3 OpenCV3实现静态图片人脸识别
May 25 #Python
matplotlib savefig 保存图片大小的实例
May 24 #Python
python3连接MySQL数据库实例详解
May 24 #Python
python实现图片文件批量重命名
Mar 23 #Python
python使用RNN实现文本分类
May 24 #Python
Jupyter notebook远程访问服务器的方法
May 24 #Python
Python matplotlib 画图窗口显示到gui或者控制台的实例
May 24 #Python
You might like
PHP&MYSQL服务器配置说明
2006/10/09 PHP
PHP json_encode中文乱码问题的解决办法
2013/09/09 PHP
PHP实现防盗链的方法分析
2017/07/25 PHP
javascript中的array数组使用技巧
2010/01/31 Javascript
jQuery参数列表集合
2011/04/06 Javascript
理解JavaScript的prototype属性
2012/02/11 Javascript
JS的数组迭代方法
2015/02/05 Javascript
javascript实现检验的各种规则
2015/07/31 Javascript
jQuery中设置form表单中action值的实现方法
2016/05/25 Javascript
xmlplus组件设计系列之列表(4)
2017/04/26 Javascript
详解使用vscode+es6写nodejs服务端调试配置
2017/09/21 NodeJs
Node.js使用MySQL连接池的方法实例
2018/02/11 Javascript
vue-cli 引入、配置axios的方法
2018/05/08 Javascript
详解微信小程序中组件通讯
2018/10/30 Javascript
Vue 中文本内容超出规定行数后展开收起的处理的实现方法
2019/04/28 Javascript
完美解决通过IP地址访问VUE项目的问题
2020/07/18 Javascript
JS实现购物车基本功能
2020/11/08 Javascript
[48:21]林俊杰圣堂刺客超神杀戮秀
2014/10/29 DOTA
[02:03]《现实生活中的DOTA2》—林书豪&DOTA2职业选手出演短片
2015/08/18 DOTA
python轻松查到删除自己的微信好友
2016/01/10 Python
Python文本统计功能之西游记用字统计操作示例
2018/05/07 Python
python对list中的每个元素进行某种操作的方法
2018/06/29 Python
Python 利用内置set函数对字符串和列表进行去重的方法
2018/06/29 Python
python的mysql数据库建立表与插入数据操作示例
2019/09/30 Python
python循环嵌套的多种使用方法解析
2019/11/29 Python
Calzedonia美国官网:意大利风格袜子、打底裤和沙滩装
2018/07/19 全球购物
人大代表选举标语
2014/10/07 职场文书
2014年副班长工作总结
2014/12/10 职场文书
2015年党支部公开承诺书
2015/01/22 职场文书
二胎满月酒致辞
2015/07/29 职场文书
《当代神农氏》教学反思
2016/02/23 职场文书
《三国志》赏析
2019/08/27 职场文书
Python进阶学习之带你探寻Python类的鼻祖-元类
2021/05/08 Python
基于PostgreSQL/openGauss 的分布式数据库解决方案
2021/12/06 PostgreSQL
如何利用golang运用mysql数据库
2022/03/13 Golang
解决flex布局中子项目尺寸不受flex-shrink限制
2022/05/11 HTML / CSS