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

您应该将 替换为放置voc数据的目录。

下载预训练卷积权重

对于训练,我们使用在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}

}

你可能感兴趣的:(COCO,深度学习,目标检测)