No module named 'mmcv._ext'
一、问题描述
使用目标检测开源工具MMDetection时,出现如下报错:
ModuleNotFoundError: No module named 'mmcv._ext'
二、问题分析
很有可能是你在开始安装mmcv-full的时候,没有指定版本,选择直接安装,如下:
pip install mmcv-full
采用这样默认安装mmcv-full的方式,如果与你环境里的cuda和torch版本不匹配,就容易出现上面报错
解决方法1. 更改mmcv安装方式 :
方式1, 打开:https://github.com/open-mmlab/mmcv
点击下图作者已经建立好的对应版本,进行安装。
我的是torch1.6. cuda10.2:
pip install mmcv-full==latest+torch1.6.0+cu102 -f https://download.openmmlab.com/mmcv/dist/index.html
解决方法2,到官网把whl下载下来,离线安装(建议使用)
官网1:https://download.openmmlab.com/mmcv/dist/index.html
我的环境是cuda1.6.0+cuda10.1+python3.7,符合的有很多,选一个较新的版本下载。
官网2:https://download.openmmlab.com/mmcv/dist/cu101/torch1.6.0/
我的环境是cuda1.6.0+cuda10.1+python3.7,找python3.7的,符合的有很多,选一个较新的版本下载。
然后,pip install *.whl即可
原文链接:https://blog.csdn.net/jizhidexiaoming/article/details/108837584
解决方案3
(1) 卸载掉原来的mmcv
pip uninstall mmcv-full
(2) 重新安装正确版本的mmcv-full
其中,{cu_version}、{torch_version}分别对应cuda和torch的版本号
pip install mmcv-full -f https://download.openmmlab.com/mmcv/dist/{cu_version}/{torch_version}/index.html
例如,我安装的是cuda10.2、pytorch1.8.0,所以应该输入命令:
pip install mmcv-full==1.2.4 -f https://download.openmmlab.com/mmcv/dist/cu102/torch1.8.0/index.html
注意:mmcv-full我这里推荐用1.2.4版本的。