Pytorch-YOLOV4-火焰目标检测

首先感谢大佬提供的代码bubbliiiing

0.效果展示

在这里插入图片描述 在这里插入图片描述

1.所需环境

torch==1.2.0

2.注意事项

代码中的yolo4_weights.pth是基于608x608的图片训练的,代码中的默认anchors是基于608x608的图片的。
注意不要使用中文标签,文件夹中不要有空格!
在训练前需要务必在model_data下新建一个txt文档,文档中输入需要分的类,在train.py中将classes_path指向该文件

3.小技巧的设置

train.py文件下:
1、mosaic参数可用于控制是否实现Mosaic数据增强。(这种方式并不是所有数据集都适用,可根据实际情况自行调整)
2、Cosine_scheduler可用于控制是否使用学习率余弦退火衰减。
3、label_smoothing可用于控制是否Label Smoothing平滑。

4.文件下载

1.训练所需的yolo4_weights.pth可在百度网盘中下载。
链接: 这里 提取码: 11su
yolo4_weights.pth是coco数据集的权重。
yolo4_voc_weights.pth是voc数据集的权重。
2.数据集为自己爬取到的3300张包含火焰的图片和3300张不含火焰的图片以及极市平台的样例集(100张有火焰的图片),链接有两种,有积分的支持一下(CSDN),没有的也不强求(百度盘)。
CSDN
百度盘 提取码:490b
我自己标注的图片质量不好,就不放出来丢人了,大家有需要自行下载并标注,标注推荐使用labelImg,反正我用起来挺方便的。

5.训练步骤

1、本文使用VOC格式进行训练。
2、训练前将标签文件放在VOCdevkit文件夹下的VOC2007文件夹下的Annotation中。
3、训练前将图片文件放在VOCdevkit文件夹下的VOC2007文件夹下的JPEGImages中。
4、在训练前利用voc2yolo4.py文件生成对应的txt。
5、再运行根目录下的voc_annotation.py,运行前需要将classes改成你自己的classes。注意不要使用中文标签,文件夹中不要有空格!

classes = ["fire"]

6、此时会生成对应的2007_train.txt,每一行对应其图片位置及其真实框的位置
7、在训练前需要务必在model_data下新建一个txt文档,文档中输入需要分的类,在train.py中将classes_path指向该文件,示例如下:

classes_path = 'model_data/customdata_classes.txt'    

model_data/new_classes.txt文件内容为:

fire

8、运行train.py即可开始训练。

6.预测步骤

使用自己训练的权重

a、按照训练步骤训练。
b、在yolo.py文件里面,在如下部分修改model_path和classes_path使其对应训练好的文件;model_path对应logs文件夹下面的权值文件,classes_path是model_path对应分的类

_defaults = {
    "model_path": 'model_data/Epoch50-Total_Loss1.5336-Val_Loss5.0895.pth.pth',
    "anchors_path": 'model_data/yolo_anchors.txt',
    "classes_path": 'model_data/customdata_classes.txt',
    "model_image_size" : (608, 608, 3),
    "confidence": 0.5,
    "cuda": True
}

c、运行predict.py,输入

img/fire.jpg

可完成预测。

  • 16
    点赞
  • 71
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 49
    评论
pytorch-yolov4-master是一个基于PyTorch深度学习框架实现的YOLOv4目标检测算法的代码库。YOLOv4是一种先进的目标检测算法,具有快速、高效和准确的特点。 这个代码库提供了训练和测试YOLOv4模型的代码和工具。它包含了模型的网络架构定义、数据预处理、损失函数、模型训练和推理等功能。使用这个代码库,我们可以方便地构建和训练自己的目标检测模型,也可以使用预训练好的模型进行目标检测任务。 在使用这个代码库时,我们需要准备训练数据集,包括标注好的目标框和对应的类别标签。然后,可以使用提供的脚本进行数据预处理和数据增强,例如对图片进行裁剪、缩放、翻转等操作,以增加模型的鲁棒性。接下来,可以使用提供的训练脚本进行模型的训练,通过迭代优化模型参数,使模型在目标检测任务上达到更好的效果。 训练完成后,我们可以使用提供的推理脚本对测试集或新的图片进行目标检测。它会将检测到的目标框和对应的类别标签输出,以及它们的置信度分数。我们可以根据需要对输出进行后处理,例如进行非极大值抑制(NMS)来去除冗余的框。 总之,pytorch-yolov4-master是一个强大的目标检测算法的代码库,提供了丰富的功能和工具,便于我们进行YOLOv4模型的构建、训练和推理。它为目标检测任务的开发和研究提供了便捷的工具和基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 49
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

石头儿啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值