Final project of team HGCG for Advanced Software Engineering (COMS W4156) Team members:
- Tvisha Gangwani
- Jiawen Li
- Evan Ziebart
- Jiahong He
We are working towards integrating facial recognition into our everyday lives. The system will identify the user as he/she walks in through the door and play their favorite song.
For our first iteration we have gotten the facial recognition API set up and are able to draw and test similarities between different people’s pictures. We have also been able to set up a server to hold the data- picture of person being identified, favourite song, user name and password.
For our second iteration, we've got the server side set up and the users are now able to update their preferences/information with a preset password.
For our final iteration, we've completed what we've left before: the system now would really play the user's favourite music when he/she is detected by the camera, and the administrator of the system would be able to specify some default settings, for example, what the system would do if the detected user didn't specify a favourite song or the song the user specified is somehow not playable right now (file missing, corrupted, or removed).
Operating System Supported: MacOS (Other OS not tested) Python: 3.6.2
$ git clone https://github.com/JiahongHe/Personal-Facial-Identification-System
$ cd Personal-Facial-Identification-System
$ pip3 install -r requirements.txt
$ cd sh
\
-
Start the server
$ bash startServer.sh
-
Adminitration page (used for the administrator to change the settings/user information, off the shelf from Django)
$ bash administration.sh
-
New user registration
$ bash registration.sh
-
Registered user update their information (email and password set during registration required)
$ update.sh
-
Start face recognition (main utility)
$ bash main.sh
The new adminitrator creation follows the standard way to creating a new superuser with Django.
$ cd src/backendServer
$ python3 manage.py createsuperuser
- Go to administration page and login
- Click
System settings
- Change the settings
$ cd test
- Static code analysis (optional)
$ bash pre_commit.sh
- Main tests
$ bash test_main.sh
- We are using the face_recognition API available on Python and compatible with dlib.
- The original design is to deploy this app on Raspberry Pi, however due the difficulty of installing dlib on the Pi model we have, this project has been moved to MacOS.
- We mainly use Django as the framework when building our backend server to store and serve user information.