最近接连有用户反应地形数据处理的各种问题,我也是各种测试,想想还是整理一个文档彻底说明一下。

地形栅格数据格式,一般是tif ,也有dem或者img,但是我个人强烈建议使用tif格式,因为cesiumlab都是用这个格式测试的。

我们先说一下地形栅格数据的几个关键参数:

强烈建议处理之前,先用arcmap打开,确保以下参数正常

1,空间参考(spatial reference)

spatial reference 定义了 栅格数据的坐标空间,下图为正常参数,如果arcmap 这里显示undefined,那表示空间参考未知,必然无法正常处理。

 
栅格的空间参考信息

如果tif中不含空间参考,但是空间参考数据处理人员又明确知道,那么可以在cesiumlab中指定。反过来说如果不确定,那就不要乱尝试,只会浪费处理时间。

 
cesiumlab中指定空间索引

2,无数据值(nodata)

nodata定义了删格中的无效数据数据值,也就是说如果栅格里某个像素的值 = nodata,意味着该像素没有数据。

对于nodata的处理,cesiumlab把该位置使用高程0填充。

但是原始数据中这个值很乱,完全是用户设置的,栅格里可能没有这个nodata信息,也可能为任意值。一般用户会设置一个超大的负数值,比如 -10000  ,-99999等。这里强烈建议,不要设置数据极值,例如-1.797693e+308 ,这种极值会导致中间计算出现非数字,导致地形处理异常。

 
无数据值

 如果原始栅格中没有nodata值,只有一种情况处理地形高程会正常(数据的空间参考是wgs84,地形数据边界为矩形),除此之外都必须设置此值。在cesiumlab选中对应tif,如下设置。

 
 

这个-9999.005859是怎么来的? 我们还是必须通过arcmap打开tif,使用indentify工具,点击我们明确知道是无数据区域,那么获得他的值。

 
arcgis里人工判定nodata

3,地理范围(extent)

    栅格数据实际上是一张图片,必须要一个转换,把像素坐标转到地理坐标,这就是extent,在gdal里是geotransform。在arcmap里如下图所示

 
栅格的地理范围

正常这里应该显示的地理坐标,如果你发现这个extent的四个值里有0,那么基本意味着,你的tif的地理范围信息缺失。

tif 一般把这个信息存储在文件内,还有另一种方式存储为 同名的tfw 文件。

所以我们处理或者拷贝数据的时候,如果有tfw,请一并拷贝。

 
tfw文件

确保上面三个关键参数正确,我们再分析cesiumlab处理地形的异常情况原因

1, 瞬间结束

空间参考缺失  或者  地理范围缺失

2,处理完成之后半边黑球

nodata 过大

3,地形高程异常

nodata 缺失或者不正确

4,位置不正确或伴随高程不正常

一般是空间参考不正确

根据异常原因,请在arcmap使用相关工具处理你的栅格数据。

