I found the reasons of the problems:
1) create_cifar10.sh at
"
./build/examples/cifar10/convert_cifar_data.bin $DATA $EXAMPLE
./build/tools/compute_image_mean $EXAMPLE/cifar10_train_leveldb $EXAMPLE/mean.binaryproto leveldb
"
2) create_cifar10.sh at git dev branch which I am using and downloaded a few days ago:
"
EXAMPLE=examples/cifar10
DATA=data/cifar10
DBTYPE=lmdb
BUILDDIR=./build/caffe
echo "Creating $DBTYPE..."
(***)rm -rf $EXAMPLE/cifar10_train_$DBTYPE $EXAMPLE/cifar10_test_$DBTYPE
$BUILDDIR/examples/cifar10/convert_cifar_data $DATA $EXAMPLE $DBTYPE
echo "Computing image mean..."
(***)$BUILDDIR/tools/compute_image_mean -backend=$DBTYPE \
$EXAMPLE/cifar10_train_$DBTYPE $EXAMPLE/mean.binaryproto
echo "Done."
"
3) there are two differences between these two files which I highlights by ***.
So one problem is: convert_cifar_data generate lmdb files in 2) (fail during train ) but generate leveldb files in 1) (success in train).
the second problem is: compute_image_mean generate mean file from lmdb files in 2) (success) but leveldb files in 1) (fail).