# Face recognition
Face recognition using triplet loss, implementing FaceNet with pytorch. A small face dataset which consists of 62 IDs with 20 face images per ID for testing. The algorithm achieves accuracy above 97%.
</br>
人脸识别项目,提供一个小型数据集用作验证,使用三元组损失函数提升准确率和泛化能力,对FaceNet进行了一种实现。提供了一个小型的人脸数据集用于测试和验证。总共62个人,每人20张人脸图像。经测试,算法的准确率在97%以上,如果数据集更大一些,效果会更好。
</br> </br>
## Checkpoints
[断点模型链接](https://pan.baidu.com/s/1FXffkWIU-lBOFgshwW7QaA)
</br>
## Dependencies(依赖模块)
python3, pytorch, torchvision, cnn_finetune, opencv-python, numpy, tqdm. etc.
## Module components(模块组成)
### dataset module taking care of triplet selection and data loding.(数据集模块主要负责三元组选择和数据加载)
dataset.py
### utility module taking care of image data formating, cleaning, and organization.(工具模块负责人脸数据的格式转换,数据清洗和数据组织)
utils.py
### main module in charge of model definition, data/checkpoint loading, training, testing and validation.(主功能模块负责模型定义,数据、断点加载,训练,测试和验证。)
main.py
## 脚本运行效果截图:
![](https://github.com/CaptainEven/FaceRecognition/blob/master/training.png)
</br>
## Algorithm description(算法说明)
Inspired by Google's FaceNet, we design a special loss to improve the model's descriminative power for fine-grained classification task like face recognition. The basic principle is quite plain and simple: if a group face images belong to one person identity, they are definitelt closer to each other than image faces belonging to other person's identity. Its main thought is similar to clusting algorithm.
</br>
受谷歌FaceNet的启发,我们设计了一种特殊的损失函数(类似于三元组损失函数),用来提升细粒度分类任务的性能,比如人脸识别任务。它的基本思想简单而朴素,如果一组人脸图像属于同一个人,那么这些图像相比其他人的人脸图像,他们之间肯定会更近似彼此。这个思想类似于聚类。
</br>
![](https://github.com/CaptainEven/Face-recognition-/blob/master/description.png)
>> We take advantage of a joint loss of classification and triplet loss to make the training convergence more easily and stable, the model is more able to discriminate between different ID's faces as illustrated above.</br>
>> 本算法在FaceNet的基础上改进了loss函数表达式,采用联合损失函数:CrossEntropy分类损失 + triplet损失,加快训练收敛并使得训练过程更稳定。
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
基于python的人脸识别+使用数据集验证+使用三元组损失函数提升准确率和泛化能力+对FaceNet进行了一种实现,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用~ 基于python的人脸识别+使用数据集验证+使用三元组损失函数提升准确率和泛化能力+对FaceNet进行了一种实现,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用~ 项目简介: 人脸识别项目,提供一个小型数据集用作验证,使用三元组损失函数提升准确率和泛化能力,对FaceNet进行了一种实现。提供了一个小型的人脸数据集用于测试和验证。总共62个人,每人20张人脸图像。经测试,算法的准确率在97%以上,如果数据集更大一些,效果会更好。
资源推荐
资源详情
资源评论
收起资源包目录
人脸识别项目.zip (8个子文件)
FaceRecognition-master
utils.py 35KB
train_set.rar 16.47MB
main.py 13KB
training.png 158KB
dataset.py 9KB
validate_set.rar 8.21MB
README.md 3KB
description.png 66KB
共 8 条
- 1
资源评论
梦回阑珊
- 粉丝: 5260
- 资源: 1687
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 小波多尺度同步压缩变换一维数据转换二维图像的方法(Matlab代码和数据)
- 小波二阶同步压缩变换一维数据转换二维图像的方法(Matlab代码和数据)
- 小波同步提取变换一维数据转换二维图像的方法(Matlab代码和数据)
- cailiaocailiaocailiaocailiao.7z.txt
- fxtrace2024111023332001.log
- C# Winform 自定义控件 TextBox
- HengCe-18900-2024-2030全球与中国IO-Link技术市场现状及未来发展趋势-样本.docx
- java课程设计-拼图游戏.zip学习资源
- qt+udp+timer
- Java课程设计你画我猜小游戏之你猜我猜不猜.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功