YOLOv11| 一文搞懂yolo得最新作品YOLOv11,并训练自己的数据集

官方代码:GitHub - ultralytics/ultralytics: Ultralytics YOLO11 🚀

官方文档:https://docs.ultralytics.com/

YOLOv11是ultralytics公司的最新作品,此公司还出了yolov5,yolov8。不得不说,ultralytics公司出品,必是精品。相比于YOLOv8,在YOLOv11中,将c2f变为C3K2,在SPPF后面添加了C2PSA,检测头内部替换了两个DWConv,模型的宽度和深度进行了大幅度的调整。

YOLOv8与YOLOv11的比较

左图为YOLOv8的yaml文件,右图为YOLOv11的yaml文件。

网络结构解析

1.C3K2机制

提出了C3K2机制,其中C3K2有参数c3k,在网络的部分位置设置为False。

叫C3K2的原因个人认为是C3K调用时参数N设置为2。

2.C2PSA

C2机制内部嵌入了一个多头注意力机制,仔细观察把Attention哪里去掉则C2PSA机制就变为了C2所以我上面说C2PSA就是C2里面嵌入了一个PSA机制。

3.分类检测头增加了两个DWConv

在分类检测头中YOLOv11插入了两个DWConv这样的做法可以大幅度减少参数量和计算量。

代码下载,环境配置

下载代码

点击:   GitHub - ultralytics/ultralytics: Ultralytics YOLO11 🚀icon-default.png?t=O83Ahttps://github.com/ultralytics/ultralytics

下载后解压,使用Pycharm打开

配置环境

1.创建虚拟环境

conda create -n yolov11 python=3.8

2.激活虚拟环境

conda activate yolov11

3.下载pytorch,根据自己的硬件,下载pytorch

pip install torch==2.3.0 torchvision==0.18.0 torchaudio==2.3.0 --index-url https://download.pytorch.org/whl/cu121

4.在项目路径下,安装ultralytics

pip install ultralytics

模型训练

方式1

通过命令直接进行训练在其中指定参数,但是这样的方式,我们每个参数都要在其中打出来。

yolo task=detect mode=train model=yolov11n.pt data=data.yaml batch=16 epochs=100 imgsz=640 workers=0 device=0

方式2 

通过指定cfg直接进行训练

yolo cfg=ultralytics/cfg/default.yaml

方式3

创建py文件来进行训练.

import warnings
warnings.filterwarnings('ignore')
from ultralytics import YOLO
 
if __name__ == '__main__':
    model = YOLO('yolo11.yaml')
    
  
    model.train(data=r"data.yaml",
                # 如果大家任务是其它的'ultralytics/cfg/default.yaml'找到这里修改task可以改成detect, segment, classify, pose
                cache=False,
                imgsz=640,
                epochs=100,
                single_cls=False,  # 是否是单类别检测
                batch=4,
                close_mosaic=0,
                workers=0,
                device='0',
                optimizer='SGD',
         
                amp=True,
                project='runs/train',
                name='exp',
                )
 

无论哪一种方法,只要输出网络结构就表示成功了。

训练验证

yolo task=detect mode=val model=best.pt data=data.yaml device=0

模型推理

yolo task=detect mode=predict model=best.pt source=images device=0

推理时也可以创建py文件进行推理。

模型导出

在部署模型时,需要不同的格式

yolo task=detect mode=export model=best.pt format=onnx  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

SQingL

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

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

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

打赏作者

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

抵扣说明:

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

余额充值