杭州六小龙最新开源「空间理解模型」,保姆级教程来了!

简介: 前几天,“杭州六小龙”之一「群核科技」在GTC 2025大会开源了空间理解模型:SpatialLM。

01.SpatialLM 介绍

前几天,“杭州六小龙”之一「群核科技」在GTC 2025大会开源了空间理解模型:SpatialLM。

SpatialLM 是一款专门为三维空间理解设计的大语言模型,通过三维点云数据,生成结构化的三维场景理解输出,包括墙壁、门、窗等建筑元素,以及带有语义类别的定向物体边界框。与传统需要专用设备进行数据采集的方法不同,SpatialLM能够处理来自多种来源的点云数据,如:单目视频序列、RGBD图像和LiDAR传感器等。

image.gif 编辑

听起来很复杂,但简单地说,SpatialLM的本质就像是一台「空间翻译机」,通过视频理解物理世界的几何关系,再将其转化为机器能读懂的指令。

其工作原理如下:给定一个 RGB 视频,首先使用 MASt3R-SLAM 进行三维点云重建,然后利用 SpatialLM 将这些密集点云转化为结构化表示。点云编码器将点云信息编码为紧凑的特征表示,随后由大语言模型(LLM)生成描述场景的场景代码(scene codes),这些场景代码可以被进一步转换为三维结构布局。

image.gif 编辑

SpatialLM 运行原理

SpatialLM 当前提供了 1B 和 0.5B 两种模型版本,相比于现在的 LLM 而言可以说是很小了。SpatialLM 采用多模态结构,有效地将非结构化的三维几何数据与结构化的三维表示相结合,提供高层次的语义理解。这一特性增强了其在具身机器人、自主导航等复杂三维场景分析任务中的空间推理能力。

image.gif 编辑

 

仓库地址:

https://github.com/manycore-research/SpatialLM

模型地址:

1B:

https://modelscope.cn/models/manycore-research/SpatialLM-Llama-1B

0.5B:

https://modelscope.cn/models/manycore-research/SpatialLM-Qwen-0.5B

测试数据集:

https://www.modelscope.cn/datasets/manycore-research/SpatialLM-Testset

4月2日 20:00-21:30 SpatialLM 核心作者将在最新一期 AI模型社 直播分享项目技术细节,欢迎围观线上与作者互动!

02.保姆级部署教程

官方仓库:

https://github.com/manycore-research/SpatialLM

这里以 PyTorch 2.5.1+Python 3.12(ubuntu22.04)+CUDA 12.4 的云平台环境为例。

如果是本地运行,推荐 Ubuntu22.04+CUDA 12.4 的环境,按照官方教程使用 conda 创建 python3.11 环境并安装相关依赖。

参照官方教程,首先使用 conda 安装依赖:

conda install -y nvidia/label/cuda-12.4.0::cuda-toolkit conda-forge::sparsehash

image.gif

使用 poetry 环境:

这里由于 SpatialLM 官方的运行要求是 Python3.12,但是现在主流的云平台提供的大多是 3.12、3.10 版本的Python,且预装好了 PyTorch,所以笔者在测试时对依赖文件pyproject.toml进行了修改。

[tool.poetry]
name = "spatiallm"
version = "0.0.1"
description = "SpatialLM: Large Language Model for Spatial Understanding"
authors = ["ManyCore Research Team"]
license = "Llama3.2"
readme = "README.md"
[tool.poetry.dependencies]
python = ">=3.10,<3.13"
transformers = ">=4.41.2,<=4.46.1"
safetensors = "^0.4.5"
pandas = "^2.2.3"
einops = "^0.8.1"
numpy = "^1.26"
scipy = "^1.15.2"
scikit-learn = "^1.6.1"
toml = "^0.10.2"
tokenizers = ">=0.19.0,<0.20.4"
huggingface_hub = ">=0.25.0"
rerun-sdk = ">=0.21.0"
shapely = "^2.0.7"
bbox = "^0.9.4"
terminaltables = "^3.1.10"
open3d = "^0.19.0"
nvidia-cudnn-cu12 = "*"
nvidia-nccl-cu12 = "*"
poethepoet = {extras = ["poetry-plugin"], version = "^0.33.1"}
addict = "^2.4.0"
[tool.poe.tasks]
install-torchsparse = "pip install git+https://github.com/mit-han-lab/torchsparse.git"
[build-system]
requires = ["poetry-core", "setuptools", "wheel", "torch"]
build-backend = "poetry.core.masonry.api"

image.gif

安装 poetry 依赖:

pip install poetry && poetry config virtualenvs.create false --local
poetry install

image.gif

编译安装 torchsparse,可能需要一些时间:

poe install-torchsparse

image.gif

下载官方数据集中的 ply 格式的 3D 点云数据进行测试。

huggingface-cli download manycore-research/SpatialLM-Testset pcd/scene0000_00.ply --repo-type dataset --local-dir .

image.gif

下载 SpatialLM-Llama-1B 模型,大约需要 2.6GB:

modelscope download manycore-research/SpatialLM-Llama-1B --local_dir ./manycore-research/SpatialLM-Llama-1B

image.gif

模型推理:使用 ply 格式的点云文件生成 txt 格式的用于描述 3D 空间中的实体的文本。

 

python inference.py --point_cloud ./pcd/scene0000_00.ply --output scene0000_00.txt --model_path ./manycore-research/SpatialLM-Llama-1B

