detectron2(目標檢測框架)無死角玩轉-02:訓練,測試coco數據

以下鏈接是個人關於detectron2(目標檢測框架),所有見解,如有錯誤歡迎大家指出,我會第一時間糾正。有興趣的朋友可以加微信:a944284742相互討論技術。若是幫助到了你什麼,一定要記得點贊!因爲這是對我最大的鼓勵。
detectron2(目標檢測框架)無死角玩轉-00:目錄

前言

通過前面的博客,我們知道如何去使用官方已經訓練好的模型,接下來當然是訓練自己的模型唄,爲了驗證流程的正確,我們先使用coco數據集進行訓練,因爲這也是官方默認支持的數據集,比較容易操控,那麼我們就開始吧

數據集下載及擺放

首先我們閱讀datasets/README.md的,可以看大如下:
在這裏插入圖片描述
根據上面的提示,擺放好下載的數據集,本然擺放如下

datasets
	--coco
 		--annotations
 		--train2017
 		--val2017

如果你僅僅是想隨便測試一下,可以通過執行./prepare_for_tests.sh下載一個小版本的數據集,本人測試是下載了所有數據集。

上面的數據集,是實力分割的,如果我們先測試語義分割:
在這裏插入圖片描述
先按上面的要求的安裝panopticapi :

pip install git+https://github.com/cocodataset/panopticapi.git

然後再運行prepare_panoptic_fpn.py。當然我們先要去下載coco對應的panoptic數據集,並且擺放好。後面的LVIS, cityscapes, Pascal VOC 數據集也是同樣的原理,按照要求擺放即可。這裏就不做過多的介紹了,總得來說,就是detectron2支持很多數據集的格式。下面我們來開始訓練coco數據集把。

訓練coco數據集

我們回到detectron2/GETTING_STARTED.md,可以看到:
在這裏插入圖片描述
根據上面的提示,本人在一個GPU上進行訓,執行如下:

python tools/train_net.py \
--num-gpus 1 \
--config-file configs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_1x.yaml SOLVER.IMS_PER_BATCH 2 SOLVER.BASE_LR 0.0025

在這裏插入圖片描述
然後在會生成output目錄顯示如下,存在如下文件:
在這裏插入圖片描述
等待訓練完成之後,模型也會保存到這裏,如果我們想訓練不同的模型,我們只需要配置–config-file對應的 yaml 文件即可,比如我想訓練 retina 的檢測檢測網絡,則只需要執行如下指令即可:

python tools/train_net.py \
--num-gpus 2 \
--config-file configs/COCO-Detection/retinanet_R_50_FPN_3x.yaml SOLVER.IMS_PER_BATCH 2 SOLVER.BASE_LR 0.0025

模型訓練的方式知道,那麼我們總需要知道我們的模型的效果究竟如何,也就是對模型進行評估。

模型評估

我們繼續閱讀detectron2/GETTING_STARTED.md,可以看到在這裏插入圖片描述
在測試之前呢,我已經通過以下鏈接下載好了一個模型:
https://github.com/facebookresearch/detectron2/blob/master/MODEL_ZOO.md
在這裏插入圖片描述

當然,你也可以使用自己訓練好的模型,下載好模型之後,本人存放在如下位置,
在這裏插入圖片描述
那麼本人需要執行的指令爲:

python tools/train_net.py \
--config-file configs/COCO-Detection/retinanet_R_50_FPN_3x.yaml \
--eval-only \
MODEL.WEIGHTS offimodel/model_final_4cafe0.pkl 

大家要注意的是,對於SOLVER.IMS_PER_BATCH,MODEL.WEIGHTS這樣的參數,我們必須寫在末尾。還有就是我們可以發現,對於模型的評估,指定checkpoint文件的路徑以及pkl文件的路徑都是可以的。運行之後,本人打印如下:
在這裏插入圖片描述
在這裏插入圖片描述
可以看到訓練的結果還是很好的。

結語

現在,我們已經知道如何去訓練官方的coco數據集,那麼接接下來我們就去訓練自己的數據,今天是小年哈,祝大家2020年擡頭不見bug,低頭就見姑娘。對象總比bug多!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章