openMMLab的mmcv和mmdet、mmdet3d、mmseg版本对应关系

2023-11-10 22:28

本文主要是介绍openMMLab的mmcv和mmdet、mmdet3d、mmseg版本对应关系,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 openmmlab提供了MIM来统一安装其多个mm功能框架包https://github.com/open-mmlab/mim,但是需要不借助MIM安装时,这里怎么确定要安装什么版本的mmcv和mmdet、mmdet3d、mmseg,在openmmlab网站主页上没有一个容易能找到的完整表格页面来详细记录他们之间的版本对应关系,好不容易找到个Faq页面,里面却只记录了最新的mmcv2.x和其它组件之间的版本,对历史1.x版居然都不记录!反正openmmlab对其mm序列多个功能框架包之间的完整历史版本的对应关系的说明就没有一个完整的清单列表或者统一查询的地方,每次使用基于mmdetection3D框架的模型代码时安装mm相关的包需要去多个页面耐心找!

例如我需要安装对应于CUDA11.6和pytorch1.12.0的mm序列包,是从这里 安装 MMCV — mmcv 2.1.0 文档

点击左下方的Read the Docs 的右边点击可以切换版本,选择v1.7.0,

进入

https://mmcv.readthedocs.io/zh-cn/v1.7.0/get_started/installation.html

才找到和CUDA11.6+pytorch1.12对应的mmcv最低版是1.6.0 !

找到了最基础的mmcv该安装什么版本后,再查找其它框架包该安装什么对应的版本,mmdetection从Prerequisites — MMDetection 2.24.0 documentation

这里找到了mmcv1.6.0对应需安装 2.24.0版mmdetection

对于mmsegmenation,在这里找到了对应的版本说明:

常见问题解答(FAQ) — MMSegmentation 0.30.0 文档

对于mmdetection3d,首选找到mmdetection3d v1.1.0版本对应的安装说明页面:

Get Started — MMDetection3D 1.1.0 documentation

 但是这里推荐的是mmcv2.0,不符合我要的1.6.0,再找紧挨的的版本v1.0.0rc01

Prerequisites — MMDetection3D 1.0.0rc1 documentation

(注意的版本的网址末尾没有/get_started.html需要删掉),里面提到的最高版mmcv是1.5.0

所以估计v1.0.0.rc4应该支持mmcv1.6.0,但是不确定,继续网上搜索,最后找到了mmdet3d dev Faq里的说明:

FAQ — MMDetection3D 1.0.0rc4 documentation

确认了mmdetection3d v1.0.0rc4和mmcv1.6.0是匹配的,但是这个表格里有个错误就是,说mmsegmentation的0.20.0版本和mmcv1.6.0-1.7.0匹配:

实际上不是这样的,安装后运行时会报错:

import mmsegFile "/opt/conda/lib/python3.8/site-packages/mmseg/__init__.py", line 58, in <module>assert (mmcv_min_version <= mmcv_version <= mmcv_max_version), \
AssertionError: MMCV==1.6.0 is used but incompatible. Please install mmcv>=(1, 3, 13, 0, 0, 0), <=(1, 5, 0, 0, 0, 0).

需要安装mmsegmenation0.24.0以上版本才行!

这篇关于openMMLab的mmcv和mmdet、mmdet3d、mmseg版本对应关系的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


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

相关文章

java中新生代和老生代的关系说明

《java中新生代和老生代的关系说明》:本文主要介绍java中新生代和老生代的关系说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、内存区域划分新生代老年代二、对象生命周期与晋升流程三、新生代与老年代的协作机制1. 跨代引用处理2. 动态年龄判定3. 空间分

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

MySQL版本问题导致项目无法启动问题的解决方案

《MySQL版本问题导致项目无法启动问题的解决方案》本文记录了一次因MySQL版本不一致导致项目启动失败的经历,详细解析了连接错误的原因,并提供了两种解决方案:调整连接字符串禁用SSL或统一MySQL... 目录本地项目启动报错报错原因:解决方案第一个:第二种:容器启动mysql的坑两种修改时区的方法:本地

conda安装GPU版pytorch默认却是cpu版本

《conda安装GPU版pytorch默认却是cpu版本》本文主要介绍了遇到Conda安装PyTorchGPU版本却默认安装CPU的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的... 目录一、问题描述二、网上解决方案罗列【此节为反面方案罗列!!!】三、发现的根本原因[独家]3.1 p

Redis指南及6.2.x版本安装过程

《Redis指南及6.2.x版本安装过程》Redis是完全开源免费的,遵守BSD协议,是一个高性能(NOSQL)的key-value数据库,Redis是一个开源的使用ANSIC语言编写、支持网络、... 目录概述Redis特点Redis应用场景缓存缓存分布式会话分布式锁社交网络最新列表Redis各版本介绍旧

IIS 7.0 及更高版本中的 FTP 状态代码

《IIS7.0及更高版本中的FTP状态代码》本文介绍IIS7.0中的FTP状态代码,方便大家在使用iis中发现ftp的问题... 简介尝试使用 FTP 访问运行 Internet Information Services (IIS) 7.0 或更高版本的服务器上的内容时,IIS 将返回指示响应状态的数字代

mybatis的mapper对应的xml写法及配置详解

《mybatis的mapper对应的xml写法及配置详解》这篇文章给大家介绍mybatis的mapper对应的xml写法及配置详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录前置mapper 对应 XML 基础配置mapper 对应 xml 复杂配置Mapper 中的相

Android NDK版本迭代与FFmpeg交叉编译完全指南

《AndroidNDK版本迭代与FFmpeg交叉编译完全指南》在Android开发中,使用NDK进行原生代码开发是一项常见需求,特别是当我们需要集成FFmpeg这样的多媒体处理库时,本文将深入分析A... 目录一、android NDK版本迭代分界线二、FFmpeg交叉编译关键注意事项三、完整编译脚本示例四

查看MySQL数据库版本的四种方法

《查看MySQL数据库版本的四种方法》查看MySQL数据库的版本信息可以通过多种方法实现,包括使用命令行工具、SQL查询语句和图形化管理工具等,以下是详细的步骤和示例代码,需要的朋友可以参考下... 目录方法一:使用命令行工具1. 使用 mysql 命令示例:方法二:使用 mysqladmin 命令示例:方

Java版本不兼容问题详细解决方案步骤

《Java版本不兼容问题详细解决方案步骤》:本文主要介绍Java版本不兼容问题解决的相关资料,详细分析了问题原因,并提供了解决方案,包括统一JDK版本、修改项目配置和清理旧版本残留等步骤,需要的朋... 目录错误原因分析解决方案步骤第一步:统一 JDK 版本第二步:修改项目配置第三步:清理旧版本残留兼容性对