Pointcept / Pointcept

Pointcept: a codebase for point cloud perception research. Latest works: PTv3 (CVPR'24 Oral), PPT (CVPR'24), OA-CNNs (CVPR'24), MSC (CVPR'23)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

AssertionError: assert depth * 3 + len(self.offset).bit_length() <= 63 when inferencing on my LiDAR point clouds

BotaoSun opened this issue · comments

Hi, thanks for the pretrained model and contributions on LiDAR semantic segmentation.

However, I met problems when I tried to predict the labels of my LiDAR point clouds using pretrained PTv3 model on Nuscenes on my dataset. I think this is because my point cloud is much denser than the point clouds provided in Nuscenes. The error is in the following: I would like to know how to solve this, should I modify the grid_size in test config?

image

load pcd的时候,对你的点云和segment加一个mask

load pcd的时候,对你的点云和segment加一个mask

Hi, thanks for the reply. But I am still a bit confused.

The original shape of my point clouds is [n, 4], where n represents the number of point clouds, and 4 represents x, y, z and strenth. In order to adapt the data in Nuscenes, I expand the original point clouds to [n, 5]. n is more than 230k in my point clouds, where the number of points in Nuscenes is about 35k. At the same time, I don't have the segment results, what I want to do is to generate the masks of point clouds.

Since I'm new at processing with point clouds. Hope I don't misunderstand what you mean.

我举一个例子,你报错的时候就是depth * 3 + len(self.offset).bit_length() > 63,说明你有一帧点云不满足depth * 3 + len(self.offset).bit_length() <= 63,你可以去定位到这一帧点云,一步步往前翻到底是哪一步计算出来的激光不满足条件了。根据我的经验,应该是你的点云数据某一帧或者几帧点的x,y,z过大,导致不满足条件,所以我的意思是,你不是从pcd读取x,y,z值么,你限制一下,超过多少米的不要了,只要一定范围之内的点云,这样就好了。另外根据你的描述,你没有GT值,应该只是用来推理,没有segment很正常,那为什么shape会是(n,5)?而不是(n,3),应该coord的shape是(n,3)才对啊,没有segment的话,会默认为-1,不用管,只不过输出的miou会是0而已

我举一个例子,你报错的时候就是depth * 3 + len(self.offset).bit_length() > 63,说明你有一帧点云不满足depth * 3 + len(self.offset).bit_length() <= 63,你可以去定位到这一帧点云,一步步往前翻到底是哪一步计算出来的激光不满足条件了。根据我的经验,应该是你的点云数据某一帧或者几帧点的x,y,z过大,导致不满足条件,所以我的意思是,你不是从pcd读取x,y,z值么,你限制一下,超过多少米的不要了,只要一定范围之内的点云,这样就好了。另外根据你的描述,你没有GT值,应该只是用来推理,没有segment很正常,那为什么shape会是(n,5)?而不是(n,3),应该coord的shape是(n,3)才对啊,没有segment的话,会默认为-1,不用管,只不过输出的miou会是0而已

Thanks for the explanation. About the dimension, the fourth dimension of my point clouds is the strength required for the pretrained model for Nuscenes. The fifth dimension is just to adapt the data shape of point clouds in Nuscenes which is useless.

I will try to set a threshold for x, y, z and see if this will be solved.

再次感谢大哥!

Hi, it is because your custom point cloud has a really long real-world range, maybe you can choose to crop the point cloud or increase the grid size in both augmentation and ptv3 model. I think 0.1 is a good choice.

Hi, it is because your custom point cloud has a really long real-world range, maybe you can choose to crop the point cloud or increase the grid size in both augmentation and ptv3 model. I think 0.1 is a good choice.

Thanks for the reply, my problem was solved!