root@wzy-ubuntu:/home/wzy/caffe-master# sh examples/wzy/create_meanfile.sh
F0821 16:03:04.561220 17469 db_lmdb.hpp:15] Check failed: mdb_status == 0 (2 vs. 0) No such file or directory
*** Check failure stack trace: ***
@ 0x7fa03e8175cd google::LogMessage::Fail()
@ 0x7fa03e819433 google::LogMessage::SendToLog()
@ 0x7fa03e81715b google::LogMessage::Flush()
@ 0x7fa03e819e1e google::LogMessageFatal::~LogMessageFatal()
@ 0x7fa03ec33dd8 caffe::db::LMDB::Open()
@ 0x402185 main
@ 0x7fa03d788830 __libc_start_main
@ 0x402bb9 _start
@ (nil) (unknown)
examples/wzy/create_meanfile.sh: 行 5: 17469 已放弃 (核心已转储) $TOOLS/compute_image_mean $EXAMPLE/ilsvrc12_train_lmdb $DATA/imagenet_mean.binaryproto
Done.
其中create_meanfile.sh内容为:
EXAMPLE=examples/wzy
DATA=examples/wzy
TOOLS=build/tools
$TOOLS/compute_image_mean $EXAMPLE/ilsvrc12_train_lmdb $DATA/imagenet_mean.binaryproto
echo "Done."
原因是create_wzynet.sh中
$EXAMPLE/ilsvrc12_train_lmdb
这一行后面有多余的"#生成的lmdb路径行"注释,去掉注释时,留下了一些空格,
导致创建的ilsvrc12_train_lmdb 目录后面也有空格,因此运行create_meanfile.sh时就找不到这个目录了
create_wzynet.sh内容:
EXAMPLE=examples/wzy/
DATA=examples/wzy/data/
TOOLS=build/tools
TRAIN_DATA_ROOT=/
VAL_DATA_ROOT=/
# 这里我们打开resize,需要把所有图片尺寸统一
RESIZE=true
if $RESIZE; then
RESIZE_HEIGHT=256
RESIZE_WIDTH=256
else
RESIZE_HEIGHT=0
RESIZE_WIDTH=0
fi
.......
echo "Creating train lmdb..."
#生成的lmdb路径
GLOG_logtostderr=1 $TOOLS/convert_imageset \
--resize_height=$RESIZE_HEIGHT \
--resize_width=$RESIZE_WIDTH \
--shuffle \
$TRAIN_DATA_ROOT \
$DATA/train.txt \
$EXAMPLE/ilsvrc12_train_lmdb
echo "Creating val lmdb..."
#生成的lmdb路径
GLOG_logtostderr=1 $TOOLS/convert_imageset \
--resize_height=$RESIZE_HEIGHT \
--resize_width=$RESIZE_WIDTH \
--shuffle \
$VAL_DATA_ROOT \
$DATA/val.txt \
$EXAMPLE/ilsvrc12_val_lmdb
echo "Done."
参考这个: http://www.cnblogs.com/alexcai/p/5469436.html