Computer Vision

ME 72 & ME 133b Final Project
Project Details

The 2018 ME72 competition “Tank Wars” was broken up into matches during which two teams fielded three robots each. Multiple “bases” were set up across the game field, also featuring a ramp, seesaw, and cardboard obstacles. Bases could be captured by robots pressing a button on the base, and teams were awarded points for the time spent controlling a base. The beginning of each match featured a 40s autonomous period before the remaining five minutes of tele-operated play. Our team tried to use computer vision to position our robots in the ideal starting positions, with one robot aiming towards the edge of the nearest ground base and the other two aligning with the ramp and the far seesaw respectively.

The purple base was easy to differentiate from its surroundings using hue-based segmentation. We used the erosion function to remove noise from the binarized image and the dilation function to join broken parts of an object. The largest region returned by SimpleCV’s findBlobs function applied to the segmented image was marked as the base, if it was larger than a specified size threshold. If the base was over four feet away, as determined by the distance between the bottom of the frame and the bottom of the base, the algorithm focused on aligning the right edge of the base with 3 inches of clearance using a limited servo angle range. When the robot was closer to the base, the algorithm used a surface fit model to map the X and Y pixel bounds to the necessary change in servo angle.

Contact Me