YOLOv13保姆级教程(个人踩坑无数,Win10运行)_yolo13
YOLOv13保姆级教程(个人踩坑无数,Win10运行)
- 一、总述
 - 
- 
- HyperACE:基于超图的自适应关联增强
 - FullPAD:全流程聚合-分布范式
 - 轻量级卷积替换
 - 博客作者个人思考
 
 
 - 
 - 二、YOLOv13代码下载
 - 
- 权重文件放到【yolov13-main】文件夹内
 
 - 三、环境配置
 - 
- ① 创建虚拟环境
 - ② 在Anaconda中搭建的环境
 
 - 四、制作数据集
 - 五、开始训练
 
一、总述
这一篇则详细讲解如何配置YOLOv13,在本地电脑或者服务器都可,然后利用自己的数据集进行训练、推理、检测等。

YOLOv13——具有前沿性能与效率的下一代实时检测器。YOLOv13系列包含四个版本:Nano、Small、Large和X-Large,其技术核心如下:
HyperACE:基于超图的自适应关联增强
- 将多尺度特征图中的像素视为超图顶点。
 - 采用可学习的超边构建模块,自适应探索顶点间的高阶关联。
 - 利用线性复杂度的消息传递模块,在高阶关联的引导下有效聚合多尺度特征,实现对复杂场景的高效视觉感知。
 
FullPAD:全流程聚合-分布范式
- 借助HyperACE聚合主干网络的多尺度特征,并在超图空间中提取高阶关联。
 - FullPAD范式通过三条独立通道,将这些关联增强后的特征分别传输至主干与颈部的连接层、颈部内部层,以及颈部与头部的连接层,实现全流程的细粒度信息流与表征协同。
 - 该范式显著改善了梯度传播,提升了检测性能。
 
轻量级卷积替换
- 采用基于深度可分离卷积(DSConv、DS-Bottleneck、DS-C3k、DS-C3k2)构建的模块替换大核卷积,在保留感受野的同时大幅减少参数与计算量。
 - 实现了推理速度的提升,且不牺牲精度。
 
博客作者个人思考
- 目前一定有很多朋友属于刚入门目标检测,应导师或者公司领导的要求采用YOLO算法进行目标检测,但是在做实验的过程中会突然发现有各种各样的YOLO版本不断的出现(我是2023年接触的YOLO,那个时候是YOLOv7到现在已经到YOLOv13,平均每年3个版本的迭代)。这从某种意义上来说,证明了YOLO的落地性以及可上手性。
 - 但是对于很多硕士研究生而言并不友好,可能自己在搞YOLOv11的过程中,YOLOv13已经出现了,从而导致心态受损。但是,无需惊慌。从算法的底层而言,每一张图片实质上是一个三维数组(三原色,每一层是一个二维数组) ,那我们的数据集实质上就是被按比例划分好的三位数组集合。而每一个算法实质上是一个求解器,那么由于YOLO系列算法大家对特征进行提取求解的方式不同,就代表了每一种YOLO算法都是一个近似却不太一样的求解器。那么,我们就需要开始思考并实验哪一种算法更适配于我们的数据集。切记,不要有盲目的版本崇拜,YOLOv12等版本一定比YOLOv5、YOLOv8好吗?真不一定,要知道目前YOLOv5依旧是落地中,稳定性最好的模型。
 - 故,无需担心。如果导师或者公司有要求去做,就好好做。(PS:目前如果出论文可以多参考一下图像超分、Mamba、Transformer、SAM等,这些是CVPR2025中较火的内容;如果是公司落地项目,无脑选YOLO即可)。
 
二、YOLOv13代码下载
论文地址:[YOLOv13暂无论文]
 GitHub地址:GitHub代码下载地址
代码下载: 此处直接点击【Code】→【Download ZIP】下载即可
 
 
权重下载: 此处直接选择权重文件【YOLOv13-N】下载即可
 
在全部下载完成后,将权重文件放到【yolov13-main】文件夹内
三、环境配置
在windows系统下打开Anaconda的终端,创造虚拟环境。
① 创建虚拟环境
如下:输入 conda create -n yolov13(代表环境名称) python=3.11 (使用Python的版本),然后创建就可以了
conda create -n yolov13 python=3.11

 是否安装环境所需基础包,输入y安装:
 
 安装完成如下图:
 
