ProctorAI is a machine learning-based exam proctoring system using TensorFlow. It monitors students during online exams, detecting suspicious activities like multiple faces, mobile phones, and browser/tab switching. The system locks the browser, logs events, and provides teachers with real-time insights and detailed logs for exam integrity.
ProctorAI is primarily designed for teachers or educators who need to conduct secure, proctored online exams. Instead of directly providing students with a Google Form link to an exam, ProctorAI allows teachers to create exam rooms on the platform, much like setting up an MCQ-based Google Form exam. Teachers can securely manage their exams, ensuring academic integrity.
- Real-Time Monitoring: Uses machine learning models for continuous monitoring during online exams.
- Face Detection: Detects faces to ensure the student is present throughout the exam.
- Suspicious Behavior Detection: Identifies multiple people in the frame, unauthorized devices (e.g., mobile phones), or any abnormal activity.
- Tab-Switching Detection: Logs attempts to switch tabs or exit the exam page.
- Teacher Dashboard: Teachers can create and manage exam rooms, track student progress, and view detailed activity logs.
- Secure Exam Environment: Locks the browser to prevent cheating and ensures that the student cannot access any external resources during the exam.
Before you begin, make sure you have the following installed:
- Python 3.x
- Django 5.1.1 (or as specified in
requirements.txt)
Follow these steps to set up the project on your local machine:
-
Clone the repository:
git clone https://github.com/AdityaJadhav24/ProctorAI.git
-
Navigate to the project directory:
cd ProctorAI -
Set up a virtual environment (optional but recommended):
python -m venv .venv
-
Activate the virtual environment:
For Windows:
.venv\Scripts\activate
For macOS/Linux:
source .venv/bin/activate -
Install dependencies:
pip install -r requirements.txt
-
Run the development server:
python manage.py runserver
The application should now be running at http://127.0.0.1:8000/.
Here's a quick overview of the main directories and files in the project:
- proctorAI/: Contains the main Django application.
- monitoring/: Contains the files related to exam proctoring.
- users/: Contains the files related to user login and signup.
- static/: Contains static files like images, CSS, and JavaScript used in the project.
- templates/: Includes HTML templates for the front-end UI.
- requirements.txt: Lists the Python dependencies for the project.
- Teacher Login: Log in to create exam rooms.
- Create Exam Room: Provide a Google Form link to generate a unique exam room for students.
- Student Join: Students can join the exam by entering their details, exam code and starting the test.
- Real-Time Monitoring: The system will monitor student activity, including face detection, suspicious behavior, and tab-switching.
- Activity Logs: Teachers can view detailed logs of student activities created during exam