Python+OpenCV十行代码实现简单的人脸检测
Python+OpenCV十行代码实现简单的人脸检测环境安装OpenCV-pythonpip安装pip install opencv-python更换成阿里云镜像源可以更快pip install opencv-python -i http://mirrors.aliyun.com/pypi/simple/GitHub下载OpenCV级联分类器OpenCV或者用git c...
·
Python+OpenCV十行代码实现简单的人脸检测
环境安装
- OpenCV-python
pip安装
pip install opencv-python
更换成阿里云镜像源可以更快
pip install opencv-python -i http://mirrors.aliyun.com/pypi/simple/
- GitHub下载OpenCV级联分类器
OpenCV
或者用git clone
git clone git@github.com:opencv/opencv.git
在/data目录下有很多级联分类器
这里选择haarcascades目录下的haarcascade_frontalface_default.xml
实现代码
import os
import cv2
#图片和级联分类器相对路径,放到当前目录下
path = './Handsome.jpg'
classifier = './haarcascade_frontalface_default.xml'
#读取图片
img = cv2.imread(path)
#级联分类器
cascadeClassifier = cv2.CascadeClassifier(classifier)
#获取人脸
faces = cascadeClassifier.detectMultiScale(img)
for x, y, width, height in faces:
#检测人脸并用框标记
cv2.rectangle(img, (x - 20, y - 20), (x + width + 20, y + height + 20), (0, 0, 255), 2)
#输出为JPG文件
cv2.imwrite("Result.jpg", img)
输出结果
目录结构
最后
- 在data目录下还有许多的级联分类器,读者可以自行尝试,只需更改上述代码中的classifier变量即可
- 实际只有九行代码,并且可以合并得更短,但博主认为没有必要为了简洁而简洁,故不再更改
- 程序及资源
- 由于博主水平有限,不免有疏漏之处,欢迎读者随时批评指正,以免造成不必要的误解!
更多推荐
所有评论(0)