CN107798712A - 一种面向idl极地向量场可视化的算法 - Google Patents
一种面向idl极地向量场可视化的算法 Download PDFInfo
- Publication number
- CN107798712A CN107798712A CN201711136282.8A CN201711136282A CN107798712A CN 107798712 A CN107798712 A CN 107798712A CN 201711136282 A CN201711136282 A CN 201711136282A CN 107798712 A CN107798712 A CN 107798712A
- Authority
- CN
- China
- Prior art keywords
- data
- vector field
- idl
- functions
- polar
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/206—Drawing of charts or graphs
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明涉及一种面向IDL极地向量场可视化的算法,读取向量场数据和经度数据,对两种数据进行插值处理,使之分辨率一致,通过数据维度转换,将地理范围不对称的二维数据变为一维数据,建立图层显示窗口,设置投影和数据的地理范围,插入陆地图层和经纬网图层,利用可视化函数对极地向量进行可视化,叠加所有图层,生成极地向量场图。本发明方法面向IDL极地向量场可视化,解决了地理范围非对称向量场数据可视化难的问题。
Description
技术领域
本发明涉及利用IDL程序语言进行极地向量场可视化的流程算法。
背景技术
IDL编程语言功能强大,在航空航天、遥感地信等领域应用广泛。研究人员利用IDL绘制向量场图一般使用内置函数ivector,但ivector在对向量场可视化时具有明显的局限性。当数据范围在地理上不对称时,例如图2,假如红色框为数据的地理范围,四个角的经纬度如图2所示。而ivector在进行可视化时,需要输入数据地理范围的最小纬度、最小经度、最大维度和最大经度,也就是将红色框四个角的最小纬度、最小经度、最大维度和最大经度作为ivector的参数,本示例应该输入的参数为(72,-180,90,180)。但是ivector函数默认为数据在地理上是对称的,也就是纬度范围为72°~90°,经度范围是-180°~180°,最终认为数据范围为图中蓝色圆形区域,因此生成的图形肯定是错误的。然而在两极地区的研究数据在地理上往往是不对称的,目前还没有解决此问题的算法,因此,极地向量场可视化方法亟待解决。
发明内容
针对上述IDL软件中ivector函数的局限性而导致极地向量场可视化难的问题,本发明的目的提供一种利用IDL程序语言进行极地向量场可视化的流程算法。该算法可以将地理范围不对称的二维数据变为一维数据,避免了ivector函数错误识别数据范围的问题。并建立了一整套极地向量场可视化的算法。
本发明解决其技术问题所采用的技术方案是:一种面向IDL极地向量场可视化的算法,包括以下步骤:
读取地理经度数据LON、纬度数据LAT和向量场V向数据、U向数据并进行插值处理,并将插值后的二维数据进行维度转换,变为一维数据;
建立图层显示窗口,设置投影以及数据的地理范围,显示经纬网;
插入陆地图层,通过一维数据对极地向量进行可视化,叠加所有图层,生成极地向量场图。
所述进行插值处理具体为:
采用最近邻域法,即IDL内置函数congrid(),将经度数据LON、纬度数据LAT和向量场V向数据、U向数据均插值为X行,Y列,形成二维数据。
所述对将插值后的二维数据进行维度转换具体为:
采用IDL内置函数reform(),将二维数据转换为一维数据。
所述建立图层显示窗口,设置投影以及数据的地理范围,显示经纬网具体为:
利用imap函数建立图层显示窗口,用MAP_PROJECTION函数设置投影和用limit函数设置数据的地理范围,显示经纬网。
所述插入陆地图层,通过一维数据对极地向量进行可视化,叠加所有图层,生成极地向量场图包括以下步骤:
利用IGETCURRENT函数和DoAction函数插入陆地图层;
将转为一维的U向数据、V向数据、经度数据和维度数据作为IDL内置函数的关键字代入可视化函数ivector,对极地向量进行可视化,利用overplot关键字叠加所有图层,生成极地向量场图。
一种面向IDL极地向量场可视化的算法,以IDL程序实现。
本发明具有以下有益效果及优点:
1.本发明一种面向IDL极地向量场可视化的算法,可提供从数据读取到最终成图的一整套极地向量场可视化流程算法。
2.本算法纯采用IDL程序语言完成,简洁方便,便于操作
3.本算法可将二维向量场数据和经纬度数据进行转换为一维数据,从而避免了IDL内置函数错误识别数据范围的问题。
附图说明
图1是本发明的流程图;
图2是IDL内置函数ivector局限性示意图;
图3a是本文发明所涉及的向量数据类型示意图;
图3b是常见向量数据类型示意图;
图4是箭头特征参数图解;
图5是本发明示例结果图;
具体实施方式
下面结合附图对本发明做进一步说明。
如图1所示,一种面向IDL极地向量场可视化的算法,读取向量场数据和经度数据,对两种数据进行插值至统一网格大小,通过数据维度转换,将地理范围不对称的二维数据变为一维数据,避免了ivector函数错误识别数据范围的问题。建立图层显示窗口,设置投影和数据的地理范围,插入陆地图层和经纬网图层,利用可视化函数对极地向量进行可视化,叠加所有图层,生成极地向量场图,包括以下步骤:
读取地理经度数据LON、纬度数据LAT和向量场V向数据、U向数据并进行插值处理,使两种数据的行、列数分别相同,得到插值后的LON′、LAT′、V′、U′;
将插值后的二维的经纬度数据和向量场数据进行维度转换,变为一维数据,得到LON″、LAT″、V″、U″;
利用imap函数建立图层显示窗口,用MAP_PROJECTION函数设置投影和用limit函数设置数据的地理范围,显示经纬网;
利用IGETCURRENT函数和DoAction函数,在窗口中插入陆地图层;
将转为一维的U″、V″、LON″和LAT″分别作为向量场的经向(水平)分量、纬向(垂向)分量、经度和维度代入IDL内置可视化函数ivector的关键字中,对向量场进行可视化,利用overplot关键字叠加所有图层,并显示在建好的窗口之中,生成极地向量场图。
所述对经纬度数据和向量场数据插值的方法具体为:
采用最近邻域法,即IDL内置函数congrid()进行处理。假设将经纬度数据和向量场数据统一插值为X行,Y列。
所述对插值后的经纬度数据和向量场数据进行维度转换具体为:
维度转换采用IDL内置函数reform()进行处理,将二维数据转换为一维数据,以此来避免ivector函数识别数据范围错误。
如图3a、图3b所示,向量是既有大小又有方向,常见的表示方式是用大小(WS)和角度(WD)表示,如图3b所示;也有另一种表示方法,分别有经向(水平U)分量和纬向(垂向V)分量来表示,经向分量平行于纬线,纬向分量平行于经线;而发明所涉及的向量数据为后者表示的类型。由于两极地区在绘图时所用投影,一般采用极地投影,也就是经纬网不是横屏竖直的,而是有一定的弧度。这样就造成了绘图时不能遵循上北下南左西右东的原则进行。随着位置的变化,朝四个方向的角度也会发生变化,在向量场可视化时,极易出错;然而目前没有一部软件或是某个函数专门解决此问题,本发明针对此问题,发明了一套算法,可精确的对极地向量也就是在地理上不对称的向量数据进行可视化。
以下步骤均采用IDL语言在IDL界面里编译运行完成。
利用IDL读文件函数读取向量场V向数据和U向数据,读取经纬度数据,将向量场数据和经纬度利用congrid()函数进行插值,插值到统一网格大小下,网格大小决定最后成图时箭头的密集度,因此为成图美观,需设置合理的网格大小。假设将经纬度数据和向量场数据统一插值为X行,Y列,则插值公式为:
LON′=congrid(LON,Y,X)
LAT′=congrid(LAT,Y,X)
V′=congrid(V,Y,X)
U′=congrid(U,Y,X)
公式中V表示向量场的V向原始二维数据,U表示向量场的U向原始二维数据,LON表示向量场对应的二维经度数据,LAT表示向量场对应的二维纬度数据,V′表示由向量场的V向原始二维数据经最近邻域法插值后的V向二维数据,U′表示由向量场的U向原始二维数据经最近邻域法插值后的U向二维数据,LON′表示由向量场原始二维经度数据经最近邻域法插值后的二维经度数据,LAT′表示由向量场原始二维纬度数据经最近邻域法插值后的二维纬度数据,congrid()为IDL软件内置函数,用于数据的插值处理。
利用reform()函数对上述插值后的向量场数据和经纬度数据进行维度转换,转换成一维,以此来避免ivector函数识别数据范围错误,转换公式为:
Z=X×Y
LON″=reform(LON′,Z)
LAT″=reform(LAT′,Z)
V″=reform(V′,Z)
U″=reform(U′,Z)
V″表示插值后的V向二维数据经reform()维度转换函数转换成的V向一维数据,U″表示插值后的V向二维数据经reform()维度转换函数转换成的U向一维数据,LON″表示插值后的二维经度数据经reform()维度转换函数转换成的一维经度数据,LAT″表示插值后的二维纬度数据经reform()维度转换函数转换成的一维纬度数据,reform()为IDL软件内置函数,用于数据的纬度转换处理。
利用imap函数建立图层显示窗口,用MAP_PROJECTION函数设置投影和用limit函数设置数据的地理范围,显示经纬网;
利用IGETCURRENT函数和DoAction函数插入陆地图层;
利用可视化函数ivector对极地向量进行可视化,可视化是可对向量箭头的长度,箭头粗细,箭头角度进行调整,如图4。
利用overplot关键字叠加所有图层,最终生成极地向量场图,如图5。
Claims (5)
1.一种面向IDL极地向量场可视化的算法,其特征在于包括以下步骤:
读取地理经度数据LON、纬度数据LAT和向量场V向数据、U向数据并进行插值处理,并将插值后的二维数据进行维度转换,变为一维数据;
建立图层显示窗口,设置投影以及数据的地理范围,显示经纬网;
插入陆地图层,通过一维数据对极地向量进行可视化,叠加所有图层,生成极地向量场图。
2.根据权利要求1所述的一种面向IDL极地向量场可视化的算法,其特征在于所述进行插值处理具体为:
采用最近邻域法,即IDL内置函数congrid(),将经度数据LON、纬度数据LAT和向量场V向数据、U向数据均插值为X行,Y列,形成二维数据。
3.根据权利要求1所述的一种面向IDL极地向量场可视化的算法,其特征在于所述对将插值后的二维数据进行维度转换具体为:
采用IDL内置函数reform(),将二维数据转换为一维数据。
4.根据权利要求1所述的一种面向IDL极地向量场可视化的算法,其特征在于所述建立图层显示窗口,设置投影以及数据的地理范围,显示经纬网具体为:
利用imap函数建立图层显示窗口,用MAP_PROJECTION函数设置投影和用limit函数设置数据的地理范围,显示经纬网。
5.根据权利要求1所述的一种面向IDL极地向量场可视化的算法,其特征在于所述插入陆地图层,通过一维数据对极地向量进行可视化,叠加所有图层,生成极地向量场图包括以下步骤:
利用IGETCURRENT函数和DoAction函数插入陆地图层;
将转为一维的U向数据、V向数据、经度数据和维度数据作为IDL内置函数的关键字代入可视化函数ivector,对极地向量进行可视化,利用overplot关键字叠加所有图层,生成极地向量场图。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711136282.8A CN107798712B (zh) | 2017-11-16 | 2017-11-16 | 一种面向idl极地向量场可视化的算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711136282.8A CN107798712B (zh) | 2017-11-16 | 2017-11-16 | 一种面向idl极地向量场可视化的算法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107798712A true CN107798712A (zh) | 2018-03-13 |
CN107798712B CN107798712B (zh) | 2021-01-12 |
Family
ID=61536193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711136282.8A Active CN107798712B (zh) | 2017-11-16 | 2017-11-16 | 一种面向idl极地向量场可视化的算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107798712B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109254767A (zh) * | 2018-08-28 | 2019-01-22 | 中国科学院海洋研究所 | 一种极地海冰漂移矢量可视化算法 |
CN110706304A (zh) * | 2019-09-23 | 2020-01-17 | 中国科学院海洋研究所 | 一种极地水汽输送通量的可视化算法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100017064A1 (en) * | 2006-10-30 | 2010-01-21 | Nsk Ltd. | Method for tuning electric power steering apparatus |
CN102831626A (zh) * | 2012-06-18 | 2012-12-19 | 清华大学 | 极地投影模式下多变量时空数据的可视化方法 |
CN103198447A (zh) * | 2013-04-09 | 2013-07-10 | 哈尔滨工业大学 | 一种基于卫星云图的风矢场实时度量方法 |
CN103268389A (zh) * | 2013-06-09 | 2013-08-28 | 北京工商大学 | 一种基于插值算法的平滑曲线式超图可视化方法 |
CN103914618A (zh) * | 2014-03-28 | 2014-07-09 | 哈尔滨工程大学 | 一种基于电子海图的海水深度等值线生成方法 |
-
2017
- 2017-11-16 CN CN201711136282.8A patent/CN107798712B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100017064A1 (en) * | 2006-10-30 | 2010-01-21 | Nsk Ltd. | Method for tuning electric power steering apparatus |
CN102831626A (zh) * | 2012-06-18 | 2012-12-19 | 清华大学 | 极地投影模式下多变量时空数据的可视化方法 |
CN103198447A (zh) * | 2013-04-09 | 2013-07-10 | 哈尔滨工业大学 | 一种基于卫星云图的风矢场实时度量方法 |
CN103268389A (zh) * | 2013-06-09 | 2013-08-28 | 北京工商大学 | 一种基于插值算法的平滑曲线式超图可视化方法 |
CN103914618A (zh) * | 2014-03-28 | 2014-07-09 | 哈尔滨工程大学 | 一种基于电子海图的海水深度等值线生成方法 |
Non-Patent Citations (3)
Title |
---|
李勃: ""虚拟海洋与三维可视化仿真引擎的研究与开发"", 《中国博士学位论文全文数据库 基础科学辑》 * |
李树华: ""面向海洋数值模拟的数值可视化信息系统设计与实现"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
赵银娣: "《遥感数字图像处理教程 IDL编程实现》", 31 December 2015 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109254767A (zh) * | 2018-08-28 | 2019-01-22 | 中国科学院海洋研究所 | 一种极地海冰漂移矢量可视化算法 |
CN110706304A (zh) * | 2019-09-23 | 2020-01-17 | 中国科学院海洋研究所 | 一种极地水汽输送通量的可视化算法 |
CN110706304B (zh) * | 2019-09-23 | 2023-02-03 | 中国科学院海洋研究所 | 一种极地水汽输送通量的可视化算法 |
Also Published As
Publication number | Publication date |
---|---|
CN107798712B (zh) | 2021-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102800052B (zh) | 非标准地图的半自动数字化方法 | |
CN103606188B (zh) | 基于影像点云的地理信息按需采集方法 | |
US20140192159A1 (en) | Camera registration and video integration in 3d geometry model | |
CN112884902B (zh) | 一种面向点云配准的标靶球位置优化方法 | |
CN103838437A (zh) | 基于投影图像的触控定位控制方法 | |
CN107168516A (zh) | 基于vr及手势交互技术的全球气候矢量场数据可视化方法 | |
CN102867057A (zh) | 一种基于视觉定位的虚拟向导构建方法 | |
CN107945217B (zh) | 一种适用于自动装配的图像特征点对快速筛选方法及系统 | |
CN112148774B (zh) | 一种高分辨率空间多区域气象数据处理系统及方法 | |
CN103530852A (zh) | 一种镜头畸变校正方法 | |
CN107798712A (zh) | 一种面向idl极地向量场可视化的算法 | |
CN107451958B (zh) | 一种面向ArcGIS极地矢量场可视化的角度转换方法 | |
CN110070503A (zh) | 基于卷积神经网络的尺度校准方法、系统及介质 | |
CN103064565B (zh) | 一种定位方法及电子设备 | |
Mattioli et al. | 2D–3D spatial registration for remote inspection of power substations | |
CN107038199A (zh) | 一种绘图方法和装置 | |
CN103473984A (zh) | 网络环境下基于模板的动态地图获取方法 | |
CN105469415A (zh) | 多视角遥感图像融合方法 | |
CN110580738B (zh) | 生成增强的工厂模型的方法 | |
CN103017749B (zh) | 狭长水系面要素转化为线要素的方法、装置和导航仪 | |
CN105389783A (zh) | 一种遥感图像精处理系统及方法 | |
CN104537614A (zh) | 一种环境一号卫星ccd影像正射校正方法 | |
CN103345769A (zh) | 全路径遥感影像专题制图法 | |
CN106157284B (zh) | 图像中文字区域的定位方法及装置 | |
CN106199745B (zh) | 一种连通的孔喉的识别方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |