1. 程式人生 > >caffe data_transformer.cpp 函式中的一個小問題

caffe data_transformer.cpp 函式中的一個小問題

在訓練情況下,測試的時候,因為phase變數沒有及時更新。

導致在test的情況下出錯。。。

直接更新下  this->phase_ = Caffe::phase();就好了。

//  LOG(INFO) << "MODEL:" << Caffe::phase();

//  LOG(INFO) << "phase:" << phase_;
  this->phase_ = Caffe::phase();
  if (crop_size) {
    CHECK(data.size()) << "Image cropping only support uint8 data";
    int h_off, w_off;
    // We only do random crop when we do training.
    //LOG(INFO) << "MODEL:" << phase_;
    if (phase_ == Caffe::TRAIN) {
//    if (Caffe::phase() == 0) {
//      LOG(INFO) <<"TrainING MODEL!";
      h_off = Rand() % (height - crop_size);
      w_off = Rand() % (width - crop_size);
    } else {
//      LOG(INFO) <<"TESTING MODEL!";
      h_off = (height - crop_size) / 2;
      w_off = (width - crop_size) / 2;

    }

請教了高人。可能這麼修改不太合適。。

來個正確的。。

在solver.cpp中,填加了兩句來著,修改如下:

void Solver<Dtype>::Init(const SolverParameter& param) {
 32   LOG(INFO) << "Initializing solver from parameters: " << std::endl
 33             << param.DebugString();
 34   param_ = param;
 35   if (param_.random_seed() >= 0) {
 36     Caffe::set_random_seed(param_.random_seed());
 37   }
 38   // Scaffolding code
 39   Caffe::set_phase(Caffe::TRAIN);

 40   InitTrainNet();
 41   Caffe::set_phase(Caffe::TEST);
 42   InitTestNets();
 43   LOG(INFO) << "Solver scaffolding done.";
 44 }

相關推薦

caffe data_transformer.cpp 函式一個問題

在訓練情況下,測試的時候,因為phase變數沒有及時更新。 導致在test的情況下出錯。。。 直接更新下  this->phase_ = Caffe::phase();就好了。 //  LOG(INFO) << "MODEL:" << Caf

pythonround函式一個坑——奇進偶棄

>>> round(10.5) # 按照round的四捨五入,本來應該是11的。但是這裡是10 10 >>> round(11.5) # 整數部分為奇數的時候,又

[Python隨筆]Python3輸出時使用print函式一個技巧

在編寫程式碼的時候,總是煩著print()沒以前版本的好用了,例如: str="Hello World!" >>>print str 如果想輸出字串str,舊版中只要先輸入print,然後空格+變數名即可 在py3以後,則需要: >>>pr

使用純虛擬函式一個細節——派生類定義該虛擬函式時宣告語句必須與基類裡完全一致

純虛擬函式在派生類裡明明補寫出來了定義,但是實際發現是無效的,派生類因沒有定義該純虛擬函式同樣被編譯器視為了抽象類。 原因很有可能是:基類和派生類的虛擬函式必須型別、名字、引數數量、名字、型別、以及函式前後綴的各種其他屬性(比如const等)必須完全一致!否則會被認為不是同

分享java程式設計一個程式:獲取當前系統日期和時間在程式顯示出來

特別注意月份是從0開始而不是從1開始,所以需要在月份上加1import java.applet.Applet; import java.awt.TextArea; import java.util.C

[bug小記]Android.mk編寫一個失誤引起的吐血事件

這兩天要開始寫新的應用以及新的NDK層引擎。 最快的方式,當然是把我之前已經寫好的、較穩定的NDK和Jni層的android工程直接拷貝過來,然後改下Android.mk裡面的引數咯。 但即使這樣,即使只是編譯一些很簡單的c++框架程式碼,也不能在eclipse工程裡面編

strstr函式一個應用

這是我使用SIM7600CE模組時的一個小函式,這裡USART3_RX_BUF就是我接收模組應答的快取區,後面u8*str 就是我存放我想要得到的應答的陣列。通過這個函式我可以在USART3_RX_BUF這裡面尋找,是否有我想要的應答訊息。比如我傳送AT+CPSI?查詢當前SIM卡的網路註冊資訊,我想知道他註

Qt qRound() 函式的使用時的一個問題

Qt 中的 qRound() 函式是用來對浮點數四捨五入的。我最近在寫的一個演算法中用到了這個函式,發現了一個小問題。 我的那個程式碼類似這樣: double f; int i, j, k; j = i + qRound(f); k = j - qR

linux下開發,解決cocos2d-x編譯出現的一個問題, undefined reference to symbol &#39;pthread_create@@GLIBC_2.2.5&#39;

water span x86 code bject data- ace 技術分享 inux 解決cocos2d-x中編譯出現的一個小問題 對於cocos2d-x 2.×中編譯中,若頭文件裏引入了#include "cocos-ext.h",在進行C++編譯的時候會遇到例

php引用&的一個實例

應該 數量 保存 cnblogs 理解 循環 簡單的 執行 次循環 在百度知道上碰到一段關於php的引用符&的代碼,對於初學都來說還是很考驗理解分析能力的,把代碼和自己的分析貼上來作一個備份,也與大家共勉。 代碼片段: 1 $arr =array(1,2,3

BeX5開發MySQL視圖使用的一個問題

bex5開發中mysql視圖使用的一個小問題問題 數據操作中的查詢是極端重要的,使用頻繁。MySQL數據庫中視圖概念的存在十分類似於微軟Access小型關系數據庫中的查詢(二級考試重點)。視圖的存在極大減小了數據表的創建數量,而且還有更為高級的運用技巧。本文介紹在基於起步科技的BeX5平臺上使用MySQ

scala計算的的一個問題,超出Int.maxValue時不會報錯

class sca cal div 問題 pri 如果 int sin 如果小於Int.max時他不會報錯 def sumcount(str:String): Int ={ val ints = for(c <- str)yield { p

一、實現一個特殊的棧,在實現棧的基本功能的基礎上,再實現返回棧元素的操作

empty util run print pri ont com res 字符串 請指教交流! 1 package com.it.hxs.c01; 2 3 import java.util.Stack; 4 5 /* 6 實現一個特殊的棧,在實現棧的基本

一個竅門,將list 的 字符串合並在一起。

print tr1 list color pan col 一個 div style list=[ ‘He is‘,‘a‘,‘ boy!‘] str1=‘‘.join(list) print(str1) 一個小竅門,將list 中的 字符串合並在一起。

zabbix安裝一個錯誤

端口 tail Oz shadow 9.png pro app 數據庫 HA 今天安裝了下zabbix3.4,前面一直安裝比較順利,然而web登陸後發現出現了小錯誤,我的zabbix服務端10051端口無法監聽,我重啟了幾次服務端,然而還是報這錯誤。。 排查了半天也沒發現

React事件遇到的一個

efi 指向 什麽 找到 stat 觸發 ... 點擊 his 一個點擊按鈕數字加1的小程序,我在第一次看書中的這段代碼的時候,第一眼我就對this.handleClick = this.handleClick.bind 這句話表示有點疑問,類中handleClick 方

記一下mybatisforeach循環遇到的一個問題

apach binding ibatis div 元素 each循環 ram nes 結束 ---恢復內容開始--- 我在添加單條數據的時候,參數是一個map,沒有使用循環,直接map.字段,即使這個字段map中並不存在,也不會出錯 但是是一個List<Map>

Vue.js 的一個技巧---利用v-for的index值,來實現隔行變色

type 樣式 lin class idt title mes har oct   首先定義好樣式,利用v-for中的index值,然後綁定樣式來實現隔行變色效果。    以下為完整代碼,很簡單,但也是個技巧。 <!DOCTYPE html> &

微信程序跳轉另一個程序

微信 open mini ucc ces java auth ESS min wx.navigateToMiniProgram({ appId: ‘xxxxxxxxxxxxxxxxxx‘, // 要跳轉的小程序的appid path: ‘page/

記錄Android開發一個坑,佈局檔案TextView新增onClick後,點選無效問題

自己寫東西的時候,在TextView上添加了onClick去增加點選事件,去跳轉另一個Activity,執行後結果點選無效,新增Toast,Toast也不顯示,程式碼如下: <TextView android:layout_width="wrap_content"