Back to work

Case study · 02 / 2025

AutomaticExamGrading

A full-stack Vision-Language system that automates exam sheet grading. The local model reads handwritten student answers and scores them against rubrics.

Automatic Exam Grading
Role
Vision-Language AI
Year
2025
Stack
Next.js · FastAPI · Ollama Qwen2.5-VL · OpenCV
Outcome
End-to-End VLM Pipeline
Open live demoView GitHub

Context

Multiple-choice exams are quick to score but manual grading sheets and standard optical mark readers are expensive and inflexible. This system provides a web-based automated exam grading solution using computer vision and local vision-language models (VLMs) to read, score, and manage exam sheets from camera photos.

Approach

Built the frontend using Next.js and TailwindCSS, backed by a FastAPI backend. The image preprocessing pipeline is written in Python using OpenCV to perform perspective correction, image alignment, and bubble-sheet detection. For complex handwriting recognition or text questions, a local Qwen2.5-VL model served via Ollama is integrated, enabling offline, highly secure processing of student answers. Teachers can upload multi-code key spreadsheets via Excel and process student submissions in bulk.

Outcome

End-to-End VLM Pipeline.

Reflection

Offline-first AI products require careful resource management. Tuning Qwen2.5-VL to run on consumer hardware showed me how to balance physical latency with inference accuracy, creating a private-by-design tool schools can trust.