[ROS Point Cloud Library] PointCloud2 Message 변환

PointCloud2 Message 변환

1. sensor_msgs/PointCloud2

ROS에서 Velodyne이나 Ouster LiDAR의 points topic에 대한 type을 확인해보면 sensor_msgs::PointCloud2임을 확인할 수 있다.

PointCloud2의 경우, data 변수에는 encoding되어있는 데이터가 들어있다. 이에 x,y,z와 같은 값을 바로 얻을 수 없다. 이에 PointCloud2를 PointCloud type으로 변환하여 사용해야 한다.

std_msgs/Header header
uint32 height
uint32 width
sensor_msgs/PointField[] fields
bool is_bigendian
uint32 point_step
uint32 row_step
uint8[] data
bool is_dense

sensor_msgs/PointCloud의 Definition에 있는 points를 보면 x,y,z 값에 접근할 수 있음을 확인할 수 있다.

std_msgs/Header header
geometry_msgs/Point32[] points
sensor_msgs/ChannelFloat32[] channels
float32 x
float32 y
float32 z

Leave a Reply

Your email address will not be published. Required fields are marked *