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: VideoToolLandmark.zip, 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.