随着无人机航测解决方案的不断演进以及三维模型制作成本的逐步降低,实景三维模型在地形测绘、古建筑文档记录以及实景三维中国建设等领域得到了广泛应用。
对于航测用户而言,如何利用大疆智图实现实景三维模型的局部更新是一个重要课题。在城市级实景三维项目中,通常需要对某些区域进行局部更新,以便将更新后的模型融入到之前构建的整体大规模实景三维模型中。此外,用户还常常面临某些区域重建效果不理想,急需补充数据采集的情况。
模型质量不佳需进行局部更新
传统的更新方式通常是将新数据与大场景数据合并,然后重新建模,这样往往耗时且费力。而“局部模型更新”的方案则可以帮助用户快速解决这些问题。接下来,我们将探讨该方案的操作方法及其注意事项。
大疆智图模型参数解析
在了解局部更新方法之前,首先要清楚实景三维模型的分块与存储规则。
在生成实景三维模型时,大疆智图支持自定义模型原点、分块大小和分块起始点等功能,以满足不同项目的数据需求。这些操作对三维模型的成效有何影响呢?
模型原点
在大疆智图中,OSGB、OBJ、PLY 格式的三维模型坐标将以设定的模型原点(X、Y、Z)为基准,并保存相对于该起始点的模型坐标。模型原点的值会保存在与模型同目录下的 metadata.xml 文件中的 SRSOrigin 字段中。更改 SRSOrigin 的数值会直接影响模型所有点的坐标显示。因此,通过修改 SRSOrigin 的数值可以实现模型的局部平移。分块模式
当重建照片数量较多时,若将模型作为一个整体进行处理,可能会因内存不足而导致重建失败。为此,建模软件常常采取将模型分块的方式,按照一定规则将模型划分为多个部分进行处理,最后再将所有块整合展示。
大疆智图支持的分块模式包括自动、自定义内存和自定义边长。当选择自动时,模型会根据当前电脑的最大可用内存自动决定块的大小,通常效率最高;选择自定义内存时,会根据设定的内存范围进行建模;选择自定义边长时,每个块会对应一致的区域范围。在进行局部更新时,必须使用自定义边长模式。分块起始点
模型分块重建后,块的命名会指明其在大模型中的位置。例如,大疆智图中某个块文件夹名为 Block_+008_+011,表示该块位于整体模型的第 8 个横向位置和第 11 个纵向位置。这里的数字是基于分块的起始点计算得出的。当自定义大小分块时,分块的起始点会影响每个块及其文件夹的名称。例如,当定义分块起始点为 (X1,Y1,Z1) 且分块大小为 50m 时,(X2,Y2,Z2) 的块名称将为 X 方向编号为取整 (X2-X1)/50,Y 方向编号同理。
局部更新的作业流程
要完成模型的局部更新,待更新的模型必须与原模型在坐标系、模型原点、分块起始点和分块大小上保持一致。然后将新生成的模型块文件夹手动替换掉原模型的对应块文件夹。
在进行实景三维模型局部更新之前,首先需要确保外业数据采集时,无人机的 RTK 系统处于固定解状态。如果外业飞行时 RTK 不是固定解,新旧实景三维模型项目都需要使用合理分布的像控点,以确保两者的绝对精度一致,才能实现模型的无缝拼接。
例如,在完成大范围模型 A 的重建后,需将该项目的坐标系、模型原点、分块起始点和分块大小应用于补拍的局部模型 B 的项目设置中。
在确定建模兴趣区时,还需确保待更新的局部模型块中包含完整的三维模型,否则会导致更新后模型缺失。
完成大范围模型 A 和局部模型 B 的重建后,将局部模型 B 的 terra_b3dms 文件夹中需要更新的块文件夹拷贝到大范围模型 A 的相应 terra_b3dms 文件夹中。替换原有文件夹后,即完成对应区域模型的更新,此时可以直接在 Terra 中浏览更新后的实景三维模型。
注意: 拷贝替换时,务必备份原有模型,b3dm、osgb、ply、obj 等格式的模型需要分别进行拷贝替换更新。
完成 terra_b3dms 文件夹的替换后,用户即可在 Terra 中直接查看局部更新后的三维模型效果。
更多注意事项
为确保局部更新后的三维模型接边处无高差,除了确保无人机的网络 RTK 处于固定解外,还可以通过设置内业虚拟控制点的方式提高接边处的精度。在接边区域的模型上选择一定数量的特征点,在项目 A 中采集这些点的坐标,并将这些点和坐标导入到项目 B 中。
实景三维模型数据采用 LOD(细节层次)形式生成和加载。为了确保不同视角下的模型显示效果,建议局部更新前后的模型分辨率尽量保持一致。如果分辨率不一致导致远距离视角模糊,建议使用第三方模型处理工具对更新后的模型进行全局 LOD 构建,以获得更佳的显示效果。
该方法不仅可以实现实景三维模型的局部更新,还可以用于合并两个相邻区域的实景三维模型文件。例如,当一个项目的数据量过大,无法在一个项目中完成重建时,可以将项目拆分为两个或多个项目分别进行重建,并通过设置相同的分块规则实现多个实景三维模型项目的合并。