Transform PointCloudProto to RangeScanProto

I saw there is a codelet on //packages/livox, but the isaac.perception.RangeScanFlattening need the RangeScanProto format, how can transform? or where is the similar source for reference?

isaac.navigation.ParticleFilterLocalization also use the FlatscanProto, so need to know it.

Hi all, I have the same issue. Does anyone have any suggestions?

There are RangeScanFlattening is meant to take a range scan (3D distances from a point lidar emitter) and generate a FlatscanProto (2D distances given a specific range of angles of the lidar emitter). With an arbitrary point cloud, you could not theoretically go back to a RangeScan because you could have many different cameras’ worth of point clouds aggregated together. However, in the case you have a point cloud generated from a single emitter, you can filter it yourself by slicing within a range of Z values, projecting the remaining points onto the XY plane, and then working out the distances to a single point (the pose of the emitter in the point cloud frame).