CesiumLab 地形数据处理的更多相关文章

  1. CesiumLab地形处理成果在Tomcat和IIS上发布

    地形瓦片(散列文件)可以直接放到tomcat或iis下发布,而不用进行额外的开发,从而满足普通用户的需求.下面我们来介绍下如何通过cesiumlab生成的瓦片发布并在前端展示. 1.数据准备: 首先通 ...

  2. CesiumLab V1.2 新功能 倾斜数据处理

    一转眼又是一周的时间,我们的实验室功能又强大了. 照旧我们先放毒,放图,图,太晚了,字都敲不到一起了   lod以及包围盒   大雁塔实例,按楼层单体化   倾斜数据处理参数设置 简单介绍一下 Ces ...

  3. CesiumLab V1.1 新功能 (免费Cesium处理工具集)

    Cesiumlab 自从上周(3月20日)发布之后,赢得小伙伴一致好评. 本周继续推出重大更新: 建筑物矢量数据 转 3dtiles,  建筑物矢量数据 转 3dtiles,  建筑物矢量数据 转 3 ...

  4. Cesium本地影像与地形服务发布

    目录 1 数据切片 1.1 影像处理 1.2 地形处理 2 Web应用服务器安装与配置 2.1 Tomcat安装及配置 2.2 IIS安装及配置 3 本地影像与地形服务发布 4 参考资料 @(目录) ...

  5. Ceisum官方教程2 -- 项目实例(workshop)

    原文地址:https://cesiumjs.org/tutorials/Cesium-Workshop/ 概述 我们很高兴欢迎你加入Cesium社区!为了让你能基于Cesium开发自己的3d 地图项目 ...

  6. Cesium学习系列汇总

    内容比较多,完整看完需要大概10分钟,废话不多说,撸起袖子,加油干!!! 1.前言 按照套路,先介绍一下什么是Cesium. Cesium ['siːzɪəm]是JavaScript开源库,通过Ces ...

  7. Cesium资料大全

    前言 Cesium是一个用于显示三维地球和地图的开源js库.它可以用来显示海量三维模型数据.影像数据.地形高程数据.矢量数据等等.三维模型格式支持gltf.三维瓦片模型格式支持3d tiles.矢量数 ...

  8. CesiumLab V1.4 新功能 BIM数据处理

    我也没想到,BIM数据处理一下拖了这么久才有个交代.我们照例先放图   Revit官方的示例数据   隐藏屋顶+俯视   曾经因为太大而无法导出无法处理的医院模型   室内装修方案模型 最近和很多做b ...

  9. SuperMap空间数据处理与制图操作短视频汇总

    转自:http://blog.csdn.net/supermapsupport/article/details/70227669 空间数据处理与制图是GIS系统建设最基础的部分,这里利用超图桌面软件- ...

随机推荐

  1. 阿里巴巴飞天大数据架构体系与Hadoop生态系统

    很多人问阿里的飞天大数据平台.云梯2.MaxCompute.实时计算到底是什么,和自建Hadoop平台有什么区别. 先说Hadoop 什么是Hadoop? Hadoop是一个开源.高可靠.可扩展的分布 ...

  2. 2-sat——暴力染色输出方案hdu1814

    因为要求输出字典序最小的解,所以用暴力染色 具体有点像二分图染色 遍历0-2*n-1个点,尝试将每个点染成1,该点所能到达的所有点都要染成1 如果不行,则把上该点的影响消除,再把对立点染成1,如果还不 ...

  3. resful风格

    package com.atguigu.springboot.controller; import com.atguigu.springboot.dao.DepartmentDao; import c ...

  4. Java-MyBatis-MyBatis3-XML映射文件:select

    ylbtech-Java-MyBatis-MyBatis3-XML映射文件:select 1.返回顶部 1. select 查询语句是 MyBatis 中最常用的元素之一,光能把数据存到数据库中价值并 ...

  5. PAT甲级——A1092 To Buy or Not to Buy【20】

    Eva would like to make a string of beads with her favorite colors so she went to a small shop to buy ...

  6. Python学习day06-Python基础(4)流程控制之while和for循环

    Python学习day06-流程控制之while和for循环 Python学习day06-流程控制之while和for循环while循环1. 语法2. while+break,while+contin ...

  7. Python运算符,逻辑运算

    运算符 计算机可以进行的运算有很多种,可不只加减乘除这么简单,运算按种类可分为算数运算.比较运算.逻辑运算.赋值运算.成员运算.身份运算.位运算,今天我们暂只学习算数运算.比较运算.逻辑运算.赋值运算 ...

  8. adb环境部署及与模拟器的连接

    1.下载adt-bundle-windows-x64安装包,下载网址https://www.7down.com/soft/293453.html 2.对安装包进行解压缩 3.配置环境变量,将adb的路 ...

  9. 如何给Apache Pig自定义UDF函数?

    近日由于工作所需,需要使用到Pig来分析线上的搜索日志数据,散仙本打算使用hive来分析的,但由于种种原因,没有用成,而Pig(pig0.12-cdh)散仙一直没有接触过,所以只能临阵磨枪了,花了两天 ...

  10. Ubuntu 16.04 安装STS

    先将STS下载下来,网址是 https://spring.io/tools/sts/all ,然后将STS压缩包移动或者copy到想要放置的位置,比如, sudo cp spring-tool-sui ...