Caffe_Windows学习笔记(四)逐层可视化图像特征

0、参考文献

[1]官网 http://nbviewer.jupyter.org/github/BVLC/caffe/blob/master/examples/00-classification.ipynb

[2]薛开宇《读书笔记 5 逐层可视化图像特征》

[3]Jesse_Mx http://blog.csdn.net/jesse_mx/article/details/58605385

1、准备工作

#设置Python环境
import numpy as np 
import matplotlib.pyplot as plt

#设置显示默认值,rcParams是一个包含各种参数的字典结构,含有多个key-value,可修改其中部分值
plt.rcParams['figure.figsize']=(10,10) #图像显示大小,单位是英寸
plt.rcParams['image.interpolation']='nearest' #最近邻差值,像素为正方形
plt.rcParams['image.cmap']='gray' #使用灰度输出而不是彩色输出

#加载caffe
import sys
caffe_root = 'D:/caffe_test/caffe-master/'
sys.path.insert(0,caffe_root + 'python')

import caffe
#如果你的“No module named _caffe”,要么你没有建立pycaffe,要么你有错误的路径。
#我将Build/x64/Release/pycaffe下的caffe文件夹替换了python下的caffe

'''
#我已下载过bvlc_reference_caffenet.caffemodel,故以下步骤不做
import os
if os.path.isfile(caffe_root + 'models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel'):
    print 'CaffeNet found.'
else:
    print 'Downloading pre-trained CaffeNet model...'
    !../scripts/download_model_binary.py ../models/bvlc_reference_caffenet
'''

2、加载网络以及输入预处理

#设置gpu模式以及从硬盘加载网络
caffe.set_mode_gpu()

model_def = caffe_root + 'models/bvlc_reference_caffenet/deploy.prototxt'
model_weights = caffe_root + 'models/bvlc_reference_caffenet/bvlc_reference_caffenet.caffemodel'

net=caffe.Net(model_def, #定义模型结构
              model_weights, #包含模型训练权重
              caffe.TEST) #使用测试模式(训练中不能执行dropout)

#图像预处理
#加载ImageNet训练集的图像均值,预处理需要减去均值
#ilsvrc_2012_mean.npy文件是numpy格式,其数据维度是(3L, 256L, 256L)
mu = np.load(caffe_root + 'python/caffe/imagenet/ilsvrc_2012_mean.npy') #加载均值文件
mu = mu.mean(1).mean(1) #对所有像素值取平均以此获取BGR的均值像素值
print 'mean-subtracted values:',zip('BG

你可能感兴趣的:(caffe学习笔记,深度学习,caffe,图像处理)