环境:python36
1、安装dlib、face_recognition
windows版
下载dlib,cp后面是py版本
下载地址:https://pypi.org/simple/dlib/
提供一个36版本的网盘下载地址:https://pan.baidu.com/s/1nVXQWf0v6Mhvgq8uSNI7qg
进入文件目录执行
安装face_recognition
pip3 install face_recognition
其他模块缺什么安装什么,pip3 install xxx
备注一下:
1、cv2对应的是openCV,下载地址:https://pypi.org/project/opencv-python/#files
百度网盘地址:https://pan.baidu.com/s/1q7G3Xbt2MZ0Ynm_etaAIDw(windows)、https://pan.baidu.com/s/1T7Wdj0XqHVBdZbK5eGjMJw(linux)
2、dlib官网:http://dlib.net/
dlib是C++的库
3、Pillow是PIL的升级版,PIL最多只支持到py27
linux版
第一步:
yum -y install gcc gcc-c++ cmake boost-devel openblas-devel
第二步:
pip3 install dlib
第三步:
pip3 install face_recognition
常见错误:https://xwsoul.com/posts/684
internal compiler error: Killed (program cc1plus)
造成错误可能的原因:系统没有交换分区, 编译过程中内存耗尽, 导致了编译中断 …
解决方式也很简单, 就是增加一个交换分区:1. 创建分区文件, 大小 2G
dd if=/dev/zero of=/swapfile bs=1k count=2048000
2. 生成 swap 文件系统
mkswap /swapfile
3. 激活 swap 文件
swapon /swapfile
这样就没有问题了, 但是这样并不能在系统重启的时候自动挂载交换分区, 这样我们就需要修改 fstab.
修改 /etc/fstab 文件, 新增如下内容:/swapfile swap swap defaults 0 0
这样每次重启系统的时候就会自动加载 swap 文件了.
1.2、测试
import face_recognition import dlib import numpy as np import PIL.Image import cv2 import matplotlib.pyplot as plt basepath = 'D:\pyimgtest\G0000001\' first_image = face_recognition.load_image_file(basepath + "201901241133425.jpg") second_image = face_recognition.load_image_file(basepath + "201901241133427.jpg") f1 = face_recognition.face_locations(first_image,number_of_times_to_upsample=0, model="cnn") f2 = face_recognition.face_locations(second_image,number_of_times_to_upsample=0, model="cnn") first_encoding = face_recognition.face_encodings(first_image,f1)[0] second_encoding = face_recognition.face_encodings(second_image,f2)[0] results = face_recognition.compare_faces([first_encoding], second_encoding,0.38) print('results:'+str(results))
尴尬的是电脑跑不动,配置太差
转载请注明博客出处:http://www.cnblogs.com/cjh-notes/