栅格数据前端可视化综合分析方法与流程

文档序号:22735061发布日期:2020-10-31 09:12阅读:257来源:国知局
本发明属于地理大数据分析展示
技术领域
,具体涉及栅格数据前端可视化综合分析方法。
背景技术
:现有的遥感数据具有数据量大、处理耗时的特点。在实际需求中,一般不需要进行整幅图像进行处理,而且大多数情况下需要实时快速的查看处理结果,这样可以方便的调节模型处理参数。通用的处理方式主要是通过桌面软件如erdas、pci、envi等,都是进行全幅处理,这种处理方式有三个弊端:一是处理时间较长,不能实时查看处理结果;二是矢量数据和栅格数据在这些桌面软件中进行综合分析不方便;三是利用桌面软件无法利用云计算等新的计算手段加快处理速度。此外,很多业务场景需要方便的将矢量和栅格数据进行综合分析,而栅格数据实时渲染则是实现分块分级快速处理的前提,现有的栅格数据浏览器端查看主要方式是发布地图服务,这种方式局限性比较大,栅格数据一经发布无法更改渲染方式,利用这种方式无法实时查看数据处理的效果。随着高性能服务器和云计算技术的发展,地理数据的处理也需要利用这些高新技术提高数据的处理效率。技术实现要素:本发明提供的栅格数据前端可视化综合分析方法,能够根据请求中带有的展示级别和展示范围仅选择相应的切片数据进行处理显示。本发明提供的栅格数据前端可视化综合分析方法,包括以下步骤:步骤1、依据金字塔原则将待处理栅格数据转换为多级的概览图,计算所述概览图得到元数据信息,所述元数据信息为包括各级概览图的字节位及行列数的索引信息;根据所需的显示范围和数据级别,在所述元数据信息中查找到待显示切片数据的索引,再根据所述索引从所述概览图中选择所述待显示切片数据;步骤2、从一系列数据处理脚本中选择所需的数据处理脚本处理所述待显示切片数据得到待显示数据,显示所述待显示数据。进一步地,当需要改变数据显示方式时,从一系列数据处理脚本中选择新的数据处理脚本执行所述步骤2以改变数据显示方式。进一步地,所述待显示切片数据的尺寸为256*256个像素。有益效果:1、本发明通过计算栅格数据的多级概览图的元数据信息,对栅格数据进行虚拟切片,当浏览器端请求展示数据时,根据请求中带有的展示级别和展示范围,仅选择相应的切片数据进行处理显示,有效缩短了栅格数据处理的时间,提高了栅格数据处理及显示的实时性。2、本发明通过采用不同的数据处理脚本处理切片数据,能够实时改变栅格数据的显示效果。具体实施方式下面列举实施例,对本发明进行详细描述。本发明提供的栅格数据前端可视化综合分析方法,其基本思想是:依据金字塔原则将待处理栅格数据转换为多级的概览图,计算概览图得到元数据信息,元数据信息为包括各级概览图的字节位及行列数的索引信息;根据所需的显示范围和数据级别,在元数据信息中查找到待显示切片数据的索引,再根据索引从概览图中选择待显示切片数据;采用预先定义的数据处理脚本处理待显示切片数据得到待显示数据,显示待显示数据。本发明提供的栅格数据前端可视化综合分析方法,具体包括以下步骤:步骤1、依据金字塔原则将待处理栅格数据转换为多级的概览图,计算概览图得到元数据信息,其中,元数据信息为包括各级概览图的字节位及行列数的索引信息。具体来说,依据金字塔原则创建栅格数据的概览图,例如,生成29个级别的概览图层,并将概览图层按对象写入到随机存取文件中。计算概览图得到元数据信息,元数据信息的定义可以如表1所示,即,标识位为字母cast,占4个字节;每个级别的概览图的字节位,占29*4个字节;每个级别的概览图行列数所占字节计算方式为29*2*4,总计232个字节。元数据信息可以采用头文件信息的方式写入原栅格数据中。以上处理过程的主要目的是:能够快速的按照分级分块信息读取的方式读取所需的数据,而不是一次性将所有数据读取到内存,从而提高数据读取的效率,同时,记录栅格数据的分级分块索引信息,而不对数据进行实际切片,仅在读取数据时进行实际切片,也能够有效提高处理效率,增加数据处理的实时性。序号信息字节数1标识位42第1级别的概览图的字节位4......第n级别的概览图的字节位430第29级别的概览图的字节位431第1级别级别的概览图行列数8......第n级别级别的概览图行列数859第29级别级别的概览图行列数8表1预处理记录信息表步骤2、根据所需的显示范围和数据级别,在元数据信息中查找到待显示切片数据的索引,再根据索引从概览图中选择待显示切片数据。当浏览器端请求显示数据时,根据请求中带有的信息,确定页面中需要显示的数据级别和显示范围,由此,确定需要处理的栅格数据的级别和范围。例如,确定方式是获取页面中地图底图的显示范围和级别,每次的地图缩放以及鼠标拖动都会触发显示范围和级别的更新。同时,为了提高前端web页面浏览体验,防止拖动地图时出现空白区域,每次获取的范围向外扩展当前范围的1/5,这种预加载策略可以很大程度中提高浏览体验。实现当中,可以显示范围及数据级别以web请求的形式发送至后台,为了提高处理效率可采用并发请求的方式。当后台获取显示范围及数据级别后,首先根据步骤1中记录的元数据信息获取需处理的待显示切片数据。每个级别的概览图对应的切片假设有m行n列,已知栅格数据的左下顶点坐标(x_1,y_1)和右上顶点的坐标(x_2,y_2),可以计算出每个切片的左下顶点坐标(x_ll,y_ll)和右上顶点坐标(x_ru,y_ru),计算公式如下所示:xll=x1+n(x2-x1)/nyll=y1+m(y2-y1)/mxru=x1+(n+1)(x2-x1)/nyru=y1+(m+1)(y2-y1)/m由此,进一步可推算出四角点坐标。对比每个切片四角点坐标和传入的页面范围之间的关系,当四个角点有一个落入传入的页面范围内则此切片需要处理。步骤3、采用预先定义的数据处理脚本处理待显示切片数据得到待显示数据,显示待显示数据。其中,数据处理脚本用以实现对栅格数据的各种专业化的处理。数据处理脚本的输入需要与步骤1中定义的切片数据的尺寸相匹配,例如,通常是256*256个像素的切片数据。同时,数据处理脚本返回的结果也是一个256*256的切片数据。采用这种方式有利于大数据量的遥感数据的拆分处理,提高处理效率。样例脚本如下:此外,为了应对高并发产生的大数据量处理的需求,后台的数据处理支持在云平台部署,从而可以利用云平台的高负载、高可用的特性,但是需要任务调度机制对处理任务进行分发。例如,可以采用一个服务调度中心加n个数据处理中心的方式。在服务调度中心设置消息队列服务,所有的处理请求都通过消息队列的方式将请求发送到消息中心,调度服务从消息中心获取一个个请求,根据各个数据处理中心的负载情况,优先将请求发送到负载小的处理中心,以达到负载平衡。任务消息中包含了要处理的id,处理脚本的id,要处理的级别以及处理次级别切片数据的编号列表,通过这些信息,处理中心还可以明确知道用哪个脚本去处理具体的哪些切片数据,任务消息示例如下所示。反馈消息主要包含了任务处理的结果信息,任务是否成功,以及简单的附加信息,反馈消息示例如下所示。综上,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1