English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
本文实例为大家分享了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. مقارنة الأثر
4. مراجع
استخدام OpenCV في Python لتحديد الوجه
مبدأ وتطبيق التحقق من هوية الوجه باستخدام Python وOpenCV مع شرح مفصل
استخدام OpenCV2 في Python لتحديد الوجه
هذا هو نهاية محتويات هذا المقال، نأمل أن تكون قد ساعدت في تعلمكم، ونرجو منكم الدعم والمزيد من التشجيع لتدريب呐喊.
بيان: محتويات هذا المقال مستمدة من الإنترنت، مملوكة للمساهمين، مقدم من المستخدمين عبر الإنترنت بتحميلهم، ويتمتع هذا الموقع بلا حقوق ملكية، لم يتم تعديل المحتوى بشكل إنساني، ولا يتحمل الموقع أي مسؤولية قانونية. إذا كنت قد وجدت محتوى يشتبه في حقوق النسخ، فنرجو منك إرسال بريد إلكتروني إلى: notice#oldtoolbag.com (عند إرسال البريد الإلكتروني، يرجى استبدال # ب @) للإبلاغ، وتقديم الدليل، إذا تم التحقق من ذلك، فإن هذا الموقع سيزيل المحتوى المزعوم فوراً.