您的位置:首页 > 编程语言 > Python开发

关于Python+Opencv实现人脸检测的实验笔记(调用摄像头篇)

2017-09-28 13:18 1076 查看

概述

最近在学习Python+OpenCV,参考了网上的大牛的实例,自己尝试了下关于人脸检测的实验。博主使用的是Python2.7和OpenCV3。
本篇是博主做实验的小笔记。本篇是采用打开摄像头来读取画面来检测人脸~

使用了haarcascade_frontalface_alt.xml这个文件

import cv2
import numpy as np

cv2.namedWindow("test")
cap=cv2.VideoCapture(0)
success, frame = cap.read()
classfier=cv2.CascadeClassifier("../haarcascade_frontalface_alt.xml")
while success:
success, frame = cap.read()
size=frame.shape[:2]
image=np.zeros(size,dtype=np.float16)
image = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
cv2.equalizeHist(image, image)
divisor=8
h, w = size
minSize =(w/divisor, h/divisor)
faceRects = classfier.detectMultiScale(image, 1.2, 2, cv2.CASCADE_SCALE_IMAGE,minSize)
if len(faceRects)>0:
for faceRect in faceRects:
x, y, w, h = faceRect
cv2.rectangle(frame, (x, y), (x+w, y+h), (0 ,0  ,255),2)
cv2.imshow("test", frame)
key=cv2.waitKey(10)
c = chr(key & 255)
if c in ['q', 'Q', chr(27)]:
break
cv2.destroyWindow("test")


代码以上,参考了网上大牛的代码



成功了!!


小笔记完成
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: