deepsketch icon indicating copy to clipboard operation
deepsketch copied to clipboard

Clarifications on the Dataset and Dataloader

Open albertotono opened this issue 3 years ago • 2 comments

I was able to download the dataset, but it is a bit confusing.

Screenshot from 2022-05-26 23-55-33

Screenshot from 2022-05-26 23-55-42

Screenshot from 2022-05-26 23-55-47

I saw a lot of import pudb; pu.db so I guess you also debug this part.

I am not sure what folder structure it is supposted to take, also what is the difference between

anc_folder: naive_set
other_folder: naive_set

in onet.yaml?? I don't see any anc_folder in the config.

I got this error

raceback (most recent call last):
  File "train.py", line 150, in <module>
    for batch in train_loader:
  File "/home/alberto/anaconda3/envs/mesh_funcspace_ds/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 582, in __next__
    return self._process_next_batch(batch)
  File "/home/alberto/anaconda3/envs/mesh_funcspace_ds/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 608, in _process_next_batch
    raise batch.exc_type(batch.exc_msg)
ValueError: Traceback (most recent call last):
  File "/home/alberto/Documents/deepsketch/reconstruction/im2mesh/data/core.py", line 156, in __getitem__
    field_data = field.load(model_path, idx, c_idx)
  File "/home/alberto/Documents/deepsketch/reconstruction/im2mesh/data/fields.py", line 94, in load
    idx_img = random.randint(0, len(files_base)-1)
  File "/home/alberto/anaconda3/envs/mesh_funcspace_ds/lib/python3.6/random.py", line 221, in randint
    return self.randrange(a, b+1)
  File "/home/alberto/anaconda3/envs/mesh_funcspace_ds/lib/python3.6/random.py", line 199, in randrange
    raise ValueError("empty range for randrange() (%d,%d, %d)" % (istart, istop, width))
ValueError: empty range for randrange() (0,0, 0)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/alberto/anaconda3/envs/mesh_funcspace_ds/lib/python3.6/site-packages/torch/utils/data/_utils/worker.py", line 99, in _worker_loop
    samples = collate_fn([dataset[i] for i in batch_indices])
  File "/home/alberto/anaconda3/envs/mesh_funcspace_ds/lib/python3.6/site-packages/torch/utils/data/_utils/worker.py", line 99, in <listcomp>
    samples = collate_fn([dataset[i] for i in batch_indices])
  File "/home/alberto/Documents/deepsketch/reconstruction/im2mesh/data/core.py", line 160, in __getitem__
    field_data = field.load(model_path, idx, c_idx)
  File "/home/alberto/Documents/deepsketch/reconstruction/im2mesh/data/fields.py", line 94, in load
    idx_img = random.randint(0, len(files_base)-1)
  File "/home/alberto/anaconda3/envs/mesh_funcspace_ds/lib/python3.6/random.py", line 221, in randint
    return self.randrange(a, b+1)
  File "/home/alberto/anaconda3/envs/mesh_funcspace_ds/lib/python3.6/random.py", line 199, in randrange
    raise ValueError("empty range for randrange() (%d,%d, %d)" % (istart, istop, width))
ValueError: empty range for randrange() (0,0, 0)

any idea why is this happening? I think the dataloader is empty. but I am not sure what folder structure is expecting.

Thanks in advance

albertotono avatar May 27 '22 07:05 albertotono

anc_folder & other_folder should be the dataset you used, e.g.: naive or stylised. anc_folder means the base viewpoints you used and other_folder means the biased viewpoints you used, you can find the details https://github.com/Yueeey/deepsketch/blob/main/reconstruction/im2mesh/data/fields.py#L86

Yueeey avatar Jun 02 '22 13:06 Yueeey

Okay thanks.

yinkalario avatar Jul 07 '22 06:07 yinkalario