Python 3D CNN在一系列图像上的输入形状应该是什么?
描述在3D CNN上进行卷积的输入是(N,Cin,D,H,W)。想象一下,如果我有一系列的图像,我想传递给3D CNN。我说得对吗:Python 3D CNN在一系列图像上的输入形状应该是什么?,python,pytorch,conv-neural-network,dataloader,Python,Pytorch,Conv Neural Network,Dataloader,描述在3D CNN上进行卷积的输入是(N,Cin,D,H,W)。想象一下,如果我有一系列的图像,我想传递给3D CNN。我说得对吗: N->序列数(小批量) Cin->通道数(rgb为3个) D->序列中的图像数 H->序列中一个图像的高度 W->序列中一个图像的宽度 我问这个问题的原因是,当我叠加图像张量时:a=torch.stack([img1,img2,img3,img4,img5])我得到了一个torch.Size([5,3396247])的形状,所以必须将我的张量重塑为torch.Si
a=torch.stack([img1,img2,img3,img4,img5])
我得到了一个torch.Size([5,3396247])
的形状,所以必须将我的张量重塑为torch.Size([3,5396247]))
这样通道的数量就可以先走,还是在数据加载器内部就无关紧要了
请注意,Dataloader会自动添加一个与N相对应的维度。是的,这很重要,您需要确保维度顺序正确(假设您使用了
Dataloader
的默认校对功能)。一种方法是使用dim=1
而不是默认的dim=0
来调用。比如说
a=火炬堆([img1、img2、img3、img4、img5],尺寸=1)
结果a
是[3,5396247]
的理想形状