OpenCV + Python 人脸检测
2015-11-13 19:55
495 查看
OpenCV + Python 人脸检测
seuchenrui@126.com注意题目啊,这只是检测,不是识别。识别比检测难多了,以后有时间再研究。
以下的代码是OpenCV自带的例子,我做了些小修改,可以让眼睛检测结果更精确。
修改的地方是:以检测到人脸的区域的上半部分作为眼睛的检测区域。
这样修改之后,眼睛的检测区域缩小,因此,检测结果也就精确一点。
import numpy import cv2 face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml') eye_cascade = cv2.CascadeClassifier('haarcascade_eye.xml') img = cv2.imread('1.jpg') gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) faces = face_cascade.detectMultiScale(gray, 1.3, 5) for (x,y,w,h) in faces: cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,255),2) #----------------------------------------- # up half of the face is set to find eyes! #----------------------------------------- roi_gray = gray[y:y+h/2, x:x+w] roi_color = img[y:y+h/2, x:x+w] eyes = eye_cascade.detectMultiScale(roi_gray,1.1,5) for (ex,ey,ew,eh) in eyes: cv2.rectangle(roi_color,(ex,ey),(ex+ew,ey+eh),(0,255,0),2) cv2.imshow('img',img) cv2.imwrite("face_detected_1.jpg", img) cv2.waitKey(0) cv2.destroyAllWindows()
相关文章推荐
- for循环练习*阶乘然后求和
- python 学习笔记(10)
- python 解析json
- python urllib模块的urlopen()的使用方法及实例
- zz Python datetime / time conversions
- 统计的一个小题目python实现
- python下使用protobuf
- 浅析Python中signal包的使用
- Python 私有变量、私有方法、类变量与实例变量
- Python 类属性的理解
- python 判断内网IP方法及实例应用
- Python Import机制-模块搜索路径(sys.path)、嵌套Import、package Import
- Python下rrdtool模块的基本使用方法
- 简单了解Python下用于监视文件系统的pyinotify包
- Python 批量修改文件
- 升级MAC OX上的Python到最新版
- Python_集合set和frozenset的内建方法详解
- Pycharm 新手一进去全是小波浪的非重要报错(PEP8)
- python 函数参数
- Python shutil模块