之前的文章分享了546GB香港倾斜摄影3DTiles数据,主要是验证倾斜模型3DTiles转换工具的生产效率和数据显示效率,结果对比可以看出无论是数据生产速度以及成果数据显示效率上,都优于其他两种技术路线。最近使用倾斜模型3DTiles工具生产了台湾地区最新倾斜摄影3DTiles数据,有1TB大小,发布后成功加载在Cesium上显示的3DTiles数据。转换处理的具体范围如下图所示:
黄色区域标识倾斜摄影范围,目前仅有台北、桃园、台中三个地区有倾斜摄影数据,总面积约690平方公里,转换后生成的3DTiles成果数据大小有1TB!话不多说,看一看加载到Cesium上的效果:
可以看到,台北、桃园以及台中三块区域能够无缝切换显示,场景操作效果流畅,加载显示也很快速。
数据方面,总共有0.99TB大小,已经无限接近1TB,共46127447个文件,压缩后也有468GB。如下图所示:
这份数据都是静态文件,因此数据部署使用很简单,使用Nginx直接静态代理即可,无需部署发布程序,这里分享一个nginx.conf里Server的样例,大家可以直接粘贴过去,修改root对应的路径。
server
{
listen 8804;
server_name localhost;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
add_header Access-Control-Allow-Origin "$http_origin";
add_header Access-Control-Allow-Credentials true;
add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
if ($request_method = 'OPTIONS') {
return 204;
}
location / {
autoindex on;
root D:/TAIWAN-3DTILES/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
同时在前端Cesium上接入也比较容易,创建Cesium3DTileset对象,加入到pirmitives,同时需要注意的是,depthTestAgainstTerrain要设置成false,否则会有地形遮挡显示问题。下面是示例代码:
let tileset = await Cesium.Cesium3DTileset.fromUrl(
"http://localhost:8804/tileset.json");
viewer.scene.primitives.add(tileset);
viewer.scene.globe.depthTestAgainstTerrain = false;
这份数据的价值,可以从几个方面来体现:
1.区域热点高,目前台湾地区尚未回归祖国怀抱,美日等国家频繁在台湾周边地区活动,台湾地区是当前研究热点,其中倾斜摄影数据是热点数据中的热点,数据价值已不言而喻。
2.能离线部署,这是这份数据的最大价值!虽然谷歌官网和Cesium ION能够在线访问使用,但是对于国内绝大部分使用Cesium的用户来说,数据都是需要在局域网内部署的,能够离线部署是底线,数据质量再好,覆盖范围再广,分辨率再高,突破了底线,这些优势荡然无存。
3.数据版本最新,不管是谷歌官网还是Cesium ION上的谷歌3DTiles数据,都是用之前的指定版本来生产的,并不是谷歌地球上的最新版本,而且数据也没有随谷歌地球数据及时更新,有些公司和个人开始研究下载Ceisum ion上的谷歌倾斜摄影3DTiles数据使用,数据时效性上已经不佳,如果ion上数据有更新,需要重新下载,耗费成本太大,本数据是拿2023年12月份最新数据进行生产,数据保鲜上全网最新,如果谷歌地球上数据有更新,利用转换工具,可以立马及时更新数据,这一点谷歌GEE和Cesium ion无法做到。
4.使用方便,数据转换工具可能是全网唯一一个能够将谷歌倾斜摄影数据转换成3DTiles数据,并且3DTiles数据能够在原生Cesium上无缝加载并能够流畅显示的处理工具,有些公司基于原生Cesium开发了能够支持谷歌官方倾斜摄影数据加载显示的插件,但是插件与公司产品深度绑定,若使用谷歌倾斜摄影数据显示,就必须使用他们的前端SDK,无法使用原生Cesium,在开发使用便利性上大打折扣。本数据完全无需使用第三方插件,原生Cesium API就能加载显示,对于开发者来说,数据使用便利性上,价值不言而喻。
5.显示效率高,数据加载显示及场景漫游、俯仰及选择等操作,显示效率媲美谷歌地球官方倾斜摄影数据显示,当前GEE和Cesium ion上的3DTiles数据在Cesium上加载,层级较高时会出现显示卡顿的情况,因为大比例尺下加载的瓦片太多,LOD优化不佳,和GEE和Cesium ion相比,本数据加载显示效率更高,缩放、漫游、俯仰相当丝滑。
关于这份数据,目前已压缩打包完成,有需要的朋友可以在评论区留言或后台私信联系!