Live visualisation of various facial recognition algorithms.
| .vscode | ||
| dnn | ||
| face_recognition | ||
| visualhaar@1319e644b1 | ||
| .gitignore | ||
| .gitmodules | ||
| dnn_test.py | ||
| haarcascade_frontalface_alt2.xml | ||
| hog_test.py | ||
| live_dnn.py | ||
| live_hog.py | ||
| mirror.py | ||
| README.md | ||
| recognition_test.py | ||
| requirements.txt | ||
| test_rec.py | ||
| test_rust.py | ||
| video_multiprocess.py | ||
| video_threading.py | ||
A mirror which shows which faces are detected through three different facial detection algorithms:
- OpenCV's deep neural net face detector.
- Dlib's default frontal face detector, which is HOG based
- A Viola-Jones Haarcascade detection. Any OpenCV compatible xml file should work. It defaults to the canonical
haarcascade_frontalface_alt2.xml.
Installation
on windows
The installation in Windows can be done, though it is quite elaborate:
- Install python3
- Install VS C++ build tools
- Install Cmake (needed for python dlib)
- make sure to add it to path
- Install git
- including ssh deploy key
git clone https://git.rubenvandeven.com/r/face_recognitioncd face_recognitionpip install virtualenvvirtualenv.exe venv- Might be that you need to run:
C:\Users\DP Medialab\AppData\Roaming\Python\Python39\Scripts\virtualenv.exe(see pip output)
- Might be that you need to run:
.\venv\Scripts\activate- Might be that you need to first run
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
- Might be that you need to first run
cd .\dnn\face_detectorpython.exe .\download_weights.pycd ..\..pip.exe install -r requirements.txtcd .\visualhaar- Either one of:
- Compile rust library
- Install rustup-init
git submodules initgit submodules updatecargo build --lib --release
- Download dll from https://git.rubenvandeven.com/r/visualhaar/releases
- Compile rust library
- Make the installer:
& 'C:\Users\DP Medialab\AppData\Roaming\Python\Python38\Scripts\pyinstaller.exe' .\mirror.py --add-binary '.\visualhaar\target\release\visual_haarcascades_lib.dll;.' --add-data '.\haarcascade_frontalface_alt2.xml;.' --add-data '.\SourceSansPro-Regular.ttf;.' --add-data 'dnn;dnn'mv '.\dist\mirror\mpl-data' '.\dist\mirror\matplotlib\'Compress-Archive -LiteralPath .\dist\mirror -DestinationPath .\dist\mirror.zip
- We could also use wine for cross compilation from Linux
- make sure wine is set to pose as Windows 10 (
winecfg) wine ~/Downloads/python-3.9.0-amd64.exe(or whichever version you use)- Install for all users
- make sure wine is set to pose as Windows 10 (
## Instructor help
If screen stays black: is the camera on?
Enable camera through keyboard (MSI laptops: fn+F6). Then go to Settings/Instellingen -> Privacy instellingen voor camera -> Grant apps access to camera.