使用opencv和python编写多个图像进行人脸识别

时间:2016-09-02 00:06:03

标签: python opencv

我是python编程的新手,我想检测一些我从谷歌下载的图片中的面孔,并且我在一个文件夹中。我的代码已经识别出图片中的面孔,并使用方框/方框来构图。我想要做的是将框中的图像保存或写入不同的文件夹,但与原始图片具有相同的名称。以下是检测面部并在框中框架的代码

import cv2
import os

faceCascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
imgFormat = ".jpeg"
fullimgpath = "full_image/"
faceimgpath = "face_image/"
imfilelist = [os.path.join(fullimgpath, f) for f in os.listdir(fullimgpath) if f.endswith(imgFormat)]

for el in imfilelist:
    print el
   imagen = cv2.imread(el)
   gray = cv2.cvtColor(imagen, cv2.COLOR_BGR2GRAY)
   faces = faceCascade.detectMultiScale(
        gray,
        scaleFactor=1.1,
        minNeighbors=5,
        minSize=(30, 30),
        flags=cv2.cv.CV_HAAR_SCALE_IMAGE
   )

    for (x, y, w, h) in faces:
        cv2.rectangle(imagen, (x, y), (x + w, y + h), (0, 255, 0), 2)
        roi_color = imagen[y:y + h, x:x + w]


    cv2.imshow('Imagen', imagen)
    cv2.waitKey(1000)

提前感谢您的帮助

0 个答案:

没有答案