DETR-like 模型环境配置

DINO-DETR模型的环境与YOLOS完全相同,起初博主直接沿用了YOLOS的环境,后来更换了服务器,也就重新配置一下:
GPU配置:

在这里插入图片描述

首先是进行项目下载,由于博主此时并未对项目进行大量更改,只需要从github上直接git即可。

git clone https://github.com/IDEA-Research/DINO.git

下载完成后我们将mian.py和相关配置文件替换一下即可。
随后进行环境安装

conda create -n der python=3.7

切换到DINO目录下安装环境依赖:这里注意一下先将pycocotools的下载删除,变为:

cython
submitit
torch>=1.5.0
torchvision>=0.6.0
scipy
termcolor
addict
yapf
timm

随后执行安装命令。

pip install -r requirement.txt

然后再进行pycocotools的安装。

pip install pycocotools

紧接着配置CUDA算子

cd models/dino/ops
python setup.py build install
python test.py

在配置DINO-DETR模型的CUDA算子时,报错:

libcublas.so.11: symbol cublasLtHSHMatmulAlgoInit, version
libcublasLt.so.11 not defined in file libcublasLt.so.11 with link time
reference

这是pytorch找不到cuda导致的,起初博主以为是pytorch版本不对,后来发现是因为在按照pytorch1.13时会自动安装nvidia_cublas_cu11,只需要将其卸载即可:

pip uninstall nvidia_cublas_cu11

再次配置即可,test.py主要进行一个维度计算测试,与你的GPU显存有关。
可以看到博主在进行 2048通道计算时爆显存了。

torch.cuda.OutOfMemoryError: CUDA out of memory. Tried to allocate 2.00 MiB (GPU 0; 22.38 GiB total capacity; 20.98 GiB already allocated; 3.94 MiB free; 

这不要紧,我们在真正运行该项目时只需要调整batch-size即可,此时博主使用的显卡未NVIDIA P40,显存为24G,可以说已经足以满足需要了。先前在NVIDIA T4显卡上batch-szie只能调整为1。
至此,DINO-DETR的环境配置便完成了,只需要上传完数据集即可运行了。

### RT-DETR-R18 模型 YAML 配置文件及权重下载 RT-DETR 是一种基于 Transformer 的实时目标检测框架,其设计旨在实现高性能的同时保持较低的推理延迟。对于 RT-DETR 使用 ResNet-18 (R18) 作为 backbone 的版本,通常会提供预训练好的权重以及对应的配置文件以便于快速部署和测试。 #### YAML 配置文件说明 YAML 文件定义了模型的主要参数设置,包括但不限于输入尺寸、backbone 类型、Transformer 结构细节以及其他超参数。以下是 RT-DETR-R18 常见的 YAML 配置项: ```yaml model: name: rt-detr-r18 backbone: type: resnet18 pretrained: true transformer: d_model: 256 nhead: 8 num_encoder_layers: 6 num_decoder_layers: 6 data: input_size: [640, 640] training: batch_size: 16 epochs: 50 inference: score_threshold: 0.5 nms_iou_threshold: 0.7 ``` 上述配置展示了如何指定 Backbone 和 Transformer 层次结构[^1]。具体路径可能因项目存储位置而异。 #### 权重文件获取方式 官方发布的 RT-DETR-R18 权重可以通过以下方法获得: 1. **官方网站或 GitHub 页面**: 访问 RT-DETR 开源项目的主页,查找 `releases` 或者 `pretrained models` 路径下的链接。 2. **云存储平台**: 如果开发者提供了 Google Drive 或阿里云 OSS 等外部链接,则可以直接通过这些资源下载所需文件。 3. **本地构建与微调**: 若无法找到现成的 R18 版本权重,可以考虑从 COCO 数据集上重新训练或者迁移其他相似架构(如 DETR)得到初始权值并继续优化[^2]。 #### 示例代码加载模型与权重 下面是一个简单的 Python 脚本用于加载已保存的 RT-DETR-R18 模型及其权重: ```python import torch from yolort.models import detr # 加载模型 model = detr.rtdetr_resnet18(pretrained=True) # 导入自定义权重(如果存在的话) weights_path = 'path/to/rt_detr_r18.pth' checkpoint = torch.load(weights_path, map_location=torch.device('cpu')) model.load_state_dict(checkpoint['state_dict']) print("Model loaded successfully!") ``` 以上脚本假设用户已经具备正确的 `.pth` 格式的权重文件,并将其放置在适当目录下[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

彭祥.

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

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

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

打赏作者

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

抵扣说明:

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

余额充值