As part of mapping, the robot needs to recognize landmarks, and estimate how far away they are. For our purposes, we decided to use artifical landmarks, which we felt it would be easiest to identify without having to write some very complicated image processing code. The first version of the code can be found here. So the vision tool was modified to detect any preset landmarks made up of stripes of three colors. Because the code needs to be tolerant of problems caused by issues with the camera's washing out colors, and landmarks which only appear in part of the picture. The code to do this:, with the main code here.

Doesn't it look pretty?

As you can see, it only colors the image up to the point where it can't find the landmark, since that eliminates some processing.

However, it only detects the first landmark in the picture.

And sometimes, colors get too washed out for it to accurately detect them.