An open API service indexing awesome lists of open source software.

https://github.com/zahidalidev/ai-facial-attendence-python-reactjs


https://github.com/zahidalidev/ai-facial-attendence-python-reactjs

Last synced: 3 days ago
JSON representation

Awesome Lists containing this project

README

          

![banner](https://user-images.githubusercontent.com/19692245/115225089-1e5add80-a127-11eb-8585-3ef56d46a7ba.jpg)


Complete Web App for taking online attendance using AI based Facial Recognition. Designed from scratch using React + Tailwind with Python backend. OpenCV used for Face detection and recognition.

## Setup

### 1. Install Front-end

To run the front-end:

- Clone the repository.

- Navigate to the cloned repository and install dependencies by running:
```sh
npm install
```
- Now, start the server
```sh
npm start
```

### 2. Install Back-end

- The project requires python 3.7. Other versions may create issues.

- Install MongoDB using their documentation and start the MongoDB server.

- Navigate to `backend/` folder and install the python dependencies:
```sh
pip install -r requirements.txt
```
- Run main.py

### 3. Connect front-end to back-end

- Note the local host url the backend server is running at (as given in the terminal output).
Paste this url in `config/api.js` eg:
```sh
// End point of your flask api.
export const apiEndPoint = 'http://127.0.0.1:5000/';
```

## Preview

1login

1home

1new

1sessions

1 1home

1mark2

1mark3

## WorkFlow

- User(Teacher) signs in.
- Teacher creates a new course by giving information, and dataset.
- Dataset includes a folder having pictures of students enrolled in the course, shot by their webcams.
- Upon creation, the data is sent to the backend and model is trained for the given course.
- To take attendence, the teacher starts a new session of the course.
- A unique code is generated which teacher sends out to the students.
- Students navigate to `/markattendence` page and paste the code.
- Students are then shown a page where they allow webcam, capture a shot and mark attendence. Using the trained model, their attendance is marked.
- Teacher can download attendence reports of a course in form of csv from the sessions page.