一 安装软硬件介绍

       硬件:RTX 3060 6GB

       驱动及软件:Pyhton:3.7.8、CUDA:11.3、cuDNN:8.4.0、torch:1.12.0、torchvision:0.13.0、mmcv-full:1.6.0、MMDetection:2.25.3

faiss GPU版本 gpuz下哪个版本_深度学习

上述所有资料的百度下载链接【由于网络原因,为了下载这些资源,曾耗费很多时间】:

链接:https://pan.baidu.com/s/1ecfhzWUgB1DbOj_5lkhs6g 
提取码:5xto

二 加速环境CUDA和cuDNN的安装

       由于要使用GPU,需要安装CUDA和cuDNN,首先查看自己显卡驱动适合的CUDA版本,以我的电脑为例,可以安装11.6及以下的版本,我最终选择的是安装11.3【为什么选择11.3,也是看了前人的总结,还好一路顺利】。

       如果上面的版本不适合你,请去官网下载:

      CUDA下载地址:
      https://developer.nvidia.com/cuda-toolkit-archive

      cuDNN下载地址:
      https://developer.nvidia.com/rdp/cudnn-archive

      如何安装这个环境呢,请参考下文【一步一步走,错不了】:

     【CUDA】cuda安装 (windows版)_何为xl的博客-CSDN博客_cuda windows

faiss GPU版本 gpuz下哪个版本_faiss GPU版本_02

三  安装GPU版的Pytorch

    Pytorch 各历史版本的下载地址【根据自己的环境,选择对应的版本即可】:

Previous PyTorch Versions | PyTorch

faiss GPU版本 gpuz下哪个版本_faiss GPU版本_03

    最终在命令行输入安装命令、即可正常安装:

# CUDA 11.3
pip install torch==1.12.0+cu113 torchvision==0.13.0+cu113 torchaudio==0.12.0 --extra-index-url https://download.pytorch.org/whl/cu113


四 安装mmcv-full

       MMCV有2个版本,一个是mmcv-full完整版,一个是mmcv精简版,需要安装的是mmcv-full完整版。

      详细安装教程可参考以下链接:

      安装 MMCV — mmcv 1.7.0 文档

     安装方式1——使用pip安装:

     根据系统的类型、CUDA 版本、PyTorch 版本以及 MMCV 版本选择相应的安装命令,下图所示为选择的最终结果,对应的安装命令为:

faiss GPU版本 gpuz下哪个版本_pytorch_04

pip install mmcv-full==1.6.0 -f https://download.openmmlab.com/mmcv/dist/cu113/torch1.12/index.html

 五 安装MMDetection

       直接使用pip安装即可,需要注意和mmcv-full版本的对应关系,此处使用:

pip install mmdet==2.25.3

       版本对应关系及其他安装方法,可以参考以下链接:

依赖 — MMDetection 2.25.1 文档

     可能出现的问题1:error: Microsoft Visual C++ 14.0 or greater is required. Get it with Microsoft C++ Build Tools

faiss GPU版本 gpuz下哪个版本_人工智能_05

    这是因为缺乏C++依赖,导致安装pycocotools失败。根据提示链接,进入下载文件,vs_BuildTools.exe,之后安装C++依赖。

   在右侧可选项目里,前2个必须选,我第一次选择的其他的,导致最后没有成功。

faiss GPU版本 gpuz下哪个版本_人工智能_06

可能出现的问题2:vs_BuildTools.exe在加载时,进度一直是0,资源一直无法下载。

faiss GPU版本 gpuz下哪个版本_faiss GPU版本_07

    解决措施:根据网上的方案,修改DNS地址,如下图所示,最后可以正常下载了。

faiss GPU版本 gpuz下哪个版本_深度学习_08

       可能出现的问题3:安装了C++环境,还是无法运行,报错:"Unable to find vcvarsall.bat"  distutils.errors.DistutilsPlatformError: Microsoft Visual C++ 14.0 or greater is required. 

         这是由于安装的C++环境版本不对造成的,上面的链接安装的是VS2022,系统要求安装VS2015、2017或2019,最终我安装的VS2015,成功了。

faiss GPU版本 gpuz下哪个版本_深度学习_09

六 结果验证

   下载MMDetection源码,下载地址:

           文件 · v2.25.3 · mirrors / open-mmlab / mmdetection · GitCode

           下载模型权重文件,见文章开头百度链接,在mmdetection文件夹下新建一个py文件,新建一个checkpoints文件夹并把权重拷贝进去,输入以下代码进行测试。

faiss GPU版本 gpuz下哪个版本_faiss GPU版本_10

from mmdet.apis import init_detector, inference_detector, show_result_pyplot

config_file = r".\configs\faster_rcnn\faster_rcnn_r50_fpn_1x_coco.py"
checkpoint_file = r".\checkpoints\faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth"
device = 'cuda:0'

# 初始化检测器
model = init_detector(config_file, checkpoint_file, device=device)
img = "./test.jpeg"
# 模型推理
result = inference_detector(model, img)
# 结果展示
# model.show_result(img, result, show=True, out_file='test_result.jpg')
show_result_pyplot(model=model, img=img, result=result, score_thr=0.5)

七 其他

     1、使用pip安装时,建议设置永久镜像源地址:

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

    2、安装时版本需要对应,否则会出莫名奇妙的错误,安装前先统筹规划好。我在C++环境浪费的时间最多,因为磁盘空间有限,不想装大包。。。