memory studio는 크게 두가지 폴더로 구성되어있습니다. face recognition은 ArcFace loss를 이용한 학습과 pretrained model을 불러와서 finetuning하는데 초점을 두었습니다.
service에는 Node.js를 구성하는 finalproject 폴더와 Flask api를 구성하는 deploy_ml 폴더로 되어있습니다.
Face Recognition
├── Backbone
├── configs
└── docs
├── dataset.py
├── train.py
├── validation.py
└── inference.py
└── requirements.txt
Service
└── finalproject
├── node_modules
├── public
├── views
├── server.js
└── package.json
└── package-lock.json
└── deploy_ml
├── app.py
└── requirements.txt
김우진 | 신건희 | 신중현 | 이종휘 |
---|---|---|---|
https://github.com/w-jnn | https://github.com/Rigel0718 | https://github.com/Blackeyes0u0 | https://github.com/gndldl |
Backbone : 사용한 backbone model을 모아놓은 파일입니다.
configs : train.py에 대한 configs 파일입니다.
requirements.txt: 필요한 파이썬 라이브러리를 기술한 파일입니다.
train.py : config 파일과 함께 train 합니다.
Model(Backbone) | dataset | Accuracy | F1-score |
---|---|---|---|
Arcface(ResNet-18) | MS1MV3 | 0.5485 | 0.4579 |
Arcface(MobileNet) | face-emore | 0.5321 | 0.4410 |
Arcface(ResNet-50)-scratch | Web-face | 0.7812 | 0.7644 |
Facenet(Inception-ResNet) | VggFace2 | 0.8810 | 0.8262 |
Facenet(ResNet-50)-scratch | Web-face | 0.7286 | 0.6227 |
-
clone
git clone https://github.com/deepinsight/insightface.git
download the refined dataset: (VGGFace2 recommended) VGGFace2 dataset [Visual Geometry Group]
- More Dataset please refer to the Department of Engineering Science, University of Oxford.
- facedataset/
name1/
photo1.jpg
photo2.jpg
...
name2/
photo1.jpg
photo2.jpg
...
.....
python train.py configs/config
v100서버에 Flask를 RESTful API로 구현하여 모델을 서빙하고 배포했습니다.
AWS Elastic Beanstalk를 사용하여 Node.js를 배포 했고, Flask api와 통신하고 있습니다.
MongoDB Atlas를 사용하여 클라우드 환경의 MongoDB를 연결하였습니다.
- This repo is mainly inspired by deepinsight/insightface and FaceNet