我计划使用 NYU depth v2 数据集实现一个可以从单个图像估计深度的 CNN。浏览本教程向我展示了在 Caffe 上实现处理分类问题的 CNN 很容易。我很好奇 Caffe 是否适合涉及多维地面实况(例如深度图像)和回归(深度估计)的任务。
我想要实现的是使用深度图像作为基本事实来训练可以估计深度图像的 CNN。我需要将标签加载为单通道图像数据。
我只能通过 Shelhamer 找到与我的问题相关的答案https://groups.google.com/d/msg/caffe-users/JXmZrz4cCMU/mBTU1__ohg4J
我知道我应该定义两个顶层,一个用于输入,另一个用于深度数据作为基本事实。然后我可以使用损失层(如 EucledianLoss)来计算损失。我在下面添加了一个模型。
这个模型会按预期工作吗?如果没有,有没有其他方法可以在 Caffe 上做到这一点?
layer {
name: "data"
type: "ImageData"
top: "data"
image_data_param {
source: "input_set.txt"
batch_size: 50
}
}
layer {
name: "label"
type: "ImageData"
top: "label"
image_data_param {
source: "depth_set.txt"
batch_size: 50
}
is_color: false
}
layer {
name: "loss"
type: "EuclideanLoss"
bottom: "some_output_layer_name"
bottom: "label"
top: "loss"
}