After suffering through countless hours of scantrons and reams of homework assignments that were not graded becouse the teacher had no time to grade it all, we thought what if we could do better? That's what inspired us to create CamGrade, the only software platform that is analyzing assignments, to grade correctness.

What it does

CamGrade takes scans or images of assignments and extracts the boxed answers on the page. Then, it analyzes and processes them using SymPy to check correctness.and accuracy.

How we built it

flow diagram CamGrade is built on top of Microsoft Azure, leveraging its App Service to enable it to be almost infinitely scalable and robust.

Challenges we ran into


There was almost no documentation on deploying Python to Azure Functions, so I had to stumble through it myself. It took much longer than I anticipated, but in the end I got it working, with the entire CV pipeline embedded in an Azure Function.


Most of the real challenges I ran into were just helping with Mark's challenges. Laravel plays nicely with Azure and the frontend was straightforward enough.

Accomplishments that we're proud of

Creating a Geo-Distributed resilient auto scaling Azure based platform.

Creating a pipeline to extract boxed answers from pages, send them off to be recognized, and check them for accuracy.

What we learned

About all the diffrent scalable services offered by Azure services

What's next for CamGrade

Continue to flesh out the web app frontend in order to facilitate full scale deployment, including tabulation of student grades and similar productivity features.

Built With

Share this project: