although I still don't understand how to decode images with processing after I read through the site.
When you have an image in processing you can access any pixel in that image just by specifying the x & y co-ordinates.
So all you have to do is to look at one small line of pixels. Identify where the index hole is. Using the mouse down function to print out X & Y on a mouse click is great for finding where you are on an image, to get it all aligned. So you know the place of the middle of the index hole. By looking at the pixel brightness at that point you can tell if the tape is in just the right place so that the other holes are aligned. When this happens just look at the co-ordinates where you know the other holes are and from the brightness you know if they are zero or one.
Processing is fast so you can do this on a frame by frame basis. Treat the index hole just like you would a push button looking for an edge not a level so you don't read the same row of holes in twice.