气象数据三维展示方法及系统与流程

文档序号:30433100发布日期:2022-06-15 18:00阅读:363来源:国知局
气象数据三维展示方法及系统与流程

1.本技术涉及气象数据展示技术领域,尤其涉及一种气象数据三维展示方法及系统。


背景技术:

2.传统的气象数据展示方法通常将气象雷达的回波数据转换成平面数据,将不同层的回波分层单独显示,平面的气象数据难以全面地反应气象情况。
3.国内气象雷达数据回波通常通过平面数据显示,将不同层的回波单独显示。现有的气象数据三维展示方法通常将雷达回波数据格点化,再对格点化的数据进行三维重构,基于计算机桌面程序,将每个点单独渲染显示。现有的气象数据三维展示方法通常需要占用大量的运算资源,对系统的性能要求高,通常需要花费大量的时间,实时性差,用户体验差。现有的气象数据三维展示方法的系统架构从c/s架构向b/s架构转换,以云+端的形式进行数据展现是目前的发展趋势,基于浏览器的3d展现方法是目前的主流发展方向。


技术实现要素:

4.(一)发明目的
5.本技术的目的是提供一种气象数据三维展示方法及系统,以解决从现有的气象数据三维展示方法占用大量的运算资源,实时性差的问题。
6.(二)技术方案
7.第一方面,本技术的提供了一种气象数据三维展示方法,包括:
8.获取包括气象数值和三维坐标的格点数据;
9.根据所述气象数值对所述格点数据进行分类;
10.根据相邻且分类不同的所述格点数据生成阈值界面;
11.对所述阈值界面进行渲染得到气象数据展示模型。
12.本技术实施例提供的气象数据三维展示方法,依据相邻且分类不同的格点数据生成阈值界面,相邻且分类不同的格点数据的数量远小于全部格点数据的数量,该方法通过牺牲一定的精度大幅降低了运算量,提高了阈值界面的生成效率,尤其适用于实时生成的气象数据展示模型。
13.可选地,获取包括气象数值和三维坐标的格点数据包括:
14.将天气雷达的监控空间划分为多个多面体;
15.根据所述天气雷达的回波数据获取每个所述多面体对应的反射率得到所述格点数据;
16.其中,所述三维坐标为所述多面体的坐标,所述气象数值为所述反射率。
17.本技术实施例提供的气象数据三维展示方法,通过天气雷达的回波数据生成格点数据,有助于提高格点数据的生成效率,尤其适用于实时生成气象数据展示模型。
18.可选地,根据所述气象数值对所述格点数据进行分类包括:
19.获取气象数值的多个阈值区间;
20.根据气象数值所在的所述阈值区间将所述格点数据分为n类。
21.本技术实施例提供的气象数据三维展示方法,依据阈值区间对格点数据进行分类有助于根据实际需求在更关注的位置生成阈值界面。
22.可选地,根据相邻且分类不同的所述格点数据生成阈值界面包括:
23.依次对所述多面体的每个公共面执行下述步骤:
24.判断当前公共面两侧的多面体的分类是否相同;
25.若是,则将所述公共面作为阈值界面。
26.本技术实施例提供的气象数据三维展示方法,通过遍历多面体的公共面能够选出全部阈值界面。
27.可选地,对所述阈值界面进行渲染包括:
28.获取所述阈值界面的重要性评分;
29.按照所述重要性评分从低到高的顺序对所述阈值界面进行渲染;
30.其中,所述阈值界面的重要性评分越高,透明度越低。
31.一般情况下,气象数据展示模型中反射率高的区域会被反射率低的区域包裹,单纯使用半透明的方式渲染阈值界面会导致颜色覆盖不能精确展示色卡,本技术实施例提供的气象数据三维展示方法通过同时控制渲染顺序和透明度有助于避免色卡颜色混合或遮挡,有助于清楚地展示气象数据展示模型内部的特征。
32.可选地,根据分类后的所述格点数据生成阈值界面包括:
33.通过多核cpu并行计算生成阈值界面。
34.相关技术中,通常采用串行计算生成阈值界面,按照阈值界面对应的阈值大小进行排序,依次生成每个阈值界面。本技术实施例提供的气象数据三维展示方法,可以通过并行计算的方式来加快计算速度,充分利用计算机cpu多核并行计算,将不同的阈值界面的提取放到不同的cpu核心上去完成,以此提高计算效率。计算能力强的cpu有64核,可对64个阈值面同时进行计算,计算时间缩短为串行计算的1/64。前端javascript(简称“js”)语言自身具备独立线程异步功能,通过同步的方式(比如等待完成同步)来实现渲染显示,相比传统的串行顺序渲染,此方法可以极大提高显示速度。
35.可选地,还包括:
36.基于webgl技术在网页实时绘制所述气象数据展示模型。
37.相关技术中,气象数据三维展示通常需要提前建模,采用webgl技术有助于在网页实时生成气象数据展示模型,交互性好。
38.可选地,得到气象数据展示模型之后还包括:
39.将所述气象数值展示模型发送至客户端进行展示。
40.第二方面,本技术的提供了一种气象数据三维展示系统,包括服务器;
41.所述服务器包括第一获取模块、分类模块、数据处理模块和第一渲染模块;
42.第一获取模块,用于获取包括气象数值和三维坐标的格点数据;
43.分类模块,用于根据所述气象数值对所述格点数据进行分类;
44.数据处理模块,用于根据分类后的所述格点数据生成阈值界面;
45.第一渲染模块,用于对所述阈值界面进行渲染得到气象数据展示模型。
46.可选地,还包括客户端;所述客户端包括显示前端,所述显示前端用于从所述服务器下载所述气象数值展示模型并展示。
47.可选地,所述客户端包括第二获取模块、第三获取模块和第二渲染模块;
48.第二获取模块,用于获取用户在经纬度地图中选择的第一切面点和第二切面点;
49.第三获取模块,用于获取所述第一切面点和所述第二切面点的连线;
50.第二渲染模块,用于获取在所述经纬度地图上的投影位于所述连线上的格点数据并进行渲染得到切面位图。
51.可选地,所述客户端还包括插值模块,用于对位于所述连线上的格点数据进行插值运算。
52.(三)有益效果
53.本技术的上述技术方案具有如下有益的技术效果:
54.本技术实施例提供的气象数据三维展示方法通过对格点数据进行分类,再根据相邻且分类不同的格点数据生成阈值界面,减少了需要处理的数据量,降低了计算量,提高了气象数据展示模型的生成效率。
附图说明
55.图1示出了相关技术中的一种气象数据展示模型。
56.图2示出了根据本技术一实施方式的气象数据三维展示方法的流程图;
57.图3示出了根据本技术一实施方式的气象数据三维展示方法绘制的气象数据展示模型。
58.图4示出了根据本技术一实施方式的格点数据。
59.图5示出了图4的格点数据根据本技术一实施方式的分类示意图。
60.图6根据本技术一实施方式生成的阈值界面的示意图。
61.图7示出了根据本技术实施例的气象数据三维展示系统的示意性框图。
62.附图标记:
63.1:服务器;11:第一获取模块;12:分类模块:13:数据处理模块;14:第一渲染模块;
64.2:客户端;21:第二获取模块;22:第三获取模块;23:第二渲染模块。
具体实施方式
65.为使本技术的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本技术进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本技术的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本技术的概念。
66.本技术,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
67.在本技术的描述中,需要说明的是,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
68.此外,下面所描述的本技术不同实施方式中所涉及的技术特征只要彼此之间未构
成冲突就可以相互结合。
69.相关技术中,栅格数据的3d展示方法直接将所有栅格点根据其值绘制出特定颜色的立方体,包含雷达反射率的栅格数据会根据每个栅格点的反射率数值范围绘制成特定的颜色。比如55dbz~60dbz绘制成红色。一个30x30x30的栅格数据需要绘制30x30x30=27000个立方体,一个立方体6个面12个三角形,共需绘制27000x12=324000个三角形(3d中的基本绘图单元)。当栅格数据尺寸较大时需要绘制的三角形数量非常巨大。图1为采用上述栅格数据的3d展示方法绘制的气象数据展示模型,图中的三角形均为需要绘制的部分,需要绘制的三角形共24个。
70.图2示出了根据本技术一实施方式的气象数据三维展示方法的流程图。
71.如图2所示,本技术实施例提供了一种气象数据三维展示方法,包括如下步骤:
72.s101:获取包括气象数值和三维坐标的格点数据。气象数值为三维坐标所在地点的气象数值。气象数值可选为气象雷达的反射率、依据气象雷达的反射率生成的气象特征或粒子相态。三维坐标为空间三维直角坐标,使用(x,y,z)记录。
73.s102:根据气象数值对格点数据进行分类。可选获取气象数值的n个阈值区间,每个阈值区间表示气象数值的一个取值范围。根据气象数值所在的阈值区间将格点数据分为n类,其中,n为正整数。可选将取值相近的气象数值分在同一类,可选将对应的天气状况相近的气象数值分在同一类。根据气象数值对应的气象情况对格点数据进行分类。可选将气象数值格点数据的分类可选包括下述一种或几种:干雪、湿雪、冰晶、霰、大滴、小雨、中雨、大雨、雨夹雹、小雹和大雹。
74.s103:根据相邻且分类不同的格点数据生成阈值界面。可选的,在相邻且分类不同的格点数据之间生成阈值界面。阈值界面的阈值可选为两侧格点数据对应的气象数值的平均值。阈值界面两侧的格点数据较大的一侧可选为阈值界面的外侧。阈值界面两侧的格点数据较小的一侧可选为阈值界面的外侧。可选通过多核中央处理器(central processing unit,简称cpu)并行计算生成阈值界面。充分发掘cpu的性能,把一些并没有先后强依赖关系、且耗时代码块放到一个新的线程里去处理,那么原先按顺序执行的业务就会变成并行执行,让主线程继续往后执行,节约了时间,提高了效率。
75.s104:对阈值界面进行渲染得到气象数据展示模型。可选基于webgl(全写web graphics library)技术在网页实时绘制气象数据展示模型。以网页的方式实时绘制气象数据展示模型,而不依赖于固定的pc桌面程序,可以让用户通过浏览器随时随地的查看数据。得到气象数据展示模型之后可选将气象数值展示模型发送至客户端进行展示。可选对阈值界面的外侧进行渲染。
76.本技术实施例提供的气象数据三维展示方法将气象数据以3d的形式直观的显示出来,有助于给相关的用户(如气象预报员)直观的感受,更定性的分析数据,达到精准预报的目的,比如能够看整个观测区域里的冰雹数据,如冰雹云高度、体积、外观特征。与相关技术中对全部格点数据进行渲染相比,本技术实施例提供的气象数据三维展示方法通过对格点数据进行分类,再根据相邻且分类不同的格点数据生成阈值界面,减少了需要处理的数据量,通过牺牲精度降低了计算量,提高了气象数据展示模型的生成效率。
77.格点数据可选由气象雷达的底层算法实现,可选将空间上等距离,例如500(米)
×
500(米)
×
500(米)的点的雷达回波强度数据,按照(x,y,z)坐标进行保存。实时的气象雷达
回波数据(比如长x宽x高1000x800x150=120万个点的数据),如果直接将气象雷达回波数据每个单点单独渲染,将会耗费非常多的时间,渲染时间将会达到秒级。在一些实施例中,将天气雷达的监控空间划分为多个多面体;根据天气雷达的回波数据获取每个多面体对应的反射率得到格点数据;其中,三维坐标为多面体的空间三维直角坐标,气象数值为反射率。在一些实施例中,多面体为立方体,多个多面体的大小相同。n为15,根据15个反射率阈值区间将格点数据分为15类。
78.依次对多面体的每个公共面执行下述步骤:
79.判断当前公共面两侧的多面体的分类是否相同;
80.若是,则将公共面作为阈值界面,若否,则将公共面两侧的多面体合并。
81.本技术实施例提供的气象数据展示方法将格点数据进行相邻点相似数据的合并,依据合并后的格点数据绘制阈值界面,需要处理的数据量减少了90%~99%,降低计算量,提高了效率,有助于实时动态计算,尤其适用于实时建模。
82.如图3为采用上述方法绘制的气象数据展示模型。
83.图3与图1基于相同的数据绘制而成,图3中的三角形表示需要绘制的部分,本技术实施例提供的气象数据三维展示方法将24个需要绘制的三角形简化为2个需要绘制的三角形,降低了运算量,提高了生成气象数据展示模型的效率。
84.可选根据阈值界面的阈值绘制对应的颜色,每个阈值对应的颜色不同。多个阈值界面之间无耦合可进行并行计算,不存在颜色面交叉的情况。
85.在一些实施例中反射率阈值区间包括:小于0,大于等于0且小于5,大于等于5且小于10,大于等于10且小于15,大于等于15且小于20,大于等于20且小于25,大于等于25且小于30,大于等于30且小于35,大于等于35且小于40,大于等于40且小于45,大于等于45且小于50,大于等于50且小于55,大于等于55且小于60,大于等于60且小于65,大于等于65。反射率阈值区间对应的分类编号为0~14。
86.如图4和图5所示,-4.8在范围-5~0内所以范围编号为0。12.5在范围10~15内所以范围编号为3。7.3在范围5~10内所以范围编号为2。
87.如图6所示,中间的立方体有6个相邻的立方体,遍历6个公共面通过判定公共面两侧的立方体的范围编号是否一致来确定是否需要绘制界面。图6示出了全部需要绘制的三角形。
88.将每个点格点数据与上下左右相邻的点做比较,如果是同一个分类做合并处理,将合并后的格点数量单独渲染,因为格点数量降低了至少1个量级,将大大提高前端显示的速度。
89.在一些实施例中,对阈值界面进行渲染包括:
90.获取阈值界面的重要性评分。气象数值为反射率时,阈值界面的分类对应的反射率越高,重要性评分越高。按照重要性评分从低到高的顺序对阈值界面进行渲染。其中,阈值界面的重要性评分越高,透明度越低。使用webgl渲染阈值界面时,通过减少透明度和设置渲染顺序靠后,可以更加突出的展现更关注的阈值界面。后渲染的图形会覆盖先渲染的图形。这样可以保证后渲染图形的颜色不会受到影响。由于大部分应用数据关注的阈值较高的界面会包含在低阈值界面之中,所以该方法可以更有效和精确的展示核心数据。一般情况下,气象数据展示模型中反射率高的区域会被反射率低的区域包裹,单纯使用半透明
的方式渲染阈值界面会导致颜色覆盖不能精确展示色卡,本技术实施例提供的气象数据三维展示方法通过同时控制渲染顺序和透明度有助于避免色卡颜色混合或遮挡,有助于清楚地展示气象数据展示模型内部的特征。
91.比如,对应的阈值较高的3个阈值界面,其代表阈值为30和45,反射率小雨30对应的天气是小雨,反射率在30-45对应的天气是中雨,反射率大于45对应的天气是大雨;都是下雨天气,预报员都很关心。但对城市危害最大的是大雨天气,因此我们需要将大雨的回波数据增强显示出来给预报员,帮助他们最更合理的预报。
92.通常云团结构里中心云团区域的含水量大,雨强最大,下雨过程中,云团正中心垂直区域的雨量也会最大,云团边缘的雨较小;在雷达回波中也会体现这个特征。因此会是阈值较高的界面会包含在低阈值界面之中。
93.图7示出了根据本技术实施例的气象数据三维展示系统的示意性框图。如图7所示,本技术实施例提供了一种气象数据三维展示系统,包括服务器1和客户端2。
94.服务器1包括第一获取模块11、分类模块12、数据处理模块13和第一渲染模块;
95.第一获取模块11,用于获取包括气象数值和三维坐标的格点数据;
96.分类模块12,用于根据气象数值对格点数据进行分类;
97.数据处理模块13,用于根据分类后的格点数据生成阈值界面;
98.第一渲染模块14,用于对阈值界面进行渲染得到气象数据展示模型。
99.客户端2包括第二获取模块21、插值模块、第三获取模块22和第二渲染模块2314;客户端还包括显示前端,显示前端用于从服务器下载所述气象数值展示模型并展示。
100.第二获取模块21,用于获取用户在经纬度地图中选择的第一切面点和第二切面点。经纬度地图为天气雷达的监控空间对应的经纬度地图。用户可选通过鼠标任意选取第一切面点和第二切面点。
101.第三获取模块22,用于获取第一切面点和第二切面点的连线;
102.第二渲染模块23,用于获取在经纬度地图上的投影位于连线上的格点数据并进行渲染得到切面位图。在一些实施例中,将第一切面点和第二切面点的经纬度坐标转换为二维坐标(x,y),通过线性关系获取第一切面点和第二切面点之间直线上的数据,获取投影位于这条直线上的格点数据并根据格点数据对应的气象数值确定每个像素点的颜色的rgb值进行渲染得到切面位图,切面位图的像素点通常小于1000x500,计算量很小,0.1秒内能渲染成图。切面位图可选通过弹窗的形式显示。
103.插值模块,用于对位于连线上的格点数据进行插值运算。切面位图是格点数据描述的空间的一个剖面位图。切面位图的位置信息使用浮点数表达,通过对格点数据进行插值运算有助于格点数据平滑细腻地在切面位图上展现出来。
104.本技术实施例提供的气象数据三维展示系统通过客户端实现交互功能,切面及气象数据展示模型的展示均不需要服务器的参与,减轻了服务器的压力,降低了服务器的性能要求。用户通过客户端获取切面位图,有助于用户直观地查看气象雷达的回波情况,对天气预报起到了辅助的作用。
105.应当理解的是,本技术的上述具体实施方式仅仅用于示例性说明或解释本技术的原理,而不构成对本技术的限制。因此,在不偏离本技术的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。此外,本技术所附权利要求旨
在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1