版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zglybl/article/details/75252288
      随着倾斜摄影技术的发展,大家在工作中经常接触到各种类型的倾斜摄影模型,比如OSGB、dae、obj、slpk(Esri)等。

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

如果您希望将生成的三维模型用于ArcGIS产品线,建议在倾斜摄影建模软件导出时直接选择Esri I3S标准的数据格式SLPK,这样可以直接加载至pro中发布服务,避免格式转换。下图是ContextCapture软件中在输出结果中选择输出slpk。

您也可以选择使用Drone2Map forArcGIS,基于无人机影像快速生成倾斜摄影测量建模成果,并能导出成基于I3S标准的数据格式SLPK,导出的SLPK格式的数据可通过Drone2Mapfor ArcGIS直接上传到Portal for ArcGIS上并发布成三维服务。

如果是SLPK,那么就万事大吉了。但在实际中,有些用户拿到的是OSGB格式。

目前,ArcMap和ArcGIS Pro不能直接打开OSGB的数据,需要使用数据互操作模块将OSGB转换为multipatch,之后发布服务。接下来,以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 - TanaVega_GIS - CSDN博客
 点击打开链接

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或许是一个更好的解决方案。如果模型中有水体,可能会出现水体模糊的情况。

---------------------
作者:TanaVega_GIS
来源:CSDN
原文:https://blog.csdn.net/zglybl/article/details/75252288
版权声明:本文为博主原创文章,转载请附上博文链接!

倾斜摄影数据OSGB进入到ArcGIS平台相关问题小结的更多相关文章

  1. 如何通过倾斜摄影数据手动配置s3c索引文件?

    如何通过倾斜摄影数据手动配置s3c索引文件? 大家知道,倾斜摄影数据最常见的是OSGB格式,并且是由一个一个的Tile分级文件夹构成的Data文件夹.结构一般如下图所示: 那么,如何才能把模型的各个瓦 ...

  2. AdMaster技术副总裁谈Hadoop、营销数据、Python和挖掘平台

    http://www.infoq.com/cn/news/2014/09/admaster-hadoop 卢亿雷是现任AdMaster技术副总裁,曾在联想研究院.百度基础架构部.Carbonite C ...

  3. Python基础:获取平台相关信息

    Windows 10家庭中文版,Python 3.6.4, 本文介绍了使用os.platform.sys三个模块获取Python程序的运行平台相关的信息. os模块:提供 各种各样的操作系统接口 os ...

  4. Cesium加载三维倾斜摄影数据

    具体技术来源自论文 基于Cesium的倾斜摄影三维模型Web加载与应用研究. 技术架构图 应用实例 利用一个实际实例来详细说明如何利用Cesium加载倾斜摄影数据,并进行可视化和交互操作. 首先,利用 ...

  5. HTML5应用 + Cordova = 平台相关的混合应用

    Jerry之前的一篇文章 SAP Fiori应用的三种部署方式 曾经提到SAP Fiori应用的三种部署方式: On Premise环境下以ABAP BSP应用作为Fiori应用部署和运行的载体 部署 ...

  6. (转)GIS理论知识(三)之ArcGIS平台、SuperMap超图平台和开源平台

    3.1.ArcGIS平台 ArcGIS为美国ESRI公司研发的产品,为用户提供一个可伸缩的,全面的GIS平台.ArcObjects包含了许多的可编程组件,从细粒度的对象(例如单个的几何对象)到粗粒度的 ...

  7. OSG加载倾斜摄影数据

    目录 1. 概述 2. 实例 2.1. 代码 2.2. 解析 3. 结果 1. 概述 ContextCapture(Smart3D)生成的倾斜摄影模型数据一般都形如如下组织结构: 在Data目录下包含 ...

  8. Cesium加载倾斜摄影数据

    (1)倾斜摄影数据仅支持 smart3d 格式的 osgb 组织方式, 数据目录必须有一个 “Data” 目录的总入口, “Data” 目录同级放置一个 metadata.xml 文件用来记录模型的位 ...

  9. 【老孟Flutter】Flutter 中与平台相关的生命周期

    老孟导读:关于生命周期的文章共有2篇,一篇(此篇)是介绍 Flutter 中Stateful 组件的生命周期. 第二篇是 Flutter 中与平台相关的生命周期, 博客地址:http://laomen ...

随机推荐

  1. request.user哪里来的?

    1.登录认证(auth认证登录后login后设置了session等信息包含用户的pk)      >>>>>               2.用户再次请求登录的时候,通过 ...

  2. Nginx报502错误,PHP最大执行时间设置

    PHP执行时间太长导致的 我在程序的最上方写了set_time_limit(0);不管用 因为max_execution_time在 php-cgi(php-fpm) 中,该参数不会起效. 真正能够控 ...

  3. 修改注册表.exe的文件目录

    文件打开方式不能选择默认打开文件 cmd >regedit 以sublime_text为例 HKEY_CLASSES_ROOT/Applications/sublime_text.exe/she ...

  4. Service Fabric SfDevCluster目录从默认的C盘移动

    管理员权限打开Powershell CD\ 回车 CD "C:\Program Files\Microsoft SDKs\Service Fabric\ClusterSetup" ...

  5. C++中全排列算法函数next_permutation的使用方法

    首先,先看对next_permutation函数的解释: http://www.cplusplus.com/reference/algorithm/next_permutation/?kw=next_ ...

  6. poi设置打印页页脚和页数设置

    之前在网上搜了很久,也没有搜到具体页脚页数的答案,最后还是在官方api文档上找到了答案: HSSFPrintSetup printSetup = (HSSFPrintSetup) sheet.getP ...

  7. Kafka命令行操作及常用API

    一.Kafka命令行操作 1.查看当前集群已存在的主题 bin/kafka-topic.sh --zookeeper hd09-01:2181 --list 2.创建主题 bin/kafka-topi ...

  8. Codeforces 948D Perfect Security 【01字典树】

    <题目链接> 题目大意: 给定两个长度为n的序列,可以改变第二个序列中数的顺序,使得两个序列相同位置的数异或之后得到的新序列的字典序最小. 解题分析: 用01字典树来解决异或最值问题.因为 ...

  9. HDU 3488 Tour (最大权完美匹配)【KM算法】

    <题目链接> 题目大意:给出n个点m条单向边边以及经过每条边的费用,让你求出走过一个哈密顿环(除起点外,每个点只能走一次)的最小费用.题目保证至少存在一个环满足条件. 解题分析: 因为要求 ...

  10. SpringBoot文件上传下载

    项目中经常会有上传和下载的需求,这篇文章简述一下springboot项目中实现简单的上传和下载. 新建springboot项目,前台页面使用的thymeleaf模板,其余的没有特别的配置,pom代码如 ...