我正在尝试开始使用Caffe训练网络进行图像分类。我希望求解器能够使用我自己的数据训练模型。我正在使用"ImageData"
layer并准备了'file_lists.txt'
文件。
但我收到这些错误消息。
E0211 10:43:12.274907 60653568 io.cpp:80] Could not open or find file /my/path/img/myfirstimage.jpg 123 F0211 10:49:29.643215 146333696 image_data_layer.cpp:148] Check failed: cv_img.data Could not load /my/path/img/myfirstimage.jpg 123
'myfirstimage.jpg'
是'file_lists.txt'
中的第一个图片,123
是标签。我检查了文件是否在'/my/path/img/myfirstimage.jpg'
路径中
它似乎试图使用包含路径标签的字符串加载图像。从查看文档和示例来看,这不应该发生,除非我已经愚弄,但我没有看到任何东西。有人可以帮忙吗?
mynet.prototxt的开头:
name: "mynet"
layer {
name: "data"
type: "ImageData"
top: "data"
top: "label"
image_data_param {
source: "/my/path/file_list.txt"
batch_size: 50
new_height: 256
new_width: 256
}
include {
phase: TRAIN
}
}
...
以下是mynet_solver.prototxt
:
net: "/my/path/mynet.prototxt"
test_iter: 10
test_interval: 500
base_lr: 0.01
momentum: 0.9
weight_decay: 0.0000
lr_policy: "inv"
gamma: 0.0001
power: 0.75
display: 100
max_iter: 50000
snapshot: 5000
snapshot_prefix: "/my/path"
solver_mode: CPU
我使用的命令:
caffe train -solver ./mynet_solver.prototxt
答案 0 :(得分:0)
您的诊断是正确的:似乎caffe正在尝试读取文件"/my/path/img/myfirstimage.jpg 123"
,即路径和标签。
确保您的'/my/path/file_list.txt'
具有完全格式:
即:路径和标签之间只有一个空格(不是制表符或任何其他字符)。标签后面没有没有其他空格字符,而新行字符除外,表示行尾
Caffe正在使用c++ code来解析'/my/path/file_list.txt'
,因此解析不是很灵活。