您的位置:首页 > 编程语言 > MATLAB

caffe-windows matlab 接口配置

2017-10-11 15:28 495 查看
caffe平台配置完成后,我们对其matlab接口进行配置。这样往后的各种实验,可在matlab平台中对数据进行处理。

一、修改windows文件夹下的CommonSettings.props,添加你的matlab路径





重新编译caffe



二、链接

打开Build\x64\Release\matcaffe+caffe\private文件下,查看是否生成caffe_.mexw64等文件。

将Build\x64\Release下所有.dll文件复制到Build\x64\Release\matcaffe+caffe\private文件夹下。



三、matlab路径设置



简单测试一下



这样,caffe在windows下的matlab接口就配置成功了。

用VGG-16测试一下- - 实验代码和图片链接:http://pan.baidu.com/s/1i4YLuJj 密码:xzez

matlab测试代码如下

demo.m

%% VGG16
caffe.set_mode_cpu();
model_dir = './';
net_model = [model_dir 'VGG_ILSVRC_16_layers_deploy.prototxt']; %读取网络
net_weights = [model_dir 'VGG_ILSVRC_16_layers.caffemodel']; %读取训练好的模型(实质为网络的参数)
net = caffe.Net(net_model,net_weights, 'test');% 将参数加载到网络中

%% 读入224*224RGB图像
im_data = imread('car.bmp');
im_data = im_data(:, :, [3, 2, 1]);  %  RGB to BGR
im_data = permute(im_data, [2, 1, 3]);  % 图像转置
im_data = imresize(im_data, [224 224], 'bilinear');

%% 输入VGG-16
net.blobs('data').set_data(single(im_data));
net.forward_prefilled();
score = net.blobs('prob').get_data();  %score为1000×1的分类概率向量


text.m

score1 = sort(score,'descend');
label = find(score == score1(1) );
fid = fopen('synset_words.txt', 'r');
ii=0;
while ~feof(fid)
ii=ii+1;
lin = fgetl(fid);
lin = strtrim(lin);
if(ii==label)
fprintf('该图像分类结果是:第 %d 类,属于: %s\n',ii,lin);
fprintf('该图像分属于该类的概率为: %.3f\n',score1(1));
break
end
end


car.bmp





cat.jpg





注意matlab 文件位置,在matlab/demo路径下运行。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: