he-dhamo/graphto3d

Empty objects

Closed this issue · 8 comments

Hello,

I was trying to train the network and the first step is the precomputation of the AtlasNet features.

I followed the README (and fixed a few lines).

self.rel_json_file = os.path.join(self.root, '3DSSG_processed_files', '{}.json'.format(splits_fname))
self.box_json_file = os.path.join(self.root, 'GT 3D boxes 3DSSG', 'obj_boxes_train_refined.json')

But I often get empty objects with zero points and an error in this line

choice2 = np.random.choice(len(obj_pointset), self.npoints - choice.shape[0], replace=True)

How do you resolve this?

BTW, on Ubuntu 18.04, the gdown command adds a few non-visible characters to the beginning of the sub-folders in the ./GT folder leading to a very annoying and hard to diagnose bug.

Hello, could you give us a list of scan ids that lead to that error?

Indices 803 and 805, atleast.

I did not collect the list of all indices

We need a full list of scan_ids (self.scans[index]), to check if there is any difference among the variants of 3RScan causing this. Training Indices don't help, especially due to shuffling.

Okay.

The list is available here

Hello, thanks for the list - it seems to contain most/all the scans though, which, if your printing is correct, cannot be related to a dataset incompatibility, but another problem that we cannot reproduce.

We rerun our code again, re-downloading 3RScan v2 as in our readme instructions, and found fa79392f-7766-2d5c-869a-f5d6cfb62fc6 to be the problematic scene that contains empty objects. Please check the updated readme for instructions of fixes in the dataset files.

Hello, I have the same problem in this line:
choice2 = np.random.choice(len(obj_pointset), self.npoints - choice.shape[0], replace=True)
And I think it maybe caused by the 3Rscan dataset that I download is incomplete,but the URL of the download.py is "404 Not Found" "nginx/1.18.0 (Ubuntu)"
Could you please send me a copy of the dataset which can be used in this two lines:
python download.py -o /path/to/3RScan/ --type semseg.v2.json python download.py -o /path/to/3RScan/ --type labels.instances.annotated.v2.ply
Thanks a lot!

Hello, please contact the authors of 3RScan for this.