pytorch dataloader 取batch_size时候出现bug的解决方式
1、
RuntimeError: invalid argument 0: Sizes of tensors must match except in dimension 0. Got 342 and 281 in dimension 3 at /pytorch/aten/src/TH/generic/THTensorMoreMath.cpp:1333
2、
RuntimeError: invalid argument 0: Sizes of tensors must match except in dimension 0. Got 3 and 1 in dimension 1
bug1 修改方法是将图片resize 成一个尺度:
解决1:
如果用transforms来resize ,关于尺寸的transform就是transforms.Resize(input_size, interpolation=3)了。
查看Resize的文档:
size (sequence or int) – Desired output size. If size is a sequence like (h, w), output size will be matched to this.
If size is an int, smaller edge of the image will be matched to this number. i.e, if height > width, then image will be rescaled to (size * height / width, size)
size这个参数既可以是一个数字,又可以是一个tuple,如果是数字,图片处理后的输出尺寸每次都会被重新计算为(input_size*height/width, size),这样如果输入图片尺寸不一致,输出图片尺寸会不一致, 将导致bug1 问题
解决2:
也可以直接用opencv resize
以上这篇pytorch dataloader 取batch_size时候出现bug的解决方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Python连接SQLite数据库并进行增册改查操作方法详解
这篇文章主要介绍了Python对SQLite数据库进行增册改查操作方法详解,需要的朋友可以参考下2020-02-02python程序中的线程操作 concurrent模块使用详解
这篇文章主要介绍了python程序中的线程操作 concurrent模块使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2019-09-09
最新评论