image.gif

将生成的文件合并为用于表示 3D 的文件

python visualize.py --point_cloud ./pcd/scene0000_00.ply --layout scene0000_00.txt --save scene0000_00.rrd

image.gif

可视化:如果云平台无法显示,可以拷贝到本地运行,需要安装 rerun-sdk(pip install rerun-sdk)

rerun scene0000_00.rrd

image.gif

效果如下:

 

考虑到部分同学配置环境可能会遇到一些问题,我们在AutoDL平台准备了SpatialLM的环境镜像,点击下方链接并直接创建Autodl示例即可。 https://www.codewithgpu.com/i/datawhalechina/self-llm/SpatialLM

https://live.csdn.net/v/472045

本教程已经在self-llm项目中更新,欢迎来Star🌟!

项目地址:

https://github.com/datawhalechina/self-llm/tree/master/models/SpatialLM

点击阅读原文,即可跳转模型链接~

想了解更多SpatialLM工作

4月2日 20:00-21:30

AI模型社 | 群核科技空间理解模型 SpatialLM,让机器人“看懂”三维世界

目录
相关文章
|
存储 数据采集 数据可视化
Open3d系列 | 1. Open3d实现点云数据读写、点云配准、点云法向量计算
Open3d系列 | 1. Open3d实现点云数据读写、点云配准、点云法向量计算
17769 1
Open3d系列 | 1. Open3d实现点云数据读写、点云配准、点云法向量计算
|
分布式计算 API Linux
通义千问API:找出两篇文章的不同
本章我们将介绍如何利用大模型开发一个文档比对小工具,我们将用这个工具来给互联网上两篇内容相近但版本不同的文档找找茬,并且我们提供了一种批处理文档比对的方案
|
算法 计算机视觉 开发者
|
存储 数据库
Dataset之ADE20k:ADE20k数据集的简介、安装、使用方法之详细攻略
Dataset之ADE20k:ADE20k数据集的简介、安装、使用方法之详细攻略
Dataset之ADE20k:ADE20k数据集的简介、安装、使用方法之详细攻略
|
数据采集 人工智能 数据可视化
SpatialLM:手机视频秒建3D场景!开源空间认知模型颠覆机器人训练
SpatialLM 是群核科技开源的空间理解多模态模型,能够通过普通手机拍摄的视频重建 3D 场景布局,赋予机器人类似人类的空间认知能力,适用于具身智能训练、自动导航、AR/VR 等领域。
1072 5
SpatialLM:手机视频秒建3D场景!开源空间认知模型颠覆机器人训练
|
2月前
|
存储 人工智能 前端开发
OpenClaw阿里云+Windows本地部署多Agent实战教程:1个人=一个高效 AI 军团
在AI自动化时代,单一Agent的“全能模式”早已无法满足复杂任务需求——记忆臃肿导致响应迟缓、上下文污染引发逻辑冲突、无关信息加载造成Token浪费,这些痛点让OpenClaw的潜力大打折扣。而多Agent架构的出现,彻底改变了这一现状:通过“单Gateway+多分身”模式,让一个Bot在不同场景下切换独立“大脑”,如同组建一支分工明确的AI团队,实现创意、写作、编码、数据分析等任务的高效协同。
3866 2
|
7月前
|
机器学习/深度学习 传感器 编解码
DINOv3上手指南:改变视觉模型使用方式,一个模型搞定分割、检测、深度估计
DINOv3是Meta推出的自监督视觉模型,支持冻结主干、仅训练轻量任务头即可在分割、深度估计等任务上达到SOTA,极大降低训练成本。其密集特征质量优异,适用于遥感、工业检测等多领域,真正实现“一个模型走天下”。
5115 2
DINOv3上手指南:改变视觉模型使用方式,一个模型搞定分割、检测、深度估计
|
机器学习/深度学习 人工智能 监控
Amodal3R:3D重建领域新突破!这个模型让残破文物完美还原,3D重建结果助力文物修复
Amodal3R是一种创新的条件式3D生成模型,通过掩码加权多头交叉注意力机制和遮挡感知层,能够从部分可见的2D图像中重建完整3D形态,仅用合成数据训练即可实现真实场景的高精度重建。
534 13
Amodal3R:3D重建领域新突破!这个模型让残破文物完美还原,3D重建结果助力文物修复
|
机器学习/深度学习 存储 文字识别
Llama 4上线魔搭社区!社区推理、微调实战教程来啦!
近期,Meta推出了Llama 4系列的首批模型: Llama 4 Scout 和 Llama 4 Maverick。
929 12
|
11月前
|
机器学习/深度学习 人工智能 算法
Python+YOLO v8 实战:手把手教你打造专属 AI 视觉目标检测模型
本文介绍了如何使用 Python 和 YOLO v8 开发专属的 AI 视觉目标检测模型。首先讲解了 YOLO 的基本概念及其高效精准的特点,接着详细说明了环境搭建步骤,包括安装 Python、PyCharm 和 Ultralytics 库。随后引导读者加载预训练模型进行图片验证,并准备数据集以训练自定义模型。最后,展示了如何验证训练好的模型并提供示例代码。通过本文,你将学会从零开始打造自己的目标检测系统,满足实际场景需求。
11132 1
Python+YOLO v8 实战:手把手教你打造专属 AI 视觉目标检测模型

热门文章

最新文章