qinglew / PCN-PyTorch

Implementation of PCN(Point Completion Network) in PyTorch.
141 stars 33 forks source link

FileNotFoundError: [Errno 2] No such file or directory: 'data/train.list' #36

Open lsy-study opened 4 months ago

lsy-study commented 4 months ago

Traceback (most recent call last): File "train.py", line 186, in train(params) File "train.py", line 65, in train train_dataset = ShapeNet('data', 'train', params.category) File "/root/autodl-tmp/PCN-PyTorch-master/dataset/shapenet.py", line 58, in init self.partial_paths, self.complete_paths = self._load_data() File "/root/autodl-tmp/PCN-PyTorch-master/dataset/shapenet.py", line 76, in _load_data with open(os.path.join(self.dataroot, f"{self.split}.list"), 'r') as f: Hello, I encountered the above problem, according to your instructions I unzipped the pcn dataset in the data folder to get the test, train, val three folders, and then when I was running python train.py --exp_name PCN_16384 --lr 0.0001 --epochs 400 --batch_size 32 --coarse_loss cd --num_workers 8 The above error was reported, what is the reason for this? Where can I download train.list or is there any other way to fix this, thanks

MarioCavero commented 4 months ago

Hello @lsy-study ! The *.list files did not come with the zip file? They did with me. They are specific to that dataset, as a custom dataset will need custom *.list files.

Screenshot from 2024-03-30 13-42-35

As stated in here: Please download PCN.zip from Cloud and unzip it here. This link should work to download the dataset. Inside the dataset, the train.list, valid.list and test.list files are available, and they reference each object (you can also check the id's or names in dataset/shapenet.py) in its complete and partial forms. Additional info:

self.cat2id = {
        #     # seen categories
        #     "airplane"  : "02691156",  # plane
        #     "cabinet"   : "02933112",  # dresser
        #     "car"       : "02958343",
        #     "chair"     : "03001627",
        #     "lamp"      : "03636649",
        #     "sofa"      : "04256520",
        #     "table"     : "04379243",
        #     "vessel"    : "04530566",  # boat
             }

And in train.list : 04530566/786f18c5f99f7006b1d1509c24a9f631, being first the object type (boat, vessel) and the id of that viewpoint.