ArcGIS Pro:OSGB数据转换及发布服务流程

7
分享 2017-07-20
随着倾斜摄影技术的发展,大家在工作中经常接触到各种类型的倾斜摄影模型,比如OSGB、dae、obj、spk(Esri)等。

Esri采用的spk i3s标准(Indexed 3D Scene),是Esri推出的开放标准。I3S标准作为开放的标准已经得到了市面上主流的倾斜摄影测量建模软件的支持,如Bentley的 ContextCapture(国内简称为Smart 3D)、Pix4D、Vricon,这些软件均支持基于I3S标准的数据格式SPK的导出,生成的SPK格式的模型可通过ArcGIS Pro上传到Portal上并发布成三维服务。

如果您希望将生成的三维模型用于ArcGIS产品线,建议在倾斜摄影建模软件导出时直接选择Esri I3S标准的数据格式SPK,这样可以直接加载至pro中发布服务,避免格式转换。
您也可以选择使用Drone2Map forArcGIS,基于无人机影像快速生成倾斜摄影测量建模成果,并能导出成基于I3S标准的数据格式SPK,导出的SPK格式的数据可通过Drone2Mapfor ArcGIS直接上传到Portal for ArcGIS上并发布成三维服务。

如何使用ContextCapture将无人机影像生成SLPK - ArcGIS知乎-新一代ArcGIS问答社区
http://zhihu.esrichina.com.cn/article/3665 

如果是SPK,那么就万事大吉了。但在实际中,有些用户拿到的是OSGB格式。
目前,ArcMap和ArcGIS Pro不能直接打开OSGB的数据,需要使用数据互操作模块将OSGB转换为multipatch,之后发布服务;转换后的multipatch在pro中显示效果不够理想,大数据量下可能会有裂缝,如果对显示效果要求严格,不建议采用(期待后续新版本可以改善),只能建议您在ContextCapture中生成pro原生支持的格式slpk啦。如果确实需要转换,那就往下进行:
 
接下来,以contextcapture软件生成的OSGB,介绍处理流程:
软件:ArcGIS Pro1.4
1)明确OSGB的坐标,否则转换后会出现模型偏移等问题。
OSGB数据的坐标存在哪里,还得从OSGB数据生产源说起。使用contextcapture软件生成的osgb模型的坐标原点是模型的中心,即0,0,模型中其余的点是相对于0,0记录的;模型中心对应的实际坐标存储在medata.xml(在contextcapture生成osgb的时候,需要定义投影坐标系)。
2)使用Data interoperability,将OSGB转换为multipatch。
在转换时,注意reader和writer中参数的设置,主要是指定坐标系,否则pro中无法显示模型。
详情参见:
如何将OSGB数据转换为multipatch: http://zhihu.esrichina.com.cn/article/3175
3)在ArcGIS Pro中,使用工具merge(Data Management toolbox --General ),或ArcScene中3D编辑工具条下的union,将osgb中最高级别进行合并(OSGB数据类似于金字塔结构,最高级别模型最精细),合并为一个multipatch。

                           

4)在ArcGIS Pro中,选中模型,使用move to工具将模型移动到模型中心实际所在位置(从metadata.xml中获取,注意选择absolute)。

转移后,坐标范围没有更新,需要使用工具Recalculate Feature ClassExtent工具重新计算。
计算完后,加载模型,模型已处于正确的地理位置,但你会发现,此时模型是悬浮在空中。
5)可以使用move工具,移动z值将其调整至地面,或者右键图层选择on the ground,下图为模型和底图完全贴合。


模型在场景中正常显示后,就可以发布服务了:
两种方式,第一种步骤较为简单,适合小数据量;第二种多了一个打包的过程:
第一种:直接将多面体加载到场景中,右键场景图层,点击share as web layer,然后根据参考文档进行操作即可发布场景服务。
                           


参考文档:点击打开链接

在portal中添加发布的场景即可。
                            


第二种:
1)使用“创建场景图层包”工具,将多面体要素图层生成场景图层包 (.slpk);
工具位置:数据管理工具箱 -> 打包工具集->创建场景图层包
                           

参考:点击打开链接
2)如果输出场景包小于 1 GB,则可在浏览器中直接将其上传至 ArcGIS Online 或 Portal for ArcGIS。如果大于 1 GB,请使用“共享包”工具将其上传至 ArcGIS Online 或 Portal for ArcGIS 10.3.1 或更高版本。工具位置:数据管理工具箱 -> 打包工具集 ->共享包
                           

3)上传场景图层包后打开项目详细页面,将其发布为服务。


有关场景服务的发布,也可参考:
点击打开链接

注意:OSGB现有的解决方案不是最优的方案,但它解决了数据入库的问题。未来,Esri北京研发中心正在研究多种格式与I3S互转的问题,如能实现OSGB转换为I3S或许是一个更好的解决方案。如果模型中有水体,可能会出现水体模糊的情况。

文章来源:http://blog.csdn.net/zglybl/article/details/75252288

3 个评论

非常详细的解决方法,希望能尽快出现多种格式与I3S互转的完整方案
这方案烂透了,不支持多层OSGB,用FME转换那叫一个痛苦,转换出来的效果不尽人意。。。
可以批量转换的,目前这个方案只是解决了OSGB数据转换的问题,显示效果确实还需要进一步完善;还是建议您在数据生成中直接生成I3S标准的数据格式SPK ,主流的倾斜摄影测量建模软件都已支持SPK的导出。

要回复文章请先登录注册