Skip to content

Repository files navigation

Proctoring

An AI-powered online examination proctoring system that monitors a candidate during an assessment and detects potentially suspicious behavior using computer vision.

What It Does

The system continuously analyzes the candidate's webcam feed during an examination.

It detects and records events such as:

  • Face absence
  • Multiple faces in the camera frame
  • Significant head movement
  • Looking away from the screen
  • Mobile phone detection
  • Other configurable suspicious objects or activities

Each detected event can be associated with a timestamp and confidence score, allowing the examination session to be reviewed afterward.

Detection Pipeline

Webcam Feed
     |
     v
Frame Capture
     |
     v
Computer Vision Analysis
     |
     +------------------+
     |                  |
     v                  v
Face Analysis      Object Analysis
     |                  |
     +--------+---------+
              |
              v
       Behavior Analysis
              |
              v
        Event Detection
              |
              v
         Event Logging

Face Monitoring

The system monitors the candidate's presence in front of the camera.

It can identify situations such as:

FACE_PRESENT
FACE_ABSENT
MULTIPLE_FACES

A candidate being absent from the camera for a prolonged period can be flagged as a suspicious event.

Head and Gaze Monitoring

The system analyzes the candidate's head position and movement to identify repeated or prolonged deviations from the expected viewing direction.

For example:

Normal
  |
  v
Candidate faces screen

Suspicious
  |
  v
Candidate repeatedly looks away

Movement is evaluated using configurable thresholds to avoid treating every small movement as suspicious.

Object Detection

The system can detect objects that may indicate unauthorized assistance during an examination.

For example, a detected mobile phone can generate an event:

PHONE_DETECTED

Additional object classes can be added depending on the examination requirements.

Event Logging

Suspicious events are recorded as structured events.

Example:

{
  "event": "MULTIPLE_FACES_DETECTED",
  "timestamp": "00:18:42",
  "confidence": 0.94
}

This creates a chronological record of activity throughout the examination.

Risk Assessment

Detected events can be assigned different severity levels and used to calculate an overall risk level for the examination session.

Example:

FACE_ABSENT              → Low
LOOKING_AWAY             → Medium
MULTIPLE_FACES_DETECTED  → High
PHONE_DETECTED           → High

The resulting session can be categorized as:

LOW RISK
MEDIUM RISK
HIGH RISK

The risk assessment is intended to assist human reviewers rather than automatically determine whether a candidate has cheated.

Goal

The goal of the system is to automate the monitoring of remote examinations by continuously analyzing the candidate's visual environment and converting detected anomalies into structured, reviewable proctoring events.

About

AI-powered proctoring system that monitors candidates during online examinations using computer vision.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages