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

add publishing of laser beam visualization markers #509

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

mantkiew
Copy link

@mantkiew mantkiew commented Apr 17, 2023

It is useful to be able to see the lidar beams in RViz. This PR adds publishing of RViz markers for all lidar beams according to the lidar's calibration parameters and range. We have used this functionality to validate dual lidar design on University of Waterloo's UW Moose with VLS-128 on top and VLP32-C on 10-degree angle:

lidar-frames-10-deg-close

ground_lidar-10-deg

Details:

  • the RViz markers are published to /..._nodelet_manager/lidar_beams topic in the frame given by frame_id passed via the target_frame parameter (that makes sense because target_frame is set to the frame of the incoming packets, which is frame_id from the driver). This allows for having multiple lidars of the same model in different frames.
  • the IDs of the markers are created in a namespace which is the lidar model, so the IDs are, for example, VLS128/12
  • the markers for beams are based on the lidar calibrations and the max_range. We ignore the rot_correction and only use the vert_correction so that all beams are on the same surface
  • the markers show front and back beams only

The example images were produced using the following commands

<launch transform publishers and robot URDF publisher>
$ rviz
$ roslaunch velodyne_pointcloud VLS128_points.launch frame_id:=lidar
<CTRL+C>
$ roslaunch velodyne_pointcloud VLP-32C_points.launch frame_id:=ground_lidar
<CTRL+C>

…private nodelet manager namespace to avoid ID conflicts and overrides when having the same lidar models multiple times
@mantkiew mantkiew marked this pull request as draft April 18, 2023 14:15
@mantkiew mantkiew marked this pull request as ready for review April 18, 2023 14:22
@JWhitleyWork
Copy link
Contributor

While I think this could be useful, having it enabled by default is definitely not desirable. Please add a parameter to enable the feature, have the parameter default to False, and wrap the creation of the markers in an if.

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

Successfully merging this pull request may close these issues.

2 participants