Windows环境下调试DAB-DETR与Deformable-DETR

先前都是在服务器上运行DETR的相关程序,服务器使用的是Linux,所以运行较为简单,但如果想要简单的debug的话就没必要使用服务器了,今天便来在Winodws环境下调试DETR类项目,这里以Deformable-DETR与DAB-DETR为例。
首先是DAB-DETR的配置,这个部分较为简单,需要注意的是DAB-DETR不需要配置CUDA算子,如果我们只想执行DAB-DETR程序的话我们将DAB-Deformable-DETR的引入模块删掉即可。

在这里插入图片描述

同时注释掉model/init下的这段代码

在这里插入图片描述

创建conda环境

conda create -n deformable_detr python=3.7

激活conda环境

activate deformable_detr

查看CUDA版本,因为我们在切换环境变量的CUDA顺序后在创建对应的conda环境后,这个CUDA便会跟随conda环境

nvcc --version

在这里插入图片描述

按照pytorch,根据CUDA版本选择pytorch,发现使用conda命令无法找到匹配的cuda与pytorch,所以我们可以使用pip按照方式,其可以在pytorch的同时按照一个小cuda。

conda install pytorch==1.12.0 torchvision==0.13.0 torchaudio==0.12.0 cudatoolkit=11.6 -c pytorch -c conda-forge

当然也可以使用:

pip install torch==1.12.0+cu116 torchvision==0.13.0+cu116 torchaudio==0.12.0 --extra-index-url https://download.pytorch.org/whl/cu116

随后切换到项目根目录下按照requirement.txt中对应的包,发现pycocotools安装失败,可以直接安装windows版本的。

pip install pycocotools-windows -i https://pypi.tuna.tsinghua.edu.cn/simple

DAB-Deformable-DETR额外配置

DAB-DETR的作者在Deformable-DETR的基础上开发出了DAB-Deformable-DETR,要运行Deformable-DETR是需要额外配置CUDA算子的。下面为配置过程,我们在刚刚创建的环境基础上执行下面操作。

随后切换到model/ops文件夹下进行CUDA编译,报错

building ‘MultiScaleDeformableAttention’ extension error: Microsoft
Visual C++ 14.0 or greater is required. Get it with “Microsoft C++
Build Tools”:
https://visualstudio.microsoft.com/visual-cpp-build-tools/

网上的方法都是让安装Visual C++ 14.0,但这个博主感觉太过费时费力,我们只需要让conda环境内有相应的编译文件即可,没必要去下载安装庞大的Visual C++ 14.0。

conda install libpython m2w64-toolchain -c msys2

在这里插入图片描述
再次进行编译CUDA算子,发现依旧报错,没办法了,只能老老实实的去安装,这里建议大家去下载Visual Studio2017版本,博主先前安装了2022版本,失败了。下载地址如下:

https://visualstudio.microsoft.com/zh-hans/vs/older-downloads/

在这里插入图片描述

随后选择好安装位置与需要的版本即可。

在这里插入图片描述

随后进行CUDA编译:

在这里插入图片描述

在这里插入图片描述

随后在进行项目运行时报错:

File “D:\Anaconda\envs\deformable_detr\lib\shutil.py”, line 121, in
copyfile
with open(dst, ‘wb’) as fdst: PermissionError: [Errno 13] Permission denied:
‘C:\Users\PENGXI~1\AppData\Local\Temp\tmp0srtpk4p\tmpqq71knx5.py’

找到这个文件
在这里插入图片描述

添加这行代码:
在这里插入图片描述

随后再运行。OK了

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/pengxiang1998/article/details/130100571