当前位置: 首页 > news >正文

Windows安装mmdet3d v0.17.1(跑通版)

环境

windows 11家庭版, 64 位操作系统, 基于 x64 的处理器,显卡NVIDIA GeForce RTX 3060
按照本人写的操作步骤在cuda11.1下安装mmdet3d成功后,跑代码报如下错误:

RuntimeError: CUDA error: no kernel image is available for execution on the device

经查阅,可能是cuda版本问题,于是寻求其他版本的安装方式,摸索出如下成功步骤。
注意在这之前需要安装VS2017。

总计在3个地方分别安装了cuda

在conda安装cuda

参考博客《避坑看:最全Pytorch安装、CUDA安装》:https://blog.csdn.net/qq_44113911/article/details/137474925
查看conda可以选择的cuda版本,并选择和mmdet3d v0.17.1适配的一个cuda版本即11.3.1
创建环境管理cuda11.3版本,可自行更改名称cu113和python版本:conda create -n cu113 python=3.8
激活环境:conda activate cu113
安装cuda:conda install cudatoolkit=11.3.1
安装cudnn:conda install cudnn=8.2.1
安装nvcc:conda install -c nvidia cuda-nvcc==11.3.58

pytorch关联cuda安装

pip install torch==1.10.0+cu113 torchvision==0.11.0+cu113 torchaudio==0.10.0 -f https://download.pytorch.org/whl/torch_stable.html

在电脑安装cuda

注意cuda和cudnn要和上面conda中安装的版本完全一致
参考博客:https://blog.csdn.net/zyq880625/article/details/138086225

最后安装mmdet3d

注意上面首步骤已经装完pytorch

pip install mmcv-full==1.4.0
pip install mmdet==2.14.0
pip install mmsegmentation==0.14.1git clone https://github.com/open-mmlab/mmdetection3d.git
cd mmdetection3d
git checkout v0.17.1 # Other versions may not be compatible.
pip install -e . 

注意

如果mmdet3d最终安装成功,但跑代码报非语法类错误,要重装,必须安装上面的顺序都重新来过,特别是pytorch、mmcv-full、mmdet、mmsegmentation、mmdet3d的顺序不能动。

错误集合

cl: 'cp1' codec can't decode bytes in position 0--1

在安装mmdet3d时出现如上错误,会报出出错的代码,将其中的解码方式从“oem”改为"utf-8",之后参考如下博客操作彻底解决:
https://blog.csdn.net/tanmx219/article/details/100829920
拉到最后,看“办法二”小结,按该方法操作并重启之后就没问题了

ImportError: DLL load failed while importing _ext: 找不到指定的模块

参考:https://blog.csdn.net/qihshe/article/details/136767242
卸载mmcv-full重装即可

TypeError: cannot pickle dict_keys object

如何定位TypeError: cannot pickle dict_keys object错误原因及解决NuScenes数据集在多进程并发训练或测试时出现的这个错误
https://blog.csdn.net/XCCCCZ/article/details/134295931

IndexError: tensors used as indices must be long, byte or bool tensors

这个错误如下语句引发:
assigned_labels[matched_row_inds] = gt_labels[matched_col_inds]
将gt_labels = gt_labels.to(torch.long)增加到上面语句的前面即可消除

got Long for the destination and Int for the source.

这个错误如下语句引发:
labels[pos_inds] = gt_labels[sampling_result.pos_assigned_gt_inds]
这个报错跟上面的问题差不多,同样前面增加gt_labels = gt_labels.to(torch.long)即可

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Linux-零拷贝技术
  • glm4-9B-chat,使用提示工程激活模型最大潜力
  • AR 眼镜之-开关机定制-实现方案
  • java语言中的websocket
  • 通过AI帮我分析实现的2019销售季度对比叠加图
  • nc的多种使用场景和各种反向shell方法
  • 【MySQL】什么是事务?在高并发场景使用事务会出现什么问题,该如何解决
  • 数据结构与算法 - 图
  • EFCore中结合Dapper执行SQL任意查询
  • 初识C++:开启C++之旅
  • Angular组件概念
  • 基于 Android studio 实现停车场管理系统--原创
  • Java String 去掉特殊字符之前的内容方法
  • 实训日记day29
  • 主成分分析(PCA)
  • [译] React v16.8: 含有Hooks的版本
  • AzureCon上微软宣布了哪些容器相关的重磅消息
  • CSS相对定位
  • HTTP中GET与POST的区别 99%的错误认识
  • Nginx 通过 Lua + Redis 实现动态封禁 IP
  • SegmentFault 技术周刊 Vol.27 - Git 学习宝典:程序员走江湖必备
  • Xmanager 远程桌面 CentOS 7
  • 大数据与云计算学习:数据分析(二)
  • 关于Java中分层中遇到的一些问题
  • 人脸识别最新开发经验demo
  • 消息队列系列二(IOT中消息队列的应用)
  • MPAndroidChart 教程:Y轴 YAxis
  • 机器人开始自主学习,是人类福祉,还是定时炸弹? ...
  • ​如何在iOS手机上查看应用日志
  • ​学习一下,什么是预包装食品?​
  • # windows 安装 mysql 显示 no packages found 解决方法
  • #我与Java虚拟机的故事#连载01:人在JVM,身不由己
  • (pojstep1.1.1)poj 1298(直叙式模拟)
  • (pycharm)安装python库函数Matplotlib步骤
  • (ZT)薛涌:谈贫说富
  • (zt)最盛行的警世狂言(爆笑)
  • (二十九)STL map容器(映射)与STL pair容器(值对)
  • (简单有案例)前端实现主题切换、动态换肤的两种简单方式
  • (十三)Flask之特殊装饰器详解
  • (四)c52学习之旅-流水LED灯
  • (四)模仿学习-完成后台管理页面查询
  • (一)C语言之入门:使用Visual Studio Community 2022运行hello world
  • (一)Kafka 安全之使用 SASL 进行身份验证 —— JAAS 配置、SASL 配置
  • (转)Linux下编译安装log4cxx
  • (转载)hibernate缓存
  • ******之网络***——物理***
  • ***linux下安装xampp,XAMPP目录结构(阿里云安装xampp)
  • *Algs4-1.5.25随机网格的倍率测试-(未读懂题)
  • .L0CK3D来袭:如何保护您的数据免受致命攻击
  • .NET 4.0中的泛型协变和反变
  • .NET C# 操作Neo4j图数据库
  • .net core webapi 部署iis_一键部署VS插件:让.NET开发者更幸福
  • .NET 快速重构概要1
  • .NET 设计模式—适配器模式(Adapter Pattern)
  • .Net多线程总结