ggsDing / SAM-CD

Pytorch code of the SAM-CD

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

关于数据集的问题。

TingFinn opened this issue · comments

请问使用不同数据集需要注意什么呢?
我能够基于Levir-cd使用https://github.com/ggsDing/SAM-CD/blob/main/train_SAM_CD.py,但是当我更换别的数据集的时候,会出现以下错误:

Traceback (most recent call last):
File "/home/server/SAM-CD/train_SAM_CD.py", line 202, in
main()
File "/home/server/SAM-CD/train_SAM_CD.py", line 68, in main
train(train_loader, net, optimizer, val_loader)
File "/home/server/SAM-CD/train_SAM_CD.py", line 91, in train
for i, data in enumerate(train_loader):
File "/home/server/anaconda3/envs/FastSAM/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 628, in next
data = self._next_data()
File "/home/server/anaconda3/envs/FastSAM/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1333, in _next_data
return self._process_data(data)
File "/home/server/anaconda3/envs/FastSAM/lib/python3.9/site-packages/torch/utils/data/dataloader.py", line 1359, in _process_data
data.reraise()
File "/home/server/anaconda3/envs/FastSAM/lib/python3.9/site-packages/torch/_utils.py", line 543, in reraise
raise exception
RuntimeError: Caught RuntimeError in DataLoader worker process 1.
Original Traceback (most recent call last):
File "/home/server/anaconda3/envs/FastSAM/lib/python3.9/site-packages/torch/utils/data/_utils/worker.py", line 302, in _worker_loop
data = fetcher.fetch(index)
File "/home/server/anaconda3/envs/FastSAM/lib/python3.9/site-packages/torch/utils/data/_utils/fetch.py", line 61, in fetch
return self.collate_fn(data)
File "/home/server/anaconda3/envs/FastSAM/lib/python3.9/site-packages/torch/utils/data/_utils/collate.py", line 265, in default_collate
return collate(batch, collate_fn_map=default_collate_fn_map)
File "/home/server/anaconda3/envs/FastSAM/lib/python3.9/site-packages/torch/utils/data/_utils/collate.py", line 143, in collate
return [collate(samples, collate_fn_map=collate_fn_map) for samples in transposed] # Backwards compatibility.
File "/home/server/anaconda3/envs/FastSAM/lib/python3.9/site-packages/torch/utils/data/_utils/collate.py", line 143, in
return [collate(samples, collate_fn_map=collate_fn_map) for samples in transposed] # Backwards compatibility.
File "/home/server/anaconda3/envs/FastSAM/lib/python3.9/site-packages/torch/utils/data/_utils/collate.py", line 120, in collate
return collate_fn_map[elem_type](batch, collate_fn_map=collate_fn_map)
File "/home/server/anaconda3/envs/FastSAM/lib/python3.9/site-packages/torch/utils/data/_utils/collate.py", line 172, in collate_numpy_array_fn
return collate([torch.as_tensor(b) for b in batch], collate_fn_map=collate_fn_map)
File "/home/server/anaconda3/envs/FastSAM/lib/python3.9/site-packages/torch/utils/data/_utils/collate.py", line 120, in collate
return collate_fn_map[elem_type](batch, collate_fn_map=collate_fn_map)
File "/home/server/anaconda3/envs/FastSAM/lib/python3.9/site-packages/torch/utils/data/_utils/collate.py", line 163, in collate_tensor_fn
return torch.stack(batch, 0, out=out)
RuntimeError: stack expects each tensor to be equal size, but got [512, 512] at entry 0 and [512, 512, 3] at entry 2

commented

检查路径,以及数据格式是否相同。可以重点关注dataloader对应代码,做一些调整