最近需要学习目标检测相关的东西,配了一个mmdetection环境遇到几个比较麻烦的错误记录一下。
# Check Pytorch installation
import torch, torchvision
print(torch.__version__, torch.cuda.is_available())
# Check MMDetection installation
import mmdet
print(mmdet.__version__)
# Check mmcv installation
from mmcv.ops import get_compiling_cuda_version, get_compiler_version
print(get_compiling_cuda_version())
print(get_compiler_version())
上面的代码在配置完后可以进行检测,如果可以正确输出版本号,并且第一个输出值为TRUE证明对应的包都互相兼容了。
遇到的问题
- torch.cuda.is_available() 输出false:这是因为torch和CUDA的版本不兼容,可以去torch的官网看一下对应CUDA的版本,我这里使用CUDA10.1、torch1.5.1可以兼容,但是第一次也是这个配置报不知道为什么报错。
解决方法:如果版本没问题可以重新安装CUDA或者torch - get_compiler_version()使用时提示mmcv包不存在,也是mmvc的版本问题,有时候会报这个错。
解决方法:mim install mmcv-full 先用mim安装最新版mmcv,然后卸载,再手动指定需要的版本安装一次。我使用1.4.0可以兼容。
可以看下图选择mmdet和对应的mmvc版本要求,有需要的可以去官网看