我对 MatCaffe 有疑问。我在 python 中使用我自己的数据集(2 分类,0 或 1)成功训练了 LeNet,并尝试现在将其部署到 Matlab 上。网络架构来自 caffe/examples/mnist/lenet.prototxt。我输入网络的所有输入图像总是返回 1。(我尝试使用训练中的正图像和负图像)。
下面是我的代码:
deployNet = 'lenet_deploy.prototxt';
caffeModel = 'weight.caffemodel';
caffe.set_mode_cpu();
net = caffe.Net(deployNet, caffeModel, 'test');
net.blobs('data').reshape([28 28 1 1]);
net.reshape();
patch_data = imread('cropped.jpg'); % already in greyscale
patch_data = imresize(patch_data, [28 28],'bilinear');
imshow(patch_data)
input_data = {patch_data};
scores = net.forward(input_data);
highest = max(scores{1});
disp(i);
disp(highest);
即使对于负图像,最高值也总是返回 1。我尝试在 python 上部署它并且效果很好。我猜测我预处理输入的方式存在问题。