Faces人脸识别项目简介
Faces人脸识别
分为两个模块,Faces文件夹下存放人脸识别算法的代码,Web文件夹下存放网站搭建的代码
详情请查看各个模块下的readme文档
项目简介
核心算法
一款基于Dlib、opencv开发的人脸识别程序,包含人脸检测、人脸校正、人脸识别、表情识别四个模块
- 人脸检测问题上,初步采用了传统HOG+SVM的方式,单次人脸检测仅需0.1s
- 针对人脸检测过程中部分人头偏移角度过大而检测不到人脸的问题,加入具有角度自适应性的旋转鲁棒算法
- 人脸识别问题上,使用适用于人脸的ResNet-34深度神经网络来提取人脸特征,在公共数据集上拥有99.37%的准确率
- 针对女明星妆容变化较大(不同年龄、不同化妆风格)的情况,采用数据增强的方法,通过爬虫自动爬取女明星本人更多的照片,扩大已知人像库,尽可能消除女明星妆容变化较大引起的误差
- 为了拥有更高的准确性,加入基于人脸关键点的人脸校正模块。先将人脸校正、标准化后再送入深度神经网络中,可以得到更加稳定的编码,同等情况下可以提升3.6%的准确率
- 为了增加项目的可玩性,加入了基于深度学习的表情识别模块,快来体验一下!
人脸检测效果图如下
经过人脸检测、人脸校正并裁剪后的stdface如图
人脸识别结果
表情识别结果
Web部分
一个基于flask框架搭建的包含人脸图库、人脸识别的轻量级网站
- 为了与python程序高度耦合,采用python轻量级框架flask,部署在服务器的127.0.0.1:5000上
- 针对每次调用程序都要花费大量时间重新加载模型的问题,将算法使用到的模型常驻内存中,单次调用人脸识别程序仅需0.3s
网站主要页面如图
首页:
人像图库
人脸识别(未上传)
人脸识别结果
表情识别结果
关于我们
API调用耗时
Faces人脸识别项目简介的更多相关文章
- 基于卷积神经网络的人脸识别项目_使用Tensorflow-gpu+dilib+sklearn
https://www.cnblogs.com/31415926535x/p/11001669.html 基于卷积神经网络的人脸识别项目_使用Tensorflow-gpu+dilib+sklearn ...
- Github开源人脸识别项目face_recognition
Github开源人脸识别项目face_recognition 原文:https://www.jianshu.com/p/0b37452be63e 译者注: 本项目face_recognition是一个 ...
- anaconda3下配置python-3.5+tensorflow-gpu-1.9.0人脸识别项目环境
https://www.cnblogs.com/31415926535x/p/10620732.html 之前为了配置tensorflow-gpu的环境又是装cuda,又是装cudnn,还有tenso ...
- 基于Python与命令行人脸识别项目(系列一)
Face Recognition 人脸识别 摘要:本项目face_recognition是一个强大.简单.易上手的人脸识别开源项目,并且配备了完整的开发文档和应用案例,方便大家使用.对于本项目可以使用 ...
- python人脸识别项目face-recognition
该项目基于Github上面的开源项目人脸识别face-recognition,主要是对图像和视频中的人脸进行识别,在开源项目给出的例子基础上对视频人脸识别的KNN算法进行了实现. 0x1 工程项目结构 ...
- 基于Python与命令行人脸识别项目(系列二)
接着系统一,继续开始我们face_recognition. Python 模块:face_recognition 在Python中,你可以导入face_recognition模块,调用丰富的API接口 ...
- 项目总结二:人脸识别项目(Face Recognition for the Happy House)
一.人脸验证问题(face verification)与人脸识别问题(face recognition) 1.人脸验证问题(face verification): 输入 ...
- opencv基于PCA降维算法的人脸识别
opencv基于PCA降维算法的人脸识别(att_faces) 一.数据提取与处理 # 导入所需模块 import matplotlib.pyplot as plt import numpy as n ...
- 人脸识别Demo解析C#
概述 不管你注意到没有,人脸识别已经走进了生活的角角落落,钉钉已经支持人脸打卡,火车站实名认证已经增加了人脸自助验证通道,更别提各个城市建设的『智能城市』和智慧大脑了.在人脸识别业界,通常由人脸识别提 ...
随机推荐
- 测试命令运行时间:timeit和profile
先说timeit from timeit import Timer def test1(): n=0 for i in range(101): n+=i return n def test2(): r ...
- centos 正则,grep,egrep,流式编辑器 sed,awk -F 多个分隔符 通配符 特殊符号. * + ? 总结 问加星 cat -n nl 输出文件内容并加上行号 alias放~/.bash_profile 2015-4-10 第十三节课
centos 正则,grep,egrep,流式编辑器 sed,awk -F 多个分隔符 通配符 特殊符号. * + ? 总结 问加星 cat -n nl 输出文件内容并加上行号 alias放~ ...
- (转)rabbitmq.config详细配置参数
rabbitmq.config详细配置参数 Key Documentation tcp_listeners 用于监听 AMQP连接的端口列表(无SSL). 可以包含整数 (即"监听所有接口& ...
- PAT 1075 PAT Judge[比较]
1075 PAT Judge (25 分) The ranklist of PAT is generated from the status list, which shows the scores ...
- Jenkins时区设置
系统管理->脚本命令行 System.setProperty('org.apache.commons.jelly.tags.fmt.timeZone', 'Asia/Shanghai')
- 常微分方程初值问题:多步预测-修正方法 [MATLAB]
#先上代码后补笔记# #可以直接复制粘贴调用的MATLAB函数代码!# 1. 亚当斯(Adams)预测-修正算法 由亚当斯-巴什福特(Adams-Bashforth)显式预测公式和亚当斯-莫顿(Ada ...
- Java 和 Python 解析动态 key 的 JSON 数据
一.概述 解析JSON过程中,什么情况都可能遇到.遇到特殊的情况,不会怎么办?肯定不是设计的问题,一定是你的姿势不对. 有这样一种JSON需要解析: { "b3444533f6544&quo ...
- VS2010/MFC编程入门之二十三(常用控件:按钮控件的编程实例)
上一节VS2010/MFC编程入门教程中鸡啄米讲了按钮控件Button.Radio Button和Check Box的基本用法,本节就继续讲按钮控件的内容,通过一个实例让大家更清楚按钮控件在实际的软件 ...
- zw版【转发·台湾nvp系列Delphi例程】HALCON MoveRectangle2
zw版[转发·台湾nvp系列Delphi例程]HALCON MoveRectangle2 procedure TForm1.Button1Click(Sender: TObject);var img ...
- mongoose 操作一直转圈
可能是:渲染时候 new content({ category:req.body.category, title:req.body.title, description:req.body.descri ...