Machine-readable: manifest · index · 简体中文 Markdown
构建 mesh
普通视频和 360° 视频建成的地图,在 Ready(已就绪) 时已经可以定位、可以在 Space Studio 查看点云,但还没有 mesh。AR 遮挡和导航需要 mesh,请在地图卡片上选择它的构建方式。
LiDAR 扫描建成的地图在建图阶段就生成了表面几何,不经过这一步。移动端三维扫描(Polycam / Kiri Engine)的卡片上也没有 Mesh 区块:它们的表面模型来自上传扫描数据时可选提交的那个 GLB,不在这里补建。
为什么就绪的地图还没有 mesh
定位使用的是稀疏点云,不需要 mesh。mesh 是覆盖在这些点上的连续表面,构建它要额外花费大量计算时间,而且不是每张地图都需要:只做定位和内容摆放时,没有 mesh 也能正常工作。
把这一步拆出来,是为了让地图先可用,再由你决定是否以及如何补上表面几何。等待期间地图照常可以定位、可以打开 Space Studio、可以编辑 Content。
两种方式的区别
已就绪的地图卡片上有 Mesh 区块,提示「地图已经可以定位、可以查看点云。AR 遮挡与导航需要 mesh —— 请选择构建方式」,下面是三个按钮:在服务器上构建、上传 mesh、下载工作包。后两个属于同一种方式——先下载工作包在桌面构建,再把结果上传。
| 在服务器上构建 | 下载工作包 | |
|---|---|---|
| 你要做什么 | 点一次按钮 | 下载、在自己电脑上跑、再上传 |
| 需要什么 | 无 | 桌面版 Metashape Professional |
| 大致耗时 | 数小时 | 取决于帧数和帧的尺寸:263 帧手机视频实测约 6 分钟,360° 全景帧大得多、要长不少 |
| 构建期间 | 地图照常可用、可定位 | 地图照常可用、可定位 |
| 适合 | 不着急,或手边没有 Metashape | 想快点拿到结果,或希望自己掌控构建过程 |
两种方式产出的 mesh 用途完全相同,后续的发布、分块和导航派生也走同一条链路。
在服务器上构建
- 在 Mesh 区块选择 在服务器上构建。
- 在弹出的确认框里确认开始。这一步只补建 mesh,不会重新建图,也不影响现有的定位。
- 卡片换成 上传 → SfM 建图 → Mesh 生成 的三段进度条,前两段显示为已完成,Mesh 段开始走动。需要时可以选择 取消构建。
构建期间地图保持在线,定位不受影响。mesh 构建要独占建图资源,而且不排队:服务器上有其它建图或 mesh 任务在跑时,这次请求会被直接拒绝并给出提示,稍后再点一次即可。
下载工作包,在桌面 Metashape 构建
工作包里有这张地图的视频帧、我们解算好的相机位姿、一个 Metashape 脚本和一份离线说明。脚本全程冻结位姿,不会让 Metashape 重新对齐相机——这样建出的 mesh 与地图共用同一套坐标,传回来不需要再做任何对齐。
开始之前
- Metashape Professional,需要有效授权或官方 30 天全功能试用。Standard 版和 Demo 模式不可用:Demo 能算,但不能保存工程或导出模型,几小时的计算会白做。
- 磁盘空间:解压后的帧、深度图和工程通常需要数倍于工作包本身的空间。
- 显卡:随包脚本会自动启用检测到的显卡,速度快数倍;如果 Metashape 的 Preferences ▸ GPU 里没有列出你的显卡,先装好驱动再跑。
操作步骤
- 在 Mesh 区块选择 下载工作包。打包完成后浏览器开始下载。
- 把整个压缩包解压到一个目录。不要直接在压缩包里运行脚本,也不要只解压其中一部分。
- 打开 Metashape,选择 File ▸ New 新建空工程。
- 选择 Tools ▸ Run Script…,选中解压目录里的
build_refined_mesh.py。 - 脚本运行结束后,
out/目录下会得到一个.glb模型和一份build_report.json运行报告。 - 回到地图卡片的 Mesh 区块选择 上传 mesh,选中那个
.glb(把它单独压成 zip 再上传也可以)。上传完成后会自动开始发布。
build_report.json 记录了本次运行的自检数字。想一并提供,就把 out/ 目录压成一个 zip 再上传(只压 out/,不要把整个工作包压进去——frames/ 有好几 GB,会被按大小拒收):服务端据此核对这份 mesh 属于哪张地图的哪一次重建。不提供也可以,只传 .glb 同样能发布;遇到问题时把这份报告发给我们能更快定位原因。
上传之后会发生什么
上传的 mesh 会先保存在服务器上等待发布,卡片上显示它的大小并提示它计入这张地图的存储用量。系统随后校验它的格式、与地图的对齐关系,以及是否对应当前这次重建。如果服务器此刻正忙于别的建图任务,自动发布会被拒绝——文件仍留在卡片上,稍后选择 发布它 即可,不必重传。
- 通过:发布完成,mesh 立即可用。
- 没通过:卡片会说明无法发布。请重新下载工作包、在 Metashape 中重新导出,再上传一份新的文件。被拒的那份仍然占用存储,可以在卡片上选择 删除它。
- 地图在此期间重建过:冻结位姿不再对应,这份 mesh 无法发布。重新下载工作包再走一遍。
- 发布没能开始或中途失败:这份 mesh 会留在卡片上等待发布。选择 发布它 直接重试,不必重新上传。
某一种方式失败之后
服务器构建失败后不会自动重试,卡片会提示改用桌面 Metashape。这是有意的:服务器构建要占用数小时计算资源,重复尝试同一条已经证明走不通的路只是消耗。
桌面 Metashape 这条方式上传的 mesh 没通过检查时,判定只针对你上传的那一个文件,而不是这种方式本身。在 Metashape 中修正后重新导出、重新上传即可继续。
mesh 就绪之后
- 在 Space Studio 的地图面板中打开网格查看表面,线框可叠加三角形边线检查连续性。
- AR 客户端获得遮挡能力:虚拟物体会被真实墙面和家具正确遮挡。
- 系统会尝试从 mesh 导出 AR 导航用的可行走网格。地面被反光、行人或过密细节覆盖时,这一步可能得不到结果——此时 mesh 与 AR 遮挡照常可用,卡片上会标出 导航不可用。这取决于场景本身,没有参数可调。