国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

caffe的python接口deploy形成caffemodel歸類新的圖片

89542767 / 368人閱讀

  本文主要是給大家介紹了caffe的python插口生成deploy文件學(xué)習(xí)培訓(xùn)及其用練習(xí)好一點(diǎn)的實(shí)體模型(caffemodel)來(lái)歸類新的圖片實(shí)例詳細(xì)說(shuō)明,感興趣的小伙伴可以參考借鑒一下,希望可以有一定的幫助,祝愿大家多多的發(fā)展,盡早漲薪


  caffe的python插口生成deploy文件


  假如要將練習(xí)好一點(diǎn)的實(shí)體模型用于檢測(cè)新的圖片,那必然必須得一個(gè)deploy.prototxt文件,這一文檔事實(shí)上和test.prototxt文件基本上,僅僅首尾各不相同而也。deploy文件并沒有一層數(shù)據(jù)傳送層,都沒有最后Accuracy層,但之后多出一個(gè)Softmax幾率層。


  接下來(lái)我們選用編碼的方式去一鍵生成該文檔,以mnist為例子。


  deploy.py


  #-*-coding:utf-8-*-
  from caffe import layers as L,params as P,to_proto
  root='/home/xxx/'
  deploy=root+'mnist/deploy.prototxt'#文件保存路徑
  def create_deploy():
  #少了第一層,data層
  conv1=L.Convolution(bottom='data',kernel_size=5,stride=1,num_output=20,pad=0,weight_filler=dict(type='xavier'))
  pool1=L.Pooling(conv1,pool=P.Pooling.MAX,kernel_size=2,stride=2)
  conv2=L.Convolution(pool1,kernel_size=5,stride=1,num_output=50,pad=0,weight_filler=dict(type='xavier'))
  pool2=L.Pooling(conv2,pool=P.Pooling.MAX,kernel_size=2,stride=2)
  fc3=L.InnerProduct(pool2,num_output=500,weight_filler=dict(type='xavier'))
  relu3=L.ReLU(fc3,in_place=True)
  fc4=L.InnerProduct(relu3,num_output=10,weight_filler=dict(type='xavier'))
  #最后沒有accuracy層,但有一個(gè)Softmax層
  prob=L.Softmax(fc4)
  return to_proto(prob)
  def write_deploy():
  with open(deploy,'w')as f:
  f.write('name:"Lenet"n')
  f.write('input:"data"n')
  f.write('input_dim:1n')
  f.write('input_dim:3n')
  f.write('input_dim:28n')
  f.write('input_dim:28n')
  f.write(str(create_deploy()))
  if __name__=='__main__':
  write_deploy()

  運(yùn)作該文檔后,會(huì)在mnist目錄下,形成一個(gè)deploy.prototxt文件。


  這一文檔不建議用編碼來(lái)形成,反倒是繁瑣。大伙兒了解之后能將test.prototxt拷貝1份,改動(dòng)相對(duì)應(yīng)的地方就行了,方便快捷。


  練習(xí)好一點(diǎn)的實(shí)體模型caffemodel歸類新圖片


  通過(guò)前邊的學(xué)習(xí)培訓(xùn),己經(jīng)練習(xí)好啦一個(gè)caffemodel實(shí)體模型,并形成了一個(gè)deploy.prototxt文件,如今我們就通過(guò)這兩文檔來(lái)對(duì)于新的圖片開展分類預(yù)測(cè)。


  大家從mnist數(shù)據(jù)的test集中化隨意找一張照片,用于開展試驗(yàn)。


  #coding=utf-8
  import caffe
  import numpy as np
  root='/home/xxx/'#根目錄
  deploy=root+'mnist/deploy.prototxt'#deploy文件
  caffe_model=root+'mnist/lenet_iter_9380.caffemodel'#訓(xùn)練好的caffemodel
  img=root+'mnist/test/5/00008.png'#隨機(jī)找的一張待測(cè)圖片
  labels_filename=root+'mnist/test/labels.txt'#類別名稱文件,將數(shù)字標(biāo)簽轉(zhuǎn)換回類別名稱
  net=caffe.Net(deploy,caffe_model,caffe.TEST)#加載model和network
  #圖片預(yù)處理設(shè)置
  transformer=caffe.io.Transformer({'data':net.blobs['data'].data.shape})#設(shè)定圖片的shape格式(1,3,28,28)
  transformer.set_transpose('data',(2,0,1))#改變維度的順序,由原始圖片(28,28,3)變?yōu)?3,28,28)
  #transformer.set_mean('data',np.load(mean_file).mean(1).mean(1))#減去均值,前面訓(xùn)練模型時(shí)沒有減均值,這兒就不用
  transformer.set_raw_scale('data',255)#縮放到【0,255】之間
  transformer.set_channel_swap('data',(2,1,0))#交換通道,將圖片由RGB變?yōu)锽GR
  im=caffe.io.load_image(img)#加載圖片
  net.blobs['data'].data[...]=transformer.preprocess('data',im)#執(zhí)行上面設(shè)置的圖片預(yù)處理操作,并將圖片載入到blob中
  #執(zhí)行測(cè)試
  out=net.forward()
  labels=np.loadtxt(labels_filename,str,delimiter='t')#讀取類別名稱文件
  prob=net.blobs['Softmax1'].data[0].flatten()#取出最后一層(Softmax)屬于某個(gè)類別的概率值,并打印
  print prob
  order=prob.argsort()[-1]#將概率值排序,取出最大值所在的序號(hào)
  print'the class is:',labels[order]#將該序號(hào)轉(zhuǎn)換成對(duì)應(yīng)的類別名稱,并打印
  最后輸出the class is:5


  分類正確。


  如果是預(yù)測(cè)多張圖片,可把上面這個(gè)文件寫成一個(gè)函數(shù),然后進(jìn)行循環(huán)預(yù)測(cè)就可以了。


  綜上所述,這篇文章就給大家介紹完畢了,希望可以給大家?guī)?lái)幫助。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/128757.html

相關(guān)文章

  • caffepython接口caffemodel指標(biāo)及特征抽取實(shí)例

      此篇文章主要是詳細(xì)介紹了caffe的python接口caffemodel指標(biāo)及特征抽取實(shí)例詳細(xì)說(shuō)明,感興趣的小伙伴可以參考借鑒一下,希望可以有一定的幫助,祝愿大家多多的發(fā)展,盡早漲薪  文章正文  如果使用公式計(jì)算y=f(wx+b)  來(lái)描述全部計(jì)算全過(guò)程得話,那樣w和b是我們必須鍛煉的物品,w稱之為權(quán)重值,在cnn之中能夠稱為池化層(filter),b是偏置項(xiàng)。f是激活函數(shù),有sigmoid...

    89542767 評(píng)論0 收藏0
  • caffepython插口之手寫數(shù)字識(shí)別mnist案例

      文中主要是給大家介紹了caffe的python插口之手寫數(shù)字識(shí)別mnist案例詳細(xì)說(shuō)明,感興趣的小伙伴可以參考借鑒一下,希望可以有一定的幫助,祝愿大家多多的發(fā)展,盡早漲薪  論文引言  機(jī)器學(xué)習(xí)第一個(gè)案例一般都是是mnist,只需這個(gè)案例徹底搞懂了,其他的便是觸類旁通的事了。因?yàn)樽謹(jǐn)?shù)緣故,文中不簡(jiǎn)單介紹環(huán)境變量里邊每一個(gè)指標(biāo)的具體函義,如果要搞明白的,請(qǐng)參考我之前的微博文章:  數(shù)據(jù)訪問(wèn)層及主...

    89542767 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<