MatCovNet官网 http://www.vlfeat.org/matconvnet/git
深度学习12:能力提高, 一步一步的介绍如何本身构建网络和训练,利用MatConvNet - CSDN博客
https://blog.csdn.net/qq_20259459/article/details/65633407github
深度学习在object tracking中的使用也愈来愈多,从去年的VOT结果来看,不少tracker都应用了convolution feature,总体效果都比以前的方法提升了一大截,因此学习deep learning须要提上日程了。看了HCF以及C-COT的源码,都运用到了matlab的深度学习工具---MatConvNet,因此关于它的使用了解了一番。sql
一、首先是下载,能够到http://www.vlfeat.org/matconvnet/去下载,不过C-COT的做者Martin大神的源码的说明文档readme中也提供了github的下载连接网络
二、经过执行 mex -setup 来设置matlab的C++编译器(VS2010 or greater)工具
三、将MatConvNet的path加到matlab路径中去学习
四、须要Compile MatConvNet。ui
vl_compilenn
固然,最好是写一个文件,执行3.4步。spa
好比,CompileCPU.m.net
若是想应用GPU计算,须要写成CompileGPU.mcode
这里须要注意,目前MatConvNet只支持英伟达的显卡,我看了一下个人台式机的显卡是intel的集成显卡,不能用,汗。因此,这里仍是先介绍在CPU下进行处理的方式。
五、加载预训练的模型。
须要从官网下载一个network(也就是 a pre-trained CNN)
连接戳 http://www.vlfeat.org/matconvnet/pretrained/
六、setup MatConvNet。
run matlab/vl_setupnn
七、 load the pre-trained CNN。
net = load('D:\MenghanZhou\matlab_work\ToolsBoxes\networks\imagenet-vgg-m-2048.mat');
这里的net是一个预训练模型,是一个线性链组成的网络。它是一个结构体的形式:
其中,layers有21层(不一样的预训练模型的卷积层数目不一样)
meta包含3个结构体
classes是已经训练好的模型对事物的1000种分类。
---------------------------我是分割线-----------------------------
来看一个例子,利用VGG已经训练好的模型对这张图片分类。
代码以下:
这样,咱们就能够获得下面的结果:
这说明,这张图片属于1000中类别中的pepper,并且属于这个类别的几率为0.979。
https://blog.csdn.net/sgfmby1994/article/details/70738883