Corridor mapping

4 views
Skip to first unread message

motters

unread,
Mar 17, 2007, 7:09:13 PM3/17/07
to Sentience
In the history of occupancy grid mapping there are many examples of
robots travelling down corridors. Corridors are convenient not only
because they're often found in research buildings but also because the
walls are relatively close to the robot and are therefore much easier
to detect than would be the case with more distant objects.

I now have a working mapping program, based upon distributed particle
SLAM, which produces 3D grid maps from stereo vision. This animation
shows an above view of the grid.

http://sentience.googlegroups.com/web/corridor_sequence1.gif

Dark pixels represent probably occupied space, in this case walls,
light grey represents probably vacant space which is navigable by the
robot and could be used as part of a path planning system. White
pixels are terra incognita (unknown).

There are a couple of important points worth noting. Firstly this is
actually a colour 3D grid (even though the animation only shows a mono
2D view of it). Secondly, according to the classic occupancy grid
literature (eg. Moravec & Elfes) mapping and localisation are always
two distinct and separate processes. During mapping it is often
assumed that the pose of the robot is known with god-like precision.
In the Sentience system the robot does not know its position and
orientation exactly. Instead, the robot only knows its forward and
angular velocity with some random noise added to simulate real world
sensing uncertainty. To be able to build a good map, as shown in the
animation the system needs to recover its pose using a combination of
grid based localisation and scan matching.

There are some improvements which need to be made before this can be
tried on a real robot. Optimisation of some of the mapping parameters
using a genetic algorithm is being done at the moment, and the system
needs to be tested using the USB accelerometers. Also I need to add
the ability to create multiple local grid maps, so that when the robot
moves towards the edges of one map it moves onto a new one.

Reply all
Reply to author
Forward
0 new messages