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

Return degree of origin from Velodyne_points

asked 2014-04-15 21:24:05 -0600

Gariben gravatar image

Hello, I am wishing to create a depth-image from my velodyne data. I would like to use a degree paramater (from 0 to 360), the height (y-coordinate) and the depth from the velodyne. I was wondering if you can return what 'degree' the point corresponds to. I've heard that the Velodyne stack is not yet able to return this kind of data.


edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted

answered 2014-04-16 04:26:29 -0600

joq gravatar image

You are correct: there is currently no conversion to a depth-image. If the device is stationary, that representation could be quite useful. With a moving device, perhaps not, especially when turning.

To do that, one would need to write a package similar to velodyne_pointcloud, but using a different class to unpack the raw data. The logic for unpacking the data is in Code to create a polar, cylindrical projection would be a little simpler (less trigonometry). Making a package like that is feasible, but would require significant time and effort. The existing code would definitely provide a useful starting point.

I maintain the Velodyne ROS driver, but have not had much time to devote to it lately. I will gladly provide technical advice if you want to work on it. There are more technical details than would be worthwhile to discuss here, so please open an enhancement issue, if you wish to pursue the idea.

edit flag offensive delete link more


I may look to doing that one day, when I'm not so deeply engrossed in my current research. I'd love to contribute! Would you happen to know if the PCL HDLgrabber has this quality? I took a look at some of the classes and it seems that in the firing class it has the angle, and then in the return class it has the depth. I perfectly understand is this is outside of your well of knowledge though. I really appreciate your prompt help with my questions! Thanks again.

Gariben gravatar image Gariben  ( 2014-04-16 05:04:02 -0600 )edit

I don't know about HDLgrabber depth images. Being part of PCL, I'd expect it to mostly use point clouds.

joq gravatar image joq  ( 2014-04-16 05:30:53 -0600 )edit

Do you know how I can access the data from the file I can't even find the file in my system. I want to try to extract the information I want from it. edit: Moved the conversation to github.

Gariben gravatar image Gariben  ( 2014-04-17 18:43:07 -0600 )edit
joq gravatar image joq  ( 2014-04-18 05:25:53 -0600 )edit

answered 2014-06-26 09:32:15 -0600

Oportoz gravatar image


If you subscribe run the velodyne_driver you can subscribe "velodyne_packets" (format: velodyne_msgs::VelodyneScan) topic, instead of "velodyne_points" (format: velodyne_msgs::Pointcloud2) and then you will have range of each laser, rotation, intensity and other informations nedded.

With velodyne_points you only have the points XYZ, intensity and laser ring at least.

Good luck

edit flag offensive delete link more

Question Tools

1 follower


Asked: 2014-04-15 21:24:05 -0600

Seen: 824 times

Last updated: Jun 26 '14