curious-99 / online-test-proctoring

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Online Test Proctoring

Team Loosers In Development

Problem Statement:

In online tests without proctoring, cases are often reported of impersonation and cheating. Students either ask someone else to take the test on their behalf or use methods of cheating like referring to a textbook, using smartphones or other devices to search for answers online or taking help from a friend. The two major concerns of the customer are cheating and student authentication. It ensures the candidate focuses on the test screen during the test; there is enough light in the room and checks for suspicious objects to red flag the test. It also uses face recognition to do student authentication. Develop a suitable product that can perform all these functionalities. Use suitable Computer Vision techniques for face recognition and identifying objects. The product should be able to detect each of the mentioned unfair means used by the student. Students are supposed to deploy the model using a website or Android application.

Introduction

The idea behind an online test proctoring model is to use technology to monitor and proctor online exams to prevent cheating and ensure academic integrity. In addition to ensuring academic integrity, online test proctoring models can also provide benefits such as flexibility, convenience, and cost savings. Students can take exams from anywhere with an internet connection, and institutions can save resources by not having to hire physical proctors for online exams.

This project is aimed at developing a suitable product that can perform all the required functionalities, which include cheating prevention and student authentication. The product is expected to ensure that the candidate focuses on the test screen during the test, there is enough light in the room, and that suspicious objects are flagged to prevent cheating. We will be using computer vision techniques for face recognition, identifying objects, and detecting each of the unfair means used by the student.

This project is aimed at developing a suitable product that can perform all the required functionalities, which include cheating prevention and student authentication. The product is expected to ensure that the candidate focuses on the test screen during the test, there is enough light in the room, and that suspicious objects are flagged to prevent cheating. We will be using computer vision techniques for face recognition, identifying objects, and detecting each of the unfair means used by the student.

Team

Features

  • Multiple Face Detection
  • Multiple face detection is a computer vision technique used to detect and locate multiple faces in a given image or video frame. It is used in a variety of applications, including surveillance systems, photo tagging applications, and online test proctoring.

  • Face Authentication
  • Face authentication in online test proctoring involves using a computer vision system to capture and analyze the test taker's face during the exam. The system compares the facial features of the test taker against the reference facial features on file to ensure that they remain the same person throughout the duration of the exam.

  • Eye Tracking
  • Eye tracking in online test proctoring involves using a camera or sensor to track the movements of the test taker's eyes while they are taking the exam. It can detect any suspicious behavior, such as if the test taker is looking away from the screen for an extended period or if they are constantly shifting their gaze.

  • Smart Device Detection
  • Smart device detection in online test proctoring involves using software that can detect the presence of any electronic device within the range of the exam area, such as a mobile phone, smartwatch, or tablet. It can help prevent cheating by ensuring that the test taker is not using any electronic devices to access unauthorized resources during the exam.

Implementation

The proctoring system makes use of several machine learning models and techniques for effective monitoring of online tests. Here are some details about the models and techniques used:

  • FaceNet Model: The FaceNet model is used for face recognition and authentication during the online test proctoring process. It takes an image of a person's face as input and outputs a 128-dimensional vector representation of the face. This vector is then compared with the vectors of other faces in the database to verify the identity of the person taking the test.
  • YOLOv5: YOLOv5 is a state-of-the-art object detection model that was used to train our custom object detection model to detect mobile phones within the range of the exam area. This helps prevent cheating by detecting when students attempt to use their phones during the test.
  • Convolutional Neural Network (CNN): A CNN was used for eye tracking based on the Kaggle dataset. The model takes as input a series of frames captured from a webcam and detects the location of the user's eyes. This information is used to ensure that the user is looking at the screen and not at any other devices or materials during the test.
  • Database: A database was maintained to store user information and exam data. It includes information about users who successfully submitted the test as well as those who were caught cheating during the test. This helps to track student progress and ensure the integrity of the testing process.

Enhancements

There are several potential enhancements that could be made to our proctoring system:

  • Improving accuracy: The models used in the system could be further trained and fine-tuned on larger datasets to improve their accuracy and performance.
  • Head movement detection: The addition of head movement detection could help to further prevent cheating by detecting when a user is looking away from the screen or otherwise moving their head in a way that suggests they may be attempting to cheat.

By implementing these enhancements and continuing to refine the system over time, we believe that our proctoring system can become an even more effective tool for ensuring the integrity of online tests and exams.

Tech Stacks Used

  • Deep Learning
  • Flask
  • MySQL
  • JavaScript
  • HTML/CSS
  • Bootstrap

Screenshot

About


Languages

Language:EJS 59.0%Language:CSS 23.0%Language:Python 18.1%