Facial detection based attendance system to ease the task of teachers & eliminate the problem of proxies. This project involves building an attendance system which utilizes facial recognition to mark the presence.
Features:
1) Student management system (save Student info/Add Photo Sample, Update, Delete, Reset)
2) Train photo samples
3) Take attendance with Face Recognition
4) Attendance Report(Excel file/csv file)
5) Query page
6)Feedback page
Technology Used: openCV (Opensource Computer Vision) -Python -tkinter GUI interface, deepface, MySQL for database
Sample dataset in used to detect the faces.
How to run?
- Clone the project in your computer
- install the libraries mentioned in requirements.txt
- Run main.py to start the project
How does it work?
Face Recognition
Face Recognition Algorithms -
Haar Cascade LBPH (Local Binary Pattern Histogram)
In this project it takes sample of 100 photos to detect the face and marks the attendance with time in the excel sheet.
Emotion Detection
For this I have used deepfae library.
In this project it detects the emotion & generates a feedback score according to the *dominant emotion* of the student.
After this it generates graph based on the data stored in database between number of student & feedback score
Database
I have created database face_recognition to store data of student, queries & feedback of students in tables student, query & emotion respectively.
Username-root
Password-Test@123
To access the database:
first create database name face_recognition
restore facerecog.sql file using Command:
mysql -u root -p face_recognition<C:\facerecog.sql
in the path directory: C:\Program Files\MySQL\MySQL Server 8.0\bin
(Run this command on command prompt as admin)
(Make sure you have downloaded MySQL in your computer)
------------------------OR-----------------------
**Commands to create database and tables**
create database face_recognition;
use face_recognition;
create table student(Department varchar(45), Course varchar(45),Year varchar(45),Semester varchar(45),Student_Id varchar(45) NOT NULL PRIMARY KEY,Name varchar(45),Roll_No varchar(45),Gender varchar(45),DOB varchar(45),Father varchar(45),Phone varchar(45),Email varchar(45),PhotoSample varchar(45));
create table emotion(Feedback_id int NOT NULL PRIMARY KEY AUTO_INCREMENT,Dominant_emotion varchar(45),Feedbck_score varchar(45),Angry varchar(45),Disgust varchar(45),Fear varchar(45),Happy varchar(45),Sad varchar(45),Surprise varchar(45),Neutral varchar(45));
create table query(Query_id int NOT NULL PRIMARY KEY AUTO_INCREMENT,Nmae varchar(45),Query varchar(1000),Answer varchar(1000));
Home Page | Student Details | Face Detection | Attendance Record |
) | |||
Queris | Feedback Data | Emotion Detection | Graph to analyze feedback of students |