Title: An Introductory Discussion on Robot Navigation
1An Introductory Discussion on Robot Navigation
- by Nicola Bellotto
- Centre for Hybrid Intelligent Systems
- University of Sunderland
2Introduction
- Navigation in Mobile Robotics
- The Localization task
- Place recognition using vision
- Odometry integration
- Experimental results
- Future guidelines
3Navigation in Mobile Robotics
4The Navigation tasks
The map can be provided by the user. If not, the
learning can be supervised or completely
autonomous.
(Map-learning)
Localization
The robot must know its position within the
environment.
The goal should be reached as soon as possible
and at the minimum cost.
Path-planning
5Map
- Metric positions and objects are placed using
(x, y) coordinates in a common 2D frame
- Topological graph where vertices are
positions/objects and edges are spatial relations
among them
window
door
Y
y
desk
x
printer
X
6Localization
- Three kinds of localization strategies
- direct position inference
- single-hypotesis tracking
- multiple-hypotesis tracking
- For each strategy, three different ways to
represent maps and position - metric map / metric position
- topological map / metric position
- topological map / topological position
7Localization
Direct position inference
Single-hypotesis tracking
Multiple-hypotesis tracking
8Localization
Extracted from Filliat, D., Meyer, J. A.
(2003). Map-based navigation in mobile robots I.
A review of localization strategies. Cognitive
Systems Research 4, pp. 243-282
9Path-planning
- Given the current position of the robot and the
target destination (goal), find on the map the
best path connecting the two locations. - Usually, the problem is solved discretizing the
space and applying a standard graph algorithm
(e.g. Dijkstra, A) - Must be updated in real-time to handle changes in
the real environment (e.g. there is an unexpected
obstacle or the goal has moved)
10The Localization task
11Localization strategy
- Direct position inference does not require
idiothetic data, but suffers of perceptual
aliasing. - Single-hypotesis requires both idiothetic and
allothetic data, keeping track of the last
estimated position, but fails in case this last
one is completely wrong. - Multiple-hypotesis like the previous one, but
keeps track of all the possible positions,
updating them in parallel.
12Map / Position representation
- Metric map / metric position very precise but
computational expensive. Needs a reliable sensor
model. - Topological map / metric position does not need
a sensor model, but still computational expensive
because of the continuos position estimation. - Topological map / topological position like the
previous one, but with a less expensive discrete
position estimation.
13Comparison
Extracted from Filliat, D., Meyer, J. A.
(2003). Map-based navigation in mobile robots I.
A review of localization strategies. Cognitive
Systems Research 4, pp. 243-282
14The robot-waiter scenario
- Perceptual aliasing (e.g. two identical doors in
different places) - Robot completely lost (e.g. surrounded by the
folk)
- Not necessary to know the exact position (in
terms of centimeters) - Path-planning fast enough to handle a highly
dynamic environment
Multiple-hypotesis localization
Topological map / topological position
15Place recognition using vision
16Techniques
- Artificial landmarks
- Landmarks placed by humans
- Need a modification of the environment
- Often impossible to arrange
- Natural landmarks
- Landmarks already present in the environment
- The recognition is challenging
- It is not just a single object (e.g. a door),
could be a wide group of different objects (e.g.
a room)
17A place recognition algorithm
- Using a normal camera, reconstruct a panoramic
view (360) for every single place. - Given a new snapshot from one place, identify at
which panoramic image (which place) it belongs
to. - The point above include also the offset of the
current snapshot with regard to a reference angle
0 of the panoramic image
18The algorithm - 1st step
Given a new snapshot from the camera and a
panoramic view of the place divide the snapshot
in vertical slots for each slot for each
pixel-column of the panoramic image save the
number N of the slot that fits better and the
relative matching value M endfor endfor
19The algorithm - 1st step
Current snapshot
N 2 2 3 2 4 4 1 4 3 3 3 1 4 2 2 1 3 4 1 1 2 2 3
3 4 4 2 2 2 4 1 1 2 2 3 1 2 3 4 4 4 1 4 3
Panoramic image
M m0 m1 . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . mW
20The algorithm - 2nd step
Given the two vectors N and M calculated
before for each element x of N for each element
i in x-SLOT_W, xSLOT_W for each slot
number if slot number equal x sum the
relative value of M endif endfor the sum
is weighted depending on the distance from
x endfor store the best sum endfor
21The algorithm - 2nd step
if
then
x
best match and relative best index
weight
22An example
- Given a sequence of snapshots taken every 15...
... the resulting panoramic view is like this
23Odometry integration
24Dead reackoning
- Relative position estimation based on internal
measures of the movement, normally using
encoders. - Not reliable for long distances because subject
to cumulative error. - Necessary external sensors to observe useful
features from the environment to correct the
error.
25Cumulative error
Real path
Measured path
26On the topological map
- The idea is to reset the odometry information
each time a new place is identified. - Several methods are adopdet, mainly based on
probability distributions.
27Experimental results
28The scenario
- Neuro Robots Laboratory
- Four corners of a square ( 1m x 1m)
Corner 4
Corner 3
Corner 2
Corner 1
29Set-up
- For each corner, one snapshot every 15.
- Reconstruction of four panoramic images using the
previous algorithm (matching function adopted
Normalized Correlation Coefficient) - Every panoramic image saved into the relative
node of the graph.
30Experiments
- Use of panoramic images obtained a few days
before. - Small changes in the environment (chairs in
different positions, different objects on the
desks, ...). - MIRA moved randomly among the four corners,
taking a new snapshot at interval of 1s.
31Results
- MIRA could correctly identify the current corner
in almost every case and every orientation. - In case of wrong estimation, the associated
probability was very low and, anyway, the correct
position could be restored just turning the robot
a few degrees.
32Results
- The algorithm of place recognition seemed to be
quite robust to moving obstacles (e.g. a person
walking or a door opening).
33Comments
- The biggest constraint is the illuminance of the
environment. Same experiments conducted with
different light conditions reported bad results. - The problem could be resolved with an appropriate
filtering of the image (e.g. histogram
equalization, edge detector).
34Comments
- Beyond a distance of 20-30cm from the corner,
MIRA could not locate itself correctly. - This problem can be resolved using the odometry
information.
35Future guidelines
36MUST be done
- Integration of the odometry information.
- Improvement of the place recognition algorithm
thus to be robust enough to different light
conditions - Some kind of map-learning to skip the first part
of image acquisition
37MIGHT be done
- Different kind of place recognition (features
extraction, neural networks, ...) - Omnidirectional vision sensor, alone or combined
with the normal camera
38Some references
- Papers
- Filliat, D., Meyer, J.A. (2003). Map-based
navigation in mobile robots I. A review of
localization strategies. Cognitive Systems
Research 4, pp. 243282. - Meyer, J.A., Filliat, D. (2003). Map-based
navigation in mobile robots II. A review of
map-learning and path-planning strategies.
Cognitive Systems Research 4, pp. 283317. - Books
- Murphy, R. R. (2000). Introduction to AI
Robotics. The MIT Press - Siek, J., Lee, L-Q., Lumsdaine, A. (2002). The
Boost Graph Library. Addison-Wesley - Web
- C Boost Libraries - http//www.boost.org
- Intel Open Source Computer Vision Library -
http//sourceforge.net/projects/opencvlibrary
39Questions Answers