python opencv3 静态图片检测人脸

Posted 稀里糊涂林老冷

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python opencv3 静态图片检测人脸相关的知识,希望对你有一定的参考价值。

git:https://github.com/linyi0604/Computer-Vision

 1 # coding:utf-8
 2 
 3 import cv2
 4 
 5 filename = "../data/mm3.jpg"
 6 
 7 
 8 def detect(filename):
 9     # 创建检测人脸的对象 要在opencv的目录下找到xml文件,放置到自己项目中
10     face_cascade = cv2.CascadeClassifier("../data/haarcascade_frontalface_default.xml")
11     # 读取图像
12     img = cv2.imread(filename)
13     # 转为灰度图像
14     gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
15     # 进行人脸检测
16     faces = face_cascade.detectMultiScale(gray, 1.3, 5)
17     """
18     faces = face_cascade.detectMultiScale(img, scaleFactor, minNeighbors)
19     参数:
20         img: 识别的原图
21         scaleFactor: 迭代时图像的压缩率
22         minNeighbors: 每个人脸矩形保留近邻数目的最小值
23         
24     返回值:
25         一个列表,列表里边每一项是一个框起人脸的矩形(x, y, w, h)
26         
27     """
28     print(faces)
29     for (x, y, w, h) in faces:
30         # 画出矩形框
31         img = cv2.rectangle(img, (x, y), (x+w, y+h), (255, 0, 0), 2)
32 
33     cv2.imshow("Vikings Detected", img)
34     cv2.waitKey()
35 
36 
37 detect(filename)

 

以上是关于python opencv3 静态图片检测人脸的主要内容,如果未能解决你的问题,请参考以下文章

基于opencv和qt的人脸检测小系统

OpenCV + Python 人脸检测

Python批量检测图片中的人脸并制作数据集(Dlib)

EigenFace 实现:在 Java 中使用 OpenCV3

Opencv 3.0 加载人脸级联时出错

python3 dlib人脸检测