The Duckietown Platform
The Duckietown platform consists of two main components: the Duckiebots, and the environments that they operate in, the Duckietowns.
“Duckiebots” are small-scale mobile robots built to transport the citizens of Duckietown (the duckies). They are built primary from off the shelf components. The only onboard sensor is a camera. All computation is done with the onboard Raspberry Pi. The wheels are powered with DC motors.
What can a Duckiebot Do?
Duckiebots use only computer vision to: drive down lanes, avoid pedestrians (duckies), and navigate intersections. To follow the lanes they look at the road and detect the road markings. To navigate they read signage including road signs and traffic lights, and communicate with other robots to coordinate.
The “Duckietowns” are highly structured environments built for Duckiebots to operate.
The environment has been high formally specified and engineered so that we can guarantee successful operation of the Duckiebots.
This also enables a sliding scale of difficulty in both perception and control, since the assumptions about the structure of the environment can either be used or discarded. For example, each road sign is affixed with an “AprilTag” fiducial marker that can be used (or not) to get the ground truth identity of the sign.
Duckietowns comprise two layers: the floor layer and the signal layer. The floor layer is where the road marking exist and defines the topology of the road network. This layer is constructed in modular fashion by assembling combinations of the five basic tile types into feasible and allowable maps.
The signal layer comprises all the signals that the robots use to navigate in Duckietown. There are two main elements to the signal layer: the signs, and the traffic lights. The signs contain information about types of intersections and the names of roads. Each sign is outfitted with an “AprilTag” fiducial marker for ease of perception if desired. The set of signs can also be used to generate a feature-based map. The traffic lights control access to the intersections. The traffic lights blink to signal when it is safe to traverse.