win11配置Mask DINO小白踩坑记录

win11配置Mask DINO踩坑记录

  • 1 准备工作
  • 2 创建python环境和安装detectron2
    • 2.1 安装前提
    • 2.2 安装流程
      • 2.2.1 cl.exe的错误
      • 2.2.2 SetuptoolsDeprecationWarning的错误
  • 3 MaskDINO运行
    • 3.1 运行demo

前情提要:需要复现Mask DINO,但是实验室没有Linux的电脑,在Windows上复现的时候遇到了 No moduld name MultiScaleDeformableAttention,然后看博客说在Windows上配置很麻烦,建议去Linux,但是虚拟机没办法用GPU,想到了三个方法:1、用WSL2来运行;2、在Windows上解决这个困难;3、装双系统。
我首先试了方法1,碰到了一开始的问题,而且也比较麻烦,所以干脆进行了2,网上一些方法写的比较简略,但是我实际运行过程中碰到了很多问题,所以记录一下。
PS:如果是已经conda create一个环境了,建议查看版本是否正确,如果是直接在项目下运行了pip install -r requirement.txt,就重头开始

参考:Mask DINO环境配置
参考:win10系统配置Mask DINO经验总结
参考:Detectron2在Windows上的三部曲——安装

1 准备工作

名称版本号
cuda11.3
cudnncuda11对应最新版即可
pytorch1.10.1
torchvision0.11.2
torchaudio0.10.1

2 创建python环境和安装detectron2


conda create -n env_name python=3.9
conda activate env_name
conda install pytorch==1.10.1 torchvision==0.11.2 torchaudio==0.10.1 cudatoolkit=11.3 -c pytorch -c conda-forge
 
#安装detectron2
git clone https://github.com/facebookresearch/detectron2.git
python -m pip install -e detectron2

如果conda安装慢,记得换源
安装detectron2开始出问题了

2.1 安装前提

需要安装Visual Studio,VS的版本一定要version<=2019,之前安装的VS2022死活安不上。
并且一定要把原来的VS2022删掉,否则会报错,安装了VS2019需要配置cl.exe的环境变量,请看2.2.1

2.2 安装流程

git clone https://github.com/facebookresearch/detectron2.git

Detectron2前将fvcore安装上

pip install fvcore
python setup.py install

成功安装结果:
在这里插入图片描述

2.2.1 cl.exe的错误

至此安装完成detectron2,我一开始没有安装,所以报错'cl.exe' is not recognized as an internal or external command
这是因为VS的cl.exe这个编译器未被加入到环境变量中,可以“编辑环境变量-环境变量-系统变量-PATH“, 添加路径**“path\to\vs2019\community\vc\tools\msvc\14.13.26128\bin\hostx64\x64"** 大概是这个路径,自行去找自己的路径。(VS2022是没有这个路径的)

安装完detectron2,再继续安装mask dino一开始遇到的问题都解决了

2.2.2 SetuptoolsDeprecationWarning的错误

错误内容:
SetuptoolsDeprecationWarning: setup.py install is deprecated. !! ********************************************************************************

Please avoid running setup.py directly. Instead, use pypa/build, pypa/installer or other standards-based tools. See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
**解决:我的原因是setuptools版本太高
首先使用以下命令查看setuptools版本信息

conda list

发现setuptools版本大于60,可能因为版本过高,算法使用的安装方式已经被弃用,选择重新安装小于60的版本,解决了此问题。

pip install setuptools==58

**

3 MaskDINO运行

#克隆maskdino库
git clone https://github.com/IDEA-Research/MaskDINO.git
cd ./MaskDINO
pip install -r requirements.txt

注意是requirements.txt,有无s
成功结果:
在这里插入图片描述
再接下来

cd maskdino/modeling/pixel_decoder/ops
python setup.py build install

(这里碰到了没有删除vs2022遇到的错,卸载了就没有报错了)
运行的时候出现了一大串类似于报错的信息,但是等待就好了
成功结果:
在这里插入图片描述

3.1 运行demo

退回到根目录 \MaskDINO-main,在根目录创建img和weight文件夹,并在img中放入测试图片,weight中放入权重:自行下载

