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生成IP段的方法
Jul 07 Python
在Django中管理Users和Permissions以及Groups的方法
Jul 23 Python
深度定制Python的Flask框架开发环境的一些技巧总结
Jul 12 Python
聊聊Python中的pypy
Jan 12 Python
Python 通配符删除文件的实例
Apr 24 Python
Python生成短uuid的方法实例详解
May 29 Python
Python中如何导入类示例详解
Apr 17 Python
python实现截取屏幕保存文件,删除N天前截图的例子
Aug 27 Python
使用Python项目生成所有依赖包的清单方式
Jul 13 Python
10行Python代码实现Web自动化管控的示例代码
Aug 14 Python
No module named ‘win32gui‘ 的解决方法(踩坑之旅)
Feb 18 Python
详解Python 3.10 中的新功能和变化
Apr 28 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
php数组中删除元素的实现代码
2012/06/22 PHP
CentOS下PHP安装Oracle扩展
2015/02/15 PHP
PHP分页初探 一个最简单的PHP分页代码的简单实现
2016/06/21 PHP
PHP简单检测网址是否能够正常打开的方法
2016/09/04 PHP
解决php扩展安装不生效问题
2019/10/25 PHP
用javascript获取地址栏参数
2006/12/22 Javascript
让Firefox支持event对象实现代码
2009/11/07 Javascript
Jquery 选中表格一列并对表格排序实现原理
2012/12/15 Javascript
jQuery写fadeTo示例代码
2014/02/21 Javascript
使用AngularJS创建自定义的过滤器的方法
2015/06/18 Javascript
jQuery事件处理的特征(事件命名机制)
2016/08/23 Javascript
javascript 闭包详解及简单实例应用
2016/12/31 Javascript
浅谈struts1 & jquery form 文件异步上传
2017/05/25 jQuery
vue2.0 和 animate.css的结合使用
2017/12/12 Javascript
vue中echarts3.0自适应的方法
2018/02/26 Javascript
angular json对象push到数组中的方法
2018/02/27 Javascript
vue更改数组中的值实例代码详解
2020/02/07 Javascript
微信分享invalid signature签名错误踩过的坑
2020/04/11 Javascript
Python运行的17个时新手常见错误小结
2012/08/07 Python
Python查找两个有序列表中位数的方法【基于归并算法】
2018/04/20 Python
Python谱减法语音降噪实例
2019/12/18 Python
Anaconda+VSCode配置tensorflow开发环境的教程详解
2020/03/30 Python
Python实现京东抢秒杀功能
2021/01/25 Python
KARATOV珠宝在线商店:俄罗斯珠宝品牌
2019/03/13 全球购物
碧欧泉Biotherm加拿大官方网站:法国高端护肤品牌
2019/10/18 全球购物
英语系本科生求职信范文
2013/12/18 职场文书
西式婚礼证婚词
2014/01/12 职场文书
机关办公室岗位职责
2014/04/16 职场文书
安康杯竞赛活动总结
2014/05/05 职场文书
十八大宣传标语
2014/10/09 职场文书
2014年妇女工作总结
2014/12/06 职场文书
人与自然观后感
2015/06/16 职场文书
网吧管理制度范本
2015/08/05 职场文书
体育教师教学随笔
2015/08/15 职场文书
九不准学习心得体会
2016/01/23 职场文书
Python基础之赋值,浅拷贝,深拷贝的区别
2021/04/30 Python