Mini Project Report Group 31 Proctor IT!
Mini Project Report Group 31 Proctor IT!
By
Supervisor
Prof. GEETA KARANDE
This is to certify that the Mini Project entitled “Proctor IT!” is a bonafide work of
RAHUL SHAH(80), ARCHIT RATHOD(83) and SANDEEP SINHA(107) SE
/ SEM IV submitted to the University of Mumbai in partial fulfillment of the
requirement for the award of the degree of “Bachelor of Engineering” in
“Information Technology” .
Examiners
1………………………………………
(Internal Examiner Name &Sign)
2…………………………………………
(External Examiner name &Sign)
Date:
Place:
Contents
Abstract i
Acknowledgment ii
1 Introduction 1
1.1 Introduction 1
1.2 Motivation 2
1.3 Problem Statement & Objectives 3
1.4 Organization of the Report 3
2 Literature Survey 4
3 Proposed System 6
3.1 Introduction 6
3.2 Architecture/Framework 7
3.3 Algorithm and Process Design 10
3.4 Experimental Result 11
3.5 Details of Hardware &Software 17
3.6 Conclusion and Future work. 18
References 19
Abstract:
With the expansion of Internet and technology over the past decade, E-
learning has grown exponentially day by day. Cheating in exams has been a
widespread phenomenon all over the world regardless of the levels of development.
Therefore, detection of traditional cheating methods may no longer be wholly
successful to fully prevent cheating during examinations. Online examination is an
integral and vital component of E-learning. Students’ exams in E-learning are
remotely submitted without any monitoring from physical proctors. As a result of
being able to easily cheat during e-exams, E-learning universities depend on an
examination process in which students take a face-to-face examination in a physical
place allocated at the institution premises under supervised conditions, however this
conflicts with the concept of distant Elearning environment. This paper will
investigate the methods used by student for cheating detection in online exams,
through continuous authentication and online proctors. In addition, we have
implemented an E-exam management system, which is used to detect and prevent
the cheating in online exams. The system used fingerprint reader authenticator and
eye tribe tracker in exam session. We researched two parameters that can define the
examinee status as cheating or non-cheating during exam. Through these two
parameters: the total time on out screen and the number of times on out screen were
computed.
i
ACKNOWLEDGEMENT
RAHUL SHAH(80)
ARCHIT RATHOD(83)
SANDEEP SINHA(107)
ii
List of Figures
iii
Chapter 1: Introduction
1.1 Introduction:
Exams are most widely used to assess student learning. However, exams
can be classified into three types: traditional exams, online exams and distance
exams (D-exams). Traditional exam defined as a set of questionnaires given in
the class. They are created based on static questions per student. As a result,
students must begin and end the exam within the same time limits. Online
exams, sometimes referred to as e-examination, are Internet based
questionnaire. They are created randomly from questions set per student with
a preset time limits by which the exam is to be completed. Furthermore,
students should attend to a classroom for performing an exam.
1
1.2 Motivation:
Due to Covid 19, Schools and universities may have been closed,
but they have transitioned to tools like Meet and Teams to complete their
academic years. However, no solution to examinations has been
developed. Some have altered it to an assignment form that students can
easily copy and paste from the internet, whereas others have simply
canceled them. We need some solution if the way we live is to become
the new norm. So in order to find the solution for such a problem we
create an application that can monitor students throughout the
examination.
2
1.3 Problem Statement & Objectives:
Problem Statement:
Since the introduction of COVID-19, remote learning has grown in
popularity. Schools and universities may have been closed, but they have
transitioned to tools like Microsoft Teams to complete their academic
years. However, no solution to examinations has been developed. Some
have altered it to an assignment form that students can easily copy and
paste from the internet, whereas others have simply canceled them. We
need some solution if the way we live is to become the new norm.
Objectives:
The firm admin can handle all of the work which is very easy and maintenance
free.The objective of our project is as follows:
3
Chapter 2: Literature Survey
Data collection
For research primary data was generated through Google forms. Form links
were circulated among the student population. Students filled forms anonymously.
Responses collected and analyzed with descriptive statistics.
Reliability
Reliability refers to the consistency of responses over time. In order to assess
the reliability of this questionnaire, a pilot study was undertaken with five students
randomly chosen from the population. Cronbach’s alpha coefficient was calculated
for questions with Likert scale in a survey/questionnaire, from this pilot study. Next,
Cronbach’s alpha coefficients were also assessed for the actual study responses.
Reliability statistics:
All items are responded to on a Likert scale of 1-5, where 5 = strongly agree
and 1 = strongly disagree. Where effort was concern Likert scale of 1-5, where 5=
Very High and 1 = Very Low. We can infer from the resulting scores as seen in
table no. 1, questionnaire was reliable and dependable on response gathered for
analysis. Thus the reliability level of this research was consistently high. Data from
the open-ended responses were used for qualitative analysis.
4
2.2 Limitation Existing system or research gap:
1. It is not cost-effective for small scale educational institutes.
2. Eye movement tracking and Face Detection was poor due to low
quality webcams.
3. Reaching offline students who do not access the internet makes the process
difficult.
4. No Cheating
The student is monitored throughout the exam so if any
malicious activity of cheating or copying is found the
exam is terminated.
5
Chapter 3:Proposed System
3.1 Introduction:
1) Eye Tracking
Eye tracking is a technology that calculates the eye gaze point of a user as he or she
looks around. The eye gaze coordinates are calculated with respect to a screen the
person is looking at, and are represented by a pair of (x, y) coordinates given on the
screen coordinate system. Eye tracking can be used in a wide variety of
applications, typically categorized as active or passive. Active applications involve
device control, for example aiming in games, eye activated login or hands-free
typing. Passive applications include performance analysis of design, layout and
advertising. Other examples are vehicle safety, medical diagnostics and academic
research.
2) ONLINE PROCTOR
Online proctor (e-proctor ) is another technique, which is planned to be investigated
for the objective of monitoring a student while he/she is taking a D-exam. The e-
proctor role is to detect any cheating activities during a D-exam session.E-Proctor
is an integrated solution that brings academic integrity to distance learning exams.
The e-proctor requires a fingerprint scanner to authenticate the identity of a student,
and it requires an eye tracker that contains a camera to track the user’s eyes
movements, as shown in Fig 2. The camera tracks even the most minuscule of
ovements of the users’ pupils, by taking the images and running them through
computer-vision algorithms. The algorithms read, “On-screen gaze coordinates”,
and then, help the software to determine where on the screen the user is looking. E-
proctor is connected to the student’ computer, it locks the computer system to only
the exam application while simultaneously prohibiting access to all other
applications or pre-existing information which could be used for cheating during an
exam.
SOFTWARE DESCRIPTION
A. PYTHON
Python is a high-level, interpreted, general-purpose programming language. Its design
philosophy emphasizes code readability with the use of significant indentation. Python is
dynamically-typed and garbage-collected.
Inheritance.
Polymorphism.
Dynamic binding.
Instead of translating source code to machine code like C++, Python code is translated to
bytecode. This bytecode is a low-level set of instructions that can be executed by an interpreter. In
most PCs, Python interpreter is installed at /usr/local/bin/python3.8. Instead of executing the
instructions on CPU, bytecode instructions are executed on a Virtual Machine.
There are many other interfaces available, which you can find them on the net.
Tkinter Programming
Tkinter is the standard GUI library for Python. Python when combined with Tkinter
provides a fast and easy way to create GUI applications. Tkinter provides a powerful
object-oriented interface to the Tk GUI toolkit.
Creating a GUI application using Tkinter is an easy task. All you need to do is perform the
following steps:
a. Import the Tkinter module.
b. Create the GUI application main window.
c. Add one or more of the above-mentioned widgets to the GUI application.
d. Enter the main event loop to take action against each event triggered by the user.
D. MYSQL
MySQL is the most popular open source relational SQL data base management system.
MySQL is one of the best RDBMS being used for developing various web-based
7
software applications.
E. RDBMS
A Relational Data Base Management System (RDBMS) is a software that
Enables us to implement a database with tables, columns and indexes.
Guarantees the referential integrity between rows of various tables.
Interprets an SQL query and combines information from various tables.
Updates the indexes automatically. RDBMS Terminology
Database – A database is a collection of tables with related data
Table – A table is a matrix with data. A table in a database looks like a simple
spreadsheet.
Redundancy – Storing data twice, redundantly to make the system faster.
Primary key – A primary key is unique. A key value cannot occur twice in one table.
With akey, we can only find one row.
Foreign key – A foreign key is a linking pin between two tables.
Compound key – A compound key (composite key) is a key that consists of multiple
columns, because one column is not sufficient unique.
Referential integrity – Referential integrity makes sure that a foreign key value
always points to an existing row.
F. TOOLS USED
A. OPEN CV
OpenCV-Python is a library of Python bindings designed to solve computer vision
problems. Python is a general purpose programming language started by Guido van
Rossum that became very popular very quickly, mainly because of its simplicity and code
readability. It enables the programmer to express ideas in fewer lines of code without
reducing readability. Compared to languages like C/C++, Python is slower. That said,
Python can be easily extended with C/C++, which allows us to write computationally
intensive code in C/C++ and create Python wrappers that can be used as Python modules.
This gives us two advantages: first, the code is as fast as the original C/C++ code (since it
is the actual C++ code working in background) and second, it easier to code in Python
than C/C++. OpenCV-Python is a Python wrapper for the original OpenCV C++
implementation. OpenCV-Python makes use of Numpy, which is a highly optimized
library for numerical operations with a MATLAB-style syntax. All the OpenCV array
structures are converted to and from Numpy arrays. This also makes it easier to integrate
with other libraries that use Numpy such as SciPy and Matplotlib.
B. CAASCADE CLASSIFIERS
Cascading classifiers are trained with several hundred "positive" sample views of a
particular object and arbitrary "negative" images of the same size. After the classifier is trained it
can be applied to a region of an image and detect the object in question. To search for the object in
the entire frame, the search window can be moved across the image and check every location with
the classifier. This process is most commonly used in image processing for object detection and
tracking, primarily facial detection and recognition.
The first cascading classifier was the face detector of Viola and Jones (2001). The
requirement for this classifier was to be fast in order to be implemented on low-power CPUs, such
as cameras and phones.
8
3.2 Architecture/Framework:
Login:
This program will allow the student to enter the username and password. If the
entered credentials are correct, then the login will be successful otherwise need
to be signup with the department and Roll No. which is given by admin.
Sign Up:
This program will allow a new student to register in the system. The student has to
provide current name, username, roll no, password and Department as per the
format. After validation the student Id is created. Then the students face
samples are collected through the webcam for training the cascade classifier.
ProfileInfo:
This program will allow the student to view his/her own details.
If we need to go back from the particulars that has been viewed click onto back
option.
GiveTest:
This program will allow the student to view the instruction page before start of the
exam and choose the subject. After that the test and Proctoring Module will
run.
ProctoringExam:
This program will detect the face of the student and fetch the username and roll no of
the student from the database.
DoubtsPage:
This program will allow the student to ask doubts to the admin directly.
About:
This program will allow the customer to view details of the project in short.
If we need to exit the particulars that has been viewed click onto exit option.
15
Fig 3.2.1. Login Page
16
3.3 Algorithm and Process Design
17
3.4 Experimental Results
3.5
Fig 3.4.1 Home Page on successful Login
18
Fig 3.4.3 About the Project
19
Fig 3.4.5 Instruction Page
20
Fig 3.4.7 Score at the end of test
21
3.6 Details of Hardware &Software:
Hardware Details-
Processor i5 (10thgen)
8GB memory,
64 bit Operating System
Hard disk / SSD - 512Gb.
High Quality Web CAM
Software Details-
Software and libraries required like mysql-connector-java.jar and
rs2xml.jar
Python with version 3.7 or above
PyCharm or VS Code IDE
My SQL
Technology Details-
Package Version
---------------------- --------
cvzone 1.5.5
matplotlib 3.5.1
mediapipe 0.8.9.1
mysql 0.0.3
mysql-connector 2.2.9
numpy 1.21.5
opencv-python 4.5.5.64
Pillow 9.0.1
pip 22.0.4
PyMySQL 1.0.2
17
3.7 Conclusion and Future work:
Conclusion:
Future work:
There are several promising directions to extend the work presented in this research. The
system can be implemented over the web. Another feature to improve continuous
authentication such as voiceprint that is integrated and utilized during the online-exam
session can be added to the system. Using face recognition as continuous authentication
which can
identify a specific individual in a digital image by analyzing and comparing patterns. Still
one more enhancement can be made is that, after a student start an exam, the use of eye
strokes as continuous authentication that will control whether the current user is the same
as the user who initiated the static authentication or not.
18
References
1. https://docs.python.org/3/library/dateti me.html
2. https://ieeexplore.ieee.org/document/9 342585
3. E-exam Cheating Detection System Razan Bawarith, Dr. Abdullah
Basuhail, and Prof. Shehab Gamalel-Din .pdf
19