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

static transform shrinking and expanding randomly [closed]

asked 2014-07-23 11:30:47 -0600

kmhallen gravatar image

updated 2014-07-23 13:59:29 -0600

demmeln gravatar image

Video link:

Transform /map to /base_footprint is a 2d transform consisting of only position x and y, and orientation z and w. Transform /base_footprint to /asdf is constant and only consists of a shift in z of 1.5. This suggests the transform from /map to /asdf should always have a z component of exactly 1.5, but the transform lookup seems to scale randomly. Also all transforms relative to /base_footprint scale the same amount as shown in the video.

I have also seen this behaviour outside of rviz when calling tf::TransformListener::lookupTransform().

Has anyone else observed this behavior?

What could be causing this, and how can it be fixed?

This recording is Indigo with Gazebo, but I have seen this behavior in Hydro and Indigo, Gazebo and real-time.

edit retag flag offensive reopen merge delete

Closed for the following reason the question is answered, right answer was accepted by kmhallen
close date 2014-07-29 07:52:51.750422

2 Answers

Sort by ยป oldest newest most voted

answered 2014-07-24 14:47:12 -0600

kmhallen gravatar image

The custom Kalman filter node that generated the transform from /map to /base_footprint did not normalize the quaternion representing orientation at each step. The tf library must assume the quaternion is normalized, and propagate the error through the tf tree. Normalizing fixed the issue completely.

The position jitter in this case comes from a noisy position estimate, not multiple publishing.

edit flag offensive delete link more

answered 2014-07-24 04:19:01 -0600

Wolf gravatar image

My experience is that when tf frames appear to flip around randomly the most common case is that there are 2 tf broadcasters to the same link....

I'd first check the tf chain does not contain double broadcasted links using tf_monitor ( .

edit flag offensive delete link more


Also you can debug using roswtf which has a tf plugin which detects that.

tfoote gravatar image tfoote  ( 2014-07-24 12:41:18 -0600 )edit

Question Tools

1 follower


Asked: 2014-07-23 11:30:47 -0600

Seen: 177 times

Last updated: Jul 24 '14