How to access Intensity from ROS PointCloud2 message?

조회 수: 12 (최근 30일)
Rita Chattopadhyay
Rita Chattopadhyay 2017년 4월 26일
댓글: Pasindu Ranasinghe 2024년 1월 23일
I am able to access xyz using readxyz function from ROS PointCloud2 message. How can I access Intensity and ring values?
  댓글 수: 1
Pasindu Ranasinghe
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
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.

카테고리

Help CenterFile Exchange에서 Publishers and Subscribers에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by