YOLO11旋转目标识别(OBB)手把手教程: 如何训练自己的数据集(QR码为案列)
YOLO11 OBB实现自有数据集缺陷旋转目标检测,从1)数据标记;2)数据json格式转换成适合yolo的txt格式;3)如何训练模型;
💡💡💡本文内容:YOLO11 OBB实现自有数据集缺陷旋转目标检测,从1)数据标记;2)数据json格式转换成适合yolo的txt格式;3)如何训练模型;
《YOLOv11魔术师专栏》将从以下各个方向进行创新:
【原创自研模块】【多组合点优化】【注意力机制】【卷积魔改】【block&多尺度融合结合】【损失&IOU优化】【上下采样优化 】【小目标性能提升】【前沿论文分享】【训练实战篇】
【pose关键点检测】【yolo11-seg分割】
定期向订阅者提供源码工程,配合博客使用。
订阅者可以申请发票,便于报销
💡💡💡为本专栏订阅者提供创新点改进代码,改进网络结构图,方便paper写作!!!
💡💡💡适用场景:红外、小目标检测、工业缺陷检测、医学影像、遥感目标检测、低对比度场景
💡💡💡适用任务:所有改进点适用【检测】、【分割】、【pose】、【分类】等
💡💡💡全网独家首发创新,【自研多个自研模块】,【多创新点组合适合paper 】!!!
☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️ ☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️
包含注意力机制魔改、卷积魔改、检测头创新、损失&IOU优化、block优化&多层特征融合、 轻量级网络设计、24年最新顶会改进思路、原创自研paper级创新等
🚀🚀🚀 本项目持续更新 | 更新完结保底≥80+ ,冲刺100+ 🚀🚀🚀
🍉🍉🍉 联系WX: AI_CV_0624 欢迎交流!🍉🍉🍉
⭐⭐⭐专栏涨价趋势 159 ->199->259->299,越早订阅越划算⭐⭐⭐
💡💡💡 2024年计算机视觉顶会创新点适用于Yolov5、Yolov7、Yolov8、Yolov9等各个Yolo系列,专栏文章提供每一步步骤和源码,轻松带你上手魔改网络 !!!
💡💡💡重点:通过本专栏的阅读,后续你也可以设计魔改网络,在网络不同位置(Backbone、head、detect、loss等)进行魔改,实现创新!!!
☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️ ☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️☁️
1.YOLO11介绍
Ultralytics YOLO11是一款尖端的、最先进的模型,它在之前YOLO版本成功的基础上进行了构建,并引入了新功能和改进,以进一步提升性能和灵活性。YOLO11设计快速、准确且易于使用,使其成为各种物体检测和跟踪、实例分割、图像分类以及姿态估计任务的绝佳选择。
OBB官方在 (DOTAv1)数据集上做了更多测试:
2. OBB旋转目标介绍
YOLO OBB格式通过四个角点指定边界框,坐标在0到1之间归一化。它遵循以下格式:
class_index, x1, y1, x2, y2, x3, y3, x4, y4
在内部,YOLO以xywhr格式处理损失和输出,xywhr格式表示边界框的中心点(xy)、宽度、高度和旋转。
2.1 labelme下载
# 安装labelme
pip install labelme
2.2使用labelme下
直接在python环境下运行
labelme
2.3 labelme介绍
1)Create Polygons生成polygon框;
3.QR码 旋转数据集介绍
训练集、验证集、测试集分别为:1894,100,101张
3.1 obb生成适合yolo格式的txt
obb_json_to_txt
YOLO11旋转目标识别(OBB)手把手教程: 数据集标注 | 数据格式转换 | 如何训练、测试-CSDN博客
4.OBB旋转目标训练
下载最新版即可,已支持OBB
GitHub - ultralytics/ultralytics: NEW - YOLOv8 🚀 in PyTorch > ONNX > OpenVINO > CoreML > TFLite
4.1 qrcode-obb.yaml
path: D:/ultralytics-11/data/qrcode-obb/
train: train/images
val: valid/images
test: test/images
names:
0: qr_code
4.2 如何训练
import warnings
warnings.filterwarnings('ignore')
from ultralytics import YOLO
if __name__ == '__main__':
model = YOLO('ultralytics/cfg/models/11/yolo11-obb.yaml')
#model.load('yolov11.pt') # loading pretrain weights
model.train(data='data/qrcode-obb.yaml',
cache=False,
imgsz=640,
epochs=200,
batch=16,
close_mosaic=10,
device='0',
optimizer='SGD', # using SGD
project='runs/train',
name='exp',
)
4.3训练结果可视化
YOLO11-obb summary (fused): 300 layers, 2,897,630 parameters, 0 gradients, 6.6 GFLOPs
Class Images Instances Box(P R mAP50 mAP50-95): 100%|██████████| 7/7 [00:04<00:00, 1.53it/s]
all 99 128 0.953 0.955 0.966 0.908
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)