Pytorch中nn.Conv2d与nn.ConvTranspose2d的输入与输出

输入参数

torch.nn.Conv2d(    in_channels,  #输入数据的通道数(如彩色图片,一般为3)
					out_channels, #输出数据的通道数(就是我想让输出多少通道,就设置为多少)
					kernel_size,  #卷积核的尺寸(如(3,2),3与(3,3)等同)
					stride = 1,   #卷积步长,就是卷积操作时每次移动的格子数
					padding = 0,  #原图周围需要填充的格子行(列)数,无填充的话卷积到边缘会直接忽略该边缘
					dilation = 1, #空洞卷积的空洞指数,一般默认为1即可
					groups = 1,   #分组卷积的组数,一般默认设置为1,不用管
					bias = True,  #卷积偏置,一般设置为False,True的话可以增加模型的泛化能力
					padding_mode = 'zeros'  #设置边缘填充值为0,或别的数,一般都默认设置为0
				)

输出尺寸

Output_{size} = \frac{input_{size}-kernel+2\times patch}{stride}+1

 

输入参数

torch.nn.ConvTranspose2d(in_channels, 
                         out_channels, 
                         kernel_size, 
                         stride=1, 
                         padding=0, 
                         output_padding=0, 
                         groups=1, 
                         bias=True, 
                         dilation=1, 
                         padding_mode='zeros') # by default

输出尺寸

Output_{size} = (Input_{size} - 1) \times stride - 2 \times padding + dilation*(kernel -1)+output padding + 1

你可能感兴趣的:(计算机视觉,pytorch,计算机视觉)