image = transform(image).unsqueeze(0)


图像预处理转化为Tensor后的unsqueeze(0)有什么意义?

 image = transform(image).unsqueeze(0)

这个unsqueeze(0),感觉就仅仅在在最外层增加了一个维度,有什么意义吗?

 

unsqueeze()这个函数主要是对数据维度进行扩充。给指定位置加上维数为一的维度,比如原本有个三行的数据(3),unsqueeze(0)后就会在0的位置加了一维就变成一行三列(1,3)。

torch.squeeze(input, dim=None, out=None):去除那些维度大小为1的维度

torch.unbind(tensor, dim=0):去除某个维度

torch.unsqueeze(input, dim, out=None):在指定位置添加维度。

unsqueeze主要起到升维的作用,后续图像处理可以更好地进行批操作

 
这是应该是因为网络的接收输入是一个mini-batch,image unsqueeze后第一个维度是留给batch size的


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM