VIIRS_TOOLSv1.0,包含6s查找表建立、气溶胶反演功能

2023-11-23 10:50

本文主要是介绍VIIRS_TOOLSv1.0,包含6s查找表建立、气溶胶反演功能,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本产品是在IDL语言的基础上写出来的sav文件,可以直接打开进行操作,界面如下(由于是一代,很多功能还没完全开发好,目前已经支持6s查找表的建立以及气溶胶光学厚度的反演功能):***(本产品在最终完成后能够进行大多数VIIRS传感器的一级产品处理,也能对部分的HDF文件进行处理,如HDF4以及HDF5)***
标注了invalid,是目前还在继续开发的功能,后续会陆续公开
**

功能1:建立6S查找表

**建立查找表(advanced_operation–build LUT)查找表建立的界面如下:
在这里插入图片描述
·第一个输入框是6s.exe的具体输入路径;
·第二个是查找变输出的路径,记住末尾一定要加‘\’.否则后边会报错哈
·第三个是所要建立查找表的波段的波段响应函数,如:选取了10个波段响应大于0.1的(按照波段间隔2.5nm看待只有10个的哈,具体的应该会很多,但是6s表建立的时候需要将波段按照2.5nm分隔开,自己下来可以对他划分一下);
·第四个是波段的范围,就是在第二个里面对应波段选取中的最小最大值;(第三个的输入规范为:0.11,0.12,0.13…中间用英文逗号分隔开,第四个空也是,只需要输入最小最大的波长,中间用英文分开。)
·第五个空为建立查找表途中角度间隔设置大小,包含了太阳天顶角
方位角,卫星天顶角等,只需要输入一个数字,默认为角度间隔一眼。比如,输入4.则表示间隔为4°;
·第六个空为选填项,与第二三个空对应,即:如果你填了第三四个空,第六个空就不用管,第六个空主要是涉及到6s模型中有自带很多传感器的光谱响应,这个具体可以去6s的用户说明查询。你可以直接在这里输入需要传感器光谱响应函数在6s中对应的数字,如22,即可以将第三第四个空下来。
最后一个当然是点击运行啦。运行后的查找表在你输出路径的下面,同时会多一个in.txt和out.txt,这个是正常的,等到查找表建立结束可以删掉,这个是调用6s模型时的中间站点啦~。
下面我们看看输出来的结果吧:
在这里插入图片描述
total sca对应的是上下行总透过率,sph…对应半球反照率,refle。。对应的是程辐射,之后依次是太阳天顶角、卫星天顶角、相对方位角、AOD光学厚度。

功能2:气溶胶光学厚度反演

对应位置在inversion_operation–inversion
对应打开界面如下:
在这里插入图片描述
这个反演程序主要是为了VIIRS准备的,目前未考虑到其他情况,VIIRS反演我们用到了四个波段,M1,M2,M3,M5波段,但是还用到了其他的辅助波段,用于得到地表反射率的。如果需要VIIRS的光谱相应函数可以在下面留言,我发给你们,我的下载资源也有,但是我觉得不值得,资源应该免费共享,况且,那个也是我在官方下载来的。
4个框依次对应的是查找表所在路径注意:只是路径,不需要准确到查找表什么名字什么,所在路径即可,后面也要加**、
四套查找表按照顺序对应的名字(m1\m2\m3\m5)中间用英文逗号分隔。第三个是对应的VIIRS一级数据对应的路径
不管多少个,只需要对应到路径下,这个程序写了for循环,直接可以把该路径下的he5文件一次反演完**,最后一个对应输出路径,输出结果有两个,分别是没有带投影的,后面带有withoutgeo的是无投影的,剩下一个是有投影的。
然后run就行了。

在这里插入图片描述
每个hdf文件反演都会有一个进度条表示进度。目前,反演时间大概在5分钟一张图,相对来说还是比较让人满意的,因为传统的MODIS数据,几百乘几百的栅格大小,反演两个波段,需要用时4分多种(逐项元法反演的哈,结果还会因为查找表间隙较大而产生明显的条带过度),本产品做反演,首先VIIRS数据是3700*3700的大小,在数据上比MODIS大了很多,其次,他需要反演4个波段,并且查找表空隙大的缺点,我利用三次线性插值对其做了插值,保证每个象元对应的反演途中的几何参数对应真实值(工作量可以说不小了),在保证这么多的基础上,时间才5分钟,但是,有利就有弊撒,我使用的是三维数组运算代替了逐项元,因此大大提高了速度,但是对于硬件要求可能偏高(16G运行内存来,8G的我没试过,但是可能挺悬的,里面一堆三维数组上下算,左右乘那种)这个是比较大的缺点吧,但是气溶胶反演确实本来就比较费电脑,对电脑要求也是真的高。
对了,最后来张反演结果图吧

