当前位置:   article > 正文

Python-3.1使用CV2进行人脸检测_cv2找到人脸

cv2找到人脸

Python-3.1使用CV2进行人脸检测

提示:实验示例,仅供参考
Python:下载地址
IDEA Python:下载地址
Open CV:官网



前言

随着人工智能的不断发展,机器视觉越来越重要,如下介绍Opencv中人脸识别应用。


一、安装OpenCV

环境准备

打开Pycharm,点击右上角File,选中Settings
在这里插入图片描述
搜索,opencv-python,然后点击左下角,Package Install
搜索,numpy,然后点击左下角,Package Install
在这里插入图片描述

二、使用OpenCV

新建项目

在这里插入图片描述

创建目录

  1. imgs 用于存放需要识别的图片
  2. generate-imgs 用于存放识别后裁剪的人脸图片
    本识别使用02.py, 01.py 和 03.py 不用创建
    在这里插入图片描述
    existFace.jpg 有人脸的图片
    existFace.jpg
    notFace.jpg 没有人脸的图片
    notFace.jpg

Python代码

# -*- coding: utf-8 -*-
# -*- coding: utf-8 -*-
import sys
import cv2

# 读取一张需要检测人脸的图片
imgPath = 'imgs\\existFace.jpg'
# imgPath = 'imgs\\notFace.jpg'
img = cv2.imread(imgPath)

# 调用本地cv训练模型,在本地项目对应安装opencv的目录下
face_cascade = cv2.CascadeClassifier('D:\\space\\python\\test1\\venv\\Lib\\site-packages\\cv2\\data\\haarcascade_frontalface_default.xml')

# 人脸检测,
# 参数:
#   {
#   [img:待检测图片,一般为灰度图像加快检测速度],
#   [scaleFactor--表示在前后两次相继的扫描中,搜索窗口的比例系数。默认为1.1即每次搜索窗口依次扩大10%]
#   [minNeighbors--表示构成检测目标的相邻矩形的最小个数(默认为3个)。
#         如果组成检测目标的小矩形的个数和小于 min_neighbors - 1 都会被排除。
#         如果min_neighbors 为 0, 则函数不做任何操作就返回所有的被检候选矩形框,
#         这种设定值一般用在用户自定义对检测结果的组合程序上]
#   }
#   返回人脸数组
faces = face_cascade.detectMultiScale(img, scaleFactor=1.3, minNeighbors=5)
print(faces)
# 如果没有人脸
if len(faces) == 0:
    print('没有人脸,退出')
    sys.exit()
# 遍历人脸
for x, y, w, h in faces:
    # 画人脸位置-正方形,画RGB白色,线条宽度为1
    img2 = cv2.rectangle(img, (x, y), (x + w, y + h), (255, 255, 255), 1)
    # 取人脸区域
    face_area = img2[y:y + h, x:x + w]
    # 将人脸图片存起来
    cv2.imwrite('generate-imgs\\copy.png', img2)
    cv2.imwrite('generate-imgs\\face.png', face_area)

cv2.imshow('img', img2)
cv2.waitKey(0)
cv2.destroyAllWindows()

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44

总结

不要放弃你的幻想。当幻想没有了以后,你还可以生存,但是你虽生犹死。

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号