python .\demo\demo.py --config-file .\configs\coco\instance-segmentation\maskdino_R50_bs16_50ep_3s.yaml --input .\img\1.jpg --output .\img\2.jpg --opts MODEL.WEIGHTS .\weight\maskdino_r50_50ep_300q_hid1024_3sd1_instance_maskenhanced_mask46.1ap_box51.5ap.pth

至此,结束!

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

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

相关文章

Tomcat基础与Nginx的动静分离

一、TOMCAT基础功能 &#xff08;一&#xff09;自动解压war包 在配置文件中讲到&#xff0c;当接受到请求后&#xff0c;会匹配符合要求的Host&#xff0c;在配置文件中的Host只有一个&#xff0c;且规定了自动解压war包 自动解压war包 .war&#xff1a;WebApp打包,类zip格…

领腾讯云红包,可抵扣云服务器订单金额

在2024年腾讯云新春采购节优惠活动上&#xff0c;可以领取新年惊喜红包&#xff0c;打开活动链接 https://curl.qcloud.com/oRMoSucP 会自动弹出红包领取窗口&#xff0c;如下图&#xff1a; 腾讯云2024新春采购节红包领取 如上图所示&#xff0c;点击“领”红包&#xff0c;每…

Matlab梁单元有限元编程 | 铁木辛柯梁 | 欧拉梁 | Matlab源码 | 理论文本

专栏导读 作者简介&#xff1a;工学博士&#xff0c;高级工程师&#xff0c;专注于工业软件算法研究本文已收录于专栏&#xff1a;《有限元编程从入门到精通》本专栏旨在提供 1.以案例的形式讲解各类有限元问题的程序实现&#xff0c;并提供所有案例完整源码&#xff1b;2.单元…

SPI 接口

SPI 接口 SPI 简介寻址方式通信过程极性和相位IIC 和 SPI 的异同相同点不同点 SPI 简介 SPI&#xff08;Serial Peripheral Interface&#xff09;是串行外设接口的缩写&#xff0c;SPI是一种高速的、全双工、同步的串行通信总线&#xff1b;SPI采用主从方式工作&#xff0c;一…

一篇了解电容的使用

目录 一、电容理论基础 1.电容的本质 2.电容量的大小 &#xff08;1&#xff09;电容的单位 &#xff08;2&#xff09;电容量的决定式 3.电容的特点 4.电容的串并联 5.电容器的类型 6.电容实际的电路模型 二、电容器的选型 1.安装方式 2.电容值 3.电容的类型 4…

【opencv】1基础知识

1.模块 2.应用 3.图像 注释&#xff1a;鲁棒性&#xff0c;也称健壮性、稳健性或强壮性&#xff0c;是指系统在异常和危险情况下生存的关键特性。 3.1 数字图像的定义&#xff1a; 数字图像作为2D图像&#xff0c;可以使用称为像素的有限数字集进行表示。 3.2 RGB模型&#…

AI学习集合-前瞻

AI学习前瞻 工作岗位 算法工程师机器学习工程师图像算法工程师ai工程师NLP高级算法工程师 学习路线 应用场景 计算机视觉技术应用场景 自然语言应用 AI流程 AI拟人流程 机器人历史数据经验模型规律依据模型预测未来依据规律做出判断 AI基本流程 术语所用到的技术手段数据数…

第五节 JDBC驱动程序类型

JDBC驱动程序是什么&#xff1f; JDBC驱动程序在JDBC API中实现定义的接口&#xff0c;用于与数据库服务器进行交互。 例如&#xff0c;使用JDBC驱动程序&#xff0c;可以通过发送SQL或数据库命令&#xff0c;然后使用Java接收结果来打开数据库连接并与数据库进行交互。 JDK…

最强模型Claude 3 Haiku速通指南在此!保姆级教学拿脚都能学会!

&#x1f389;&#x1f389;欢迎光临&#xff0c;终于等到你啦&#x1f389;&#x1f389; &#x1f3c5;我是苏泽&#xff0c;一位对技术充满热情的探索者和分享者。&#x1f680;&#x1f680; &#x1f31f;持续更新的专栏《Spring 狂野之旅&#xff1a;从入门到入魔》 &a…

3月每日一题笔记

