Ros感知主要结构体
1.sensor_msgs::LaserScan
#
# 测量的激光扫描角度,逆时针为正
# 设备坐标帧的0度面向前(沿着X轴方向)
#
Header header//是一个结构体,包含seq、stamp、frame—id。
//seq扫描顺序增加的id序列;
//stamp激光数据的时间戳;//stamp可能对应每次扫描开始的时间
//frame-id是扫描数据的名字
float32 angle_min # scan的开始角度 [弧度]
float32 angle_max # scan的结束角度 [弧度]
float32 angle_increment # 测量的角度间的距离 [弧度]
float32 time_increment # 测量间的时间 [秒]
float32 scan_time # 扫描间的时间 [秒]
float32 range_min # 最小的测量距离 [米]
float32 range_max # 最大的测量距离 [米]
float32[] ranges # 测量的距离数据 [米] (注意: 值 < range_min 或 > range_max 应当被丢弃)
float32[] intensities # 强度数据 [device-specific units]
2. sensor_msgs::PointCloud
Point32_() : x(0.0) , y(0.0) , z(0.0) {}//float ChannelFloat32_()//each channel have a name and paras of all points : name() //basic_string , values() {} //vector<float>, values.size()==point.size() struct PointCloud_
{ Header_ header; vector< Point32_> point; vector<ChannelFloat32_> channels; //each pointcloud have many points and several channels(eg: intensity) }
3.sensor_msgs/CameraInfo
std_msgs/Header header;// uint32 height;// uint32 width; string distortion_model; float64[] D; float64[9] K; float64[9] R; float64[12] P; uint32 binning_x; uint32 binning_y; sensor_msgs/RegionOfInterest roi; //http://docs.ros.org/kinetic/api/sensor_msgs/html/msg/CameraInfo.html
4.sensor_msgs/Image
std_msgs/Header header; uint32 height; //image height, that is, number of rows uint32 width; // image width, that is, number of columns string encoding; //Encoding of pixels -- channel meaning, ordering, size uint8 is_bigendian;//is this data bigendian? uint32 step; // Full row length in bytes uint8[] data; //actual matrix data, size is (step * rows)
未完待续。。。