EGM/CSCI 373 November 13


Image processing

Facing the blocks

Three blocks

Comments of Susan Reiser

I think image processing is the way to go. Color detection is trivial (I tested this using select color range in photoshop one caveat: you'd have to calibrate based on light levels in the test room), size is a more challenging. Unless you already know the relative proportions of the block length and white lines lengths. Do you? With luck the camera's perspective wouldn't need adjusting for some odd lens curve, so you can imagine a frustrum of a pyramid shaped volume surrounding the blocks (in your picture, the point of the pyramid is the vanishing point off the right edge of the image). An imaginary line would connect the open ends of the white lines. From that line you could calculate 3 imaginary lines connecting the top ends of each of the 3 box lengths. The length of each block could be determined from those lines (one algorithm might be to nudge the three lines back in a pixel or two and testing which of the three lines did NOT intersect the colored shape.)

Comments of Marietta Cameron

How much time does the robot have to process the image? Are the images coming in as a movie....and the bot has to pick the best image to process? In a still picture easy to pick out the colors. Can use segmentation routines to locate the blocks. Sizes may be interesting: use the white lines to estimate size that since blocks are to be aligned. How fast do you need all this to be processed?

Blocks on the board

The course