1. 程式人生 > >windows下caffe執行我的第二個程式

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
即可執行。