由于matlab在列化a(:)以及reshape(a)等操作中是列优先的,所以要重构出新的高维度矩阵,通常要把reshape和permute结合起来使用。
先到 http://caffe.berkeleyvision.org/ 下载 训练好的model bvlc_reference_caffenet.caffemodel;
更多caffe使用也请参看上面的网址。
1 clear
2 close all
3
4
5 addpath ./matlab
6
7 model= './models/bvlc_reference_caffenet/deploy.prototxt';
8 weights= './models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel';
9
10
11 net = caffe.Net(model, weights, 'test'); % create net and load weights
12
13 %% obtain params in diff layers and show
14 pdata = net.params('conv1',1).get_data();
15
16 vis_square(pdata,2,0.5);
17
18
19 net.blobs('data').reshape([227 227 3 1]);
20 net.reshape();
21
22 %% prepare the image
23 im_data = caffe.io.load_image('./examples/images/cat.jpg'