Position estimation of an autonomous robot
Position estimation is the primary problem that
needs to be solved for any autonomous robot in order to maintain the proper
speed and direction for the robot.
Hence we need a navigation sub-system to track the proper position ( (x, y,Ø)
configuration of the vehicle with respect to any global or local coordinate
system) of the autonomous robot.
The position estimation system of the autonomous robot consists of four
parts
A. A priori map of its environment
B. A combination of odometry and optical range-finder to
sense it’s environment
C. An algorithm to match the sensory data to the map
D. An algorithm to estimate the precession of
corresponding match/correction.
The main part of this algorithm is step ‘C’ whose sole purpose is to
match the sensory data (often referred to as image points) with the line
segments of the map (often referred to as model) by finding the (positive)
congruence (tx, ty,Ø) that translates by (tx, ty) and rotates by angle Ø so
as to bring model and image into registration (optimize the mean square
error between them). We use the following match algorithm for this purpose.
Repeat steps 1 to 3 until the procedure converges
- For each point U in the image, find the line segment in the model
which is nearest to U. Call this segment the target of U.
- Find the congruence C that minimizes the total squared distance
between the image points and their target segments.
- Move the points by congruence C.
 
Initial position of the robot shown on the left image. The green lines
show the desired path. As robot tries to move along the green line to the
location centered where the green line bends to the east by 90 degrees
(center of the orange or crimson circle) it reaches actually to the center
of the white circle
 
Feature based localization corrects the position and orientation from the
center of the orange to the green circle. Note that the green circle
converges with the white almost completely, showing that the error
correction is rather accurate
 
Error correction from orange to white circles for the next way point in
robot's journey (left and right images above) and the corrected position
(green circle on the right). The orange circles are the assumed robot's
position (returned by odometry); white circle's center is the actual
position and green center is the corrected position
 
|