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

3D检测笔记:MMDetection3d环境配置

目录

  • 条件准备
  • 配置mmdetection3d环境
    • Step1:创建conda环境
    • Step2:在环境下安装PyTorch
    • Step3:安装MMDetection引擎
    • Step4:安装MMDetection3D库
    • Step5:安装稀疏卷积(spconv)库
  • 验证安装

条件准备

 mmdetection3d是一个使用于3D检测领域的开源框架,支持各种3D任务(点云 3D 检测、单目 3D 检测、多模态 3D 检测和点云 3D 语义分割等)的部署与实现,其内置了许多3D检测算法,如下图。可以让我们很方便地复现相关的论文代码,加速科研效率。
在这里插入图片描述
 本博客基于官方的配置教程,分享解决自己在环境配置过程中的一些问题。需要准备的前提如下:

  1. Linux系统。
  2. 一块GPU,需要支持CUDA10.0以上。例如Kepler(如GTX 600/700系列)、Maxwell(如GTX 900系列)、Pascal(如GTX 10系列)及部分Volta架构显卡‌。
  3. 安装nvcc编译器。
     安装之前要确认安装了合适版本(与pytorch相兼容)的nvcc编译器。这里可以参考我这篇博客
  1. 进入这个链接,选择合适的版本,推荐runfile的方法安装。
    在这里插入图片描述
  2. 运行脚本
    在这里插入图片描述
  3. 添加环境变量
    #添加cuda路径
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64
    export PATH=$PATH:/usr/local/cuda/bin
    export CUDA_HOME=$CUDA_HOME:/usr/local/cuda
  1. 安装miniconda或者conda
mkdir -p ~/miniconda3
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
rm ~/miniconda3/miniconda.sh#使能环境变量
source ~/miniconda3/bin/activate
# 初始化conda
conda init --all

配置mmdetection3d环境

Step1:创建conda环境

# 创建一个python3.8的环境
conda create --name openmmlab python=3.8 -y
# 激活环境
conda activate openmmlab

Step2:在环境下安装PyTorch

conda install pytorch torchvision -c pytorch

Step3:安装MMDetection引擎

执行安装命令:

pip install -U openmim
mim install mmengine
mim install "mmcv>=2.0.0rc4,<2.2.0" 
mim install 'mmdet>=3.0.0'

Step4:安装MMDetection3D库

第一种方法:从源码安装mmdetection3d库。

git clone https://github.com/open-mmlab/mmdetection3d.git -b dev-1.x
# "-b dev-1.x" means checkout to the `dev-1.x` branch.
cd mmdetection3d
pip install -v -e .
# "-v" means verbose, or more output
# "-e" means installing a project in edtiable mode,
# thus any local modifications made to the code will take effect without reinstallation.

第二种方法:使用mim进行安装:

mim install "mmdet3d>=1.1.0"

Step5:安装稀疏卷积(spconv)库

 访问spconv的github链接,选择合适的版本进行安装:
在这里插入图片描述

验证安装

A:
 不知道为什么官方教程中的测试文件我一直下载不了,因此直接使用python解释器导入一下mmdetection3d库测试一下安装是否成功。


pythonPython 3.8.20 (default, Oct  3 2024, 15:24:27) 
[GCC 11.2.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import mmdet3d
>>> print(mmdet3d.__version__)
1.4.0
>>> 

能成功打印版本信息说明安装应该是没有什么问题的。

B:
 如果你能成功下载下面的文件:

mim download mmdet3d --config pointpillars_hv_secfpn_8xb6-160e_kitti-3d-car --dest .

如果有时候可能会报错,问题有可能是ssl证书过期导致的,只要禁用ssl证书即可:
在这里插入图片描述
即原命令改成:

mim download mmdet3d --config pointpillars_hv_secfpn_8xb6-160e_kitti-3d-car --dest . --ignore-ssl

下载完成后进入mmdetection3d的源码目录,执行下面的操作:

python demo/pcd_demo.py demo/data/kitti/000008.bin pointpillars_hv_secfpn_8xb6-160e_kitti-3d-car.py hv_pointpillars_secfpn_6x8_160e_kitti-3d-car_20220331_134606-d42d15ed.pth --show

会有可视化结果输出。但是如果是WSL的话可能可视化会出现一些问题,那么只需要把--show参数去除掉即可:
在这里插入图片描述
只要推理成功,并且output文件夹内有输出结果,说明整个mmdetection3d库安装就是成功的:
在这里插入图片描述

http://www.lryc.cn/news/626084.html

相关文章:

  • Kubernetes Pod 控制器
  • 基于uni-app的成人继续教育教务管理系统设计与实现
  • PyTorch自动求导
  • 开源 C++ QT Widget 开发(一)工程文件结构
  • vfs_statfs使用 查看当前文件系统一些信息情况
  • RocketMq消费者动态订阅topic
  • 聚合链路与软件网桥的原理及配置方法
  • 【LeetCode 热题 100】279. 完全平方数——(解法一)记忆化搜索
  • JVM原生的assert关键字
  • 手写C++ string类实现详解
  • 使用redis读写锁实现抢券功能
  • 怎样平衡NLP技术发展中数据质量和隐私保护的关系?
  • JVM 面试精选 20 题(续)
  • JVM对象创建和内存分配
  • SpringAI接入openAI配置出现的问题全解析
  • 今日行情明日机会——20250819
  • Java开发面试实战:Spring Boot微服务与数据库优化案例分析
  • 星图云开发者平台新功能速递 | 微服务管理器:无缝整合异构服务,释放云原生开发潜能
  • 微服务如何集成swagger3
  • 微服务-08.微服务拆分-拆分商品服务
  • UE5 使用RVT制作地形材质融合
  • idea如何设置tab为4个空格
  • CSS backdrop-filter:给元素背景添加模糊与色调的高级滤镜
  • Day08 Go语言学习
  • Ansible 中的文件包含与导入机制
  • 常见 GC 收集器与适用场景:从吞吐量到亚毫秒停顿的全景指南
  • NestJS 依赖注入方式全解
  • TDengine IDMP 运维指南(3. 使用 Ansible 部署)
  • 【上升跟庄买入】副图/选股指标,动态黄色线由下向上穿越绿色基准线时,发出买入信号
  • day32-进程与线程(5)