在这里插入图片描述
这个我没有做去云处理,所以有较强的云边缘效果,所以,大家可以考虑下再做个去云处理,后续完善我也会尽量把这些考虑到。(十分感谢洋洋的指导,不然现在可能还在抠脑壳)

百度网盘位置:
链接:https://pan.baidu.com/s/1Elz3G7-8KPD0jp4SYPbjaw
提取码:xzrz

这篇关于VIIRS_TOOLSv1.0,包含6s查找表建立、气溶胶反演功能的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/417408

相关文章

深度解析Spring Security 中的 SecurityFilterChain核心功能

《深度解析SpringSecurity中的SecurityFilterChain核心功能》SecurityFilterChain通过组件化配置、类型安全路径匹配、多链协同三大特性,重构了Spri... 目录Spring Security 中的SecurityFilterChain深度解析一、Security

Java实现预览与打印功能详解

《Java实现预览与打印功能详解》在Java中,打印功能主要依赖java.awt.print包,该包提供了与打印相关的一些关键类,比如PrinterJob和PageFormat,它们构成... 目录Java 打印系统概述打印预览与设置使用 PageFormat 和 PrinterJob 类设置页面格式与纸张

MySQL 8 中的一个强大功能 JSON_TABLE示例详解

《MySQL8中的一个强大功能JSON_TABLE示例详解》JSON_TABLE是MySQL8中引入的一个强大功能,它允许用户将JSON数据转换为关系表格式,从而可以更方便地在SQL查询中处理J... 目录基本语法示例示例查询解释应用场景不适用场景1. ‌jsON 数据结构过于复杂或动态变化‌2. ‌性能要

Qt使用QSqlDatabase连接MySQL实现增删改查功能

《Qt使用QSqlDatabase连接MySQL实现增删改查功能》这篇文章主要为大家详细介绍了Qt如何使用QSqlDatabase连接MySQL实现增删改查功能,文中的示例代码讲解详细,感兴趣的小伙伴... 目录一、创建数据表二、连接mysql数据库三、封装成一个完整的轻量级 ORM 风格类3.1 表结构

MySQL中查找重复值的实现

《MySQL中查找重复值的实现》查找重复值是一项常见需求,比如在数据清理、数据分析、数据质量检查等场景下,我们常常需要找出表中某列或多列的重复值,具有一定的参考价值,感兴趣的可以了解一下... 目录技术背景实现步骤方法一:使用GROUP BY和HAVING子句方法二:仅返回重复值方法三:返回完整记录方法四:

mysql表操作与查询功能详解

《mysql表操作与查询功能详解》本文系统讲解MySQL表操作与查询,涵盖创建、修改、复制表语法,基本查询结构及WHERE、GROUPBY等子句,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随... 目录01.表的操作1.1表操作概览1.2创建表1.3修改表1.4复制表02.基本查询操作2.1 SE

Golang如何用gorm实现分页的功能

《Golang如何用gorm实现分页的功能》:本文主要介绍Golang如何用gorm实现分页的功能方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录背景go库下载初始化数据【1】建表【2】插入数据【3】查看数据4、代码示例【1】gorm结构体定义【2】分页结构体

Java Web实现类似Excel表格锁定功能实战教程

《JavaWeb实现类似Excel表格锁定功能实战教程》本文将详细介绍通过创建特定div元素并利用CSS布局和JavaScript事件监听来实现类似Excel的锁定行和列效果的方法,感兴趣的朋友跟随... 目录1. 模拟Excel表格锁定功能2. 创建3个div元素实现表格锁定2.1 div元素布局设计2.

HTML5实现的移动端购物车自动结算功能示例代码

《HTML5实现的移动端购物车自动结算功能示例代码》本文介绍HTML5实现移动端购物车自动结算,通过WebStorage、事件监听、DOM操作等技术,确保实时更新与数据同步,优化性能及无障碍性,提升用... 目录1. 移动端购物车自动结算概述2. 数据存储与状态保存机制2.1 浏览器端的数据存储方式2.1.

基于 HTML5 Canvas 实现图片旋转与下载功能(完整代码展示)

《基于HTML5Canvas实现图片旋转与下载功能(完整代码展示)》本文将深入剖析一段基于HTML5Canvas的代码,该代码实现了图片的旋转(90度和180度)以及旋转后图片的下载... 目录一、引言二、html 结构分析三、css 样式分析四、JavaScript 功能实现一、引言在 Web 开发中,