2
$\begingroup$

AFAIK, localization is used to determine a robot's pose from a given a map and sensor data. I know of statistical localization approaches which use particle filters to determine a robot's location within a map.

But doesn't odometry also do the same thing using a different technique? That is, it just uses sensor data to estimate the position (and velocity) of a robot using geometric methods instead of statistical methods?

In other words, aren't both odometry and localization determining the pose of the robot? Is the difference that odometry doesn't need a map, but localization does?

$\endgroup$

2 Answers 2

1
$\begingroup$

Odometry is the task of calculating where the robot has traveled w.r.t. the robot's previous pose using sensors that measure actuator output (motor encoders, for example.) Localization is the task of placing a robot inside of a pre-defined map. These tasks are often intertwined, but they don't require each other to complete robot positioning. The key here is that there is no map involved with odometry. The odometer on your car is doing odometry - the sensors keep track of how many miles have been driven. You can't reliably calculate the pose of a car using the odometer, but you are still doing odometry. Some cars use GPS to match the location of the car to a map. This does not need an odometer, but odometers do help in correcting errors in GPS sensors. The accelerometer can be used to detect if the car is still moving or not regardless of what the GPS says. I hope this helps clarify things for you.

$\endgroup$
0
$\begingroup$

You are right! Both Localization and odometry are intricately related but neither "needs a map".

Odometry tells you how much (and maybe how fast) you are moving. It may also give direction but gives no information about the map or what is around you.

Localization on the other hand is more intricately tied with map building and figuring out where you are on a given map. Simultaneous Localization and Mapping (SLAM) is an important problem in robotics and localization is often used to build up the localization component. But localization does not always need odometry. The idea is that you can extract poses (translations and rotations) using localization techniques.

$\endgroup$
3
  • $\begingroup$ Thank you for the answer. So is odometry not guaranteed to give a pose? Also, can you explain why localization does not need a map? Doesn't it need a static map to start with for it to extract feature information that it would later feed into particle believes (assuming it is a particle-filter based localization approach)? $\endgroup$ Apr 18, 2022 at 22:09
  • $\begingroup$ It depends on how you setup your odometry. A simple system might not give you an entire pose. For example, wheel encoders will provide how many revolutions has your robot taken. A more complex system, like GNSS, might provide the entire pose $\endgroup$ Apr 19, 2022 at 23:11
  • $\begingroup$ Localization does not always need a map to start with. That is the problem SLAM addresses. In your particle filter example, localization might not give very good poses in the beginning without a map, but as more and more readings are taken, the probabilities will start to converge. Such poses can then be used to create a map $\endgroup$ Apr 19, 2022 at 23:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.