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 C++ 14.0了。
Visual C++ 14.0 下载地址
在这里插入图片描述
随后选择好安装位置与需要的版本即可。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/12347.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

I.MX6U开发板使用OTG烧写系统

1.系统烧写 在实际的产品开发中肯定不可能通过网络来运行,否则没网的时候产品岂不 是就歇菜了。因此我们需要将 uboot、linux kernel、.dtb(设备树)和 rootfs 这四个文件烧写到板子 上的 EMMC、NAND 或 QSPI Flash 等其他存储设备上,这样不管有没有网络我…

R语言ggplot2 | 绘制随机森林重要性+相关性热图

📋文章目录 原图复现准备数据集及数据处理构建不同分类随机森林模型的并行计算绘制随机森林变量重要性柱状图计算数据集的相关性热图可视化合并随机森林重要性和热图 附上所有代码 在文献中,我们经常遇到随机森林和相关性热图的组合图片(下图)&#xff0…

Vue3——一文入门Vue3

Vue3的优势 1. 性能的提升 打包大小减少41% 初次渲染快55%,更新渲染快133% 内存减少54% … 2. 源码的升级 使用Proxy代替defineProperty实现响应式 重写虚拟DOM的实现和Tree-Shaking … 3. 拥抱TypeScript Vue3可以更好的支持TypeScript 4. 新的特性 1.C…

什么是文件共享软件?文件传输软件如何共享?

它是一个文件共享软件应用程序,可让强大的数据保护层下将任何大小的文件发送到世界上的任何地方。以光速发送和共享无限数量的文件。可以提交门户并使用语言,品牌,存储等自定义门户。可以选择一个存储点,例如文件传输软件&#xf…

零基础可以学习数据分析吗,有没有好的培训机构推荐?

数据分析从沿海火到了中西部的软件园,从传统互联网企业火到了新经济领域,火到了第一二产业。数字化成为这个时代的标签,而数据也成为了最有价值的资源,更多企业重视数据;因为有了真实数据的支撑,所有的决策…

【软考备战·希赛网每日一练】2023年4月19日

文章目录 一、今日成绩二、错题总结第一题第二题第三题 三、知识查缺 题目及解析来源:2023年04月19日软件设计师每日一练 一、今日成绩 二、错题总结 第一题 解析: 第二题 解析: server-side n.服务器端 enterprise n.企业 client n.客户 d…

常见排序算法

目录 一、插入排序 1、直接插入排序 2、希尔排序(缩小增量插入排序) 二、选择排序 三、堆排序 四、冒泡排序 五、快速排序(递归) 1、交换法 2、挖坑法 3、前后指针法(推荐) 4、快排再优化 六、快速排序&…

树上差分(点差分/边差分)

树上差分一般有两种类型的题目,一种是对边进行差分,另一种就是对点进行差分。 对应的操作也有两种,对边进行差分的对应操作就是给定一对节点(u,v),让我们把u到v之间路径上的边权都加val,对点进行差分的对应操作就是给…

MYSQL数据库

目录 SQL SQL-DDL 操作数据库 查询(show)(select) 创建(create) 删除(drop) 操作表 查询当前数据库所有表 修改表 删除 SQL-DML 添加数据(可以批量添加&…

课程简介:.Net Core从零学习搭建权限管理系统

课程简介目录 🚀前言一、课程背景二、课程目的三、系统功能四、系统技术架构五、课程特点六、课程适合人员七、课程规划的章节八、最后 🚀前言 本文是《.Net Core从零学习搭建权限管理系统》教程专栏的导航站(点击链接,跳转到专栏…

做好Python工程师,首先你需要做好的几件事

做好Python工程师,需要做好的几件事,我想分享给大家。首先千万不要做事周折。在你提问之前,先好好想一想,这个问题自己能不能解决。如果能解决,尽量自己解决;如果解决不了,那就要把你的问题描述…

亿发软件:传统食品饮料批发行业如何通过信息化管理系统降本增效?

传统食品饮料批发行业信息化水平较低,存在多重管理难题,例如: 手动数据输入和管理,导致错误和效率低下; 数据缺乏实时可见性,无法实时了解企业仓库存量、销售额和其他关键业务指标; 低效的供应链…

索引:索引知识重复习,什么是索引、索引的类型、建立索引及【最左匹配原则】、Explain查看sql的执行计划

文章目录 什么是索引索引的类型主键索引(primary key)普通索引(index)复合索引全文索引(fulltext)空间索引唯一索引索引修改及删除 Explain一、using filesort(减慢查询效率)二、Using temporary三、using …

前端UI框架有哪些|20个优秀免费开源的WEB前端UI框架提高网站开发效率

最近准备学习一下前端UI我也是在网上找了很久最终整理出来了20个不错的前端UI框架网站,大家都知道很多成熟的前端框架可以直接引,学习框架可以提升我们网站的开发速度。有些大型公司的前端或者后端框架都是用自己开发的,对于大部分用户和公司来讲,我们可以用开源免费的前端…

Python 中 SyntaxError: ‘yield‘ outside function 错误

当我们在函数外部使用 yield 关键字时,会出现 Python “SyntaxError: ‘yield’ outside function”。 要解决该错误,如果我们需要对每个元素执行一些运算符,请使用列表理解,或者缩进函数内部使用 yield 的代码。 下面是一个产生…

毕业2年,跳槽到下一个公司就25K了,厉害了···

本人本科就读于某普通院校,毕业后通过同学的原因加入软件测试这个行业,角色也从测试小白到了目前的资深工程师,从功能测试转变为测试开发,并顺利拿下了某二线城市互联网企业的Offer,年薪 30W 。 选择和努力哪个重要&a…

写博客8年与人生第一个502万

题记:我们并非生来强大,但依然可以不负青春。 原本想好好写一下如何制定一个目标并通过一点一滴的努力去实现,这三年反思发现其实写自己的经历并不重要。 很多人都听过一句话:榜样的力量是无穷的。 更现实和实际的情况是&#x…

mysql聚合函数

文章目录 前言一、常见的聚合函数1.avg和sum函数2.max和min函数3.count函数 二、group by的使用1.基本使用方法2.with rollup 求平均值 三、having关键字的使用四、多表连接聚合函数1.sql92语法总结2.sql99语法总结 总结 前言 聚合函数:他是对一组数据进行汇总的函…

3 个自定义防抖 Hooks 的实现原理

前言— 本文通过实现 useDebounceFn、useDebounce、useDebounceEffect 3 种自定义防抖 Hooks,来介绍在日常开发过程中自定义 Hooks 的思路及实现,帮助大家完成通用 Hooks 来提高开发效率。 防抖— 防抖的概念已经司空见惯了,这里稍作简单介…

Golang每日一练(leetDay0034) 二叉树专题(3)

目录 100. 相同的树 Same Tree 🌟 101. 对称二叉树 Symmetric Tree 🌟 102. 二叉树的层序遍历 Binary Tree Level-order Traversal 🌟🌟 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Python每日一…