消息关闭
    暂无新消息!

如何实现多视角协同训练CNN?

问题作者 : 峪川2017-08-05发布
对于每个对象有几个不同视角的图像(v1...v9)和一个对象分类的标签值(0/1)
希望能对不同视角分别通过网络,在最后的全连接层将各个视角的结果进行融合,最后得到分类结果
这样去训练,但是对于如何用caffe实现表示毫无头绪,输入数据该如何准备?如何输入进入不同的网络,如何将多个网络的输出融合在一起训练?
小白对于更改caffe源码表示很抗拒,度娘找不到相关指导,跪求大神指点!另外曾经也使用过一点theano, 如果有theano的方法也可以。

4个回答

︿ 0
我上面data_1 对应视角1,
data_2 对应视角2,
data层的类似是  type: "ImageData" 

打乱顺序你可以在写入label的时候自己先弄好,关键是每个视角的要一一对应
︿ 0
把v1...v9九个视角的图拼接成一张图,然后传入模型后再增加一层分成9张(不知道caffe有没有现成的,或者github上有没有人改造过),然后分别输出到九个不同的网络,
最后的融合倒是用concat层或者Eltwise层直接可以用哦

︿ 0
"Attention-based Extraction of Structured Information from Street View Imagery" 这篇论文就是用4个不同角度拍摄的图片最后融合进行识别的,不过是基于TensorFlow的 源码在:https://github.com/tensorflow/models/tree/master/attention_ocr

caffe不知道怎么传不同视角的,一种简单处理方法你就把v1...v9当成一种视角,不过这种估计识别率会降低。
或者你一个视角训练一个caffe模型,最终判断是时候融合9个模型的结果