当前位置: 首页 > news >正文

MMDetection3D最全源码安装教程

目录

  • 一、简介
  • 二、mmcv-full安装
  • 三、MMDetection安装
  • 四、MMSegmentation安装
  • 五、MMDetection3D安装
  • 六、CUMM/SPCONV安装
  • 七、参考链接

一、简介

  MMDetection3D 是一个基于 PyTorch 的目标检测开源工具箱,下一代面向3D检测的平台,它是 OpenMMlab 项目的一部分,这个项目由香港中文大学多媒体实验室和商汤科技联合发起。

主要特性

  • 支持多模态/单模态的检测器。

  支持多模态/单模态检测器,包括 MVXNet,VoteNet,PointPillars 等。

  • 支持户内/户外的数据集

  支持室内/室外的3D检测数据集,包括 ScanNet、SUNRGB-D、Waymo、nuScenes、Lyft、KITTI数据集。

  • 与 2D 检测器的自然整合

  MMDetection 支持的300+个模型 , 40+的论文算法, 和相关模块都可以在此代码库中训练或使用。

  • 性能高

  训练速度比其他代码库更快。

安装环境前,请提前安装CUDA、Visual Studio 2019(MSVC 编译器,linux确保gcc已安装)、与CUDA版本对应的Pytorch版本。

建议不要使用pip进行安装,因为并不是所有CUDA版本都可通过pip进行安装,其次,各个包之间存在依赖关系,容易引起冲突,因此不建议直接pip安装。

二、mmcv-full安装

  • 1、克隆代码仓库
git clone https://github.com/open-mmlab/mmcv.git
cd mmcv
  • 2、安装 ninja 和 psutil 以加快编译速度
pip install -r requirements/optional.txt
  • 3、编译(预估耗时 10 分钟)(Linux)
pip install -e . -v

  Windows系统分CPU和GPU两个版本:
  (1)编译

# CPU
python setup.py build_ext  #  如果成功, cl 将被启动用于编译算子
python setup.py develop  # 安装
# GPU
$env:CUDA_HOME = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.4"  # 设置CUDA路径
$env:CUDA_HOME = $env:CUDA_PATH_V11_4  # CUDA_PATH_V11_4 已经在环境变量中
set TORCH_CUDA_ARCH_LIST="8.9"   # 这里需要改成你的显卡对应的目标架构
# 可通过在终端输入:&"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\extras\demo_suite\deviceQuery.exe"命令查看

  (2)安装

python setup.py build_ext  # 如果成功, cl 将被启动用于编译算子
python setup.py develop # 安装
  • 4、验证安装
python .dev_scripts/check_installation.py

在这里插入图片描述

三、MMDetection安装

  从源代码开始编译:

git clone https://github.com/open-mmlab/mmdetection.git
cd mmdetection
pip install -r requirements/build.txt
pip install -v -e . # or "python setup.py develop"

四、MMSegmentation安装

  从源代码开始编译:

git clone https://github.com/open-mmlab/mmsegmentation.git
cd mmsegmentation
pip install -e . # or "python setup.py develop"

五、MMDetection3D安装

  从源代码开始编译:

git clone https://github.com/open-mmlab/mmdetection3d.git
cd mmdetection3d
pip install -v -e . # or "python setup.py develop"

六、CUMM/SPCONV安装

  运行以下python命令:

import torch
print(torch.cuda.get_device_capability())

  或者直接使用命令行输入:

python -c "import torch; print(torch.cuda.get_device_capability())"

在这里插入图片描述
 当前CUDA对应的GPU Arch版本为8.9,具体版本对应关系如下表所示:

CUDA versionGPU Arch List
11.1~11.752,60,61,70,75,80,86
11.8+60,70,75,80,86,89,90

  在Linux/macOS上设置临时环境变量为:

export CUMM_CUDA_ARCH_LIST="8.9"
export TORCH_CUDA_ARCH_LIST="8.9"

  在Windows上设置临时环境变量为:

set TORCH_CUDA_ARCH_LIST=8.9
set CUMM_CUDA_ARCH_LIST=8.9
  • 如果已经安装过cumm和spconv,需要使用pip卸载。

  • Windows需要安装visual studio 2019 or newer,并且确保C++ development component已安装,还需要安装CUDA。

  • 克隆项目目录
    克隆cumm项目目录,在该目录下进行编译。

git clone https://github.com/FindDefinition/cumm
cd cumm
pip install -e .

  克隆spconv项目目录,在该目录下进行编译。

git clone https://github.com/traveller59/spconv
cd spconv
tools/msvc_setup.ps1   # 在Windows终端中,Linux则不用
pip install -e .

  最后在python环境下,导入spconv,即输入import spconv,等待编译完成即可。
在这里插入图片描述

七、参考链接

[1] https://github.com/open-mmlab/mmdetection3d
[2] https://zhuanlan.zhihu.com/p/605038027

相关文章:

  • 量子力学:量子力学为什么不属于经典物理学的范畴?
  • NISP和CISP有什么区别,哪个更好
  • JAVA 关键词
  • Mac系统-最方便的一键环境部署软件ServBay(支持php,java,python,node,go,mysql等)没有之一,已亲自使用!
  • 【LeetCode】大厂面试算法真题回忆(99)--Linux发行版的数量
  • TCP 的四次挥手
  • PTA刷题笔记(难度预警!!!有详解)
  • 再写数的划分(dfs)
  • 第四章 面向对象(基础)
  • SymAgent:一种用于知识图谱复杂推理的神经符号自学Agent框架
  • Linux Kernel调试:强大的printk(三)
  • Markdown 到 LaTeX:Overleaf 学习笔记
  • 基于javaweb的SpringBoot体检管理系统设计与实现(源码+文档+部署讲解)
  • 【C++】unordered_map、unordered_set 的使用
  • CQF预备知识:Python相关库 -- NumPy 基础知识 - ndarray 索引
  • vue3组件--无限滚动效果
  • Android7 Input(九)View 建立Input Pipeline
  • 15 dart类(get,set,静态,继承,抽象,接口,混入)
  • Gartner报告解读《Technical Professionals Need to Track 5 ImportantLLM Developments》
  • 论文审稿之我对SCI写作的思考
  • 香港主机做电影网站/品牌设计公司
  • 免费卡盟网站建设/网络营销与管理
  • 接做网站的私活怎么报价/上海谷歌seo推广公司
  • 长沙网站建设开发/seo优化包括什么
  • 自己做网站挂广告/什么软件可以弄排名
  • 网站建设 风险/网络营销做得好的公司