How can I process/read checkmarks on a paper form?
If you want to avoid OCR, you can use ImageMagick (a CLI image-manipulation super toolset). But you need to be shure all pages are aligned exactly the same.
I hacked together this workflow, you need to alter it for your needs and create some loops, but it can help you in the right direction.

Make shure the position of each round is the same on each sheet

Extract each round and save it with the row_circle-nr (like 04_1.png, 04_2.png, etc)

x=$position_of_circle_on_x
y=$position_of_circle_on_y
w=$width_of_circle_area
h=$hight_of_circle_area
input=$input_image
output=$output_row_cirleNr
convert +repage $input -crop $wx$h+$x+$y $output


Calculate the area of red using histograms
(I prefer red, but you can also do this for blacks)

RGBO=$( convert $FILE -colorspace HSL -verbose info: | grep mean | awk '{print $2}' )
REDVALUE=$( echo $RGBO | awk '{print $1}'  | cut -d. -f1 )


The largest REDVALUE wins for each row

Well, this is about it.

How to install imagemagick?

The use and installation of ImageMagick can intimidating, but this image manipulation package is the most powerfull I have encountered so far. As the installation from source can be a hassle for native OS X users I advise you to use Homebrew.

To install ImageMagick using Homebrew run this oneliner in your terminal:

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"


Homebrew is now installed, it is wise to follow the installer's suggestions after installation. Now we install ImageMagick using brew.

brew install imagemagick


Now we can use imagemagick and its convert tool as in the examples above.