如何沿着Caffe中的通道拆分斑点



我想在caffe中拆分斑点通道,以便我可以将一个 (N, c, w, h)的一个斑点拆分为两个大小 (N, c/2, w, h)的输出斑点。

我上面描述的非常通用,我想做的实际上是将两通道输入图像分为两个不同的图像。一个进入卷积层,另一个转到汇总层。最后,我加入输出。

所以我想知道是否允许用户执行此类操作的咖啡层以及如何在原始文件中定义它。

是的,Slice层是为此目的。从层目录中:

Slice层是一个实用程序层,它沿给定的尺寸(当前仅numchannel)将输入层切成多个输出层。

要将大小N x 2 x H x W的斑点切成两个尺寸N x 1 x H x W的斑点,您必须在slice_point: 1处切片axis: 1(沿着频道)(第一个频道之后):

layer {
  name: "slice-conv-pool"
  type: "Slice"
  bottom: "data"
  top: "conv1"
  top: "pool1"
  slice_param {
    axis: 1
    slice_point: 1
  }
}

最新更新