How to access Intensity from ROS PointCloud2 message?
8 次查看(过去 30 天)
显示 更早的评论
I am able to access xyz using readxyz function from ROS PointCloud2 message. How can I access Intensity and ring values?
1 个评论
Pasindu Ranasinghe
2024-1-23
% Visualize point cloud data for PointCloud2 messages
Point_to_display=34;
Data_Range=1:200;
bSel = select(bag,'Topic','/livox/lidar');
msgStructs = readMessages(bSel,Data_Range,'DataFormat','struct');
intensities=msgStructs{Point_to_display}
%intensities=msgStructs{Point_to_display}.readFile('intensity')
pc2msg=msgStructs{Point_to_display};
intensities=rosReadField(pc2msg,'intensity');
pcobj = pointCloud(rosReadXYZ(msgStructs{Point_to_display}),"Intensity",intensities);
viewer = pcviewer(pcobj);
回答(1 个)
Will Nitsch
2017-5-1
With PointCloud2 objects you should be able to get the intensity values using 'readRGB': https://www.mathworks.com/help/robotics/ref/readrgb.html
Here is the documentation on 'PointCloud2' objects: https://www.mathworks.com/help/robotics/ref/pointcloud2-object.html
I wasn't able to find any mention of a 'ring' parameter in that documentation, perhaps it is described differently? Explore the different object properties of that object class.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Publishers and Subscribers 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!