感谢我的好朋友的鼓励 3月4日 两种等价方式?都是错误的 ->加减中不能使用等价无穷小? ->不全面。 两项无穷小相减, 那么两项无穷小比值的极限不等于 1 时, 或者两项无穷小相加时, 其比值极限不等于 −1 时, 代数和差各项可以用等价无穷小替换 等价无穷小不精确

SSD LDPC纠错算法的重要性

固态硬盘&#xff08;Solid State Drives, SSD&#xff09;作为计算机行业中最具革命性的技术之一&#xff0c;凭借其更快的读写速度、增强的耐用性和能效&#xff0c;已经成为大多数用户的首选存储方案。然而&#xff0c;如同任何其他技术一样&#xff0c;SSD也面临自身的挑战…

C++——string类

前言&#xff1a;哈喽小伙伴们&#xff0c;从这篇文章开始我们将进行若干个C中的重要的类容器的学习。本篇文章将讲解第一个类容器——string。 目录 一.什么是string类 二.string类常见接口 1.string类对象的常见构造 2.string类对象的容量操作 3. string类对象的访问及遍…

大唐杯学习笔记:Day6

1.1小区选择 一、概述 1.UE在RRC_IDLE和RRC——INACTIVATE状态下进行的过程&#xff1b; 2.UE首先需要完成PLMN的选择,在已选择的PLMN上寻找合适的小区,获取合适的服务,监听控制信道,这个过程即小区选择过程&#xff1b; 3.根据小区重选准则,UE寻找其他更适合的小区进行小区…

德国Sentech自动扫描薄膜测量仪器SenSolH系列全套资源没有软件

德国Sentech自动扫描薄膜测量仪器SenSolH系列全套资源没有软件

JavaScript实现点击鼠标弹钢琴的效果

思路&#xff1a; 图片设置宽900px&#xff0c;找到鼠标按下时的x坐标和img距离body的x坐标&#xff0c;两个值相减&#xff0c;然后除100取整&#xff0c;赋值给a&#xff0c;通过判断a的值来确定放出那个音乐。 完整代码&#xff1a; <!DOCTYPE html> <html lan…

这些程序员交流学习的宝藏网站,无论你是大佬还是小白,都值得收藏!!!

正所谓&#xff0c;活到老学到老&#xff0c;无论我们身处何时何地&#xff0c;学习交流都可以让我们受益匪浅&#xff0c;掌握更多的知识技能&#xff0c;可以让我们在面对问题时多一份从容&#xff0c;可以让我们在关键时刻脱颖而出&#xff0c;那么&#xff0c;作为一个程序…

软考65-上午题-【面向对象技术】-面向对象分析、设计、测试

一、面向对象分析OOA 1-1、面向对象分析的定义 面向对象分析的目的&#xff1a;为了获得对应用问题的理解。理解的目的是确定系统的功能、性能要求。 面向对象分析包含5个活动&#xff1a;&#xff08;背&#xff01;&#xff09; 认定对象&#xff1b;&#xff08;重要一点…

springcloud:3.6测试信号量隔离

服务提供者【test-provider8001】 Openfeign远程调用服务提供者搭建 文章地址http://t.csdnimg.cn/06iz8 相关接口 测试远程调用&#xff1a;http://localhost:8001/payment/index 服务消费者【test-consumer-resilience4j8004】 Openfeign远程调用消费者搭建 文章地址http://t…

全方位碾压chatGPT4的全球最强模型Claude 3发布!速通指南在此!保姆级教学拿脚都能学会!

&#x1f389;&#x1f389;欢迎光临&#xff0c;终于等到你啦&#x1f389;&#x1f389; &#x1f3c5;我是苏泽&#xff0c;一位对技术充满热情的探索者和分享者。&#x1f680;&#x1f680; &#x1f31f;持续更新的专栏《Spring 狂野之旅&#xff1a;从入门到入魔》 &a…

Mysql案例之GROUP_CONCAT函数详解

Hello&#xff0c;大家好&#xff0c;我是灰小猿&#xff0c;一个超会写bug的程序员&#xff01; 今天这篇文章记录一个最近开发中遇到的mysql实战场景&#xff0c;觉得还挺典型的&#xff0c;就在此做一下记录。 先看一下举例场景&#xff1a; mysql中学生表与学科表通过关…