caffe 模型中的裁剪大小错误
Crop size Error in caffe Model
我正在尝试训练咖啡 Model.I 收到此错误
I0806 09:41:02.010442 2992 sgd_solver.cpp:105] Iteration 360, lr = 9.76e- 05
F0806 09:41:20.544955 2998
data_transformer.cpp:168] Check failed: height<=datum_height (224 vs. 199)
*** Check failure stack trace: ***
@ 0x7f82b051edaa (unknown)
@ 0x7f82b051ece4 (unknown)
@ 0x7f82b051e6e6 (unknown)
@ 0x7f82b0521687 (unknown)
@ 0x7f82b0b8e9e0 caffe::DataTransformer<>::Transform()
@ 0x7f82b0c09a2f caffe::DataLayer<>::load_batch()
@ 0x7f82b0c9aa5
caffe::BasePrefetchingDataLayer<>::InternalThreadEntry()
@ 0x7f82b0b6ea30 caffe::InternalThread::entry()
@ 0x7f82b0b6f376 boost::detail::thread_data<>::run()
@ 0x7f82a6afea4a (unknown)
@ 0x7f82a1147184 start_thread
@ 0x7f82aee51ffd (unknown)
@ (nil) (unknown)
Aborted (core dumped)
我遇到了类似的错误,但是 Check failed: height<=datum_height (227 vs. 224)
。然后我将 227 更改为 224,但现在我得到了 this.Any 个建议?
编辑:我的 LMDB 代码-
EXAMPLE=/home/hyperworks/colorfile/ # Path where the output LMDB is stored
DATA=/home/hyperworks/colorfile/ # Path where the data.txt file is present
TOOLS=/home/hyperworks/caffe/build/tools/ # Caffe dependency to access the convert_imageset utility
DATA_ROOT=/home/hyperworks/colorfile/train/ # Path prefix for each entry in data.txt
# +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
# ----------------------------
RESIZE=true
if $RESIZE; then
RESIZE_HEIGHT=227
RESIZE_WIDTH=227
else
RESIZE_HEIGHT=0
RESIZE_WIDTH=0
fi
# Checks for DATA_ROOT Path
if [ ! -d "$DATA_ROOT" ]; then
echo "Error: DATA_ROOT is not a path to a directory: $DATA_ROOT"
echo "Set the DATA_ROOT variable to the path where the data
instances are stored."
exit 1
fi
# ------------------------------
# Creating LMDB
echo "Creating data lmdb..."
GLOG_logtostderr=1 $TOOLS/convert_imageset \
$DATA_ROOT \
$DATA/train.txt \
$EXAMPLE/train_lmdb
# ------------------------------
echo "Done."
这是我用来创建 LMDB 文件的代码-
这是我用来创建 LMDB 文件的代码-
输入数据集中的一张(或多张?)图像似乎有 height
= 199。Caffe 无法将高度为 199 的图像裁剪为 224 大小。
错误消息解释:
data_transformer.cpp:168] Check failed: height<=datum_height (224 vs. 199)
查看 'data_transformer.cpp'
line 168:
CHECK_LE(height, datum_height);
数据转换器检查作物高度 (height
) 是否小于或等于 (LE) 输入 datum_height
。
从错误消息中可以看出,此检查失败,这意味着输入高度大于裁剪高度。条件 height=224 <= datum_height=199
不成立并引发错误。
我正在尝试训练咖啡 Model.I 收到此错误
I0806 09:41:02.010442 2992 sgd_solver.cpp:105] Iteration 360, lr = 9.76e- 05
F0806 09:41:20.544955 2998
data_transformer.cpp:168] Check failed: height<=datum_height (224 vs. 199)
*** Check failure stack trace: ***
@ 0x7f82b051edaa (unknown)
@ 0x7f82b051ece4 (unknown)
@ 0x7f82b051e6e6 (unknown)
@ 0x7f82b0521687 (unknown)
@ 0x7f82b0b8e9e0 caffe::DataTransformer<>::Transform()
@ 0x7f82b0c09a2f caffe::DataLayer<>::load_batch()
@ 0x7f82b0c9aa5
caffe::BasePrefetchingDataLayer<>::InternalThreadEntry()
@ 0x7f82b0b6ea30 caffe::InternalThread::entry()
@ 0x7f82b0b6f376 boost::detail::thread_data<>::run()
@ 0x7f82a6afea4a (unknown)
@ 0x7f82a1147184 start_thread
@ 0x7f82aee51ffd (unknown)
@ (nil) (unknown)
Aborted (core dumped)
我遇到了类似的错误,但是 Check failed: height<=datum_height (227 vs. 224)
。然后我将 227 更改为 224,但现在我得到了 this.Any 个建议?
编辑:我的 LMDB 代码-
EXAMPLE=/home/hyperworks/colorfile/ # Path where the output LMDB is stored
DATA=/home/hyperworks/colorfile/ # Path where the data.txt file is present
TOOLS=/home/hyperworks/caffe/build/tools/ # Caffe dependency to access the convert_imageset utility
DATA_ROOT=/home/hyperworks/colorfile/train/ # Path prefix for each entry in data.txt
# +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
# ----------------------------
RESIZE=true
if $RESIZE; then
RESIZE_HEIGHT=227
RESIZE_WIDTH=227
else
RESIZE_HEIGHT=0
RESIZE_WIDTH=0
fi
# Checks for DATA_ROOT Path
if [ ! -d "$DATA_ROOT" ]; then
echo "Error: DATA_ROOT is not a path to a directory: $DATA_ROOT"
echo "Set the DATA_ROOT variable to the path where the data
instances are stored."
exit 1
fi
# ------------------------------
# Creating LMDB
echo "Creating data lmdb..."
GLOG_logtostderr=1 $TOOLS/convert_imageset \
$DATA_ROOT \
$DATA/train.txt \
$EXAMPLE/train_lmdb
# ------------------------------
echo "Done."
这是我用来创建 LMDB 文件的代码- 这是我用来创建 LMDB 文件的代码-
输入数据集中的一张(或多张?)图像似乎有 height
= 199。Caffe 无法将高度为 199 的图像裁剪为 224 大小。
错误消息解释:
data_transformer.cpp:168] Check failed: height<=datum_height (224 vs. 199)
查看 'data_transformer.cpp'
line 168:
CHECK_LE(height, datum_height);
数据转换器检查作物高度 (height
) 是否小于或等于 (LE) 输入 datum_height
。
从错误消息中可以看出,此检查失败,这意味着输入高度大于裁剪高度。条件 height=224 <= datum_height=199
不成立并引发错误。