1
有人可以请解释一下如何在Caffe
中使用Conv3D
或ConvND
作为Depth-images
或视频或几乎任何3d(n-d?)数据?
Conv3D是否有任何示例或演示?有人可以解释如何在caffe中使用Conv3d和ConvND吗?
有人可以请解释一下如何在Caffe
中使用Conv3D
或ConvND
作为Depth-images
或视频或几乎任何3d(n-d?)数据?
Conv3D是否有任何示例或演示?有人可以解释如何在caffe中使用Conv3d和ConvND吗?
您可以使用常规的"Convolution"
图层来处理任何维度的斑点。你只需要关注的参数:
layer {
type: "Convolution"
name: "conv_nd"
bottom: "in" # 5D blob
too: "out"
convolution_param {
kernel_size: 3
kernel_size: 5
kernel_size: 5 # define 3 by 5 by 5 kernel
pad: 1
pad: 2
pad: 2 # pad according to kernel size
stride: 1
stride: 2
stride: 2 # you can have different stride for different dimensions
axis: 1 # the "channel" dimension
num_output: 30 # output 30 dim per 3D voxel
}
}
欲了解更多信息,请阅读卷积PARAM评论中caffe.proto file。
'3乘5乘5'='深度乘高度乘宽度'我对吗? @Shai – thigi
@thigi坦率地说,我不是100%确定这里的维度顺序。你可能需要试一试。 – Shai
@Shai:谢谢,所以告诉我,如果我是对的。假设我有5个200x200彩色框架用于输入,并且我的第一个conv层有10个输出(num_output)。 Conv3D是如何发生的?与普通的Conv2D相比,在输入上应用了一个内核,给出了一个新的featuremap.so在conv2d中,我们将有10个特征映射。 在Conv3D中,每个内核应用于每个帧,为每个内核创建一个特征映射,结果堆叠在一起。所以第一层的结束输出将会是10 * 7个特征地图? – Breeze