ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

What's interpolation and extrapolation in the context of ROS?

asked 2018-04-07 17:02:17 -0500

nbro gravatar image

updated 2018-04-08 01:46:23 -0500

jayess gravatar image

In the FAQ, it's written

How does tf deal with interpolation and extrapolation?

Our experimentation has shown that interpolation is fine, but extrapolation almost always ends up becoming more of a problem than a solution. If you are having trouble with data being ready before transforms are available I suggest using the tf::MessageFilter class in tf. It will queue incoming data until transforms are available. Having tried allowing "just a little" extrapolation, waiting for accurate data to be available has proved a much better approach.

First of all, what, in general, is interpolation and extrapolation in the context of ROS? I understood it's something to do with data, but could someone give me a complete explanation of these concepts?

Furthermore, the excerpt above states:

Our experimentation has shown that interpolation is fine

Fine in which sense, to do what? Why is it fine? How does ROS support interpolation? Which experiments did "they" use?

but extrapolation almost always ends up becoming more of a problem than a solution

Why does extrapolation almost always ends up becoming a problem? And why tf::MessageFilter would be a "solution" to extrapolation?

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2018-04-07 20:32:21 -0500

tfoote gravatar image

Interpolation and extrapolation are used in the standard mathematical context.

https://whatis.techtarget.com/definit...

You can find many other good explanations by searching online.

Interpolating between measurements does not amplify measurement noise like extrapolation does.

MessageFilters provide a way to hold data until the transform information is available so you don't need to extrapolate.

edit flag offensive delete link more

Comments

I specifically asked in the context of ROS. I know e.g. what is "interpolation" of a set of points, etc.

nbro gravatar image nbro  ( 2018-04-07 20:35:12 -0500 )edit
2

TF deals with coordinate data with a time dimension attached. Interpolation and extrapolation are quite clearly defined in those contexts. There is nothing special about ROS here.

gvdhoorn gravatar image gvdhoorn  ( 2018-04-08 03:15:52 -0500 )edit

I will never accept these answers, which are not answers to my question at all!

nbro gravatar image nbro  ( 2018-04-08 06:38:28 -0500 )edit

@gvdhoorn "Interpolation and extrapolation are quite clearly defined in those contexts"???

nbro gravatar image nbro  ( 2018-04-08 06:39:56 -0500 )edit
2

There's two dimensions to TF:

  1. time (ie: instants)
  2. space (ie: poses)

We're all happy to help, but what is unclear precisely about how time and space are interpolated?

gvdhoorn gravatar image gvdhoorn  ( 2018-04-08 11:14:19 -0500 )edit

Question Tools

1 follower

Stats

Asked: 2018-04-07 17:02:17 -0500

Seen: 444 times

Last updated: Apr 08 '18