caffe學習筆記14 初識資料視覺化

2021-08-02 19:48:29 字數 4054 閱讀 8990

1.首先將caffe的根目錄作為當前目錄,然後載入caffe程式自帶的小貓,並顯示。

大小為360x480,三通道

對輸入**進行解析:

import numpy as np//調入numpy程式,調入後名字為np

import matplotlib.pylot as plt// 調入matplotlib.pylot子程式,用作畫圖,調入後名字為plt

import caffe //調入caffe

2.開啟examples/net_surgery/conv.prototxt檔案,修改兩個地方:

一是將input_shape由原來的是(1,1,100,100)修改為(1,3,100,100),即由單通道灰度圖變為三通道彩色圖。

二是將過濾器個數(num_output)由3修改為16,多增加一些filter, 當然保持原來的數不變也行。

其它地方不變,修改後的prototxt如下,只有乙個卷積層:

in [2]:! cat examples/net_surgery/conv.prototxt

內容如下:

# ******

single-layer

network

toshowcase

editing

model

parameters.

name: "convolution"

input: "data"

input_shape

layer

bias_filler

}}

將資料載入到blobs,但反過來,我們也可以反過來從blob中提取出原始資料,並進行顯示。

顯示的時候要注意各維的順序,如blobs的順序是(1,3,360,480),從前往後分別表示1張,3三個通道,大小為360x480,需要呼叫transpose改變為(360,480,3)才能正常顯示。

其中用data[0]表示第一張,下標從0開始,此例只有一張,因此只能是data[0],分別用data[0,0],data[0,1]和data[0,2]表示該的三個通道。

編寫乙個show_data函式來顯示資料

in [4]:

plt.rcparams['image.cmap'] = 'gray'

def show_data(data,head,padsize=1, padval=0):

data -= data.min()

data /= data.max()

# force the number of filters to be square

n = int(np.ceil(np.sqrt(data.shape[0])))

padding = ((0, n ** 2 - data.shape[0]), (0, padsize), (0, padsize)) + ((0, 0),) * (data.ndim - 3)

data = np.pad(data, padding, mode='constant', constant_values=(padval, padval))

# tile the filters into an image

data = data.reshape((n, n) + data.shape[1:]).transpose((0, 2, 1, 3) + tuple(range(4, data.ndim + 1)))

data = data.reshape((n * data.shape[1], n * data.shape[3]) + data.shape[4:])

plt.figure()

plt.title(head)

plt.imshow(data)

plt.axis('off')

從blobs資料中將原始提取出來,並分別顯示不同的通道圖

呼叫forward()執行卷積操作,blobs資料發生改變。由原來的(1,3,360,480)變為(1,16,356,476)。

並初始化生成了相應的權值,權值資料為(16,3,5,5)。

最後呼叫兩次show_data來分別顯示權值和卷積過濾後的16通道。

caffe學習筆記(四) 初識資料視覺化

首先將caffe的根目錄作為當前目錄,然後載入caffe程式自帶的小貓,並顯示。大小為360x480,三通道 開啟examples net surgery conv.prototxt檔案,修改兩個地方 一是將input shape由原來的是 1,1,100,100 修改為 1,3,100,100 即...

初識資料產品

資料 定量的證據。資料的價值在決策過程中起指導作用。資料的價值可通過資料分析 資料服務和資料產品等方式提供。資料產品 資料產品指使用者不具備分析能力,通過專業的資料分析產品,得到資料價值。資料產品就是把資料 資料分析 決策邏輯盡可能多的固化在乙個軟體系統中,以更快的更新頻率,更準確的分析結果,更智慧...

初識資料庫

隨著vb學習任務的結束,我又迎來了新的學習任務 資料庫。剛接觸資料庫真是一頭霧水啊,看哪哪覺得陌生,那麼什麼是資料庫呢?下面蒐集的這些資料希望對我們初學者有所幫助。資料庫,顧名思義就是 資料的倉庫 計算機系統經常用來處理各種各樣的,大量的資料,比如使用計算機系統收集超市裡進出貨的清單,某地區的人口資...