open3d-ros-helper icon indicating copy to clipboard operation
open3d-ros-helper copied to clipboard

rospc_to_o3dpc does not handle intensity

Open stevencolinmartin opened this issue 3 years ago • 1 comments

When importing ROS point clouds with 'intensity' fields it would be nice to have some way to pass this to open3d. As intensity is usually not accompanied by rgb it could be passed into these fields.

I would suggest something like: r = b = g = intensity/255 for each point

Will likely create fork for own purposes but thought I discuss how best to implement. Should this have explicit flag in definition e.g. def rospc_to_o3dpc(rospc, remove_nans=False, has_intensity=False):? If reading back to ros should it use average of r,g,b?

stevencolinmartin avatar Mar 19 '21 06:03 stevencolinmartin

Thank you for suggesting a feature to support more various ROS point clouds. Maybe we can add a external flag "alpha" to "o3dpc_to_rospc", where alpha = 1 / intensity and "o3dpc_to_rospc" returns (r, g, b) * alpha. But I am not sure it is correct, so I will test it later.

SeungBack avatar Mar 19 '21 07:03 SeungBack