Items with no label
3335 Discussions

IR intensity data and RGB data from point cloud.

vshim1
Beginner
2,996 Views

I am using the D415 camera to obtain 3D information. I need a point cloud that has RGB and intensity information from the Infrared camera. I am using a ROS workspace. I subscribe to the /camera/depth/color/points topic and I am successfully able to convert the sensor_msgs/PointCloud2 to pcl::PointCloud<pcl::PointXYZRGB> format. I am just wondering if there is any way to get IR intensity as well as RGB data in this point cloud ?

0 Kudos
5 Replies
MartyG
Honored Contributor III
2,841 Views

A guide in the link below describes how to publish an RGB-D point cloud with a 400 Series camera and ROS, using the launch command roslaunch realsense2_camera rs_rgbd.launch

 

https://idorobotics.com/2018/11/02/integrating-the-intel-realsense-d435-with-ros/

 

The link below suggests code for applying IR intensity to a point cloud using the launch file.

 

https://github.com/IntelRealSense/realsense-ros/issues/943

 

0 Kudos
vshim1
Beginner
2,841 Views

When I use pointcloud_texture_stream ="RS2_STREAM_INFRARED" as a launch parameter, I am able to get a IR textured point cloud. But for the application we are working on, we need both RGB textured and IR textured point cloud. We need a XYZ depth value that also has IR intensity information as well as a RGB values. Can we do this with the D415 ?

 

When I run a Ros node with the following code I get a warning saying "rgb" field is absent.

pcl::PointCloud<pcl::PointXYZRGB>::Ptr intensity_cloud(new pcl::PointCloud<pcl::PointXYZRGB>);

 pcl::fromROSMsg(*input, *intensity_cloud);

 

0 Kudos
MartyG
Honored Contributor III
2,841 Views

XYZRGB point clouds are somewhat outside of my ROS knowledge. For specialist ROS advice, you can visit the RealSense ROS forum at the link below and post a question by clicking on the New Issue button. I apologize for the inconvenience.

 

https://github.com/IntelRealSense/realsense-ros/issues

0 Kudos
vshim1
Beginner
2,841 Views

Can you let me know if this can be done with the librealsense SDK ?

0 Kudos
MartyG
Honored Contributor III
2,841 Views

This is the first time I have handled a case where somebody wanted to combine RGB and IR intensity in a single point cloud, so I am not qualified to give a well-educated opinion on whether it is possible with Librealsense.

 

If I was approaching the problem with ROS myself, I would consider generating separate point clouds (textured RGB and textured IR) and stitch the two point clouds together into a single cloud. This would likely require two cameras though, like in the ROS tutorial in the link below.

 

https://github.com/IntelRealSense/realsense-ros/wiki/Showcase-of-using-2-cameras

0 Kudos
Reply