- Modularize different parts
- Test and debug on the system
- Documentation
- Add Facial Recognition
Server (folked from https://github.com/hkust-itsc/smart_door-jetson-.git)
- Have python installed in your device (recommand python 3.8.8)
- (OPTIONAL) Recommand using PyCharm (https://www.jetbrains.com/pycharm/) for IDE, and have Anaconda (https://www.anaconda.com/) installed for setup the environment.
- Install the dependenies according to requirements.txt/freeze.yml using "pip install -r requirements.txt", use "conda env create -f freeze.yml" to setup the environment if you have Anaconda installed. If there are any failure, use "while read requirement; do conda install --yes $requirement || pip install $requirement; done < requirements.txt" to install the dependencies line-by-line.
- Download the RetinaFace folder from (https://gohkust.sharepoint.com/:f:/r/teams/ITSCTTInterns/Shared%20Documents/General/FRT/frtdev/home/py/insightface/RetinaFace?csf=1&web=1&e=RMnPQD) and extract to the corresponding locations("itsc_facial_reg_server/insightface/").
- If you are using Windows, install a Linux VM for executing the following command, recommand using MSYS2(https://www.msys2.org/).
- Go to "itsc_facial_reg_server\insightface\RetinaFace" and run "make" with your linux command line, it may be failed as the insightface module(0.1.2) we are using is deprecated, try to update the module with latest version(https://github.com/deepinsight/insightface.git).
- Open "facial_regconition_app.py" and set "demo = False" (L21) and uncommenting the import statement, then run this file.
- You can test the server with running "test_facial_reg.py".
- Have Node.js(https://nodejs.org/en/), React Native(https://reactnative.dev/), Android Studio(https://developer.android.com/studio?gclid=CjwKCAjw46CVBhB1EiwAgy6M4illQJ0pyIBnGHyh9d77GqKZe2dJUiBkGHJZFwLTWUc_Wt-Tr2uayxoCVqAQAvD_BwE&gclsrc=aw.ds) installed.
- Run "npm install" for installing the project dependencies.
- Create an android virtual device with using Android Studio, or connect a mobile device (Debug mode enabled) to your computer.
- Run "adb devices" to see if your device is connected to the cmputer and ready for debug.
- Remember to have your server running before debuging the app.
- Run "npx react-native run-android"/"npx react-native run-ios" for running the app on your mobile device.