MMdetection MMCV 版本冲突

MMdetection MMCV 版本冲突
请问有朋友遇到过这种情况吗
我在tools/create_data.py的时候mmcv版本在两个要求下是互斥的:
要求低版本:

img

要求高版本:

img

我最开始是在conda里面用mim install mmcv-full装的
我的版本是torch=1.12.1, cuda=11.3
最奇怪的是之前同样的情况下没遇到过这问题,不知道是不是mmcv更新了还是什么
求解答,感谢

首先检查下是否同时安装了mmcv和mmcv-full,如果有请卸载掉一个,否则会出现问题。其次,MMdetection 对mmcv的版本要求是互斥的,说明MMdetection 有可能没意义安装好或者有问题,你可以更新下或者重新安装下MMdetection

版本冲突就要对应安装版本

mmdetection3d环境配置过程error大全
可以借鉴下
https://blog.csdn.net/weixin_44398263/article/details/115838929

这个问题可能是由于 mmcv-full 版本和其他依赖包版本的冲突导致的。

建议你检查一下当前安装的 mmcv-full 版本是否与 mmdetection 要求的版本兼容。你可以通过以下命令来查看当前 mmcv-full 的版本:

pip show mmcv-full

然后,确认一下 mmcv-full 的版本是否符合 mmdetection 的要求。例如,如果你使用的是 mmdetection v2.17.0 版本,则其对 mmcv-full 的版本要求如下:

mmcv-full>=1.3.0, <1.4.0

如果发现版本不兼容,可以尝试卸载当前版本的 mmcv-full,并重新安装符合要求的版本。示例命令如下:

pip uninstall mmcv-full
pip install mmcv-full==1.3.0 -f https://download.openmmlab.com/mmcv/dist/cu113/torch1.10.0/index.html

另外,还可以考虑创建一个新的 conda 环境,并在该环境中安装符合要求的版本,以避免不必要的冲突。

以下答案由GPT-3.5大模型与博主波罗歌共同编写:
这种情况可能是因为你当前的MMCV版本既不满足要求低版本,也不满足要求高版本,所以会出现冲突。我们可以尝试解决方法如下:

  1. 升级或降低MMCV版本

可以尝试升级或者降低MMCV版本来解决冲突问题。可以使用以下命令升级或降低MMCV版本:

升级:pip install mmcv-full --upgrade

降低:pip install mmcv-full=={version} (其中{version}是指需要安装的MMCV版本号)

  1. 更新MMdetection

如果MMdetection的版本过老,可以尝试使用最新版本的MMdetection。可以使用以下命令更新MMdetection:

pip install mmcv-full=={version}

其中{version}是指最新版本的MMdetection。

  1. 解决依赖关系冲突

如果以上两种方法都不行,那说明这两个版本确实是冲突的。可能是由于其他依赖库与两个版本有冲突引起的。可以尝试通过更新其他依赖库来解决冲突问题。

最后,建议在创建虚拟环境中安装软件包,这样可以减少版本冲突问题的发生。例如可以使用anaconda或者virtualenv创建虚拟环境来安装软件包。
如果我的回答解决了您的问题,请采纳!

你这个torch版本好高,应该就是mmcv版本太低了

引用chatGPT作答,这个问题可能是由于mmcv的版本变化引起的。您可以尝试使用新的mmcv版本来解决这个问题。

另外,您可以尝试按照下面的步骤来解决这个问题:

1.卸载当前安装的mmcv版本

pip uninstall mmcv-full

2.安装指定版本的mmcv

pip install mmcv==1.3.12 -f https://download.openmmlab.com/mmcv/dist/cu113/torch1.12.0/index.html

这里,我们选择了mmcv的版本1.3.12,同时也指定了CUDA和PyTorch的版本。

3.检查版本

import mmcv
print(mmcv.__version__)

您应该会看到输出为1.3.12。

如果您仍然遇到问题,请检查您的CUDA和PyTorch版本是否与mmcv所需的版本相匹配,并根据需要更新它们。

以下内容部分参考ChatGPT模型:


你好,我了解你的问题。这个问题是由于MMdetection和MMCV版本不兼容导致的。解决这个问题的思路是安装MMCV的正确版本,以满足MMdetection的要求。你可以通过以下步骤来解决这个问题:

  1. 确认你使用的MMCV版本是否符合MMdetection的要求。你可以在MMdetection的文档中查看版本要求。

  2. 如果你的MMCV版本不符合要求,可以通过pip卸载当前版本,然后安装符合要求的版本。例如,如果你需要安装0.5.0版本,可以使用以下命令:

pip uninstall mmcv
pip install mmcv==0.5.0
  1. 安装正确的MMCV版本后,你可以再次运行MMdetection,并检查是否仍然存在版本冲突问题。

希望这个解决方案能够帮助到你。如果你有任何问题,请随时联系我。


如果我的建议对您有帮助、请点击采纳、祝您生活愉快