【环境搭建小知识】以在windows10+python下极简安装face_recognition,并进行人脸检测简单案例
概述
人脸识别库有很多,但DeepFace、Face_Recognition绝对是最具代表性的两个库,其中Face_Recognition库更是被称为这个星球上最好的人脸识别库。
但是Face_Recognition官方却明确声明,只针对Mac和Linux做适配,对windows系统不做适配,官方的原话为:windows或许能正常工作。
这让很多windows用户焦头烂额了,因为可能连库本身的安装都存在问题,本文既是针对这个情况为大家介绍一个在windows下极简安装Face_Recognition库的方法。
face_recognition简介
face_recognition项目的人脸识别是基于业内领先的C++开源库 dlib中的深度学习模型,用Labeled Faces in the Wild人脸数据集进行测试,有高达99.38%的准确率。但对小孩和亚洲人脸的识别准确率尚待提升。
关于Labeled Faces in the Wild人脸数据集的介绍,可以查阅我另一篇博客:【人脸识别系列】从知名DeepFace人脸识别库入手详解人脸识别—第二部分DeepFace库使用介绍之数据集介绍
face_recognition可以完成多种人脸识别任务,包括人脸定位(人脸检测)、人脸关键点识别、人脸识别等,具体每项人脸识别任务详细信息,可查阅我另一篇博客:【人脸识别系列】从知名DeepFace人脸识别库入手详解人脸识别—第一部分人脸识别任务介绍
face_recognition安装
由于face_recognition库是以来dlib库而开发,所以必须要安装dlib库,只有dlib库正常安装,face_recognition才能正常安装。face_recognition安装的难点也正是dlib库的安装,因为就是该库未提供windows下的适配。
本文介绍的方法是使用别人编译dlib库whl文件,进行直接安装,方便快捷,不用在环境准备上纠结,直接上手face_recognition进行体验。
dlib库whl文件下载地址:Dlib whl文件下载地址
该下载地址中,包含了针对64位Windows和python 3.7、3.8、3.9的三个版本文件,我选择的是基于python 3.7的版本:dlib-19.17.0-cp37-cp37m-win_amd64.whl
我的基本环境:
- windows 10(64位)
- python 3.7.0
- python管理器为anaconda
安装过程:
- cmake和boost安装
pip install cmake
pip install boost
- Dlib安装
# 先进入dlib-19.17.0-cp37-cp37m-win_amd64.whl文件所在目录,或者写成绝对路径
pip install dlib-19.17.0-cp37-cp37m-win_amd64.whl
- face_recognition安装
pip install face_recognition
face_recognition简单案例介绍
人脸检测
-
原图如下所示:
-
代码如下所示:
import face_recognition
import cv2
import matplotlib.pyplot as plt
img_path1 = r"./data/7-2p.jpg"
imgs = cv2.imread(img_path1, cv2.IMREAD_COLOR)
# 检测人脸位置
face_locations = face_recognition.face_locations(imgs)
# 根据检测出的人脸位置画框框出人脸
for i in range(len(face_locations)):
cv2.rectangle(imgs,(face_locations[i][1],face_locations[i][0]),(face_locations[i][3],face_locations[i][2]),color=(0,255,0))
# 显示人脸检测效果
cv2.imshow("image", imgs)
cv2.waitKey(0)
- 检测效果如下所示: