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

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 close merge delete

Sort by ยป oldest newest most voted

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.

more

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

( 2018-04-07 20:35:12 -0600 )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.

( 2018-04-08 03:15:52 -0600 )edit

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

( 2018-04-08 06:38:28 -0600 )edit

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

( 2018-04-08 06:39:56 -0600 )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?

( 2018-04-08 11:14:19 -0600 )edit