重建精度与耗时、模型体积互相牵制,参数不能一套打天下
项目概览
项目背景
这是一条 3D 扫描重建的技术链路,横跨 8 个代码仓库,最后提交时间从 2024 年 6 月到 2026 年 5 月。链路从手机扫描端开始:Swift 负责 iOS 扫描,C++ 负责重建引擎,Python 负责模型处理,Java 加 Vue 组成业务平台(其中业务后端有 494 个 Java 文件,仓库内另有 101 篇 md 文档),JavaScript 做 H5 侧。整体是「端侧采集、服务端重建」的分工。
客户当时的状态
三维重建这件事有两个绕不开的矛盾。第一是耗时和体积:重建得越精细,耗时越长、模型越大,下游越难用;粗糙一点快,但做不了展示。第二是分工:手机上算力有限,全部放端侧做不现实;全部放服务端,又要解决采集质量不可控的问题——拍得歪、漏拍、光照不对,传上去重建出来就是个残模型。这两件事不定清楚,链路做出来也不能稳定产出可用的模型。还有一层是交付口径:模型最终给谁用、用来做什么,如果一开始没问清楚,重建参数就没有依据,做完了也难说是对是错。
我们的做法与取舍
第一个取舍是把采集与重建切开,端侧只管拍好,算力集中在服务端。端侧采集门槛低、覆盖广,重建这类重计算放在可控的服务端环境里,便于迭代算法而不必等 App 发版。
第二个取舍是在重建之后加一道模型处理环节,而不是把引擎的输出直接丢给下游。贴图、减面、格式转换这些事单独做,下游拿到的才是能直接用的模型。
第三个取舍是接受「精度与体积要按用途取舍」这个前提,不做一套参数打天下。展示用途和后续加工用途对模型的要求不同,参数要能按场景调。
系统怎么承载这条链路
链路分三段:扫描端负责采集与初步校验,重建引擎负责从采集数据生成模型,业务平台负责模型管理、处理与分发,H5 侧提供轻量入口。平台这一层是多语言拼起来的——Java 承载业务,Vue 承载界面,C++ 与 Python 在重建与处理环节各自负责擅长的部分。
交付状态与边界
代码处于维护状态,最近一次提交在 2026 年 5 月,最早可追溯到 2024 年 6 月。边界说明:我们能控制的是软件链路的稳定性,控制不了用户拍摄姿势与环境光线,采集质量差会直接反映在重建结果上;重建效果依赖具体设备与场景,我们不做「任何条件下都能还原」的承诺;扫描设备本身如果是专用硬件,其选型与采购不在开发范围内。
项目信息
某三维扫描重建项目
未披露
Swift(iOS 扫描端)/ C++(重建引擎)/ Python(模型处理)/ Java + Vue(业务平台)/ JavaScript(H5)
3D 扫描重建与建模平台
CHALLENGES
客户当时面对的现实
手机端采集质量受姿势、距离与光照影响,差数据重建出来就是残模型
端侧算力有限与重计算需求之间存在分工问题
引擎输出不能直接给下游用,中间还需要贴图、减面与格式转换
CAPABILITIES
我们交付的能力
重建这件事的矛盾在「耗时」和「体积」之间
端侧采集
Swift 实现的 iOS 扫描端负责采集与初步校验,把算力集中在服务端,算法迭代不必等 App 发版。
重建引擎
C++ 重建引擎从采集数据生成三维模型,作为链路中计算最重的一环独立演进。
模型处理
Python 负责贴图、模型优化与格式转换,让平台输出的是下游能直接使用的模型。
业务平台
Java 加 Vue 组成业务平台(后端 494 个 Java 文件,仓库内另有 101 篇 md 文档),承载模型管理与分发。
SCOPE
交付范围
以下范围按本项目实际交付内容与边界整理,不属于这次范围的部分一并列出。
已交付
- iOS 扫描端(Swift)
- 三维重建引擎(C++)
- 模型处理环节(Python)
- 业务平台(Java 后端 + Vue 前端)
- H5 侧轻量入口(JavaScript)
不在本次范围
- 扫描采集质量本身:姿势与光照由使用者环境决定,软件只能引导不能完全消除
- 专用扫描硬件的选型与采购:如涉及专用设备,硬件侧不在开发范围内
- 下游行业应用:平台负责产出可用模型,具体行业用途由贵方业务决定
ARCHITECTURE
分层技术架构
公开口径归纳为三层:采集层是 iOS 扫描端;重建与处理层由 C++ 引擎与 Python 处理组成;平台层用 Java 加 Vue 承载模型管理与分发。
采集层
在端侧把数据采好,重计算不放在端上
重建与处理层
从采集数据生成下游可直接使用的模型
平台层
承载业务与模型管理,提供多入口访问
DELIVERY
交付过程
分阶段推进,每个阶段都有可验收的产出,客户在早期就能看到实际效果。
采集方式与用途确认
确定扫描端形态与模型的最终用途,框定精度与体积目标。
扫描端与重建引擎
iOS 扫描端落地,C++ 重建引擎打通采集到模型的链路。
模型处理与平台
Python 完成模型处理,业务平台承载模型管理与分发。
多语言链路联调
端侧、引擎、处理与平台四段联调,H5 侧补充轻量入口。
FACTS
可核验的交付事实
以下内容来自本项目实际交付物;未经验证的指标不予展示。
覆盖扫描端、重建引擎、模型处理与业务平台
业务平台后端规模
业务平台仓库内的 md 文档数
TRANSFER
这套做法适不适合你
案例的用处不是证明"我们做过",而是让你判断"在我们这种条件下能不能做成"。下面三句是我们对这一单的判断,写下来供你对照自己的情况。
适合什么情况
适合以手机或设备采集三维数据、需要重建并交付可用模型的项目。
什么情况下别照搬
若采集环境可控且模型用途单一,不必做多语言分工与多档参数;若要接入专用扫描硬件,需先确认硬件输出格式。
如果要试,第一步做什么
先确认采集方式与模型用途,再定重建链路的技术分工。
RELATED SERVICES
相关服务
从实际业务问题出发,查看对应服务的适用场景、交付物与不含项;具体范围仍需单独确认。
FAQ
常见问题
以下是同类项目沟通中出现频率最高的问题,答案就是我们实际的做法。
重建为什么不能全放在手机上做?
模型精度能保证吗?
为什么重建完还要加一道模型处理?
这套平台用了哪些语言?
做扫描重建类项目第一步做什么?
本页最后更新:2026年9月24日