首页 › weekly › 拍照变3D:8个开源重建神器

拍照变3D:8个开源重建神器,从一张照片到可交互场景

本期概览

第7轮挖掘,这次换赛道:空间三维重建——用手机绕着物体拍一圈,得到一个可以在网页里转着看、还能导出 3D 打印的模型。这条链路在 2023 年因 Inria 的 Gaussian Splatting(3D高斯泼溅)论文彻底引爆,到 2026 年已经从实验室玩具长成完整工具链:定位采集 → 训练重建 → 编辑压缩 → 网页交付,每一环都有拿得出手的开源实现。本期 8 个仓库正好按这条流水线排布:既有 1 万多 Star 的基石项目,也有两个 Star 不到两千、但把使用门槛打到“打开浏览器”的小而美。文内 Star 数为约数,以仓库页面实时数据为准。

逐个拆解

1. graphdeco-inria/gaussian-splatting | 约1.6万 Star | 持续维护

一句话定位:高斯泼溅的原始官方实现,整个生态的源头,也是理解这项技术最好的教材。

痛点:NeRF 时代训一个场景要数小时,渲染还得跑一个臃肿的神经网络,想在手机上实时看?想都别想。

核心拆解:它把场景表示成几十万个带颜色、透明度和各向异性协方差的 3D 高斯椭球,用可微光栅化直接渲染——没有神经网络推理,天然适合 GPU 并行。训练时按梯度信号自动克隆、分裂、修剪高斯点,照片从疏到密“长”出细节。一张主流 NVIDIA 显卡,配好 conda 环境后 python train.py -s 照片目录,半小时左右就能得到一个可以实时环绕观看的场景。前置依赖 COLMAP 做相机定位。代码是研究风格,读起来比工程库费劲,但每个模块都对应论文一节。

上手难度:⭐⭐⭐⭐

适用人群:研究者、想搞懂原理再动手的工程师。变现思路:以它为内核接本地化部署的扫描外包,是最直接的路径。

2. colmap/colmap | 约8千 Star | 长期活跃

一句话定位:运动恢复结构(SfM)+ 多视图立体的老牌基石,几乎所有重建管线的第一步都跑在它身上。

痛点:你拍的是一堆毫无坐标信息的照片,训练器需要知道每张照片从哪个位置、什么角度拍的——这活儿谁干?COLMAP。

核心拆解:增量式 SfM 的教科书实现:特征提取与匹配、增量建图、光束法平差,一步不缺。双形态使用:GUI 里把照片拖进去点 Reconstruction,小白也能跑通;命令行 + CUDA 加速则是批量生产姿势。ETH Zurich 团队维护了十余年,文档、问答、参数说明全得不像学术项目。你大概率不会“二次开发”它,但一定会反复依赖它——nerfstudio、原版 3DGS、几乎所有 splat 训练器的数据预处理都默认调它。

上手难度:⭐⭐⭐(GUI 傻瓜化,参数调优则深不见底)

适用人群:所有想玩重建的人,绕不开。变现思路:单独卖它没人买,但它是扫描服务的隐性成本中心,吃透参数=交付质量拉开差距。

3. nerfstudio-project/nerfstudio | 约1.1万 Star | 活跃

一句话定位:NeRF 与 splat 时代的“一条龙工作台”,一行命令从数据跑到成品。

痛点:原版实现是论文代码,数据格式、训练参数、可视化全要自己拼。想快速出活?没门。

核心拆解:ns-train splatfacto --data 数据目录 一行命令启动训练,内置 Web 查看器实时观察重建进度,训完一条 ns-export 导出视频、splat 文件甚至 mesh。架构上采用 method 插件化设计——nerfacto、splatfacto 等方法可插拔换装,社区新算法几乎都以 nerfstudio 插件形式发布,等于买一送一附赠整个前沿算法库。伯克利团队出品,文档质量是同类中最好的,从安装到出片跟着教程走基本不踩坑。

上手难度:⭐⭐⭐(命令简单,搭 CUDA 环境仍有门槛)

适用人群:要快速交付的应用开发者、毕设党。变现思路:基于它包一层行业化的采集 App + 云端训练 API,卖“拍照即建模”服务。

4. cpuimage/OpenSplat | 约2.4千 Star | 小而美①

一句话定位:把 splat 训练门槛从“必须有 4090”打到“有 CPU 就能跑”的 C++ 实现。

痛点:上面三位爷全都要 NVIDIA 显卡。Mac 用户、没独显的学生、想部署在边缘设备的团队,直接被挡在门外。

核心拆解:纯 C++ 实现,依赖 OpenCV 这类常规库,编译完得到一个单文件可执行程序,Linux、macOS、Windows 乃至树莓派都能跑——官方 README 明确把树莓派列为支持目标。支持训练遮罩(把行人、水面剔除出场景)、透明物体调优等实用特性,据项目自述训练质量可与官方实现对齐。速度当然比 GPU 慢,但“能跑”和“不能跑”之间隔着一个市场:老笔记本批量处理监控摄像头画面、离线环境建模,都是它独有的生态位。

上手难度:⭐⭐⭐(需自行编译,无 GUI)

适用人群:Mac 用户、边缘计算玩家。变现思路:树莓派 + 摄像头模组攒一台“小型扫描盒子”,卖给文保点和店铺做低成本数字化。

5. ArthurBrussee/brush | 约1.5千 Star | 小而美②

一句话定位:Rust + wgpu 写的 WebGPU 训练器——浏览器打开网页,拖进一段手机视频,当场开始重建 3D 场景。

