python openCV获取人脸部分并存储功能


Posted in Python onAugust 28, 2019

本文实例为大家分享了python openCV获取人脸部分并存储的具体代码,供大家参考,具体内容如下

#-*- coding:utf-8 -*-
import cv2
import os
import time
import base64
import numpy as np
 
save_path = 'E:\\opencv\\2018-04-24OpenCv\\RAR\\savetest'
faceCascade = cv2.CascadeClassifier(
  './haarcascade_frontalface_alt.xml')
 
cap = cv2.VideoCapture(0)
 
count = 0
 
while True:
  ret,frame = cap.read()
  gray = cv2.cvtColor(frame,cv2.COLOR_RGB2GRAY)
  rect = faceCascade.detectMultiScale(gray,
                  scaleFactor=1.3,
                  minNeighbors=9,
                  minSize=(50,50),
                  flags=cv2.CASCADE_SCALE_IMAGE
                  )
 
  if not rect is ():
    for x,y,w,h in rect:
      roiImg = frame[y:y+h,x:x+w]
      # 以时间戳和读取的排序作为文件名称
      listStr = [str(int(time.time())), str(count)]
      fileName = ''.join(listStr)
      # 图片存储
      cv2.imwrite(save_path + os.sep + '%s.jpg' % fileName, roiImg)
      # print (roiImg)
      # roiTobase64 = cv2.imencode(roiImg,np.uint8)
      # print (base64.b64encode(roiTobase64))
      cv2.rectangle(frame,(x,y),(x+w,y+h),(0,0,255),2)
 
 
      count += 1
 
  cv2.imshow('opencvCut',frame)
  k = cv2.waitKey(30) & 0xff
  if k == 27:
    break
cap.release()
cv2.destroyAllWindows()

小编再为大家分享一段代码:python用opencv批量检测人脸,并保存:

import cv2
import sys
import os
from PIL import Image
cascPath = "haarcascade_frontalface_default.xml" #训练参数文件
faceCascade = cv2.CascadeClassifier(cascPath)#分类器
 
base = 'new_dir\\'
for img in os.listdir(base):
  image = cv2.imread(base + img)#读取图片
  gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
  gray = cv2.equalizeHist(gray) #直方图均衡化,提高分类效果
  faces = faceCascade.detectMultiScale(
    gray,
    scaleFactor=1.1,
    minNeighbors=5,
    minSize=(10, 10)
  )
  num = 0
  for (x, y, w, h) in faces:
    cv2.imwrite("face_dir\\" + img,image[y:y+h,x:x+w])
    num += 1
#   cv2.imshow("Faces found", image)
  cv2.waitKey(0)

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

Python 相关文章推荐
Python使用scrapy采集数据过程中放回下载过大页面的方法
Apr 08 Python
Python制作简易注册登录系统
Dec 15 Python
python 制作自定义包并安装到系统目录的方法
Oct 27 Python
对matplotlib改变colorbar位置和方向的方法详解
Dec 13 Python
Python实现去除列表中重复元素的方法总结【7种方法】
Feb 16 Python
Python HTML解析器BeautifulSoup用法实例详解【爬虫解析器】
Apr 05 Python
python 批量解压压缩文件的实例代码
Jun 27 Python
用python求一个数组的和与平均值的实现方法
Jun 29 Python
Python为何不能用可变对象作为默认参数的值
Jul 01 Python
Python如何定义有可选参数的元类
Jul 31 Python
pandas中DataFrame重置索引的几种方法
May 24 Python
python 实现图片特效处理
Apr 03 Python
python lambda表达式在sort函数中的使用详解
Aug 28 #Python
python实现微信小程序用户登录、模板推送
Aug 28 #Python
使用Python脚本zabbix自定义key监控oracle连接状态
Aug 28 #Python
django删除表重建的实现方法
Aug 28 #Python
Python Django 前后端分离 API的方法
Aug 28 #Python
django重新生成数据库中的某张表方法
Aug 28 #Python
PyQt5+Caffe+Opencv搭建人脸识别登录界面
Aug 28 #Python
You might like
PHP下的Oracle客户端扩展(OCI8)安装教程
2014/09/10 PHP
PHP贪婪算法解决0-1背包问题实例分析
2015/03/23 PHP
详解php中反射的应用
2016/03/15 PHP
浅谈PHP错误类型及屏蔽方法
2017/05/27 PHP
CLASS_CONFUSION JS混淆 全源码
2007/12/12 Javascript
表格单元格交错着色实现思路及代码
2013/04/01 Javascript
javascript获取URL参数与参数值的示例代码
2013/12/20 Javascript
jQuery淡入淡出元素让其效果更为生动
2014/09/01 Javascript
JavaScript开发人员的10个关键习惯小结
2014/12/05 Javascript
浅谈javascript中自定义模版
2015/01/29 Javascript
zTree插件下拉树使用入门教程
2016/04/11 Javascript
JavaScript中的this引用(推荐)
2016/08/05 Javascript
jQuery Ajax请求后台数据并在前台接收
2016/12/10 Javascript
jquery表单提交带错误信息提示效果
2017/03/09 Javascript
jQuery实现带右侧索引功能的通讯录示例【附源码下载】
2018/04/17 jQuery
webstorm中配置nodejs环境及npm的实例
2018/05/15 NodeJs
原生JS实现DOM加载完成马上执行JS代码的方法
2018/09/07 Javascript
vue移动端屏幕适配详解
2019/04/30 Javascript
vue获取form表单的值示例
2019/10/29 Javascript
Nest.js散列与加密实例详解
2021/02/24 Javascript
python django事务transaction源码分析详解
2017/03/17 Python
Python输入二维数组方法
2018/04/13 Python
Python面向对象之类和对象实例详解
2018/12/10 Python
python在TXT文件中按照某一字符串取出该字符串所在的行方法
2018/12/10 Python
python如何解析配置文件并应用到项目中
2019/06/27 Python
在django中,关于session的通用设置方法
2019/08/06 Python
python制作英语翻译小工具代码实例
2019/09/09 Python
Python3爬虫中Ajax的用法
2020/07/10 Python
python基于opencv实现人脸识别
2021/01/04 Python
HTML5 canvas基本绘图之文字渲染
2016/06/27 HTML / CSS
中专毕业个人的自荐信格式
2013/09/21 职场文书
电信专业毕业生推荐信
2013/11/18 职场文书
市场营销策划方案
2014/06/11 职场文书
119消防日活动总结
2014/08/29 职场文书
MySQL连接查询你真的学会了吗?
2021/06/02 MySQL
python处理json数据文件
2022/04/11 Python