caffe学习笔记6-matlab接口总结

本文详细介绍了在MATLAB中使用Caffe接口进行操作的方法,包括时间记录、环境变量设置、添加Caffe路径、图像显示以及如何将图片集转换为.mat格式。此外,还展示了如何通过索引显示检索结果的图片和利用路径显示图片。
摘要由CSDN通过智能技术生成
第一部分:用matlab接口操作网络,包括网络生成,数据读取及修改,存储caffeemodel,返回layer的类型
  1.设置网络:
    model = './models/bvlc_reference_caffenet/deploy.prototxt';
    weights ='./models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel';
  2.启动网络前,设置运行模式cpu/gpu,模式和设备的设置必须在创建一个net或solver之前。
    caffe.set_mode_cpu();
    caffe.set_mode_gpu();
    caffe.set_device(gpu_id); //使用 GPU,指定 GPU 的 ID 号
  3.创建网络:
    net = caffe.Net(model, weights, 'test'); % 创建网络并加载权值
    或者
    net = caffe.Net(model, 'test'); % 创建网络,但不加载权值
    net.copy_from(weights); % 加载权值
  4.你可以存取网络中任意的 blob。若希望用 1 来填充’data’这个 blob:
    net.blobs('data').set_data(ones(net.blobs('data').shape));
  5.若希望将 ‘data’这个blob中的所有值都乘以 10,Caffe使用单精度float型数据。如果你的数据不是单精度的,set_data会自动将数据转换为单精度。
    net.blobs('data').set_data(net.blobs('data').get_data() * 10);
  6.你可以访问每一层,对网络进行调整(surgery)。例如,将 conv1 的参数乘以 10:
    net.params('conv1', 1).set_data(net.params('conv1', 1).get_data() * 10); % 设置权值
    net.params('conv1', 2).set_data(net.params('conv1', 2).get_data() * 10); % 设置偏置
    或者,你也可以使用以下命令:
    net.layers('conv1').params(1).set_data(net.layers('conv1').params(1).get_data() * 10);
    net.layers('conv1').params(2).set_data(net.layers('conv1').params(2).get_data() * 10);
  7.保存刚刚修改的网络:
    net.save('my_net.caffemodel');
  8.得到 layer 的类型(返回一个 string):
    layer_type = net.layers('conv1').type;

  第二部分:网络的前向传导(forward)与后向传播(backward)
  1.Forward 可使用 net.forward 或者 net.forward_prefilled 函数。
    net.forward()传入包含了输入数据的 N-D arrays 形式的单元阵列(cell array),返回包含输出数据的单元阵列。  
    net.forward_prefilled()使用了 forward 过程中,input blobs(s)中已经存在的数据。
    如果没有输入就不会产生输出。
    在创建了类似 datmean_data = caffe.io.read_mean('./data/ilsvrc12/imagenet_mean.binaryproto');a = rand(net.blobs('data').
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值