【问题标题】:How to write image batch classification for caffe without channels splitting?如何在不拆分通道的情况下为 caffe 编写图像批量分类?
【发布时间】:2016-09-29 13:32:24
【问题描述】:

对于图像批量分类,我使用了来自这个问题 Modifying the Caffe C++ prediction code for multiple inputs 的代码。但我注意到出于某种原因分割图像通道的功能。

我猜它适用于通常的 CNN 架构,但它适用于连体架构吗?我猜不是,因为在 C++ 分类中它不能正常工作。

有人可以解释一下,我应该如何更改连体架构的代码(按通道分割图像并将这些通道分配给不同的层,这就是重点),或者至少是输入的内存存储如何工作,以自己弄清楚?

Blob<float>* input_layer = net_->input_blobs()[0];

【问题讨论】:

    标签: machine-learning computer-vision deep-learning caffe


    【解决方案1】:

    想通了,问题出在Classifier::Preprocess的opencv函数中

    cv::split(img[i], channels);
    

    因为它只有在 img 中包含的 cv::Mat 形成为带有通道的 2D 图像时才有效。如果像我的情况一样,它是以其他方式形成的,尺寸像 (channels, width, height)(width, height, channels) cv::split 不会像您期望的那样拆分 cv::Mat,所以我已经用其他实现替换了这一步。

    【讨论】:

      猜你喜欢
      • 2017-05-04
      • 1970-01-01
      • 2011-06-20
      • 2020-04-09
      • 1970-01-01
      • 2012-08-05
      • 2013-11-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多