{"id":13631615,"url":"https://github.com/vudung45/FaceRec","last_synced_at":"2025-04-17T22:31:16.973Z","repository":{"id":87536892,"uuid":"94069754","full_name":"vudung45/FaceRec","owner":"vudung45","description":"A Tensorflow implementation of Facial Recognition in Python","archived":false,"fork":false,"pushed_at":"2020-09-26T06:45:44.000Z","size":70698,"stargazers_count":225,"open_issues_count":31,"forks_count":126,"subscribers_count":21,"default_branch":"master","last_synced_at":"2024-08-01T22:49:09.185Z","etag":null,"topics":["facial-recognition","machine-learning","python","tensorflow"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vudung45.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2017-06-12T07:51:00.000Z","updated_at":"2024-06-07T20:47:05.000Z","dependencies_parsed_at":"2023-05-10T12:31:35.360Z","dependency_job_id":null,"html_url":"https://github.com/vudung45/FaceRec","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vudung45%2FFaceRec","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vudung45%2FFaceRec/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vudung45%2FFaceRec/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vudung45%2FFaceRec/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vudung45","download_url":"https://codeload.github.com/vudung45/FaceRec/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223768536,"owners_count":17199356,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["facial-recognition","machine-learning","python","tensorflow"],"created_at":"2024-08-01T22:02:31.808Z","updated_at":"2024-11-08T23:31:07.711Z","avatar_url":"https://github.com/vudung45.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# FaceRec\nA simple working facial recognition program.\n\n\n## Installation:\n    1. Install the dependencies\n\n    2. Download the pretrained models here: https://drive.google.com/file/d/0Bx4sNrhhaBr3TDRMMUN3aGtHZzg/view?usp=sharing\n    \n        Then extract those files into models\n        \n    3. In terminal do, source ./venv/bin/activate \n        \n        then navigate to FaceRec folder location\n\n    4. Run main.py\n\n## Requirements:\n    Python3 (3.5 ++ is recommended)\n\n## Dependencies:\n\n    opencv3\n\n    numpy\n\n    tensorflow ( 1.1.0-rc or  1.2.0 is recommended )\n\n\n## Howto:\n    `python3 main.py` to run the program\n    `python3 main.py --mode \"input\"` to add new user. Start turning left, right, up, down after inputting the new name. Turn slowly to avoid blurred images\n\nTo achieve best accuracy, please try to mimick what I did here in this gif while inputting new subject:\n    \n![GIF Demo](https://media.giphy.com/media/3o7aD7CZ6C3RLCvLgs/giphy.gif)\n\n        \n### Flags:\n   `--mode \"input\"` to add new user into the data set\n    \n\n\n## General Information:\nProject: Facial Recogition\n\nThis is a simple minified version of a bigger project I was working on this summer.\n\n### Info on the models I used:\n\nFacial Recognition Architecture: Facenet Inception Resnet V1 \n\n_Pretrained model is provided in Davidsandberg repo_\n\nMore information on the model: https://arxiv.org/abs/1602.07261\n\nFace detection method: MTCNN\n\nMore info on MTCNN Face Detection: https://kpzhang93.github.io/MTCNN_face_detection_alignment/\n\nBoth of these models are run simultaneouslyx\n\n### Framework and Libs:\n\nTensorflow: The infamous Google's Deep Learning Framework\n\nOpenCV: Image processing (VideoCapture, resizing,..)\n\n\n## Suggestions for Improvement:\nTo keep this repo as simple as possible, I will probably have this \"plug-in\" in a seperate repo:\n\nGiven the constrain of the facenet model's accuracy, there are many ways you can improve accuracy in real world application. One of my suggestion would be to create a tracker for each detected face on screen, then run recognition on each of them in real time. Then, decide who is in each tracker after some number of frames (3 - 10 frames, depending on how fast your machine is). Keep doing the same thing until the tracker disappears or loses track. Your result can look somewhat like this:\n\n`{\"Unknown\" :3, \"PersonA\": 1, \"PersonB\": 20}` ---\u003e This tracker is tracking PersonB\n\nThis will definitely improve your program liability, because the result will most likely be leaning toward the right subject in the picture after some number of frames, instead of just deciding right away after 1 frame like you normally would. One benefit of this approach is that the longer the person stays in front of the camera, the more accurate and confident the result is, as confidence points get incremented over time.\nAlso, you can do some multi-threading/processing tricks to improve performance.\n\n### Demos:\n\n![GIF Demo](https://media.giphy.com/media/l378mx3j8ZsWlOuze/giphy.gif)\n\nLive demo: https://www.youtube.com/watch?v=6CeCheBN0Mg\n\n\n\n@Author: David Vu\n\n## Credits:\n    -  Pretrained models from: https://github.com/davidsandberg/facenet\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvudung45%2FFaceRec","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvudung45%2FFaceRec","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvudung45%2FFaceRec/lists"}