python opencv人脸检测提取及保存方法

yipeiwu_com6年前Python基础

注意这里提取到的人脸图片的保存地址要改成自己要保存的地址

opencv人脸的检测模型的路径也要更改为自己安装的opencv的人脸检测模型的路径

import cv2
save_path = 'F:\\face_photo_save\\chenym\\'
cascade = cv2.CascadeClassifier("D:\\opencv249\\opencv\\sources\\data\\haarcascades\\haarcascade_frontalface_alt_tree.xml")
cap = cv2.VideoCapture(0)
i = 0
while True:
 ret,frame = cap.read()
 gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)
 rect = cascade.detectMultiScale(gray,scaleFactor=1.3,minNeighbors=9,minSize=(50,50),flags = cv2.cv.CV_HAAR_SCALE_IMAGE)
 print "rect",rect
 if not rect is (): 
  for x,y,z,w in rect:
   roiImg = frame[y:y+w,x:x+z]
   cv2.imwrite(save_path+str(i)+'.jpg',roiImg)
   cv2.rectangle(frame,(x,y),(x+z,y+w),(0,0,255),2)
   i +=1
 cv2.imshow('frame',frame)  
 if cv2.waitKey(1) &0xFF == ord('q'):
  break
cap.release()
cv2.destroyAllWindows()

以上这篇python opencv人脸检测提取及保存方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python使用pymysql从MySQL数据库中读出数据的方法

python3.x已经不支持mysqldb了,支持的是pymysql 使用pandas读取MySQL数据时,使用sqlalchemy,出现No module named ‘MySQLdb...

python变量不能以数字打头详解

在编写python函数时,无意中发现一个问题:python中的变量不能以数字打头,以下函数中定义了一个变量3_num_varchar,执行时报错。 函数如下: def databas...

python多线程扫描端口示例

复制代码 代码如下:# -*- coding: cp936 -*-import socketfrom threading import Thread,activeCount,Lockfr...

bpython 功能强大的Python shell

bpython 功能强大的Python shell

Python是一个非常实用、流行的解释型编程语言,其优势之一就是可以借助其交互的shell进行探索式地编程。你可以试着输入一些代码,然后马上获得解释器的反馈,而不必专门写一个脚本。但是P...

windows下python和pip安装教程

windows下python和pip安装教程

本文实例为大家分享了python和pip安装教程,供大家参考,具体内容如下 1.安装python 第一步,windows下面的Python安装一般是通过软件安装包安装而不是命令行,所以我...