位置: IT常识 - 正文
推荐整理分享torch.nn.Conv3d,希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!
比Conv2D多一个维度。
举例说明:Conv2D对720×720的3通道图像进行卷积,batch_size设为64,则输入向量的维度为 [64, 3, 720, 720], Conv3D对分辨率为720×720的视频(假设为连续5帧)进行卷积,batch_size设为64,则输入向量的维度为 [64, 3, 5, 720, 720]
torch.nn.Conv3d(in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1, groups=1, bias=True, padding_mode = 'zeros')参数详解
in_channels(int) :输入张量的通道数out_channels(int) :卷积中滤波器的数量,表示输出张量的通道数kerner_size(int or tuple) :卷积窗口的宽度和高度stride(int or tuple, optional) :卷积沿宽度和高度方向的步长padding(int or tuple, optional) :输入的每一条边填充的层数dilation(int or tuple, optional) :卷积核元素之间的间距,即膨胀卷积的膨胀率,默认为1。groups(int, optional):控制输入和输出之间的连接: group=1,输出是所有的输入的卷积;group=2,此时相当于有并排的两个卷积层,每个卷积层计算输入通道的一半,并且产生的输出是输出通道的一半,随后将这两个输出连接起来。bias(bool, optional) :如果bias=True,添加偏置padding_mode(str, optional) :填充的方式,如果padding_mode = 'zeros',表示用0填充示例import torch.nn as nnimport torch# 创建一个卷积层,填充一圈0conv1 = nn.Conv3d(in_channels=3, out_channels=32, kernel_size=(3, 3, 3), stride=(2, 2. 2), padding=1)# 创建一个卷积层,无填充conv2 = nn.Conv3d(in_channels=3, out_channels=32, kernel_size=(3, 3, 3), stride=(2, 2, 2), padding=0)# 创建一个维度为[64, 3, 7, 5, 5]的tensorx = torch.rand(64, 3, 7, 5, 5) # 进行卷积y1 = conv1(x)print(y1.shape) # [64, 32, 4, 3, 3]# 进行卷积y2 = conv2(x)print(y2.shape) # [64, 32, 3, 2, 2]下一篇:【微信小程序】计算器案例(微信小程序怎么制作自己的小程序)
友情链接: 武汉网站建设