环境安装完成后,【conda activate yolov13】激活刚才创建的环境
 
注1:进入环境后,前面会从base变为yolov13
 注2:此处我直接显示的是我环境路径,无关紧要,二者均可
② 在Anaconda中搭建的环境
【cd】到【yolov13-main】路径
 
 【安装pytorch】
//安装pytorchpip install torch==2.3.1 torchvision==0.18.1 torchaudio==2.3.1 -f https://mirrors.aliyun.com/pytorch-wheels/cu121
【下载flash_attn包的whl文件】
//路径如下https://github.com/kingbri1/flash-attention/releases/download/v2.5.9.post1/flash_attn-2.5.9.post1+cu122torch2.3.1cxx11abiFALSE-cp311-cp311-win_amd64.whl
将其放置到【yolov13-main】文件夹内
 
 在【Anaconda Poweshell Prompt】中对flash_attn包的whl文件进行安装
//在【yolov13-main】的路径中对flash_attn包的whl文件进行安装pip install flash_attn-2.5.9.post1+cu122torch2.3.1cxx11abiFALSE-cp311-cp311-win_amd64.whl
更改【requirements.txt】文件,记得保存!!!
timm==1.0.14albumentations==2.0.4onnx==1.14.0onnxruntime==1.15.1pycocotools==2.0.7PyYAML==6.0.1scipy==1.13.0onnxslim==0.1.31onnxruntime-gpu==1.18.0gradio==4.44.1opencv-python==4.9.0.80psutil==5.9.8py-cpuinfo==9.0.0huggingface-hub==0.23.2safetensors==0.4.3numpy==1.26.4supervision==0.22.0
安装【requirements.txt】文件的环境
//不加清华源pip install -r requirements.txt
//加清华源pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

 此时代表【requirements.txt】文件的环境安装完成
 
 PS:我的环境在这一步的时候由于一些冲突导致我做了细微的更改,跟着豆包取微调一下,问题不大
 如下为我目前实际的环境条件,所以也可以尝试采用将【requirements.txt】改为如下,直接进行安装
