9

我想将图像的像素分类为“是街道”或“不是街道”。我有一些来自KITTI 数据集的训练数据,并且我看到 Caffe 有一个IMAGE_DATA图层类型。标签以与输入图像大小相同的图像形式存在。

除了 Caffe,我解决这个问题的第一个想法是在应该分类的像素周围提供图像补丁(例如,顶部/左侧/右侧/底部 20 个像素,导致每个像素有 41×41=1681 个我想要分类的特征.
但是,如果我可以告诉 caffe 如何使用标签而不必手动创建这些图像补丁(并且图层类型IMAGE_DATA似乎表明这是可能的)我更喜欢那样。

Caffe 可以直接对图像的像素进行分类吗?这样的 prototxt 网络定义会是什么样子?如何向 Caffe 提供有关标签的信息?

我猜输入层会是这样的

layers {
  name: "data"
  type: IMAGE_DATA
  top: "data"
  top: "label"
  image_data_param {
    source: "path/to/file_list.txt"
    mean_file: "path/to/imagenet_mean.binaryproto"
    batch_size: 4
    crop_size: 41
    mirror: false
    new_height: 256
    new_width: 256
  }
}

但是,我不确定究竟是什么crop_size意思。真的是居中吗?caffe 是如何处理角点像素的?new_height有什么new_width好处?

4

2 回答 2

8

Caffe 可以对像素进行分类吗?理论上我认为答案是肯定的。我自己没有尝试过,但我认为没有什么能阻止你这样做。

输入:
您需要IMAGE_DATA两层:一层加载 RGB 图像,另一层加载相应的标签蒙版图像。请注意,如果您使用convert_imageset实用程序,则不能独立地打乱每个集合 - 您将无法将图像与其标签掩码匹配。

一个IMAGE_DATA层有两个“顶部”,一个用于“数据”,一个用于“标签”。我建议您将两个输入层的“标签”设置为图像/标签掩码的索引,并添加一个实用层来验证索引总是匹配的,这将防止你在错误的标签掩码上进行训练;)

例子:

layer {
  name: "data"
  type: "ImageData"
  top: "data"
  top: "data-idx"
  # paramters...
}
layer {
  name: "label-mask"
  type: "ImageData"
  top: "label-mask"
  top: "label-idx"
  # paramters...
}
layer {
  name: "assert-idx"
  type: "EuclideanLoss"
  bottom: "data-idx"
  bottom: "label-idx"
  top: "this-must-always-be-zero"
}

损失层:
现在,您可以对输入数据做任何您喜欢的事情,但最终要获得逐像素标记,您需要逐像素损失。因此,您必须让最后一层(在损失之前)产生与并非所有损失层都知道如何处理多个标签的宽度和高度相同的预测,但是(例如)可以,因此您应该有一个损失层喜欢"label-mask""EuclideanLoss"

layer {
  name: "loss"
  type: "EuclideanLoss"
  bottom: "prediction" # size on image
  bottom: "label-mask"
  top: "loss"
}

我认为"SoftmaxWithLoss"有一个更新的版本可以在这种情况下使用,但你必须自己检查一下。在这种情况下"prediction",形状应该是 2×h×w(因为你有 2 个标签)。

附加说明:
一旦您在参数中设置了输入大小,"ImageData"您就可以修复网络中所有 blob 的大小。您必须将标签大小设置为相同大小。您必须仔细考虑如何处理不同形状和大小的图像。

于 2015-05-13T06:23:57.330 回答
7

似乎您可以尝试使用完全卷积网络进行语义分割

本文引用了 Caffe:https ://github.com/BVLC/caffe/wiki/Publications

这里也是模型: https ://github.com/BVLC/caffe/wiki/Model-Zoo#fully-convolutional-semantic-segmentation-models-fcn-xs

此演示文稿也很有帮助:http: //tutorial.caffe.berkeleyvision.org/caffe-cvpr15-pixels.pdf

于 2015-09-08T08:37:54.717 回答