0
$\begingroup$

Rosanswers logo

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?


Originally posted by nbro on ROS Answers with karma: 372 on 2018-04-07

Post score: 0

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

Interpolation and extrapolation are used in the standard mathematical context.

https://whatis.techtarget.com/definition/extrapolation-and-interpolation

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.


Originally posted by tfoote with karma: 58457 on 2018-04-07

This answer was ACCEPTED on the original site

Post score: 1


Original comments

Comment by nbro on 2018-04-07:
I specifically asked in the context of ROS. I know e.g. what is "interpolation" of a set of points, etc.

Comment by gvdhoorn on 2018-04-08:
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.

Comment by nbro on 2018-04-08:
I will never accept these answers, which are not answers to my question at all!

Comment by nbro on 2018-04-08:
@gvdhoorn "Interpolation and extrapolation are quite clearly defined in those contexts"???

Comment by gvdhoorn on 2018-04-08:
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?

$\endgroup$

Your Answer

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