caffe的python介面使用方法示例

2021-08-04 10:37:27 字數 2544 閱讀 4953

import sys

#新增caffe下的python資料夾的路徑

import caffe

import numpy as np

import os

#使用caffemodel進行訓練

weights = 'googlenet_bn_stepsize_6400_iter_1200000.caffemodel'

caffe.set_device(0) #選擇0號gpu

caffe.set_mode_gpu() #使用gpu模式

solver = caffe.sgdsolver('solver.prototxt') #載入solver檔案

solver.net.copy_from(weights) #載入caffemodel

solver.solve() #開始執行

#使用solverstate繼續之前的訓練

s = "googlenet_bn_stepsize_6400_iter_1200000.solverstate"

caffe.set_device(0) #選擇0號gpu

caffe.set_mode_gpu() #使用gpu模式

solver = caffe.sgdsolver('solver.prototxt')#載入solver檔案

solver.restore(s) #載入solverstate

solver.solve() #開始執行

#這裡是將特徵寫入txt,寫入其他檔案(如npy等)方法類似

import sys

#新增caffe下的python資料夾的路徑

import caffe

import os

import numpy as np

deploy = 'train_val.prototxt' #cnn配置檔案

caffe_model = 'googlenet_bn_stepsize_6400_iter_1200000.caffemodel' #權重檔案

caffe.set_device(0) #選擇0號gpu

caffe.set_mode_gpu() #使用gpu模式

net = caffe.net(deploy,caffe_model,caffe.test) #初始化網路,選取test模式,所以prototxt的輸入層

#開啟乙個文字檔案

file_name = 'fea.txt'

output = open(file_name,'w')

num = 100 #需要提取特徵的的數量,這裡是因為我在prototxt配置檔案裡面將batch size設定為1, 所以num就是輸入層的list中的數量

while num:

print num

num = num - 1

net.forward() #網路前傳一次,後傳類似

param = net.params['conv1'][0].data #獲取一層的權重

fea = net.blobs['pool0'].data #獲取一層的資料

print np.shape(fea) #輸出資料的形狀,這裡是乙個pooling層,所以應該是4維的

#將特徵連成乙個字串,寫入文字檔案

str_fea = ''

for x in xrange(len(fea[0])):

str_fea = str_fea + str(fea[0][x][0][0]) +' '

str_fea = str_fea + '\n'

output.write(str_fea)

output.close()

deploy中資料層:

im -= mean #減去每個通道的均值

net.blobs['data'].data[...] = im #將輸入到網路

net.forward() #完成一次前傳

caffe的python介面 持續更新

初始化模型 root home caffe master deploy root examples mnist deply.prototxt deploy位置 caffe model root examples mnist lenet iter 5000.caffemodel 模型位置 net ca...

caffe的python介面使用筆記

網路初始化 model def d caffe caffe master models bvlc reference caffenet deploy.prototxt model pretrained d caffe caffe master models bvlc reference caffen...

CAFFE的matlab介面測試

配置好caffe 執行所需要的環境變數,如何配置參見 下面參考 記錄如何通過 caffe 帶的demo 給出乙個測試例子。在 matlab中開啟classification demo.m caffe matlab demo 自己在該目錄下編寫乙個test.m test.m為stu zhang art...