【问题标题】:Fusing different input channels in caffe?在 caffe 中融合不同的输入通道?
【发布时间】:2015-09-23 03:02:20
【问题描述】:

我想先分别处理不同类型的数据,然后将它们融合到一个公共层中。这在 Caffe 中是否可行?如果可以,最好的方法是什么?

我听说可以在同一个 prototxt 文件中定义多个数据层。但是如何融合呢?

我可以只创建一个InnerProduct 层并指定几个bottom 层吗?还是我必须先使用Concat 层连接各个层?

对于任何小的代码示例,我将非常感谢!

【问题讨论】:

  • 这取决于你想做什么样的融合:sum、concat、average?
  • 我想将几个输入流连接成一层
  • 你需要使用Concat层。如果你看InnerProduct的代码,它只考虑第一个输入:github.com/BVLC/caffe/blob/master/src/caffe/layers/…
  • 谢谢。我会尝试一下,并在它工作后立即发布一个代码示例作为答案。如果你想接受你的帮助,你也可以发布一些东西(我不能接受评论;))
  • @mcExchange,您是否只有一个用于多个输入的输出标签?如果是这样,你是如何处理的?我有 2 个输入图像,但输出是单个图像。

标签: caffe


【解决方案1】:

正如上面 cmets 中所讨论的,InnerProduct 使用单个输入。然后可以在特定的Concat 层中进行融合(连接),配置如下:

layer {
  name: "concat"
  bottom: "in1"
  bottom: "in2"
  top: "out"
  type: "Concat"
  concat_param {
    axis: 1
  }
}

官方文档中有关于该层的更多详细信息:http://caffe.berkeleyvision.org/tutorial/layers.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-10
    • 2017-01-05
    • 1970-01-01
    • 2018-11-15
    • 2021-08-13
    • 2023-03-19
    • 2016-07-15
    • 2018-10-29
    相关资源
    最近更新 更多