首页
/ Minkowski Engine 使用教程

Minkowski Engine 使用教程

2026-01-30 05:15:47作者:薛曦旖Francesca

1. 项目介绍

Minkowski Engine 是一个为高维稀疏张量设计的自动微分神经网络库。它支持所有标准的神经网络层,如卷积、池化、反池化和广播操作。这个库特别适用于处理空间稀疏的高维输入和3D数据,例如3D感知、注册和统计数据分析。

2. 项目快速启动

环境要求

  • Ubuntu 14.04 或更高版本
  • CUDA 10.1.243 或更高版本(与 PyTorch 使用的 CUDA 版本相同)
  • PyTorch 1.7 或更高版本
  • Python 3.6 或更高版本
  • ninja(用于安装)
  • GCC 7.4.0 或更高版本

安装

使用 pip 安装

首先,根据 PyTorch 官方文档安装 PyTorch。然后安装 openblas。

sudo apt install build-essential python3-dev libopenblas-dev
pip install torch ninja
pip install -U MinkowskiEngine --install-option="--blas=openblas" -v --no-deps

如果需要从最新源代码安装,可以使用以下命令:

pip install -U git+https://github.com/NVIDIA/MinkowskiEngine --no-deps

使用 Anaconda 安装

MinkowskiEngine 支持 CUDA 10.2 和 CUDA 11.1,适用于大多数最新的 PyTorch 版本。

CUDA 10.2

推荐使用 Python 3.6 或更高版本。首先,根据 Anaconda 文档安装 Anaconda。

sudo apt install g++-7  # 对于 CUDA 10.2,必须使用 GCC < 8
conda create -n py3-mink python=3.8
conda activate py3-mink
conda install openblas-devel -c anaconda
conda install pytorch=1.9.0 torchvision cudatoolkit=10.2 -c pytorch -c nvidia

然后安装 MinkowskiEngine:

export CXX=g++-7
pip install -U git+https://github.com/NVIDIA/MinkowskiEngine -v --no-deps --install-option="--blas_include_dirs=${CONDA_PREFIX}/include" --install-option="--blas=openblas"
CUDA 11.X

推荐使用 Python 3.6 或更高版本。首先,根据 Anaconda 文档安装 Anaconda。

conda create -n py3-mink python=3.8
conda activate py3-mink
conda install openblas-devel -c anaconda
conda install pytorch=1.9.0 torchvision cudatoolkit=11.1 -c pytorch -c nvidia

安装 MinkowskiEngine:

# 注释以下行以指定 cuda 家目录。确保 `$CUDA_HOME/nvcc --version` 是 11.X
# export CUDA_HOME=/usr/local/cuda-11.1
pip install -U git+https://github.com/NVIDIA/MinkowskiEngine -v --no-deps

3. 应用案例和最佳实践

Minkowski Engine 支持多种网络架构和应用。以下是一些示例:

  • 语义分割

    python -m examples.indoor
    
  • 分类

    python -m examples.classification_modelnet40
    
  • 重建

    python -m examples.reconstruction
    
  • 完成

    python -m examples.completion
    
  • 检测

    python -m examples.detection
    

4. 典型生态项目

目前没有提供具体的生态项目列表。但是,Minkowski Engine 可以与多种深度学习框架和库配合使用,为稀疏数据处理提供强大的支持。用户可以根据自己的需求,探索更多的应用场景和项目。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起