解决报错:invalid argument 0: Sizes of tensors must match except in dimension 0.
发布日期:2021-07-01 04:36:54 浏览次数:3 分类:技术文章

本文共 1553 字,大约阅读时间需要 5 分钟。

报错如下:

Traceback (most recent call last):
File “6_database_deal_.py”, line 73, in
for i, data in enumerate(test_loader):
File “/home/muli/anaconda3/lib/python3.5/site-packages/torch/utils/data/dataloader.py”, line 560, in next
batch = self.collate_fn([self.dataset[i] for i in indices])
File “/home/muli/anaconda3/lib/python3.5/site-packages/torch/utils/data/_utils/collate.py”, line 68, in default_collate
return [default_collate(samples) for samples in transposed]
File “/home/muli/anaconda3/lib/python3.5/site-packages/torch/utils/data/_utils/collate.py”, line 68, in
return [default_collate(samples) for samples in transposed]
File “/home/muli/anaconda3/lib/python3.5/site-packages/torch/utils/data/_utils/collate.py”, line 43, in default_collate
return torch.stack(batch, 0, out=out)
RuntimeError: invalid argument 0: Sizes of tensors must match except in dimension 0. Got 309 and 580 in dimension 2 at /pytorch/aten/src/TH/generic/THTensor.cpp:711

数据集图像大小不一,加载训练集时进行了RandomResizedCrop ,

但是在测试时忘记了,因此出现了以下报错信息:
RuntimeError: invalid argument 0: Sizes of tensors must match except in dimension 0. Got 309 and 580 in dimension 2 at /pytorch/aten/src/TH/generic/THTensor.cpp:711

解决办法:

testTransform部分加入 transforms.Resize((224, 224))

# 训练trainTransform = transforms.Compose([    transforms.RandomResizedCrop(224), # 随机裁剪,    transforms.RandomHorizontalFlip(), # 随机水平翻转    transforms.ToTensor(),    normTransform # 正则化])# 测试testTransform = transforms.Compose([    transforms.Resize((224, 224)), # 调整图像大小    transforms.ToTensor(),    normTransform # 正则化])

转载地址:https://mymuli.blog.csdn.net/article/details/100566783 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:pytorch版预训练CNN模型Alexnet-vggnet-inception-Resnet-Densenet
下一篇:STL vector 的 erase(); 函数漏洞?

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年05月06日 18时44分18秒