Matlab optical mark recognition (OMR) toolbox for scoring scanned forms. Requires Matlab's image processing toolbox.
The general framwork for this toolbox is as follows:
- Perform image registration to a pre-specificed "clean" template. This step cleans up the scanned-in image which can often be crooked, skewed and scaled differently than the template image.
- Automatically determines location of "bubbles" and scores bubbles according to user specified thresholds (i.e., looks for bubbles with filled in pixels above some threshold). This ocassionally needs to be tweaked depending on the quality of the scans and of the image registration.
- Cleanup scoring errors (missing data, duplicate responses).
This toolbox was written for a specific use case and is not fully documented. Moreover, it generally requires that the user create forms that have the same registration marks in approximately the same locations that were used during development of this toolbox. See template.pdf image for an example. An adobe illustrator file template.ai is also provided that can be edited to create forms that should work with the toolbox.