一路艰难的学习DN-DETR代码过程

这是我的第一次复现一个代码,一路的颠沛流离,特写此文章,因为自己淋过雨,所以想给别人撑把伞,希望对大家有帮助!

本人配置cuda:11.1   pytorch 1.9 python==3.7

可以在终端中通过pip install 安装,如果一直报错装不了可以尝试下载本地文件后手动在终端中通过pip install -r 文件名字 -i 清华源地址   来安装。     

pytorch本地下载网站https://download.pytorch.org/whl/torch_stable.html

可以参考我的配置安装

(如果不知道torch怎么配对应版本可以到pytorch官网去找各版本对应的torchaudio版本和torchvision版本)

从github中获取源代码:IDEA-Research/DN-DETR:[CVPR 2022 口头] DN-DETR 正式实施 (github.com)

根据readme配置环境

(先要安装一个git才能用哦!)

1.克隆此存储库

git clone https://github.com/IDEA-Research/DN-DETR.git
cd DN-DETR

2.安装 Pytorch 和 torchvision(如果使用我上面的方法下载安装包本地安装torch的话可以跳过一步)

按照 Start Locally | PyTorch 上的说明进行操作。

# an example:
conda install -c pytorch pytorch torchvision

3.安装其他需要的软件包

pip install -r requirements.txt

4.编译 CUDA 运算符

cd models/dn_dab_deformable_detr/ops
python setup.py build install
# unit test (should see all checking is True)
python test.py
cd ../../..

//注意requirement.txt中的pycocotools和panopticapi需要独立安装

可使用pip install pycocotools安装若不成功可以在后面加上清华源地址,这一步不难

在配置好文件后编译CUDA运算符

但遇到构建wheel文件失败的问题

随后查找报错原因,发现可能是11.1的cuda版本算力不支持3060显卡的算力

导致算力不匹配,搞了好半天从,最终无果,只能求助老师,

在老师一通操作下,解决了问题,随后在运行中又出现了找不到coco_path,model -m等问题

在一通搜索后发现是配置问题,于是跟着教程把coco_path,model -m 给配置了上去

先点击运行

然后点击编辑配置

在main中设置形参,像我一样输入就行。

配置好后再次运行

这时可能会出现找不到路径的问题:如图

后查询得出可能是main.py中的路径设置出现了问题,或者是使用了相对路径,如果是前者,则需要找到这个缺少的路径并补全路径,如果是后者,则需要把相对路径的地方改为绝对路径。

后期ps:(这段是我后来添加的 )但问题在于我根本找不到缺少地址的代码是哪一行,所以我花了许多时间来查看代码,最终发现了是由于ouput_dir的输出路径是空的,所以导致跑的数据集找不到存放地址。我又看了训练数据集的指令终于发现了端倪

原来作者把output_dir的路径放在了执行命令当中,我标起来的就是存放output_dir的位置,所以这也就解释了为什么单运行代码会报错,而输入指令后整个代码是可以跑起来的。

在解决这个问题以后,我还去了datasets里把里面的代码运行了一遍(我也不知道为什么全红了,不过我跑训练集是可以跑的)

在运行datasets里代码时还遇到了一些问题

这种问题解决起来就比较简单,只需要把相对路径换成绝对路径就好了,例如在代码中把原来的from .coco import build as build_coco改成

在前面加一个代码所在目录名称就好了。我的coco是在datasets文件夹下的所以在.coco前加了datasets

解决了这些问题以后总算是可以跑起来了

在终端中输入conda activate DN(自己创建的环境名称)

激活环境,再cd 到源码的位置

其中我标起来的位置改为你们自己的数据集位置即可

如图便是运行成功了....

  • 21
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值