Recently, the iPhone For reference, I hope it can help everyone.
1. Using opencv library
sudo apt-get install libopencv-* sudo apt-get install python-opencv sudo apt-get install python-numpy
2. Python implementation
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. Effect comparison
4. Reference materials
Python uses opencv for face recognition
Python+OpenCV face detection principle and Detailed explanation of the example
Python uses OpenCV2 to implement face detection
Related recommendations:
Face recognition in Python in AI
Implementation method of face recognition live authentication based on HTML5
Please WeChat develop face recognition source code for details
The above is the detailed content of Detailed example of Python face recognition. For more information, please follow other related articles on the PHP Chinese website!