KAIR
KAIR copied to clipboard
ValueError: At least one stride in the given numpy array is negative, and tensors with negative strides are not currently supported.
reported also here:
https://github.com/JingyunLiang/SwinIR/issues/181
The stack trace is in KAIR, so it's a KAIR bug?
F:\Projects\KAIR>F:\miniconda3\envs\jit\python.exe main_train_psnr.py --opt options/swinir/train_swinir_sr_lightweight.json
....
Traceback (most recent call last):
File "F:\Projects\KAIR\main_train_psnr.py", line 252, in <module>
main()
File "F:\Projects\KAIR\main_train_psnr.py", line 172, in main
for i, train_data in enumerate(train_loader):
File "F:\miniconda3\envs\jit\lib\site-packages\torch\utils\data\dataloader.py", line 732, in __next__
data = self._next_data()
File "F:\miniconda3\envs\jit\lib\site-packages\torch\utils\data\dataloader.py", line 1506, in _next_data
return self._process_data(data, worker_id)
File "F:\miniconda3\envs\jit\lib\site-packages\torch\utils\data\dataloader.py", line 1541, in _process_data
data.reraise()
File "F:\miniconda3\envs\jit\lib\site-packages\torch\_utils.py", line 769, in reraise
raise exception
ValueError: Caught ValueError in DataLoader worker process 0.
Original Traceback (most recent call last):
File "F:\miniconda3\envs\jit\lib\site-packages\torch\utils\data\_utils\worker.py", line 349, in _worker_loop
data = fetcher.fetch(index) # type: ignore[possibly-undefined]
File "F:\miniconda3\envs\jit\lib\site-packages\torch\utils\data\_utils\fetch.py", line 52, in fetch
data = [self.dataset[idx] for idx in possibly_batched_index]
File "F:\miniconda3\envs\jit\lib\site-packages\torch\utils\data\_utils\fetch.py", line 52, in <listcomp>
data = [self.dataset[idx] for idx in possibly_batched_index]
File "F:\Projects\KAIR\data\dataset_sr.py", line 97, in __getitem__
img_H, img_L = util.single2tensor3(img_H), util.single2tensor3(img_L)
File "F:\Projects\KAIR\utils\utils_image.py", line 307, in single2tensor3
return torch.from_numpy(np.ascontiguousarray(img)).permute(2, 0, 1).float()
ValueError: At least one stride in the given numpy array is negative, and tensors with negative strides are not currently supported. (You can probably work around this by making a copy of your array with array.copy().)
if options/swinir/train_swinir_sr_lightweight.json, change:
"H_size": 256
then, got the following error:
Traceback (most recent call last):
File "F:\Projects\KAIR\main_train_psnr.py", line 252, in <module>
main()
File "F:\Projects\KAIR\main_train_psnr.py", line 172, in main
for i, train_data in enumerate(train_loader):
File "F:\miniconda3\envs\jit\lib\site-packages\torch\utils\data\dataloader.py", line 732, in __next__
data = self._next_data()
File "F:\miniconda3\envs\jit\lib\site-packages\torch\utils\data\dataloader.py", line 1506, in _next_data
return self._process_data(data, worker_id)
File "F:\miniconda3\envs\jit\lib\site-packages\torch\utils\data\dataloader.py", line 1541, in _process_data
data.reraise()
File "F:\miniconda3\envs\jit\lib\site-packages\torch\_utils.py", line 769, in reraise
raise exception
RuntimeError: Caught RuntimeError in DataLoader worker process 0.
Original Traceback (most recent call last):
File "F:\miniconda3\envs\jit\lib\site-packages\torch\utils\data\_utils\worker.py", line 349, in _worker_loop
data = fetcher.fetch(index) # type: ignore[possibly-undefined]
File "F:\miniconda3\envs\jit\lib\site-packages\torch\utils\data\_utils\fetch.py", line 55, in fetch
return self.collate_fn(data)
File "F:\miniconda3\envs\jit\lib\site-packages\torch\utils\data\_utils\collate.py", line 398, in default_collate
return collate(batch, collate_fn_map=default_collate_fn_map)
File "F:\miniconda3\envs\jit\lib\site-packages\torch\utils\data\_utils\collate.py", line 171, in collate
{
File "F:\miniconda3\envs\jit\lib\site-packages\torch\utils\data\_utils\collate.py", line 172, in <dictcomp>
key: collate(
File "F:\miniconda3\envs\jit\lib\site-packages\torch\utils\data\_utils\collate.py", line 155, in collate
return collate_fn_map[elem_type](batch, collate_fn_map=collate_fn_map)
File "F:\miniconda3\envs\jit\lib\site-packages\torch\utils\data\_utils\collate.py", line 272, in collate_tensor_fn
return torch.stack(batch, 0, out=out)
RuntimeError: stack expects each tensor to be equal size, but got [3, 12, 66] at entry 0 and [3, 232, 80] at entry 1
Are there something (data shape) in the model is hard coded?