查看sensor_msgs.msg.PointCloud2的类结构,重点关注几个参数:
看官方的英文注释的应该能理解个大概,个人唯一不好理解的可能是 is_bigendian 的参数,这部分博客 讲的不错:
对于一个由2个字节组成的16位整数,在内存中存储这两个字节有两种方法:

言归正传,我们的任务就是如何把上面PointCloud2里的data转为np.array?
uint8[]型的data在python里的类型是bytes,16进制形式存储。而python中灵活读取bytes的常用方法是