1 Star 0 Fork 0

cyning911/yolov8-pytorch

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
Unlicense

YOLOV8:You Only Look Once目标检测代码说明


代码目录

  1. nets文件夹放的是YOLOV8模型的网络搭建代码。 其中,backbone.py是主干网络;yolo.py用于组装完整的yoloV8网络模型; attention.py是常见的机制注意力机制,可以通过即插即用的方式插入到网络的不同输出层; EAM_attention_module.py是最终采用的EAM注意力代码,添加在了主干网络中, 将YOLOV8原本的C2F结构改进成了C2F_EMA结构;yolo_training.py定义了模型训练所需要的损失函数、 学习率下降策略、BBox的计算方式等一系列功能函数。
  2. utils文件夹存放的是训练和评估所需要的一系列工具方法的代码。 callbacks.py定义了训练过程和验证过程的记录方法。 dataloader.py定义了训练数据读取的方法。 utils.py定义了图像装换、类别获取等一些工具方法。 utils_bbox.py定义了锚框值转换、非极大值抑制等方法。 utils.fit.py定义了对一次训练的过程的组装函数。 utils_map.py定义了通过热力图评估的方法。
  3. model_data文件夹存放了训练所需要的预训练模型及最终用于推理的onnx模型等。
  4. VOCdevkit文件夹存放了原始数据集。
  5. voc_annotation.py用来在准备阶段将VOC数据集转成成yolo格式数据集。并切分训练集、验证集。
  6. summary.py用来查看整个网络结构及其参数量。
  7. train.py是用来执行训练的代码。
  8. yolo.py定义了在模型训练好之后,进行预测所需要的支持函数,包含了predict.py能够执行的若干前置方法。
  9. predict.py是用来进行模型转换和测试的接口,可以指定不同的参数来执行。

执行过程说明

  1. 执行voc_annotation.py准备数据,可以根据当前数据集生成的情况,选择1/2/3三种模式。
  2. 执行train.py进行训练,需要结合训练过程的实际情况,指定不同的参数进行模型的权重文件训练。
  3. 修改yolo.py中相关参数,如model_path、phi、confidence、nms_iou等,一般情况下只需要修改model_path和phi, 并确保其对应的yolo缩放系数一致即可。
  4. 执行predict.py。在模型为转换成onnx之前,需要先指定--mode export_onnx,后续可根据需要预测的方法指定参数执行, 单张图片指定参数为--mode predict,多张图片可直接指定文件夹--mode dir_predict,摄像头测试指定参数为--mode video等。 具体参数介绍已在代码中进行注释。
  5. 执行csvResultsGenetate.py可以生成比赛所需要提交的预测表,前提是需要先将模型转换成onnx。

模型镜像下载地址为:

This is free and unencumbered software released into the public domain. Anyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means. In jurisdictions that recognize copyright laws, the author or authors of this software dedicate any and all copyright interest in the software to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this software under copyright law. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. For more information, please refer to <http://unlicense.org>

简介

2023年浙江能源数据创新应用大赛 展开 收起
README
Unlicense
取消

发行版

暂无发行版

贡献者

全部

近期动态

不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/cyning911/yolov8-pytorch-match.git
git@gitee.com:cyning911/yolov8-pytorch-match.git
cyning911
yolov8-pytorch-match
yolov8-pytorch
master

搜索帮助