痛点:想让别人体会 splat 有多神奇,装环境、配显卡、下数据,演示成本半小时起步,观众早跑了。

核心拆解:Brush 最震撼的点是训练过程本身就是可交互画面——不是等进度条走完再看结果,而是场景在你眼前一帧帧“结晶”,鼠标随时可以拖动视角钻进去看。技术上用 Rust 重写了训练管线,借助 wgpu 同时跑在原生平台和浏览器 WebGPU 上;既支持从视频/照片现场训练,也能加载已有的 PLY 文件做查看和基础编辑。Star 虽不到两千,却在社区演示视频里出镜率极高——它把“拍照变3D”的第一印象成本压到了零。

上手难度:⭐(打开演示页即可体验)

适用人群:所有人,尤其教学和演示场景。变现思路:内嵌到摄影类 App 当“一键 3D”卖点,或做成展馆互动装置。

6. playcanvas/supersplat | 约3千 Star | 活跃

一句话定位:浏览器里的 splat 编辑器,训练完到发布之间的必经一站。

痛点:训出来的 splat 一堆漂浮噪点、背景杂物、多场景没法拼接,直接丢上网又大得吓人——谁来收拾?

核心拆解:PlayCanvas(就是那家 Web 游戏引擎公司)出品,纯浏览器运行:框选删除浮点、裁剪包围盒、调色、多 splat 合并、场景重定向,最后按 PLY、splat 或压缩格式导出。据 PlayCanvas 官方博客与多家媒体报道,其稀疏量化压缩方案被 MPEG 的高斯泼溅压缩标准采纳为基础(此说未经二次核实,以官方公告为准)——网页小工具反哺国际标准,开源项目的高光剧本。姊妹项目 splat-transform 提供命令行格式转换,适合批处理。

上手难度:⭐

适用人群:所有要发布 splat 的人。变现思路:扫描工作室的后期管线标准件,压缩环节直接决定网站加载体验和带宽账单。

7. alicevision/Meshroom | 约1.2万 Star | 持续维护

一句话定位:节点式摄影测量桌面软件——想要能 3D 打印、能进 Blender 的实体网格,看这里。

痛点:splat 再美也是“点云球”,游戏引擎不认、3D 打印机更不认。要真正的多边形网格 + 纹理,得走经典摄影测量路线。

核心拆解:底层是 AliceVision 算法库,Meshroom 是它的图形外壳:左栏节点图里从 PhotoImport、FeatureMatching 到 Texturing 拖出一条管线,右栏实时预览,出的是带高精度纹理的标准 mesh 文件。缺点要提前知道:深度计算等关键节点吃 NVIDIA 显卡,纯 CPU 能跑但慢(部分节点可绕过);节点图对新手有学习曲线。对本期的 splat 工具链正好互补——splat 负责“好看”,Meshroom 负责“可用”。

上手难度:⭐⭐(有 GUI,但懂点摄影测量原理事半功倍)

适用人群:文博数字化、3D 打印玩家、游戏资产生产。变现思路:文物、产品、婚纱照的扫描建模服务,按件收费,交付即实体网格。

8. dylanebert/gsplat.js | 约1.5千 Star | 小而美③

一句话定位:把 splat 塞进任意网页的轻量 JS 库——最后一公里交付件。

痛点:模型训好了、也压小了,怎么让客户在手机浏览器里丝滑打开?总不能让他们装查看器吧。

核心拆解:WebGL2 驱动的渲染库,由 Hugging Face 的 3D 方向开发者 dylanebert 维护,几行代码加载 .splat/.ply 文件并渲染,高斯点排序放在 Web Worker 里避免卡主线程,支持轨道控制、多场景加载。它不绑 three.js,体积小、上手快,前端工程师半天就能集成进现有站点。配合上一节的压缩导出,单个场景可以压到几 MB 级别,移动端加载体验过关——这一步决定了 3D 展示是真需求还是玩具。

上手难度:⭐⭐(会前端就行)

适用人群:前端工程师、外包团队。变现思路:给楼盘、电商、展览官网做“3D 看样”组件,按项目收开发费或按年收维护费。

本期横向对比

仓库 流水线环节 Star(约) 上手难度 一句话场景
gaussian-splatting 训练重建 1.6万 ⭐⭐⭐⭐ 读懂原理的源头代码
colmap 采集定位 8千 ⭐⭐⭐ 从照片恢复相机位姿
nerfstudio 训练重建 1.1万 ⭐⭐⭐ 一行命令一条龙
OpenSplat 训练重建 2.4千 ⭐⭐⭐ 没显卡也能训
brush 训练重建 1.5千 ⭐ 浏览器里现场训
supersplat 编辑压缩 3千 ⭐ 发布前的清扫车间
Meshroom 网格输出 1.2万 ⭐⭐ 3D打印与游戏资产
gsplat.js 网页交付 1.5千 ⭐⭐ 嵌进任意网站

全链路一张图

mindmap
  root((拍照建模工具链))
    采集与定位
      COLMAP
      手机环拍或短视频
    训练重建
      原版3DGS实现
      Nerfstudio一条龙
      OpenSplat纯CPU
      Brush浏览器内训
    编辑与压缩
      SuperSplat网页编辑器
      SplatTransform命令行
    上线交付
      gsplat.js网页嵌入
      Meshroom出实体网格

本期之最

参考来源

[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。

51学通信知识星球海报-扫码加入