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

Want to convert Laser scan messages to world frame.

asked 2020-12-31 10:17:41 -0500

Mateen gravatar image

Hello, I am working on a hardware project which has a 2D SICK LiDar LMS1xx mounted in the vertical direction. I am using RVIZ to visualize the laser data. At the moment, I am able to visualize the data in the Laser Frame (uses right hand axis formation). I want to visualize the Lidar data in world frame rather than Laser's frame. Can anyone guide me in this regards please?

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted
1

answered 2021-01-01 22:39:46 -0500

You will have to make sure there exists a tf frame between your laser data frame to world frame. There are a few ways of doing this as given here. Essentially, you can view them in rviz (by subscribing to tf and viewing the tree) or listen in on the terminal using tf_echo. Once you make sure that there is a tf frame from laser frame -> world frame, you can just change the fixed frame in rviz (top left) to the world frame to view laser data transformed into the world frame. If there isn't a tf link from laser frame -> world frame, you will have to make one, either in your urdf xacro file or by creating a static transform.

edit flag offensive delete link more

Comments

I tried tf_echo but it seems there is no tf data being published. Can you guide me about how to convert LiDar (Laser) Data and IMU data in world frames. So That I can apply transformations to get all data aligned with world frame. I shall be thankful to you

Mateen gravatar image Mateen  ( 2021-01-03 07:54:31 -0500 )edit

For now, you can create a static transform for testing purposes. But in the long run, you should have a working tf tree as mentioned in this tutorial.

Akhil Kurup gravatar image Akhil Kurup  ( 2021-01-03 23:21:02 -0500 )edit

Thank you for you guidance. Referring to the navigation tutorial you mentioned. http://wiki.ros.org/navigation/Tutori...

In the code they create an arbitrary point (x,y,z) to transform it.

//just an arbitrary point in space

14 laser_point.point.x = 1.0;

15 laser_point.point.y = 0.2;

16 laser_point.point.z = 0.0;

But I want to convert each point from real Laser scan data to be converted in the Base_link. How can I do that?

Mateen gravatar image Mateen  ( 2021-01-04 05:24:58 -0500 )edit
0

answered 2021-01-01 09:38:27 -0500

duck-development gravatar image

you may read the tutorial http://wiki.ros.org/navigation/Tutori...

there is a description how you setup a tf tree, so you are able to see the date in wold frame

edit flag offensive delete link more

Comments

1

Thank you for you guidance. Referring to the navigation tutorial you mentioned. http://wiki.ros.org/navigation/Tutori...

In the code they create an arbitrary point (x,y,z) to transform it.

//just an arbitrary point in space

14 laser_point.point.x = 1.0;

15 laser_point.point.y = 0.2;

16 laser_point.point.z = 0.0;

But I want to convert each point from real Laser scan data to be converted in the Base_link. How can I do that?

Mateen gravatar image Mateen  ( 2021-01-04 05:26:40 -0500 )edit

Question Tools

Stats

Asked: 2020-12-31 10:17:41 -0500

Seen: 767 times

Last updated: Jan 01 '21