SpatialLM项目使用教程
1. 项目介绍
SpatialLM 是一个由 manycore-research 开发的大型语言模型,专门设计用于处理3D点云数据,并生成结构化的3D场景理解输出。这些输出包括墙壁、门、窗户以及具有语义类别的定向物体边界框。SpatialLM 不同于之前需要专业设备进行数据采集的方法,它可以处理来自单目视频序列、RGBD图像和LiDAR传感器的点云。这种多模态架构有效地桥接了非结构化3D几何数据与结构化3D表示之间的差距,提供了高级别的语义理解,增强了机器人在体、自主导航和其他复杂3D场景分析任务中的空间推理能力。
2. 项目快速启动
环境准备
- Python 3.11
- Pytorch 2.4.1
- CUDA 版本 12.4
克隆仓库
git clone https://github.com/manycore-research/SpatialLM.git
cd SpatialLM
创建 Conda 环境
conda create -n spatiallm python=3.11
conda activate spatiallm
conda install -y nvidia/label/cuda-12.4.0::cuda-toolkit conda-forge::sparsehash
安装依赖
pip install poetry
poetry config virtualenvs.create false --local
poetry install
poetry install-torchsparse
下载示例点云数据
huggingface-cli download manycore-research/SpatialLM-Testset pcd/scene0000_00.ply --repo-type dataset --local-dir .
运行推理
python inference.py --point_cloud pcd/scene0000_00.ply --output scene0000_00.txt --model_path manycore-research/SpatialLM-Llama-1B
可视化结果
python visualize.py --point_cloud pcd/scene0000_00.ply --layout scene0000_00.txt --save scene0000_00.rrd
rerun scene0000_00.rrd
3. 应用案例和最佳实践
以下是一个使用 SpatialLM 从 RGB 视频估计场景布局的例子:
- 使用 MASt3R-SLAM 或其他重建方法从 RGB 视频中重建点云。
- 将重建的点云作为输入提供给 SpatialLM 模型。
- 运行推理并获取结构化的3D场景理解输出。
- 使用 Rerun 工具可视化点云和预测的3D布局。
4. 典型生态项目
SpatialLM 可以与多种项目和工具集成,例如:
- MASt3R-SLAM: 用于从 RGB 视频重建点云的 SLAM 系统。
- Rerun: 用于可视化和调试3D数据的工具。
- HuggingFace: 提供模型下载和管理的平台。
以上是 SpatialLM 的基本使用教程,开发者可以根据具体需求进一步探索和集成该模型。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考



