谷歌倾斜摄影OSGB数据V1.2版终于来了!
一个月前发布了谷歌倾斜摄影数据生成OSGB数据V1.0版,对谷歌倾斜摄影数据转换工具进行了重大更新,V1.1版主要解决了三个问题:1.支持Cesiumlab等数据处理软件,将OSGB数据转换成3DTiles数据,并在Cesium上加载显示。2.支持大势智慧、OSGBlab等数据处理工具将OSGB数据导出生成DOM和DSM数据,3.解决倾斜摄影数据显示问题。目前已使用V1.1版本生产了台湾台北、台中和桃园三个地方的倾斜摄影数据,数据质量良好。但是香港、澳门等是之前生产的数据,仍然是使用V1.0或V0.2版生产的,在这里对大家说声抱歉,一直未更新的原因,并非主观原因,而是再等发布V1.2版后再生产。
经过一个月的努力与优化,OSGB转换工具当初设计的功能都已实现,并且数据处理Bug修复与成果数据显示效率优化已经完成,因此正式发布V1.2版。V1.2版主要解决了OSGB数据偏移问题,这也是转换工具V0.2发布以来一直未解决的难点。
目前通过obj、fbx等三维模型数据转换OSGB格式,都会存在坐标偏移问题,这个问题在OSGB数据生产很常见。obj、fbx等数据是以米或厘米为单位建立的三维空间局部坐标系;在三维地球上,本质上都是调用OpenGL、DirectX、Vulkan等图形设备接口API进行渲染,这些图形设备接口也有自己的空间坐标系,也就是大家常见的XYZ轴空间坐标顺序不一样,OSGEarth/Cesium等三维GIS渲染中间件,也会自己定义一套三维空间坐标系,目的是为了规避这些图形设备接口GDI坐标系的差异,同时也为了方便地理数据接入,将地理坐标系转换到空间坐标系进行计算,上层数据都是投影坐标(如3857:WebMercator)或地理坐标系(如4326:WGS84坐标系)数据,如何计算投影/地理坐标、三维空间坐标系、图形设备接口三维坐标,这是广大三维GIS开发者比较难理解也很难掌握的知识点,因为三维转换参数不对,最终影响的是显示效果。
言归正传,回到OSGB数据上,OSGB数据以米为单位,而且精度很高,谷歌倾斜摄影数据分辨率能达到5cm,相比目前卫星影像0.3米高分辨率还要高6倍。如何将高分辨率OSGB数据完美、精准匹配叠加在OSGEarth等三维GIS平台上,使用WGS84或者3857等常用投影或地理坐标系,误差较大,具体表现是OSGB数据与卫星影像数据不匹配,看下面效果图:
上图OSGB数据是采用Web Mercator(3857)进行生产的,导出DOM数据叠加卫星影像底图进行对比可以看出:OSGB数据中道路和房屋等和卫星影像底图数据没有匹配上,偏差在20米左右,无法满足实际使用要求。但是在V1.2版本中,彻底解决了数据偏移问题,解决这个问题,并非偏移原点坐标就能解决,而是在数据生产时,对数据进行逐顶点处理转换,再进行优化合并。经过正确处理后的效果如下图所示:
从上图可以看到,道路、房屋建筑等要素精准匹配,能够满足实际应用要求。
至此,谷歌倾斜摄影OSGB数据转换工具V1.2版已经是一个比较完善的版本,这个版本其实还有一些问题,在数据生产速度方面,还有待提升。这个版本已经具备可以进行全球倾斜摄影数据生产能力,上篇文章统计了谷歌全球倾斜摄影面积,总共有86.5万平方千米,并且还在逐月增加。如果要生产全球数据,采用静态文件散列存储是无法满足实际使用要求的,因为文件能达到百亿级,因此需要有数据存储和发布服务,这在以后版本中进行升级和优化,敬请期待!