The usage of reference points is always an option. In such case:
- Make the reference points at least two times bigger than bubbles. For example, rectangular reference points ought to be at least 3mm for the smallest side and at least 6mm for the longest side.
- Reference points of any shape can be used provided these are well distinguished from other static objects on the template
- It's assumed that rectnagles be filled up with black with high contrast
- Reference points should be distributed uniformly over template for robust matching, even in case where paper is crumpled. Too many reference points will slow down the matching process. Putting at least 4 points at the border of OMR template in every corner is recommended.
- Putting all the points in one row or column should be avoided as it leads to offset in one direction
- It’s assumable to use rectangles filled up with black. Make them as much contrast as possible. Position could be chosen arbitrary, but you should put reference points at the border of OMR template in its every corner. Put in at least 4. The more you have reference points uniformly distributed over template the more robust matching will be, especially when paper was crumpled. Avoid putting too much, because that will slow down matching. Avoid placement almost of all the points in one row or column, because such arrangement leads to offset in one direction.