首页 > 其他分享 >YOLO实现火焰检测

YOLO实现火焰检测

时间:2025-01-11 17:34:29浏览次数:3  
标签:yolov3 -- 检测 YOLO custom 火焰 weights data config

完整源码项目包获取→点击文章末尾名片!

Yolov3的Pytorch版本实现火焰检测,其具体效果如下:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Requirements

  • 环境:windows10
  • 编程语言:python
  • 编程工具:pycharm
  • 所需的包:requirements.txt
    Train
    1.安装包
    本次所需的包在requirements.txt中,通过 pip install -r requirements.txt 即可。
    2.所需权重文件
    $ cd weights/
    $ bash download_weights.sh
    进入weights目录下,运行sh文件,即可下载本次所需权重,即darknet53.conv.74,yolov3.weights,yolov3-tiny.weights
    3.修改配置文件信息
    $ cd config/
    $ bash create_custom_model.sh <num_classes>
    进入config目录。执行bash create_custom_model.sh <num_classes>,其中num_classes为类别参数,根据你的需要修改,本次设置为1
    执行上述完毕之后,修改custom.data文件,修改其中的classes的参数以及配置文件的路径即可。
    4.配置yolov3的数据格式
    $ python voc2yolov3.py/
    $ python voc_anotation.py
    首先你需要准备好voc格式的数据,之后将voc格式的数据转为本次所需的数据格式。
    数据格式内容为:
  • 每一张图像对应一个txt标注信息;
  • txt中第一列为类别信息
  • txt中剩下四列为标准化后的标注信息
    • <1>*w = (xmax-xmin)/2+xmin
    • <2>*h = (ymax-ymin)/2+ymin
    • <3> = (xmax-xmin)/w
    • <4> = (ymax-ymin)/h
      5.运行
      训练
      python train.py --model_def config/yolov3-custom.cfg --data_config config/custom.data --pretrained_weights weights/darknet53.conv.74

从中断的地方开始训练
python train.py --model_def config/yolov3-custom.cfg --data_config config/custom.data --pretrained_weights checkpoints/yolov3_ckpt_99.pth --epoch
若出现警告UserWarning: indexing with dtype torch.uint8 is now deprecated, please use a dtype torch.bool instead. 则修改model.py的代码,在大约192行左右添加一下两句:
obj_mask=obj_mask.bool() # convert int8 to bool
noobj_mask=noobj_mask.bool() #convert int8 to bool
训练日志如下:
---- [Epoch 7/100, Batch 7300/14658] ----
±-----------±-------------±-------------±-------------+
| Metrics | YOLO Layer 0 | YOLO Layer 1 | YOLO Layer 2 |
±-----------±-------------±-------------±-------------+
| grid_size | 16 | 32 | 64 |
| loss | 1.554926 | 1.446884 | 1.427585 |
| x | 0.028157 | 0.044483 | 0.051159 |
| y | 0.040524 | 0.035687 | 0.046307 |
| w | 0.078980 | 0.066310 | 0.027984 |
| h | 0.133414 | 0.094540 | 0.037121 |
| conf | 1.234448 | 1.165665 | 1.223495 |
| cls | 0.039402 | 0.040198 | 0.041520 |
| cls_acc | 44.44% | 43.59% | 32.50% |
| recall50 | 0.361111 | 0.384615 | 0.300000 |
| recall75 | 0.222222 | 0.282051 | 0.300000 |
| precision | 0.520000 | 0.300000 | 0.070175 |
| conf_obj | 0.599058 | 0.622685 | 0.651472 |
| conf_noobj | 0.003778 | 0.004039 | 0.004044 |
±-----------±-------------±-------------±-------------+
Total Loss 4.429395
---- ETA 0:35:48.821929
6.Tensorboard可视化

  • Go to http://localhost:6006/
    $ tensorboard --logdir=‘logs’ --port=6006
    7.测试
    python detect.py --image_folder data/imgs/ --weights_path checkpoints/yolov3_ckpt_99.pth --model_def config/yolov3-custom.cfg --class_path data/custom/classes.names

