python调用OpenCV实现人脸识别功能


Posted in Python onMay 25, 2018

Python调用OpenCV实现人脸识别,供大家参考,具体内容如下

硬件环境:

Win10 64位

软件环境:

Python版本:2.7.3

IDE:JetBrains PyCharm 2016.3.2

Python库:

1.1) opencv-python(3.2.0.6)

搭建过程:

OpenCV Python库:

1. PyCharm的插件源中选择opencv-python(3.2.0.6)库安装

题外话:Python入门Tips

PS1:如何安装whl文件

1.先安装PIP

2.CMD命令进入D:\Python27\Scripts里面后再执行PIP命令安装pip install wheel
如果提示'pip'不是内部或外部命令,也不是可运行的程序或批处理文件:
①将python安装目录下的scripts目录(例如D:\Python27\Scripts)添加到系统环境变量path里,注意前加分号。再执行该命令
pip install wheel
②在cmd下进入到D:\Python27\Scripts目录下执行该命令
pip install wheel

3.把文件最好放在\Script文件夹里面再pip install xxxx.whl

4.注意whl文件名不能改 必须一模一样和原名

PS2:到哪找.whl文件?

相关代码:

import cv2
import numpy as np

cv2.namedWindow("test") # Create a window
cap = cv2.VideoCapture(0) #Open camera one
success, frame = cap.read() #Read one frame

print("Camera open operation is: ", success);
color = (255,0,0) #Config the color
classfier = cv2.CascadeClassifier("Resources\haarcascade_frontalface_alt.xml")

#Make sure this xml file is in the same directory with py file
#Otherwise change it to absolute directory. This xml file can be found in D:\My 

Documents\Downloads\opencv\sources\data\haarcascades

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) #
  #Below three lines config the minimal image size
  divisor = 8
  h, w = size
  minSize = ((int)(w/divisor), (int)(h/divisor))
  faceRects = classfier.detectMultiScale(image, 1.2, 2, cv2.CASCADE_SCALE_IMAGE, minSize) #Face detect
  if len(faceRects) > 0:#If face array length > 0
    for faceRect in faceRects: #Draw a rectangle for every face
        xf, yf, wf, hf = faceRect
        x = int((float)(xf))
        y = int((float)(yf))
        w = int((float)(wf))
        h = int((float)(hf))
        cv2.rectangle(frame, (x, y), (x + w, y + h), color)
        cv2.circle(frame, ((int)(x + 1.2 * w / 4), (int)(y + h / 3)), min((int)(w / 8), (int)(h / 8)), (255, 0, 0))
        cv2.circle(frame, ((int)(x + 2.8 * w / 4), (int)(y + h / 3)), min((int)(w / 8), (int)(h / 8)), (255, 0, 0))
        #cv2.rectangle(frame, ((int)(x + 3 * w / 8, (int)(y + 3 * h / 4))), ((int)(x + 5 * w / 8), (int)(y + 7 * h / 8)), (255, 0, 0))
  cv2.imshow("test", frame) #Display image

  key = cv2.waitKey(10)
  c = chr(key & 255)
  if c in ['q', 'Q', chr(27)]:
    break

cv2.destroyWindow("test")

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

Python 相关文章推荐
python进阶教程之模块(module)介绍
Aug 30 Python
使用django-suit为django 1.7 admin后台添加模板
Nov 18 Python
Python中Iterator迭代器的使用杂谈
Jun 20 Python
python3+PyQt5实现文档打印功能
Apr 24 Python
Python 多维List创建的问题小结
Jan 18 Python
linux环境下Django的安装配置详解
Jul 22 Python
pandas DataFrame创建方法的方式
Aug 02 Python
Python通过cv2读取多个USB摄像头
Aug 28 Python
python中数据库like模糊查询方式
Mar 02 Python
Pandas读取csv时如何设置列名
Jun 02 Python
keras读取训练好的模型参数并把参数赋值给其它模型详解
Jun 15 Python
Python getsizeof()和getsize()区分详解
Nov 20 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
Matplotlib 生成不同大小的subplots实例
May 25 #Python
python opencv3实现人脸识别(windows)
May 25 #Python
You might like
星际争霸秘籍
2020/03/04 星际争霸
PHP简单系统查询模块代码打包下载
2008/06/07 PHP
php验证邮箱和ip地址最简单方法汇总
2015/10/30 PHP
Swoole4.4协程抢占式调度器详解
2019/05/23 PHP
JavaScript Event学习第七章 事件属性
2010/02/07 Javascript
jquery中通过父级查找进行定位示例
2013/06/28 Javascript
node.js中的url.format方法使用说明
2014/12/10 Javascript
javascript批量修改文件编码格式的方法
2015/01/27 Javascript
javascript实现相同事件名称,不同命名空间的调用方法
2015/06/26 Javascript
Function.prototype.apply()与Function.prototype.call()小结
2016/04/27 Javascript
学习vue.js计算属性
2016/12/03 Javascript
js自定义QQ菜单效果
2017/01/10 Javascript
原生js更改css样式的两种方式
2017/03/15 Javascript
Bootstrap 响应式实用工具实例详解
2017/03/29 Javascript
JS组件系列之MVVM组件构建自己的Vue组件
2017/04/28 Javascript
小程序如何自主实现拦截器的示例代码
2019/11/04 Javascript
微信小程序跨页面传递data数据方法解析
2019/12/13 Javascript
关于vue3.0中的this.$router.replace({ path: '/'})刷新无效果问题
2020/01/16 Javascript
JS 设计模式之:工厂模式定义与实现方法浅析
2020/05/06 Javascript
javascript前端实现多视频上传
2020/12/13 Javascript
Python 第一步 hello world
2009/09/25 Python
Python开发的单词频率统计工具wordsworth使用方法
2014/06/25 Python
举例介绍Python中的25个隐藏特性
2015/03/30 Python
Python 3中的yield from语法详解
2017/01/18 Python
使用python画社交网络图实例代码
2019/07/10 Python
python多任务之协程的使用详解
2019/08/26 Python
英国现代绅士品牌:Hackett
2017/12/17 全球购物
美国校服网上商店:French Toast
2019/10/08 全球购物
学校十一活动方案
2014/02/01 职场文书
数学系毕业生求职信
2014/05/29 职场文书
建筑工程造价专业自荐信
2014/07/08 职场文书
房屋出租委托书格式
2014/09/23 职场文书
出纳工作检讨书
2014/10/18 职场文书
入党现实表现材料
2014/12/23 职场文书
上诉答辩状范文
2015/05/22 职场文书
MySQL快速插入一亿测试数据
2021/06/23 MySQL