当前位置: 代码迷 >> 综合 >> Tensorflow2.0 实现 YOLOv3(五):config.py
  详细解决方案

Tensorflow2.0 实现 YOLOv3(五):config.py

热度:45   发布时间:2023-10-28 14:11:30.0

文章目录

  • 文章说明
  • 代码说明

文章说明

本系列文章旨在对 Github 上 malin9402 提供的代码进行说明,在这篇文章中,我们会对 YOLOv3 项目中的 config.py 文件进行说明,这个文件中包含着所有的参数和需要加载的文件地址。

如果只是想运行 Github 上的代码,可以参考对 YOLOv3 代码的说明一文。

代码说明

对代码中各个参数进行说明。

from easydict import EasyDict as edict__C                           = edict()
# Consumers can get config by: from config import cfgcfg                           = __C# YOLO options
__C.YOLO                      = edict()# Set the class name
__C.YOLO.CLASSES              = "./data/classes/yymnist.names"  # 类别的索引,假如一共有10个类别,这个文件就是[0, 1,……, 9]
__C.YOLO.ANCHORS              = "./data/anchors/basline_anchors.txt"  # 先验框的宽度和高度,三个 feature map 上各有三个先验框,所以一共有九个先验框的宽度和高度
__C.YOLO.STRIDES              = [8, 16, 32]  # 每个 feature map 中的一个格子代表原始图像中的几个格子,即 STRIDES * feature map 尺寸 = 原始图像尺寸
__C.YOLO.ANCHOR_PER_SCALE     = 3  # 一个尺度(feature map)上有三个先验框
__C.YOLO.IOU_LOSS_THRESH      = 0.5  # IOU 阈值# Train options
__C.TRAIN                     = edict()__C.TRAIN.ANNOT_PATH          = "./data/dataset/yymnist_train.txt"  # 训练集中标签的加载地址
__C.TRAIN.BATCH_SIZE          = 4  # 每次用 4 张图片进行训练
__C.TRAIN.INPUT_SIZE          = [416]  # 训练集中每张输入图片的尺寸为 416 * 416
__C.TRAIN.DATA_AUG            = True  # 是否对输入的图片进行数据加强操作,比如水平翻转和随机剪裁等
__C.TRAIN.LR_INIT             = 1e-3  # 初始学习率
__C.TRAIN.LR_END              = 1e-6  # 训练结束时的学习率
__C.TRAIN.WARMUP_EPOCHS       = 2  # 学习率变化趋势改变时的训练次数
__C.TRAIN.EPOCHS              = 30  # 一共训练多少个 epoch# TEST options
__C.TEST                      = edict()__C.TEST.ANNOT_PATH           = "./data/dataset/yymnist_test.txt"  # 测试集中标签的加载地址
__C.TEST.BATCH_SIZE           = 2  # 每次用 2 张图片进行测试
__C.TEST.INPUT_SIZE           = 544  # 测试集中每张输入图片的尺寸为 416 * 416
__C.TEST.DATA_AUG             = False  # 是否对输入的图片进行数据加强操作,比如水平翻转和随机剪裁等
__C.TEST.DECTECTED_IMAGE_PATH = "./data/detection/"  # 将测试好的图片存在这个路径下
__C.TEST.SCORE_THRESHOLD      = 0.3  # 测试时的得分阈值
__C.TEST.IOU_THRESHOLD        = 0.45  # 测试时的 IOU 阈值

在 ./data/dataset/yymnist_train.txt 和 ./data/dataset/yymnist_test.txt 中保存的是图片地址、图片上真实框的位置以及真实框中的类别,比如:

E:\Pycharm\code\Jupyter\tensorflow2.0\My_net\YOLO_v3\data\dataset\train\000029.jpg 124,89,236,201,7 255,127,367,239,8

表示 000029.jpg 这张图片上一共有 2 个真实框,它们的坐标信息分别为 (xmin, ymin, xmax, ymax) = (124, 89, 236, 201) 和 (xmin, ymin, xmax, ymax) = (255, 127, 367, 239),它们所框住的类别分别是第 8 类和第 9 类(因为是从 0 开始算起的)。

  相关解决方案