AI识别照片是谁,人脸识别face_recognition开源项目安装使用 | 机器学习
目录
前言
环境安装
代码使用
总结
前言
最近碰到了照片识别的场景,正好使用了face_recognition项目,给大家分享分享。face_recognition项目能做的很多,人脸检测功能也是有的,是一个比较成熟的项目。该项目的github地址:github仓库
本文主要是对该项目的安装使用,后面会更新一篇我自己写的实现人脸检测的代码,可以直接使用。
环境安装
首先我们看看官方给出的人脸识别效果图
我们看一下README关于安装环境的信息
官方给出的可安装操作系统是Mac和Linux,但是我想在windows安装,继续往下看。
windows虽然不是官方支持,但是也能装,不就是个dlib吗?好的,那就开始装。
我们直接安装requirements_dev.txt,这里要注意,把pip去掉。
注意一点安装dlib的时候会报错,需要先安装cmake,安装命令如下:
pip install cmake -i https://pypi.douban.com/simple
除此之外,项目还需要安装opencv-python,安装命令如下:
pip install opencv-python -i https://pypi.douban.com/simple
代码使用
先做一下说明,在使用face_recognition运行的时候,可以选择安装face_recognition命令进行运行的模式,也可以使用face_recognition模块构建代码运行。为了二次开发,我还是先试试代码的方式,主要试试人脸识别模块。
官方代码如下:
import face_recognition# Load the jpg files into numpy arrays
biden_image = face_recognition.load_image_file("biden.jpg")
obama_image = face_recognition.load_image_file("obama.jpg")
unknown_image = face_recognition.load_image_file("obama2.jpg")# Get the face encodings for each face in each image file
# Since there could be more than one face in each image, it returns a list of encodings.
# But since I know each image only has one face, I only care about the first encoding in each image, so I grab index 0.
try:biden_face_encoding = face_recognition.face_encodings(biden_image)[0]obama_face_encoding = face_recognition.face_encodings(obama_image)[0]unknown_face_encoding = face_recognition.face_encodings(unknown_image)[0]
except IndexError:print("I wasn't able to locate any faces in at least one of the images. Check the image files. Aborting...")quit()known_faces = [biden_face_encoding,obama_face_encoding
]# results is an array of True/False telling if the unknown face matched anyone in the known_faces array
results = face_recognition.compare_faces(known_faces, unknown_face_encoding)print("Is the unknown face a picture of Biden? {}".format(results[0]))
print("Is the unknown face a picture of Obama? {}".format(results[1]))
print("Is the unknown face a new person that we've never seen before? {}".format(not True in results))
代码说明:
1、首先可以看到将两个人脸的数据加到了known_faces列表内。
2、然后用未知图数据进行识别判断。
看一下加入到known_faces的照片
看一下需要识别的照片
看一下执行结果
我们可以看到在拜登的识别中提示false,在奥巴马识别中提示true。这里要注意一点,我们看一下compare_faces方法参数。
参数tolerance最佳为0.6,越低越严格,所以可以按照自己的需求调整。
总结
经过我多次测试,在脸型比较接近的情况下,还是会有误差,需要按照自己的情况进行调整。
分享:
生活最沉重的负担不是工作,而是无聊。——《罗曼·罗兰》
如果本文对你有帮助的话,点个赞吧,谢谢!
AI识别照片是谁,人脸识别face_recognition开源项目安装使用 | 机器学习相关推荐
- AI让照片换发型,Barbershop开源项目安装使用 | 机器学习
目录 前言 环境部署 1.导入environment/environment.yaml环境 2.安装pytorch 3.依赖库安装 4. cl.exe环境变量配置 5.模型下载 6.发型数据下载 7. ...
- 如何将照片美化,DPED机器学习开源项目安装使用 | 机器学习
目录 前言 环境部署 项目结构 tensorflow安装 其他依赖安装 VGG-19下载 项目运行 准备图片素材 测试效果 总结 前言 最近发现了一个可以把照片美化的项目,自己玩了玩,挺有意思的,分享 ...
- 如何调整照片人物年龄,此生也算共白头,PaddleGAN开源项目安装使用 | 机器学习
目录 前言 环境部署 项目使用 预处理部分 照片老化处理 照片年轻化处理 总结 前言 最近在试着研究飞浆平台的许多功能,看到了许多有意思的功能.其中可以将照片美化以及年龄调整这个功能让我想到了之前抖音 ...
- 人脸识别(9)---人脸识别系统的原理与发展
人脸识别系统的原理与发展 1,人脸识别介绍 广义定义:构建人脸识别系统的一系列相关技术,包括人脸图像采集,人脸定位,人脸识别预处理,身份确认以及身份查找等. 狭义定义:通过人脸进行身份确认或者身份查找 ...
- 防沉迷人脸识别可以扫照片吗_人脸识别的智能门锁到底安不安全?用照片可以打开是真的吗?...
随着人脸识别技术不断成熟发展,市场需求加速释放,应用场景不断被挖掘,多方的推动使得人脸识别锁备受青睐.人脸识别精度的提高,使得人脸识别智能锁具有高便捷性,强实用性等特点.因此,近年来这种门锁成为了越来 ...
- 活体检测-用照片来做人脸识别可行吗?
随着科技的迅速发展,智能化也越来越发达,并慢慢进入到我们日常生活中来了.如考勤 早期是人工记录,签到,然后是打卡,刷卡,再到指纹.现在已经发展到更加先进的人脸识别考勤了. 卡可以代打,代刷,但是牵涉到 ...
- 315晚会回顾:手机充电站可控制你的手机、软件合成照片秒破人脸识别
本文讲的是 315晚会回顾:手机充电站可控制你的手机.软件合成照片秒破人脸识别, 曝光不良企业的同时,也对公众进行安全科普教育,已经成了每年315晚会的惯例.前年是诈骗电话.手机实名制:去年是吸话费恶 ...
- 开源真香 离线识别率高 Python 人脸识别系统
以往的人脸识别主要是包括人脸图像采集.人脸识别预处理.身份确认.身份查找等技术和系统.现在人脸识别已经慢慢延伸到了ADAS中的驾驶员检测.行人跟踪.甚至到了动态物体的跟踪. 由此可以看出,人脸识别系统 ...
- android人脸识别门禁,安卓人脸识别门禁终端DM-A1
1.产品介绍: 安卓(Android)人脸识别门禁终端DM-A1是定位为一款功能丰富,扩展性强,稳定性高,简单维护的人脸识别一体机.它集深数科技人脸比对算法及人脸识别活体检测算法,实现5000人脸库下 ...
最新文章
- Eclipse mac 下的快捷键
- Linux下监控文件系统
- 小米redmi_小米Redmi小爱触屏音箱8,不仅屏幕大,而且功能多,价格更超值
- ThinkPHP3.2 volist嵌套循环显示原理
- 中文排版规则_非设计师的5条排版规则
- JavaScript 严格模式(use strict)
- oracle定时加载文件,采用sqlldr定时将文本文件加载进入数据库
- 华为RH2285H V2设备管理口白屏的解决方法
- xxx.lib(xxx.obj)fatal error LNK1103: debugging information corrupt; recompile module 的解决方案
- voc数据集转换为txt
- 软考中级信息安全工程师视频资料
- 【推荐系统】逻辑回归(LR)在推荐系统中的使用
- 云中漫步-我这一辈子
- 细胞穿膜肽TAT/血管肽Angiopep/靶向多肽cRGD偶联TIO2二氧化钛纳米粒(TiO2-Angiopep)
- 7-2 一行文本的字母数字个数 (10 分)
- 威联通nas怎么更换大硬盘_QNAP 篇一:记一次换硬盘引发的折腾
- 2021年Facebook广告投放的9条建议
- 1139C C. Edgy Trees
- Qt音视频开发7-ffmpeg音频播放
- 苹果cms模板_苹果cms收录好的模板有哪些?