How to train (to detect your custom objects):
- 下载 pre-trained weights-file (162 MB): yolov4.conv.137 (Google drive mirror yolov4.conv.137 )
- Create file
yolo-obj.cfgwith the same content as inyolov4-custom.cfg - 修改
batch=64subdivisions=16 修改max_batches(max_batches = classes*2000,但不小于training images数量且不小于6000)例如,如果您训练3个class,max_batches=6000)- change line steps to 80% and 90% of max_batches, f.e.
steps=4800,5400 - change [
filters=255] to filters=(classes + 5)x3 in the 3[convolutional]before each[yolo]layer, keep in mind that it only has to be the last[convolutional]before each of the[yolo]layers. - .txt file for each .jpg
<object-class> <x_center> <y_center> <width> <height>
Where:
<object-class>- integer object number from0to(classes-1) 类别0 to class-1<x_center> <y_center> <width> <height>- float values relative to width and height of image, it can be equal from(0.0 to 1.0]- for example:
<x> = <absolute_x> / <image_width>or<height> = <absolute_height> / <image_height> - atention:
<x_center> <y_center>- are center of rectangle (are not top-left corner)
For example for img1.jpg you will be created img1.txt containing:
1 0.716797 0.395833 0.216406 0.147222
0 0.687109 0.379167 0.255469 0.158333
1 0.420312 0.395833 0.140625 0.166667
For training with mAP (mean average precisions) calculation for each 4 Epochs (set valid=valid.txt or train.txt in obj.data file) and run: darknet.exe detector train data/obj.data yolo-obj.cfg yolov4.conv.137 -map
Download pre-trained weights for the convolutional layers and put to the directory build\darknet\x64
- for
yolov4.cfg,yolov4-custom.cfg(162 MB): yolov4.conv.137 (Google drive mirror yolov4.conv.137 ) - for
yolov4-tiny.cfg,yolov4-tiny-3l.cfg,yolov4-tiny-custom.cfg(19 MB): yolov4-tiny.conv.29 - for
csresnext50-panet-spp.cfg(133 MB): csresnext50-panet-spp.conv.112 - for
yolov3.cfg, yolov3-spp.cfg(154 MB): darknet53.conv.74 - for
yolov3-tiny-prn.cfg , yolov3-tiny.cfg(6 MB): yolov3-tiny.conv.11 - for
enet-coco.cfg (EfficientNetB0-Yolov3)(14 MB): enetb0-coco.conv.132
For training Yolo based on other models (DenseNet201-Yolo or ResNet50-Yolo), you can download and get pre-trained weights as showed in this file: https://github.com/AlexeyAB/darknet/blob/master/build/darknet/x64/partial.cmd If you made you custom model that isn't based on other models, then you can train it without pre-trained weights, then will be used random initial weights.
本文详细介绍了如何使用YOLOv4进行自定义对象检测,包括下载预训练权重文件、创建配置文件、调整参数如batch大小、max_batches等,以及如何准备训练数据集。还提供了不同模型的预训练权重下载链接。
4288

被折叠的 条评论
为什么被折叠?



