Yolo:实时目标检测实战(下)
Yolo:實時目標檢測實戰(下)
YOLO:Real-Time Object
Detection
After a few minutes, this script will
generate all of the requisite files. Mostly it generates a lot of label files
in VOCdevkit/VOC2007/labels/ and VOCdevkit/VOC2012/labels/. In your directory
you should see:
ls
2007_test.txt?? VOCdevkit
2007_train.txt? voc_label.py
2007_val.txt??? VOCtest_06-Nov-2007.tar
2012_train.txt? VOCtrainval_06-Nov-2007.tar
2012_val.txt??? VOCtrainval_11-May-2012.tar
文本文件如2007_train.txt列出了當年的圖像文件和圖像集。Darknet需要一個文本文件,其中包含所有要訓練的圖像。在這個例子中,讓我們訓練除了2007測試集之外的所有東西,以便我們可以測試我們的模型。運行:
cat 2007_train.txt 2007_val.txt 2012_*.txt
train.txt
現在我們把2007年的trainval和2012年的trainval都列在一個大名單上。這就是我們要做的數據設置!
修改Pascal數據的Cfg
現在找到你的darknet 目錄。我們必須更改cfg/voc.data配置文件以指向您的數據:
1
classes= 20
2
train? = /train.txt
3
valid? = 2007_test.txt
4
names = data/voc.names
5
backup = backup
您應該將
下載預訓練卷積權重
對于訓練,我們使用在Imagenet上預先訓練的卷積權重。我們使用darknet53模型的權重。你可以在這里下載卷積層的權重(76MB)。
wget https://pjreddie.com/media/files/darknet53.conv.74
訓練模型
現在我們可以訓練了!運行命令:
./darknet detector train cfg/voc.data
cfg/yolov3-voc.cfg darknet53.conv.74
在COCO上訓練YOLO
如果你想使用不同的訓練模式、超參數或數據集,你可以從頭開始訓練YOLO。下面是如何讓它在COCO數據集上工作。
獲取COCO數據
為了訓練YOLO,你需要所有的COCO數據和標簽。腳本scripts/get_coco_dataset.sh將為您執行此操作。找出要將COCO數據放在哪里并下載它,例如:
cp scripts/get_coco_dataset.sh data
cd data
bash get_coco_dataset.sh
現在您應該擁有為Darknet生成的所有數據和標簽。
修改COCO的cfg
現在找到的darknet目錄。我們必須更改cfg/coco.data配置文件以指向您的數據:
1 classes= 80
2
train? =
/trainvalno5k.txt
3
valid? = /5k.txt
4
names = data/coco.names
5
backup = backup
您應該用放置coco數據的目錄替換
您還應該修改模型cfg以進行訓練,而不是測試。cfg/yolo.cfg應該如下所示:
[net]
Testing
batch=1
subdivisions=1
Training
batch=64
subdivisions=8
…
訓練模型
現在我們可以訓練了!運行命令:
./darknet detector train cfg/coco.data
cfg/yolov3.cfg darknet53.conv.74
如果要使用多個GPU運行:
./darknet detector train cfg/coco.data
cfg/yolov3.cfg darknet53.conv.74 -gpus 0,1,2,3
如果要從檢查點停止并重新開始訓練:
./darknet detector train cfg/coco.data
cfg/yolov3.cfg backup/yolov3.backup -gpus 0,1,2,3
開放圖像數據集上的YOLOv3
wget
https://pjreddie.com/media/files/yolov3-openimages.weights
./darknet detector test cfg/openimages.data
cfg/yolov3-openimages.cfg
yolov3-openimages.weights
老YOLO怎么了?
如果您使用的是YOLO版本2,您仍然可以在這里找到網站:
https://pjreddie.com/darknet/yolov2/
引用
如果你在工作中使用YOLOv3,請引用我們的論文!
@article{yolov3,
title={YOLOv3: An Incremental Improvement},
author={Redmon, Joseph and Farhadi, Ali},
journal = {arXiv},
year={2018}
}
總結
以上是生活随笔為你收集整理的Yolo:实时目标检测实战(下)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Yolo:实时目标检测实战(上)
- 下一篇: 全景分割