Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wrong transforms to fixed frame #345

Open
Martin-Oehler opened this issue Nov 12, 2020 · 0 comments
Open

Wrong transforms to fixed frame #345

Martin-Oehler opened this issue Nov 12, 2020 · 0 comments

Comments

@Martin-Oehler
Copy link

Martin-Oehler commented Nov 12, 2020

Hello everyone,

we are using ros3djs to visualize lidar data as PointCloud2. The data is published in the lidar frame, which means it is relative to the robot. The ros3djs scene is in a global fixed frame named 'world'.

We are observing, that the currently displayed scan moves with the robot when it drives forward. However, the next lidar data update is transformed to the correct position again. This means, walls "wobble". I looked into the code and suspect, that tf is not used correctly to transform data.

In SceneNode the transformation of objects is updated each time the transform between fixed frame and object frame changes. This does not account for the fact, that live sensor data can only be transformed with the transformation valid at the time of data acquisition. If the data is displayed for a few seconds (until the next scan arrives), the new transformation will be used to transform old data which leads to invalid results.

Ideally, this would be fixed by saving the time stamp of data and querying tf for frame and time stamp, but TFClient.js does not seem to support this. Alternatively, data should only be transformed once.

I think, this is a severe bug in the current implementation. What are your thoughts on this?

Best regards,
Martin Oehler

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant