Python人脸识别初探


Posted in Python onDecember 21, 2017

本文实例为大家分享了Python人脸识别的具体代码,供大家参考,具体内容如下

1.利用opencv库

sudo apt-get install libopencv-*
sudo apt-get install python-opencv
sudo apt-get install python-numpy

2 .Python实现

import os
import os
from PIL import Image,ImageDraw
import cv

def detect_object(image):
  grayscale = cv.CreateImage((image.width,image.height),8,1)#创建空的灰度值图片
  cv.CvtColor(image,grayscale,cv.CV_BGR2GRAY)
  cascade=cv.Load("/usr/share/opencv/haarcascades/haarcascade_frontalface_alt_tree.xml")#记载特征值库,此目录下还有好多库可以选用
  rect=cv.HaarDetectObjects(grayscale,cascade,cv.CreateMemStorage(),1.1,2,cv.CV_HAAR_DO_CANNY_PRUNING,(20,20))
  result=[]#标记位置
  for r in rect:
    result.append((r[0][0],r[0][1],r[0][0]+r[0][2],r[0][1]+r[0][3]))
  return result

def process(infile):
  image = cv.LoadImage(infile)
  if image:
    faces = detect_object(image)
  im = Image.open(infile)
  path = os.path.abspath(infile)
  save_path = os.path.splitext(path)[0]+"_face"
  try:
    os.mkdir(save_path)
  except:
    pass
  if faces:
    draw = ImageDraw.Draw(im)
    count=0
    for f in faces:
       count+=1
       draw.rectangle(f,outline=(255,0,0))
       a=im.crop(f)
       file_name=os.path.join(save_path,str(count)+".jpg")
       a.save(file_name)
    drow_save_path = os.path.join(save_path,"out.jpg")
    im.save(drow_save_path,"JPEG",quality=80)
  else:
    print "Error: cannot detect faces on %s" % infile
if __name__ == "__main__":
   process("test3.jpg")

3.效果对比

Python人脸识别初探

4.参考资料

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

Python 相关文章推荐
从零学Python之hello world
May 21 Python
Python多线程编程(一):threading模块综述
Apr 05 Python
python使用logging模块发送邮件代码示例
Jan 18 Python
python 实现登录网页的操作方法
May 11 Python
windows下python 3.6.4安装配置图文教程
Aug 21 Python
Python3.5内置模块之os模块、sys模块、shutil模块用法实例分析
Apr 27 Python
python基于event实现线程间通信控制
Jan 13 Python
使用Bazel编译TensorBoard教程
Feb 15 Python
Django基于客户端下载文件实现方法
Apr 21 Python
基于python requests selenium爬取excel vba过程解析
Aug 12 Python
Python爬虫之Selenium库的使用方法
Jan 03 Python
python中requests库+xpath+lxml简单使用
Apr 29 Python
python中判断文件编码的chardet(实例讲解)
Dec 21 #Python
python 设置文件编码格式的实现方法
Dec 21 #Python
Python+OpenCV人脸检测原理及示例详解
Oct 19 #Python
Python 查看文件的编码格式方法
Dec 21 #Python
python利用OpenCV2实现人脸检测
Apr 16 #Python
Python判断文件和字符串编码类型的实例
Dec 21 #Python
TF-IDF与余弦相似性的应用(二) 找出相似文章
Dec 21 #Python
You might like
php中$_GET与$_POST过滤sql注入的方法
2014/11/03 PHP
Google Map Api和GOOGLE Search Api整合实现代码
2009/07/18 Javascript
理解Javascript_10_对象模型
2010/10/16 Javascript
js遍历td tr等html元素
2012/12/13 Javascript
js动态改变select选择变更option的index值示例
2014/07/10 Javascript
在for循环中length值是否需要缓存
2015/07/27 Javascript
关于js函数解释(包括内嵌,对象等)
2016/11/20 Javascript
浅谈js script标签中的预解析
2016/12/30 Javascript
完美解决UI-Grid表格元素中多个空格显示为一个空格的问题
2017/04/25 Javascript
Vue实现数字输入框中分割手机号码的示例
2017/10/10 Javascript
浅谈vue中.vue文件解析流程
2018/04/24 Javascript
解决vue点击控制单个样式的问题
2018/09/05 Javascript
vue axios数据请求get、post方法及实例详解
2018/09/11 Javascript
php结合js实现多条件组合查询
2019/05/28 Javascript
javascript设计模式 ? 原型模式原理与应用实例分析
2020/04/10 Javascript
微信小程序手动添加收货地址省市区联动
2020/05/18 Javascript
解决idea开发遇到javascript动态添加html元素时中文乱码的问题
2020/09/29 Javascript
Python高级应用实例对比:高效计算大文件中的最长行的长度
2014/06/08 Python
全面理解Python中self的用法
2016/06/04 Python
python使用PyCharm进行远程开发和调试
2017/11/02 Python
Python编程给numpy矩阵添加一列方法示例
2017/12/04 Python
使用python画个小猪佩奇的示例代码
2018/06/06 Python
python事件驱动event实现详解
2018/11/21 Python
Python操作rabbitMQ的示例代码
2019/03/19 Python
Python实现微信小程序支付功能
2019/07/25 Python
Python检查图片是否损坏及图片类型是否正确过程详解
2019/09/30 Python
python写一个随机点名软件的实例
2019/11/28 Python
Python pip使用超时问题解决方案
2020/08/03 Python
Python应用自动化部署工具Fabric原理及使用解析
2020/11/30 Python
个人求职简历的自我评价
2013/10/19 职场文书
少先队入队活动方案
2014/02/08 职场文书
学雷锋先进个人事迹
2014/05/26 职场文书
自主招生推荐信格式模板
2015/03/24 职场文书
2015年党小组工作总结
2015/05/26 职场文书
浅谈移动端中的视口(viewport)的具体使用
2021/04/13 HTML / CSS
MySQL8.0的WITH查询详情
2021/08/30 MySQL