《Caffe下跑AlxNet之資料處理過程》

來源:互聯網
上載者:User

標籤:size   think   val   需要   好的   還需要   creat   也有   命名   

環境:Windows

最近用Caffe跑了一下AlxNet網路,現在總結一下資料處理部分:(處理過的資料打包連結:http://pan.baidu.com/s/1sl8M5ad   密碼:ph1y)

(1)獲得資料集,途徑有:

1.Benchmark(資料庫)  AFLW   FDDB

2.最新論文(2016)

3.Thinkface論壇

資料量:龐大的資料量支撐,最少1w張(正,負樣本各一萬張),格式如下:

xxxx.jpg x1,y1,x2,y2(標註label),即人臉所在矩形框的座標

xxxx.jpg x1,y1,w,h

我是從Thinkface論壇上直接下載的經過裁剪的人臉資料;

(2)利用下載下來的資料集製作正負樣本以及.txt檔案

以下是我的方法,可能有點笨拙:

1.先建立imageset_2檔案夾作為總的工程檔案夾,然後在其中建立兩個檔案夾,一個命名為0,一個命名為1,分別放入裁剪好的人臉資料和非人臉資料,再對圖片進行重新命名(人臉圖片命名為face_xxxx,非人臉圖片命名為non_face_xxxx);

2.再建立mix、val、train檔案夾(train檔案夾中再建立兩個檔案夾,一個命名為0,一個命名為1),編寫一個python小程式,將0和1中的圖片經過混合後放入mix檔案夾,在mix檔案中取10%放入val檔案夾作為測試資料,再取剩下的90%將其中的人臉圖片放入train檔案夾中的0檔案夾,非人臉圖片放入1檔案夾(正樣本5800張,負樣本20000張左右);

3.先製作train.txt,在train中的0檔案夾中寫一個.bat檔案,內容如下:

dir /b/s/p/w *.jpg > train_0.txt

上述命令在建立的train_0.txt檔案寫入0中的每張圖片的絕對路徑,然後再使用txt的替換功能去掉絕對路徑,再在後面加上Label值,形式如下:

對於1也如上進行操作,得到的train_1.txt中的內容如下:

然後再將兩個檔案中的內容整合到train.txt檔案中,就得到了我們需要的train.txt檔案;

對於val.txt檔案我們也進行類似操作,不過我們也要先將val檔案夾中的圖片分到0和1兩個檔案夾(因為val裡既有人臉圖片也有非人臉圖片,無法使用替換功能),然後製作val.txt檔案;

(3)將正負樣本轉換為lmdb格式

在Windows下調用caffe安裝根目錄下BUild->x64->Debug中有一個convert_imageset.exe檔案來製作lmdb檔案(有的人有可能只有.cpp,那麼就還需要經過VS的編譯產生.exe)

在Linux下則調用examples->imagenet中的create_imagenet.sh檔案,並進行改寫(參見網上相關部落格)

這裡我介紹的是如何在windows下轉換lmdb格式(要自己寫.bat檔案,滿滿的淚。。。。)

首先在Imageset_2檔案夾中寫一個create_imageset_2.bat檔案,內容如下:

然後執行就會在後面相應的路徑中建立lmdb檔案;

(4)映像預先處理

使用Build中的compute_image_mean.exe將映像減去均值,.bat檔案內容如下:

得到對應的.binaryproto檔案

(5)修改solver.prototxt和train.prototxt檔案

簡單一點,我們只需要修改其中的路徑即可(注意,路徑用\\或者/,千萬不要用\!!!!!!!!

用CPU的話,solver:CPU,GPU的話相應修改即可。

(6)訓練網路

編寫train.bat檔案開始訓練,內容如下:

雙擊就開始訓練了:

配置:i7,8G,CPU訓練,已經一天了還沒好,強烈建議GPU!!!!

 

《Caffe下跑AlxNet之資料處理過程》

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.