我按照http://caffe.berkeleyvision.org/gathered/examples/mnist.html在 mnist 数据库上成功训练了我的 Caffe 网络
现在我想使用 Matlab 包装器用我自己的图像测试网络。
因此,在“matcaffe.m”中,我加载了文件“lenet.prototxt”,该文件不用于训练,但似乎适合测试。它引用 28 x 28 像素的输入大小:
name: "LeNet"
input: "data"
input_dim: 64
input_dim: 1
input_dim: 28
input_dim: 28
layer {
name: "conv1"
type: "Convolution"
bottom: "data"
top: "conv1"
因此,我相应地调整了“matcaffe.m”中的“prepare_image”函数。现在看起来像这样:
% ------------------------------------------------------------------------
function images = prepare_image(im)
IMAGE_DIM = 28;
% resize to fixed input size
im = rgb2gray(im);
im = imresize(im, [IMAGE_DIM IMAGE_DIM], 'bilinear');
im = single(im);
images = zeros(1,1,IMAGE_DIM,IMAGE_DIM);
images(1,1,:,:) = im;
images = single(images);
%-------------------------------------------------------------
这会将输入图像转换为 [1 x 1 x 28 x 28]、4dim、灰度图像。但 Matlab 仍然在抱怨:
Error using caffe
MatCaffe input size does not match the input size of the
network
Error in matcaffe_myModel_mnist (line 76)
scores = caffe('forward', input_data);
有人有根据自己的数据测试训练有素的 mnist 网络的经验吗?