Face-ID Monitor

A monitor that knows your faces.


Project maintained by NTUEE-ESLab Hosted on GitHub Pages — Theme by mattgraham

Face-ID Monitor

Features

Scenario

The camera keeps detecting motion. When motion is detected, the authorized face must be detected within a buffer time to release the alarm; otherwise, the buzzer will ring, and Pi will send images by e-mail.

Requirements

SMTP function must be installed, which is not contained in python functions. Refer to the reference below to setup the SMTP server. Other modules that are required are:

Software Structure

Main thread

Camera thread

Motion detection module

Face detection module

Indicators thread

Mail script

How to use

Face registeration

First, you have to register your face into the machine. By uploading your photos (recommended less than 2K in both width and length) into the dataset/ directory. You should create a new folder named as your name and put your photos into the folder. e.g.

After that, execute python3 encode_faces.py to encode faces into a single file. Then this file will be used by the following face detection module

Setup your mail address and message

In mail.txt, you can set your own mail. Note that FROM/TO/Subject rows must be included; otherwise the mail may fail to be sent out.

run the main thread

Last, execute python3 app.py to run all the functions including http streaming, motion detection, face detection, LED and buzzer alarm, and mail alarm

Tunable parameters

SWOT analysis

Strength

Weakness

Opportunities

Threats

Demo video

https://youtu.be/v7BJr0ogYmM

References