//我目前的实际环境# This file may be used to create an environment using:# $ conda create --name  --file # platform: win-64aiofiles=23.2.1=pypi_0albucore=0.0.24=pypi_0albumentations=2.0.8=pypi_0annotated-types=0.7.0=pypi_0anyio=4.9.0=pypi_0bzip2=1.0.8=h2466b09_7ca-certificates=2025.6.15=h4c7d964_0certifi=2025.6.15=pypi_0cffi=1.17.1=pypi_0charset-normalizer=3.4.2=pypi_0click=8.2.1=pypi_0colorama=0.4.6=pypi_0coloredlogs=15.0.1=pypi_0contourpy=1.3.2=pypi_0cryptography=45.0.4=pypi_0cycler=0.12.1=pypi_0defusedxml=0.7.1=pypi_0einops=0.8.1=pypi_0fastapi=0.115.13=pypi_0ffmpy=0.6.0=pypi_0filelock=3.14.0=pypi_0flash-attn=2.5.9.post1=pypi_0flatbuffers=25.2.10=pypi_0fonttools=4.58.4=pypi_0fsspec=2025.5.1=pypi_0gradio=4.44.1=pypi_0gradio-client=1.3.0=pypi_0h11=0.16.0=pypi_0httpcore=1.0.9=pypi_0httpx=0.28.1=pypi_0huggingface-hub=0.23.2=pypi_0humanfriendly=10.0=pypi_0idna=3.10=pypi_0importlib-resources=6.5.2=pypi_0intel-openmp=2021.4.0=pypi_0jinja2=3.1.6=pypi_0kiwisolver=1.4.8=pypi_0libexpat=2.7.0=he0c23c2_0libffi=3.4.6=h537db12_1liblzma=5.8.1=h2466b09_2libsqlite=3.50.1=h053a19d_4libzlib=1.3.1=h2466b09_2markupsafe=2.1.5=pypi_0matplotlib=3.10.3=pypi_0mkl=2021.4.0=pypi_0mpmath=1.3.0=pypi_0networkx=3.5=pypi_0numpy=1.26.4=pypi_0onnx=1.14.0=pypi_0onnxruntime=1.15.1=pypi_0onnxruntime-gpu=1.18.0=pypi_0onnxslim=0.1.31=pypi_0opencv-python=4.9.0.80=pypi_0opencv-python-headless=4.11.0.86=pypi_0openssl=3.5.0=ha4e3fda_1orjson=3.10.18=pypi_0packaging=24.2=pypi_0pandas=2.3.0=pypi_0pillow=10.4.0=pypi_0pip=25.1.1=pyh8b19718_0protobuf=6.31.1=pypi_0psutil=5.9.8=pypi_0py-cpuinfo=9.0.0=pypi_0pycocotools=2.0.7=pypi_0pycparser=2.22=pypi_0pydantic=2.11.7=pypi_0pydantic-core=2.33.2=pypi_0pydub=0.25.1=pypi_0pyparsing=3.2.3=pypi_0pyreadline3=3.5.4=pypi_0python=3.11.13=h3f84c4b_0_cpythonpython-dateutil=2.9.0.post0=pypi_0python-multipart=0.0.20=pypi_0requests=2.32.4=pypi_0ruff=0.12.0=pypi_0safetensors=0.4.3=pypi_0scipy=1.13.0=pypi_0seaborn=0.13.2=pypi_0semantic-version=2.10.0=pypi_0setuptools=80.9.0=pyhff2d567_0shellingham=1.5.4=pypi_0simsimd=6.4.9=pypi_0sniffio=1.3.1=pypi_0starlette=0.46.2=pypi_0stringzilla=3.12.5=pypi_0supervision=0.22.0=pypi_0sympy=1.14.0=pypi_0tbb=2021.13.1=pypi_0timm=1.0.14=pypi_0tk=8.6.13=h2c6b04d_2tomlkit=0.12.0=pypi_0torch=2.3.1+cu121=pypi_0torchaudio=2.3.1+cu121=pypi_0torchvision=0.18.1+cu121=pypi_0tqdm=4.65.2=pypi_0typer=0.16.0=pypi_0typing-extensions=4.14.0=pypi_0typing-inspection=0.4.1=pypi_0tzdata=2025.2=pypi_0ucrt=10.0.22621.0=h57928b3_1ultralytics=8.3.63=pypi_0ultralytics-thop=2.0.14=pypi_0urllib3=2.5.0=pypi_0uvicorn=0.34.3=pypi_0vc=14.3=h41ae7f8_26vc14_runtime=14.44.35208=h818238b_26websockets=12.0=pypi_0wheel=0.45.1=pyhd8ed1ab_1
此时对文件进行编译
//文件编译pip install -e .

 如此代表【编译完成】
 
 至此,环境安装成功。
四、制作数据集
我的另外一篇博客: 第四部分
五、开始训练
下面展示 train.py代码片。
import warnings, os# os.environ[\"CUDA_VISIBLE_DEVICES\"]=\"-1\" # 代表用cpu训练 不推荐!没意义! 而且有些模块不能在cpu上跑os.environ[\"CUDA_VISIBLE_DEVICES\"]=\"1\" # 代表用第一张卡进行训练 0:第一张卡 1:第二张卡warnings.filterwarnings(\'ignore\')from ultralytics import YOLOif __name__ == \'__main__\': model = YOLO(r\'E:\\A\\A\\A\\A\\yolov13-main\\ultralytics\\cfg\\models\\v13\\yolov13.yaml\') # model.load(\'\') # loading pretrain weights model.train(data=r\'E:\\A\\ShipRSImageNet\\data.yaml\', cache=False, imgsz=640, epochs=10, batch=16, workers=16, device=\'1\', # resume=\'\', # last.pt path project=r\'E:\\A\\A\\A\\A\\yolov13-main\\runs\', name=\'ShipRSImageNet-yolov13\', )
【开始训练】(PS:忽略数据集本身的问题)
python train.py

 训练正常
 
 结果正常
 
 如有问题,欢迎大家一起交流,不胜感激!!!



