YOLOAir: Make the improvement of the YOLO model faster, more convenient and more complete
简体中文 | English
YOLOAir算法库 是一个基于 PyTorch 的一系列 YOLO 检测算法组合工具箱。用来组合不同模块构建不同网络。
内置YOLOv5、YOLOv7、YOLOX、YOLOR、Transformer、Scaled_YOLOv4、YOLOv3、YOLOv4、YOLO-Facev2、TPH-YOLOv5、YOLOv5Lite、PicoDet等模型网络结构(持续更新中
模块组件化:帮助用户自定义快速组合Backbone、Neck、Head,使得网络模型多样化,助力科研改进检测算法、模型改进,网络排列组合
统一模型代码框架、统一应用方式、统一调参、统一改进、易于模块组合、构建更强大的网络模型。
██╗ ██╗ ██████╗ ██╗ ██████╗ █████╗ ██╗ ██████╗
╚██╗ ██╔╝██╔═══██╗██║ ██╔═══██╗ ██╔══██╗ ██║ ██╔══██╗
╚████╔╝ ██║ ██║██║ ██║ ██║ ███████║ ██║ ██████╔╝
╚██╔╝ ██║ ██║██║ ██║ ██║ ██╔══██║ ██║ ██╔══██╗
██║ ╚██████╔╝███████╗╚██████╔╝ ██║ ██║ ██║ ██║ ██║
╚═╝ ╚═════╝ ╚══════╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝ ╚═╝
基于 YOLOv5 代码框架,并同步适配 稳定的YOLOv5_v6.1更新, 同步v6.1部署生态。使用这个项目之前, 您可以先了解YOLOv5库。
支持
项目地址: https://github.com/iscyy/yoloair
部分改进说明演示: 芒果汁没有芒果
🚀
主要特性YOLOAir 算法库汇总了多种主流YOLO系列检测模型,一套代码集成多种模型:
- 内置集成 YOLOv5 模型网络结构、YOLOv7 模型网络结构、 YOLOR 模型网络结构、YOLOX 模型网络结构、Scaled_YOLOv4 模型网络结构、YOLOv4 模型网络结构、YOLOv3 模型网络结构、YOLO-FaceV2模型网络结构、TPH-YOLOv5模型网络结构、YOLOv5-Lite模型网络结构、PicoDet模型网络结构等持续更新中...
- 以上多种检测算法使用统一模型代码框架,集成在 YOLOAir 库中,统一任务形式、统一应用方式。
🌟 便于科研者用于论文算法模型改进,模型对比,实现网络组合多样化。🌟 工程算法部署落地更便捷,包含轻量化模型和精度更高的模型,根据场景合理选择,在精度和速度俩个方面取得平衡。同时该库支持解耦不同的结构和模块组件,让模块组件化,通过组合不同的模块组件,用户可以根据不同数据集或不同业务场景自行定制化构建不同检测模型。
-
CSPDarkNet系列
、RepBlock系列
、ResNet系列
、RegNet 系列
、ShuffleNet系列
、Ghost系列
、MobileNet系列
、EfficientNet系列
、ConvNext系列
、RepLKNet系列
、自注意力Transformer系列
、CNN和Transformer结合
持续更新中🎈
- neck包含
FPN
、PANet
、BiFPN
等主流结构。 持续更新中🎈
- YOLOv4、YOLOv5 Head检测头、
- YOLOR 隐式学习Head检测头、
- YOLOX的解耦合检测头Decoupled Head、DetectX Head
- 自适应空间特征融合 检测头ASFF Head、
- YOLOv7检测头IAuxDetect Head, IDetect Head等;
- 在网络任何部分即插即用式使用注意力机制 例如 Self Attention、Contextual Transformer、Bottleneck Transformer、S2-MLP Attention、SK Attention、CBAM Attention、SE Attention、Coordinate attention、NAM Attention、GAM attention、ECA Attention、Shuffle Attention、DANet Attention 等多种主流注意力机制
- CIoU、DIoU、GIoU、EIoU、SIoU、alpha IOU等损失函数;
- SPP、SPPF、ASPP、RFB、SPPCSPC等;
- NMS、Merge-NMS、DIoU-NMS、Soft-NMS、CIoU_NMS、DIoU_NMS、GIoU_NMS、EIoU_NMS、SIoU_NMS、Soft-SIoUNMS、Soft-CIoUNMS、Soft-DIoUNMS、Soft-EIoUNMS、Soft-GIoUNMS等;
- Mosaic、Copy paste、Random affine(Rotation, Scale, Translation and Shear)、MixUp、Augment HSV(Hue, Saturation, Value、Random horizontal flip
- ComputeLoss、ComputeNWDLoss、ComputeLoss(X)、ComputeLoss(v6)、ComputeLossAuxOTA(v7)、ComputeLossOTA(v7)等
-
Conv, GhostConv, Bottleneck, GhostBottleneck, SPP, SPPF, DWConv, MixConv2d, Focus, CrossConv, BottleneckCSP, C3, C3TR, C3SPP, C3Ghost等 详细代码 ./models/common.py文件 内
以上组件模块使用统一模型代码框架、统一任务形式、统一应用方式,模块组件化
✨
内置网络模型配置支持技术交流
- 最新科研论文 推荐FightingCV公众号,分享最新论文解析和科技前沿动态!
- 欢迎加入FightingCV微信交流群(关注并回复小助手“加群”) 公众号每天都会进行论文、算法和代码的干货分享哦~
🍉
使用About the code. Follow the design principle of YOLOv5.
The original version was created based on YOLOv5(v6.1)
安装
在Python>=3.7.0 的环境中克隆版本仓并安装 requirements.txt,包括PyTorch>=1.7。
$ git clone https://github.com/iscyy/yoloair.git # 克隆
$ cd YOLOAir
$ pip install -r requirements.txt # 安装
训练
$ python train.py --data coco128.yaml --cfg configs/yolov5/yolov5s.yaml #默认为yolo
推理
detect.py
在各种数据源上运行推理, 并将检测结果保存到 runs/detect
目录。
$ python detect.py --source 0 # 网络摄像头
img.jpg # 图像
vid.mp4 # 视频
path/ # 文件夹
path/*.jpg # glob
融合
如果您使用不同模型来推理数据集,则可以使用 wbf.py文件 通过加权框融合来集成结果。 您只需要在 wbf.py文件 中设置 img 路径和 txt 路径。
$ python wbf.py
Benchmark
Updating...
YOLO网络模型具体改进方式教程及原理参考
更多模块详细解释教程持续更新中...
✨
YOLOv5官方教程与YOLOv5框架同步
-
训练自定义数据
🚀 推荐 -
获得最佳训练效果的技巧
☘ ️ 推荐 -
使用 Weights & Biases 记录实验
🌟 新 -
Roboflow:数据集、标签和主动学习
🌟 新 - 多GPU训练
-
PyTorch Hub
⭐ 新 -
TFLite, ONNX, CoreML, TensorRT 导出
🚀 - 测试时数据增强 (TTA)
- 模型集成
- 模型剪枝/稀疏性
- 超参数进化
-
带有冻结层的迁移学习
⭐ 新 -
架构概要
⭐ 新
✨
未来增强后续会持续建设和完善 YOLOAir 生态
完善集成更多 YOLO 系列模型,持续结合不同模块,构建更多不同网络模型
横向拓展和引入关联技术,如半监督学习等等
跟进:YOLO-mask & YOLO-pose
Statement
Expand
-
The content of this site is only for sharing notes. If some content is infringing, please sending email.
-
If you have any question, please discuss with me by sending email.
Acknowledgements
Expand
https://github.com/ultralytics/yolov5
https://github.com/AlexeyAB/darknet
https://github.com/ultralytics/yolov3
https://github.com/WongKinYiu/PyTorch_YOLOv4
https://github.com/WongKinYiu/ScaledYOLOv4
https://github.com/meituan/YOLOv6
https://github.com/WongKinYiu/yolov7
https://github.com/WongKinYiu/yolor
https://github.com/xmu-xiaoma666/External-Attention-pytorch
https://gitee.com/SearchSource/yolov5_yolox
https://github.com/Krasjet-Yu/YOLO-FaceV2
https://github.com/positive666/yolov5_research/
https://github.com/ppogg/YOLOv5-Lite
https://github.com/Gumpest/YOLOv5-Multibackbone-Compression
https://github.com/cv516Buaa/tph-yolov5
Paper:https://arxiv.org/abs/2208.02019
项目简介
源项目地址