Caffe原始碼分析隨筆 二 Blob

2021-08-22 10:37:04 字數 957 閱讀 9340

blob是caffe中每一層的基本型別。

檢視標頭檔案:

template

class blob

...protected:

shared_ptr

data_;

shared_ptr

diff_;

shared_ptr

shape_data_;

vector

shape_;

int count_;

int capacity_;

blob類和caffe中大多類一樣是模板函式, 其實dtype在caffe中一般是float 或 double型別。 一般可以不用管它是float或是double型別,但我遇到過dtype型別不匹配的情況,這個時候我目前只發現使用dtype型別強制轉換,將其他型別轉為dtype。

看blob類下的幾個變數。data_顯然是這一層的數值張量(the data of this layer),diff_顯然是相應的微分值。 至於shape_data_shape_應該都是layer的shape,一般是四維的。count_是這一層data總數, count_ = width*height*channel*num ,capacity_則是當前申請的空間容納的data數。

syncedmemory是caffe的乙個基本型別,如上面**:data,diff 都是syncedmemory型別。

class syncedmemory
syncedmemory類主要幹的是 分配cpu資料, gpu資料, 資料從cpu傳到gpu, 從gpu傳到cpu之類的。注意到有void指標, void指標可以指向任意型別的資料,亦即可用任意資料型別的指針對void指標賦值。

caffe原始碼分析 DataTransformer

將datum型別或者cv mat,轉化為caffe的blob,並按照transformation parameter引數對影象做處理,例如scale,mirro等 推斷blob的shape proto定義如下 to the data layer s data message transformati...

jQuery原始碼分析隨筆

一次在寫jquery外掛程式的經歷,讓自己發現了js水很深,自己很菜。然後慢慢發現js包括了原型 閉包 作用域等一些很常用的知識點。首先jquery原始碼的主要結構 下面就是在做分析jquery原始碼時自己的一些備註 1 function window 78 jquery.test function...

caffe原始碼分析 IoU計算

iou pre dict 檢測框與 grou nd t ruth 檢測框的 交集pr edic t檢測框 與gro und trut h檢測框 的的並集 iou frac iou pr edic t檢測框 與gro und trut h檢測框 的的並集 pred ict檢 測框與g roun d t...