本文介绍
本文介绍了使用Ultralytics框架训练RT-DETR模型的全流程。首先需要创建Python 3.10虚拟环境,安装指定版本的PyTorch和相关依赖包。然后准备数据集,修改配置文件,并详细介绍训练、验证和推理三个核心步骤的代码实现。训练阶段使用RTDETR类加载模型配置,设置训练参数;验证阶段评估模型性能;推理阶段可对图片、视频等进行预测。文中还提供了清华大学镜像源加速下载,以及详细的参数配置说明,帮助用户快速搭建RT-DETR目标检测模型。
RT-DETR创新改进目录:新RT-DETR 有效涨点改进目录 | 包含各种卷积、主干改进、各种注意力机制、Neck特征融合改进、损失函数、AIFI创新改进、独家创新、小目标检测、特殊场景检测等最全大论文及小论文必备创新改进点
全新RT-DETR创新改进专栏地址:最全RT-DETR创新改进高效涨点+永久更新中(至少500+改进)+高效跑实验发论文
RT-DETR论文解读,看这篇博客内容:
【CVPR2024 RT-DETR 全文解读】实时目标检测更快更准、帮助你更好去理解、适合小白快速入门了解RT-DETR模型

目录
将自己数据集放到datasets文件夹里(若没有datasets文件夹就自己创建一下)
四、Ultralytics调参 1:1还原RT-DETR官方版本实验环境,更方便改进,高效涨点!!!
一、下载最新版本ultralytics 源码

下载源码地址:ultralytics/ultralytics: Ultralytics 🚀

二、创新RT-DETR虚拟环境
第一步创建一个自己的虚拟环境:
conda create -n new_name python=3.10
第二步进入到自己的虚拟环境:
conda activate new_name
第三步:安装pytorch,建议不要安装太新版本
pytorch官网:Previous PyTorch Versions
pip install torch==2.5.1 torchvision==0.20.1 torchaudio==2.5.1 --index-url https://download.pytorch.org/whl/cu121
第四步:直接复制以下所有命令到控制台回车运行
pip install ultralytics -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install torchsummary -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install onnx==1.14.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install onnxruntime==1.15.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install pycocotools==2.0.7 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install PyYAML==6.0.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install scipy==1.13.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install onnxsim==0.4.36 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install onnxruntime-gpu==1.18.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install timm==1.0.7 thop efficientnet_pytorch==0.7.1 einops grad-cam==1.5.4 dill==0.3.6 albumentations pytorch_wavelets==1.3.0 tidecv PyWavelets -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install mmcv==2.2.0 -f https://download.openmmlab.com/mmcv/dist/cu121/torch2.3/index.html
三、准备自己的数据集
如果自己没有数据集,可以去这个官网上找公共数据集去练习:Roboflow Datasets

将自己数据集放到datasets文件夹里(若没有datasets文件夹就自己创建一下)

修改data.yaml 配置文件

四、Ultralytics调参 1:1还原RT-DETR官方版本实验环境,更方便改进,高效涨点!!!
(这步操作非常重要,可以参考我的这个调参教程)
超详细调参数教程、1:1还原RT-DETR最佳性能
【RT-DETR创新改进】改进前必看!对Ultralytics调参, 1:1还原RT-DETR官方版本实验参数,使用原汁原味的RT-DETR模型,才能高效跑实验、高效涨点、收割小论文、完成大论文!!!

五、训练自己的数据集
创健train.py脚本
import warnings
warnings.filterwarnings('ignore')
from ultralytics import RTDETR
# 模型配置文件,以相对路径调用,也可以使用绝对路径
model_yaml_path = './ultralytics/cfg/models/rt-detr/rtdetr-r18.yaml'
#数据集配置文件,以相对路径调用,也可以使用绝对路径
data_yaml_path = './datasets/data.yaml'
if __name__ == '__main__':
model = RTDETR(model_yaml_path)
# model.load('rtdetr-l.pt') # 加载预训练权重
#训练模型
results = model.train(data=data_yaml_path,
imgsz=640,
epochs=200,
batch=8,
workers=0,
project='runs/RT-DETR/train',
name='exp',
)

五、验证自己的模型效果
创健val.py脚本
import warnings
warnings.filterwarnings('ignore')
from ultralytics import RTDETR
# 训练好的模型配置文件,以相对路径调用,也可以使用绝对路径
model_yaml_path = './runs/RT-DETR/train/exp/weights/best.pt' #这行使用训练和的best.pt文件
#数据集配置文件,以相对路径调用,也可以使用绝对路径
data_yaml_path = './datasets/data.yaml'
if __name__ == '__main__':
model = RTDETR(model_yaml_path)
model.val(data=data_yaml_path,
split='val',
imgsz=640,
batch=4,
# save_json=True, # 这个保存coco精度指标的开关
project='runs/RT-DETR/val',
name='exp',
)
六、推理测试自己的模型
创健predict.py脚本
import warnings
warnings.filterwarnings('ignore')
from ultralytics import RTDETR
if __name__ == '__main__':
model = RTDETR('./rtdetr-l.pt') # 使用自己训练好的权重文件
model.predict(
source='./ultralytics/assets/bus.jpg', # 预测的数据源,可以是图片、文件夹、视频路径等
imgsz=640, # 图片的输入尺寸
project='runs/detect', # 预测结果保存的项目目录
name='exp', # 子目录名(最终保存路径为 runs/detect/exp)
save=True, # 是否保存预测后的图片
# visualize=True, # 是否可视化中间特征图(默认注释掉,即不启用)
# show_conf=False, # 是否显示置信度(关闭显示)
# show_labels=False, # 是否显示标签(关闭显示)
)

1128

被折叠的 条评论
为什么被折叠?