标签:yolov3,--,检测,YOLO,custom,火焰,weights,data,config
From: https://blog.csdn.net/2401_87275147/article/details/145079885

相关文章

  • RepPoints: Point Set Representation for Object Detection—用于目标检测的点集表示
    用于目标检测的点集表示-RepDet全网最全InternationalConferenceonComputerVision(ICCV2019)对这种检测模型生成的点进行基于点的匹配过程完成跟踪但是可否保证随着人的运动或者形状的改变每次选取的关键点是否一致呢?文章目录用于目标检测的点集表示-RepDet全......
  • 微通道液冷散热技术流通性、密封性等试验检测方法
     ......
  • 计算机视觉算法实战——YOLOv7在姿态识别上的应用
      ✨个人主页欢迎您的访问 ✨期待您的三连 ✨ ✨个人主页欢迎您的访问 ✨期待您的三连✨  ✨个人主页欢迎您的访问 ✨期待您的三连✨  ​​​​​​​​​​​​​​​​​​​​​​​姿态识别在计算机视觉领域中扮演着重要角色,广泛应用于人机交互、运动分......
  • 【大厂面试AI算法题中的知识点】方向涉及:ML/DL/CV/NLP/大数据...本篇介绍自动驾驶检测
    【大厂面试AI算法题中的知识点】方向涉及:ML/DL/CV/NLP/大数据…本篇介绍自动驾驶检测模型如何针对cornercase优化?【大厂面试AI算法题中的知识点】方向涉及:ML/DL/CV/NLP/大数据…本篇介绍自动驾驶检测模型如何针对cornercase优化?文章目录【大厂面试AI算法题中的知......
  • npm依赖检测有哪些方法?
    npm依赖检测在前端开发中是一个重要的环节,它有助于确保项目的稳定性和安全性。以下是一些常用的npm依赖检测方法:使用npmoutdated检查过时的依赖:npmoutdated命令会列出项目中所有可以更新的依赖包,这有助于开发者及时了解到哪些依赖包有新版本可用,从而进行更新以获取最新的功......
  • 使用Javascript写一个方法检测页面是否为空间状态
    在前端开发中,如果你想检测页面是否为“空白”状态,通常意味着你想检查页面是否缺乏实质内容,或者是否只包含默认的占位内容。由于“空白”状态的定义可能因项目而异,以下是一个基本的JavaScript方法,用于检测HTML页面是否可能被视为“空白”:functionisPageBlank(){//获取页面......
  • YOLOv11改进,YOLOv11添加HAttention注意机制用于图像修复的混合注意力转换器,CVPR2023,超
    摘要基于Transformer的方法在低层视觉任务中表现出色,例如图像超分辨率。然而,作者通过归因分析发现,这些网络只能利用有限的空间范围的输入信息。这意味着现有网络尚未充分发挥Transformer的潜力。为了激活更多的输入像素以获得更好的重建效果,作者提出了一种新型的混合注......
  • 基于YOLOv8深度学习的物业管理清扫作业监测与语音提示系统
    随着智能化管理和人工智能技术的快速发展,传统的物业管理逐渐向自动化和智能化方向发展。本论文提出了一种基于YOLOv8深度学习模型的物业管理清扫作业监测与语音报警系统,旨在实现对物业清扫作业的自动化监控,提升物业管理效率,确保清扫任务的及时性与质量。系统主要包括图像采集、......
  • 汽车制动检测台机械结构设计
    目录第1章绪论11.1研究该课题的目的和意义11.1.1研究该课题目的11.1.2研究该课题意义11.2制动检测台的国内外的发展方向及研究现状21.2.1平板式制动检测台31.2.2反力滚筒式制动检测台41.2.3发展方向41.3论文主要研究内容及技术途径51.3.1课......
  • 硬盘检测工具|数据恢复
    硬盘检测工具设置#在settings中开启如下配置,而后关闭白灰色25ms以下,表示优秀浅灰色25ms-100ms之间,表示良好深灰块100ms-250ms之间,110ms,125ms基本上都不用理(延时高的话复扫)绿块250ms-1000ms之间,建议复扫橙色表示可能有坏道,复扫如果还存在最好退货红色表示有坏......