Skip to content

NathanDunfield/artexamscan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Installation

It is best to install from source into your preferred version of Python 3:

python3 -m pip install -U https://github.com/NathanDunfield/artexamscan/archive/master.zip

ArtExamScan requires pdfimages, pdftoppm, and zbar, as well as possibly pdftk. On Linux systems derived from Debian (e.g. Ubuntu), do:

apt-get install libzbar-dev poppler-utils

before executing the above command. You can test if your installation was successful by doing:

python3 -m artexamscan.demo    # Creates "demo" folder with sample scans
cd demo
python3 -m artexamscan.scan --roster=roster.xlsx scan.pdf

Usage

The first step is to "tag" the exam PDF with the QR codes and grader score boxes that will eventually be scanned. This requires only a reasonably recent TeX setup and the files available here; see the README file there for details.

For the mechanics of hand grading the exams see the grading instructions

After scanning the exams (which must be done rotated 180 degrees), do something like:

python3 -m artexamscan.scan --roster=roster.csv scans/*.pdf

to read in all the scores, which are eventually dumped it "results.csv".

History

The basic strategy used here originated Nathan Dunfield's unpublished "examautomat" program written in 2016. In 2017, Marc C Bell did a complete rewrite as ExamScanUIUC. This current version derives from both sources, and is maintained by Nathan. The authors thank Pat Szuta and Malik Obeidin for their help on this project.

License

This code is released under the open-source MIT 3-clause license.

About

ArtExamScan is a Python package for bulk processing of artisanally hand-graded exams

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published