Skip to main content

Grade MCQ exams with a webcam

Project description

Eyegrade uses a webcam to grade multiple choice question (MCQ) exams. Needing just a cheap low-end webcam, it aims to be a low-cost and portable solution available to everyone, on the contrary to other solutions based on scanners.

The main features of Eyegrade are:

  • Grading exams: Using a webcam, the graphical user interface of Eyegrade allows you to scan and grade your students' exams. Eyegrade is able to recognize not only the answers to the questions, but also the identity of the student by using its hand-written digit recognition module. The whole process is supervised by you so that you can detect and fix any potential error of the image recognition system.

  • Exporting grades: Grades can be exported in Office Open XML format (.XLSX files that can be read from Microsoft Excel LibreOffice, Google Docs and other spreadsheet software) as well as the CSV (comma-separated values) format.

  • Typesetting exams: Although you can create your exams with other tools, Eyegrade integrates an utility to creating MCQ exams. It is able to create your exams in PDF format. Eyegrade can automatically build several versions of the exam by reordering questions and choices within questions. The LaTeX document preparation system must be installed in your system in order to use this feature.

For more information about Eyegrade you can visit:

Eyegrade is fully functional and has been used in courses at Universidad Carlos III de Madrid and other institutions since 2010.

The program is free software, licensed under the terms of the GNU General Public License (GPL) version 3 or any later version.

Bug reports, feature requests and pull requests are welcome at the Github repository:

https://github.com/jfisteus/eyegrade

An article describing an earlier version of Eyegrade has been published by the Journal of Science Education and Technology:

Jesus Arias Fisteus, Abelardo Pardo and Norberto Fernández García, Grading Multiple Choice Exams with Low-Cost and Portable Computer-Vision Techniques. Journal of Science Education and Technology, volume 22, issue 4 (August 2013), pages 560-571. doi:10.1007/s10956-012-9414-8.

Note for developers: the Eyegrade repository contains two main branches, master and development. The master branch will be placed at the latest stable release of Eyegrade. The development branch will receive commits of yet-to-be-released features. If you plan to submit pull-requests, base your work on the development branch in order to facilitate their integration.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for eyegrade, version 0.8.1
Filename, size File type Python version Upload date Hashes
Filename, size eyegrade-0.8.1-py3-none-any.whl (7.1 MB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size eyegrade-0.8.1.tar.gz (7.0 MB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page