windows下caffe執行我的第二個程式
我的第二個程式時執行caffe自帶的mnist手寫資料。具體過程如下:
一、獲取資料
可以從我的網盤中下載:
連結:http://pan.baidu.com/s/1dEVYUHj 密碼:joyq
包含4個檔案。
2個是訓練集的:train-images.idx3-ubyte(訓練集照片)和train-labels.idx1-ubyte(訓練集照片對應的label).
2個是測試集的:t10k-images.idx3-ubyte(測試集照片)和t10k-labels.idx1-ubyte(測試集照片對應的label).
在資料放置在examples/mnist/資料夾下新建mnist_data資料夾,並將以上4個檔案複製過去。
二、將資料轉為leveldbd檔案
此處我們換用一下方法,但是換湯不換藥。
在caffe-master根目錄下新建bat檔案。convert_mnist_train.bat檔案。並寫入一下程式碼:
Build\x64\Debug\convert_mnist_data.exe --backend=lmdb examples\mnist\mnist_data\train-images.idx3-ubyte examples\mnist\mnist_data\train-labels.idx1-ubyte examples\mnist\mnist_data\mnist_train_lmdb pause
再新建檔案convert_mnist_test.bat.寫入如下程式碼:
此處採用的均是相對路徑。此處,將檔案轉換為lmdb檔案。
PS:convert_mnist_data.exe的使用格式:
convert_mnist_data.exe [FLAGS] Input_Image_File Input_Label_File OutPut_db_File
[FLAGS]:圖片引數組
-gray:是否以灰度圖的方式開啟圖片,預設為false。程式呼叫opencv庫中的imread()函式來開啟圖片。
-shuffle:是否隨機打亂圖片順序,預設為false。
-backend:需要轉換成的檔案格式,可設定為leveldb或者lmdb.
-reseize_width/resize_height:改變圖片的大小。要求程式在執行中,要保證所有圖片的大小一致。程式呼叫opencv庫中的resize()函式對圖片進行放縮。預設為false,即不變化。
Input_Image_File :輸入圖片的位置
Input_Label_File :圖片檔案列表清單,也就是輸入圖片的類標label。
OutPut_db_File:最終生成的db檔案的存放位置。
三、執行程式
首先在examples/mnist/資料夾下面找到lenet_solver.prototxt檔案。修改solver_mode=CPU.
將剛剛生成的兩個資料夾剪下到examples/mnist/下。或者不動,修改lenet_train_test.prototxt的source。
在caffe-master根目錄下新建.bat檔案。寫入程式碼如下:
.\Build\x64\Debug\caffe.exe train --solver=examples/mnist/lenet_solver.prototxt
pause
即可執行。