本发明涉及三维处理,具体涉及一种三维海温可视化方法及装置。
背景技术:
1、目前,海水温度场作为海洋要素场中最基本的要素之一,在划分海洋水团、海水不同层次的锋面结构和判别海流性质等方面都起到了不同程度的作用,对掌握和深入研究海温的分布变化规律对巩固和建设国防、推动国民经济快速发展有着举足轻重的意义。对其可视化表达的研究不仅能推进我们对海洋这个大而不规则的实体进行深入的认知,而且可以显著提高我国海洋信息的可视化水平。
2、过往研究三维海洋温度数据都是将三维标量场抽象成多层二维标量面组,用二维图形表达要素体数据中剖面经过位置的数据,最后通过层间对比构建出海洋要素三维空间分布。其数据信息量无法对海洋温度场进行连续的表达,三维等温水团和温跃层也无法较好的展示出来。
技术实现思路
1、针对所述缺陷,本发明实施例公开了一种三维海温可视化方法及装置,其可以实现海温数据三维连续表达。
2、本发明实施例第一方面公开了一种三维海温可视化方法,包括:
3、获取海温数据,并处理得到所述海温数据的最小温度值和最大温度值,所述海温数据包括经度格点、纬度格点和深度格点,对海温数据的每一个格点进行归一化处理;
4、在最小温度值与最大温度值之间生成一维颜色贴图,所述一维颜色贴图包含多种不同颜色,且每一种颜色之间按照最小温度值到最大温度值的排序从冷色调到暖色调依次排序,并基于所述一维颜色贴图创建二维纹理贴图,将不同颜色对应的温度值填入所述二维纹理贴图的纹理索引中;
5、创建三维纹理贴图使得所述三维纹理贴图中的第一长度、第一宽度、第一高度与所述经度格点、纬度格点和深度格点分别对应,将海温数据进行归一化处理后每一个格点温度的值填入所述三维纹理贴图对应像素点的灰度通道中;
6、创建长方体立体模型以及海温数据渲染材质,所述海温数据渲染材质添加有着色器,所述长方体立体模型的第二长度、第二宽度和第二高度分别与所述经度格点、深度格点和纬度格点一致;
7、基于长方体立体模型以及海温数据生成模型顶点坐标,对所述模型从模型顶点坐标开始进行着色。
8、作为一种可选的实施方式,在本发明实施例第一方面中,所述一维颜色贴图中包含256种颜色,所述在最小温度值与最大温度值之间生成一维颜色贴图,包括:
9、对最小温度值与最大温度值之间的全部温度进行归一化处理,以使最小温度值与最大温度值之间的全部温度均匀分配256种颜色;
10、使得最小温度值对应最冷蓝色,最大温度值对应最暖红色,使得最小温度值与最大温度值之间的全部温度按照从温度由低至高的排序分别一一对应冷色调至暖色调的依次排序。
11、作为一种可选的实施方式,在本发明实施例第一方面中,所述二维纹理贴图的纹理宽度为256,高度为1,且该二维纹理贴图的像素格式为argb32。
12、作为一种可选的实施方式,在本发明实施例第一方面中,所述着色器,所述着色器的变量包括三维纹理变量、传输贴图变量、光线步进次数、光照强度、环境光强度、长方体立体模型的长范围、宽范围和高范围、等温水团温度、等温水团类型、等温水团归一化后的温度。
13、作为一种可选的实施方式,在本发明实施例第一方面中,对所述长方体立体模型从模型顶点坐标开始进行着色,包括:
14、以长方体立体模型的模型顶点坐标为输入参数启动顶点着色器流程,输出顶点的世界空间坐标和模型坐标;
15、启动片元着色器流程,输入顶点的世界空间坐标对应的第一像素坐标和顶点的模型坐标对应的第二像素坐标;
16、基于第一像素坐标和相机视觉的世界坐标得到视线方向,根据所述视线方向求得所有视线与长方体立体模型形成的最远交点的坐标,基于所述坐标设置最大步进长度;
17、根据设定的步进长度依序进行着色。
18、作为一种可选的实施方式,在本发明实施例第一方面中,根据设定的步进长度依序进行着色,包括:
19、获取不同像素点坐标的归一化处理后的温度值,计算该像素点坐标对应的颜色采样值;
20、根据所述颜色采样值在二维纹理贴图上采集温度颜色作为该像素点坐标对应的颜色值,累加所有像素点坐标对应的颜色值以及累加当前步进长度。
21、作为一种可选的实施方式,在本发明实施例第一方面中,还包括:当当前像素点坐标对应的颜色值大于阈值时或者累加当前步进长度超过最大步进长度时,停止着色。
22、本发明实施例第二方面公开一种三维海温可视化装置,包括:
23、数据获取模块:用于获取海温数据,并处理得到所述海温数据的最小温度值和最大温度值,所述海温数据包括经度格点、纬度格点和深度格点,对海温数据的每一个格点进行归一化处理;
24、第一处理模块:用于在最小温度值与最大温度值之间生成一维颜色贴图,所述一维颜色贴图包含多种不同颜色,且每一种颜色之间按照最小温度值到最大温度值的排序从冷色调到暖色调依次排序,并基于所述一维颜色贴图创建二维纹理贴图,将不同颜色对应的温度值填入所述二维纹理贴图的纹理索引中;
25、第二处理模块:用于创建三维纹理贴图使得所述三维纹理贴图中的第一长度、第一宽度、第一高度与所述经度格点、纬度格点和深度格点分别对应,将海温数据进行归一化处理后每一个格点温度的值填入所述三维纹理贴图对应像素点的灰度通道中;
26、网格创建模块:用于创建长方体立体模型以及海温数据渲染材质,所述海温数据渲染材质添加有着色器,所述长方体立体模型的第二长度、第二宽度和第二高度分别与所述经度格点、深度格点和纬度格点一致;
27、依序着色模块:用于基于长方体立体模型以及海温数据生成模型顶点坐标,对所述模型从模型顶点坐标开始进行着色。
28、本发明实施例第三方面公开一种电子设备,包括:存储有可执行程序代码的存储器;与所述存储器耦合的处理器;所述处理器调用所述存储器中存储的所述可执行程序代码,用于执行本发明实施例第一方面公开的三维海温可视化方法。
29、本发明实施例第四方面公开一种计算机可读存储介质,其存储计算机程序,其中,所述计算机程序使得计算机执行本发明实施例第一方面公开的三维海温可视化方法。
30、与现有技术相比,本发明实施例具有以下有益效果:
31、本发明实施例中通过获取海温数据进行归一化处理,获取最小温度值和最大温度值,并在最小温度值和最大温度值的基础上进行温度传输函数的创建,并再创建三维纹理贴图和长方体立体模型,实现海温数据的三维连续表达,之后利用raymatch步进原理着色,实现对等温水团分析、温跃层分析和海温剖面分析,能够将海洋温度场进行较好的三维展示。
1.一种三维海温可视化方法,其特征在于,包括:
2.根据权利要求1所述的三维海温可视化方法,其特征在于,所述一维颜色贴图中包含256种颜色,所述在最小温度值与最大温度值之间生成一维颜色贴图,包括:
3.根据权利要求1所述的三维海温可视化方法,其特征在于,所述二维纹理贴图的纹理宽度为256,高度为1,且该二维纹理贴图的像素格式为argb32。
4.根据权利要求1所述的三维海温可视化方法,其特征在于,所述着色器的变量包括三维纹理变量、传输贴图变量、光线步进次数、光照强度、环境光强度、长方体立体模型的长范围、宽范围和高范围、等温水团温度、等温水团类型、等温水团归一化后的温度。
5.根据权利要求4所述的三维海温可视化方法,其特征在于,对所述长方体立体模型从模型顶点坐标开始进行着色,包括:
6.根据权利要求5所述的三维海温可视化方法,其特征在于,根据设定的步进长度依序进行着色,包括:
7.根据权利要求6所述的三维海温可视化方法,其特征在于,还包括:当当前像素点坐标对应的颜色值大于阈值时或者累加当前步进长度超过最大步进长度时,停止着色。
8.一种三维海温可视化装置,其特征在于,包括:
9.一种电子设备,其特征在于,包括:存储有可执行程序代码的存储器;与所述存储器耦合的处理器;所述处理器调用所述存储器中存储的所述可执行程序代码,用于执行权利要求1至7任一项所述的三维海温可视化方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机程序,其中,所述计算机程序使得计算机执行权利要求1至7任一项所述的三维海温可视化方法。