哨兵3号(Sentinel 3)卫星数据处理

news2024/12/25 12:56:35

李国春

本文介绍使用RSD处理欧空局哨兵3号(Sentinel 3)卫星数据的具体方法。

气象数据多用NetCDF格式交换和存储,气象卫星数据也是如此。气象业内认为HDF5也是NetCDF的一部分,虽然文件扩展名使用的是.nc,但是实际上就是HDF5。但有些.nc数据确实是纯NetCDF,如一些探测土壤水分的微波数据。这部分数据我们另行讨论,在这里按H5处理这些nc格式。

启动RSD,从菜单命令选择打开气象卫星数据,选择打开气象卫星数据的哨兵3号,出现图1的菜单。可见菜单中包含有20种左右的哨兵3号卫星数据产品。

图1 RSD打开哨兵3号数据的菜单

哨兵3号卫星数据包含非常丰富的数据产品类型,对于这个菜单中没有包含的部分,大都可以用RSD的打开通用的HDF5方式打开。这里仅介绍菜单中各种数据的打开过程。

一、打开数据

1. OLCI L1B EFR 全分辐亮度 (mW.m-2.sr-1.nm-1)

这是OLCI的L1B级别的全分辨率辐亮度,数据被分成一个个的Granules,和MODIS的L1B分的块很像。点击这个菜单,在出现的打开文件对话框的Title提示 RSD - Sentinel3 OLCI L1B EFR 300m —— Oaxx_radiance.nc

文件名Oaxx_radiance.nc里面的xx是对应的波段。例如打开4波段数据文件 Oa04_radiance.nc,点击后出现图2的对话框。

图2 选择打开OLCI文件的字段

在图2中,点亮一个字段,在窗口显示该字段的简略图像。勾选待打开字段,点击OK,出现投影选择对话框。可以不更改这个投影对话框的设置,直接点击确定。则将Oa04_radiance.nc文件中的辐亮度数据打开。见图3。

 图3 打开OLCI L1B EFR 全分辐亮度 (mW.m-2.sr-1.nm-1)

这是OLCI 4波段辐亮度数据,空间分辨率300m。4字节浮点格式数据,直接就是辐亮度值。

注意图3中层列表我画的红框,这是高程数据。这些高程数据是地理信息数据集自己带的,顺便打开的。见图4。

 

图4 打开OLCI L1B EFR辐亮度数据的对应高程

2. OLCI L1B ERR 降分辐亮度 (mW.m-2.sr-1.nm-1)

ERR是降分辨率的数据,并且是未切分的轨道数据。点击这个菜单,在出现的打开文件对话框的Title提示 RSD - Sentinel3 OLCI L1B ERR 1200m —— Oaxx_radiance.nc

文件名Oaxx_radiance.nc里面的xx是对应的波段。打开后的结果见图5。

 

 图5 打开OLCI L1B ERR辐亮度数据

3. OLCI L2 LFR 全分RC_GIFAPAR681/865(mW.m-2.sr-1.nm-1)

这是L2数据,681和685 nm 的反射波段GIFAPAR(Green Instantaneous FAPAR)。点击这个菜单,在出现的打开文件对话框的Title提示 RSD - Sentinel3 OLCI L2 LFR RC_GIFAPAR681/865 —— rc_gifapar.nc

打开结果(图略)。

4. OLCI L2全分大气可降水(IWV,kg.m-2)

也是L2数据,大气可降水。点击这个菜单,在出现的打开文件对话框的Title提示 RSD - Sentinel3 OLCI L2 LFR IWV —— iwv.nc

打开结果(图略)。

5~10. OLCI L2 LFR/LRR 多种数据

略。

11. SLSTR L1B RBT亮温(BT, °K)

这是另一个传感器 SLSTR(Sea and Land Surface Temperature Instrument)L1B级亮温产品。

点击这个菜单命令,在出现的打开文件对话框的Title提示RSD - Sentinel3 SLSTR L1B RBT 亮温 —— XX_BT_xx.nc。选择文件后出现对话框图6。

 图6 选择打开SLSTR文件的字段

点击OK后见图7。

图7 打开SLSTR L1B RBT亮温数据

这里也加载了高程数据。

12~14. 其它多种SLSTR数据

15. Synergy L2 VG1/V10 B0/B2/B3/MIR 表面反射率(SR)

选择 RSD - Sentinel3 SY L2 Surface Refleftance(表面反射率) —— B0/B2/B3/MIR.NC

打开后结果见图8。

图8 合成的中红外反射率。

哨兵3号卫星产品非常繁杂,这里仅介绍一部分。对于其它一些扩展名为nc的HDF5数据,可以使用RSD的打开通用的HDF5数据的菜单命令打开。

二、数据投影和合成

我们以上述第一种数据 OLCI L1B EFR 全分辐亮度 (mW.m-2.sr-1.nm-1)为例。

逐个打开21个波段的OLCI L1B EFR 全分辐亮度数据。打开时可以按照图9设置投影方式和范围。

 

 图9设置投影方式和范围

21个波段设置成完全一致的投影(这里使用缺省值,不用设置)。

打开21个波段数据,导出RSD格式文件,再逐个添加到1个文件中。如图10。

 

 图10 21个文件合并成21层

使用 添加通道合并到… 再合并成1层,重新合成层图像,结果见图11。

图11 合并全部21个波段到1层

修改一下可以在打开时直接合并成一个数据集,找时间我把它改成打开时直接就得到图11的结果,现在偷懒了,就先这样吧。

数据里直接就有高程,可以做一个伪3D效果看看。《RSD的伪三维(3D)遥感图像》使用菜单命令 图像处理->图像合成->伪3D图像 ,点击后选择高程的数据层。结果见图12。

图12 伪3D图像显示效果

为了和我那个“伪”区别,这里加个“真”。也可以用真3D效果渲染一下。勾选高程数据层,使用菜单 其它图形图像->高程3D渲染预览 ,渲染结果见图13。

图12 真3D渲染效果

真3D效果看起来好像更好一些,但是为定位和定量分析带来了额外的开销,看看还可以,用起来麻烦。还有,比方有些项目搞一个地球上来转一转,看起来好像很雄伟,实际上没啥用。:)

伪3D图像不从多角度观察,在水平维度上没有几何失真,还增加了一些立体信息。这就像机械零件无论外观渲染多么逼真,仍然离不开三视图的图纸一样。所以我推荐伪3D并不仅仅是因为这是我提出来的,它也确实有应用意义。我又嘴欠了,上次我说是我们先做的对象空间分析,还说一些所谓的智能项目不靠谱,把一些人气的够呛。何必呢,哈哈哈哈! 

我去,这次不是跑题了,而是扯太远了。

三、保存

右击数据层可以将投影后数据保存为rsd文件、img文件或者TIFF格式文件。

突然忘了该介绍什么了,就到这里吧,想起来再补充。

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/581830.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据在内存中的存储(1)

目录 一.C语言中数据类型的介绍 1.c语言的内置类型及大小(单位字节) 2.整型家族 3.浮点数家族 4.自定义类型(构造类型) 5.指针类型 6.空类型 二.整型数据在内存中的存储 1.二进制 2.整型数据在内存中的存储(…

读数据压缩入门笔记01_数据压缩导读

1. 建立在数据压缩上的世界 1.1. 数据压缩技术最让人惊异之处在于,它与过去40年里个人计算的很多重大改变有关,但很少有人知道这一点 1.2. 我们当下生活在其中的这个计算世界,完全建立在数据压缩算法之上 1.3. 图像的压缩 1.3.1. 1978年 …

HMM实现中文分词

引言 在隐马尔可夫模型中介绍了HMM的理论部分,为了巩固理论知识,本文基于HMM实现中文分词。具体来说,通过HMM实现基于字级别的分词算法。 HMM 这里简单说明一下,更详细的请参考隐马尔可夫模型。 这里输入序列为 X 1 : N X_{1:N…

【h5】实现语音转文字

【h5】实现语音转文字 一、需求功能概述是: 二、实现过程1、实现按住录音,松开发送。有两个录音按钮。a. 获取用户的麦克风声音和创建一个MediaRecorder对象:b. 启动和停止录音:c. 将音频数据上传到服务器,并在处理完后…

【C++】指针 - 定义和使用,所占内存空间,空指针,野指针,const修饰指针,指针和数组,指针和函数

文章目录 1. 定义和使用2. 所占内存空间3. 空指针4. 野指针5. const修饰指针6. 指针和数组7. 指针和函数 1. 定义和使用 数据类型 * 变量名; 指针的作用是,可以通过指针间接访问内存。 内存编号是从 0 开始记录的,一般用十六进制数字表示。可以利用指…

nodejs+vue社区母婴幼儿用品商城系统

本系统实现了管理员对用户、商品信息、交流论坛、订单信息的管理,是为了满足用户更深层次的需求。除了上述优势外,本系统还具有:查询迅速,搜索资料方便,可靠性强等等在如今这个高速发展的时代,效率决定着你…

十款开源测试开发工具推荐(自动化、性能、混沌测试、造数据、流量复制)

在本篇文章中,我将给大家推荐 10 款日常工作中经常用到的测试开发工具神器,涵盖了自动化测试、性能压测、流量复制、混沌测试、造数据等。 1、AutoMeter-API 自动化测试平台 AutoMeter 是一款针对分布式服务,微服务 API 做功能和性能一体化…

可靠可用性基本知识

可靠可用性基本知识 1. 基本概念1.1 可靠性1.2 可用性 2. 可靠和可用性指标3. 可靠性工程实践相关概念4. FEMA相关知识4.1 基本概念4.2 FEMA分析流程 5. 产品开发流程中可靠可用性测试如何开展5.1 测试可靠可用性输入\输出5.2 可靠可用性开展流程5.3 测试设计5.4 测试执行5.4.1…

chatgpt赋能python:Numpy读音:是“num-pie”还是“num-pee”?

Numpy读音:是“num-pie”还是“num-pee”? 你是否曾经在想,“numpy”这个词怎么念?很多人都有不同的看法。有些人说“num-pie”,而另一些人则说“num-pee”。那么,谁是正确的呢?在这篇文章中&a…

ad18学习笔记三:关于测量点对点

如何测量? 方法有很多种,比如 1、 点击 ‘放置’–》‘尺寸’–》‘线性尺寸’ 2、 快捷工具栏 3、 快捷键 AD如何使用测量命令?-凡亿课堂 AD中的三种测量距离的方式 清除测量标线? 这个简单,在显示测量结果的…

【论文阅读】GNN在推荐系统中的应用

【论文阅读】GNN在推荐系统中的应用 参考Graph Neural Networks for Recommender Systems: Challenges, Methods, and Directions 文章目录 【论文阅读】GNN在推荐系统中的应用1、本文结构2、推荐系统的目的,发展和基于GNN模型的挑战3、推荐系统相应背景&#xff0…

GPT-4 插件和插件化的思考

一、前言 最近 ChatGPT 的 Plus 用户在 GPT-4 中新增了插件功能, GPT 在插件的加持下如虎添翼。 那么我常用的插件是哪些?插件化是什么?插件化有什么好处?插件化和我们日常开发中哪些设计模式思想一致?GPT 的插件还存…

竟然还可以这样计算圆周率π?你被惊艳到吗(50)

小朋友们好,大朋友们好! 我是猫妹,一名爱上Python编程的小学生。 和猫妹学Python,一起趣味学编程。 今日主题 什么是圆周率π? 如何用蒙特卡洛法来计算圆周率? 圆周率π 圆周率用希腊字母π&#xf…

TatukGIS Developer Kernel 11.78 for .NETCore Crack

Tatuk GIS Developer Kernel for .NET 是一个变体,它是受控代码和 .NET GIS SDK,用于为用户 Windows 操作系统创建 GIS 专业软件的过程。它被认为是一个完全用于 Win Forms 的 .NET CIL,WPF 的框架是为 C# 以及 VB.NET、VC、oxygen 以及最终与…

chatgpt赋能python:Python个人数据合并:简单优雅地整合您的个人数据

Python个人数据合并:简单优雅地整合您的个人数据 在信息时代,我们收集了大量的个人数据,包括社交媒体、电子邮件、日历事件和其他各种来源。但是,如何以整洁的方式将这些数据整合到同一地方?Python提供了一种简单而优…

chatgpt赋能python:介绍:Python中的jieba.cut

介绍:Python 中的 jieba.cut Jieba 是一个用于中文分词的 Python 库,被广泛应用于自然语言处理、文本分析等领域。其中的 jieba.cut 方法是该库的核心功能之一,对于各类中文文本的分词操作起到至关重要的作用。本文将从以下四个方面对 jieba…

springboot--请求

1. 请求 在本章节呢,我们主要讲解,如何接收页面传递过来的请求数据。 1.1 Postman 当下最为主流的开发模式:前后端分离 在这种模式下,前端技术人员基于"接口文档",开发前端程序;后端技术人员也…

1.3. 数据类型与变量

数据类型 在Java中,数据类型决定着一个数据的取值范围和操作。Java中的数据类型主要分为两类:基本数据类型和引用数据类型。 基本数据类型 Java中的基本数据类型包括整型、浮点型、字符型和布尔型。 整型:byte、short、int、long。对应的…

【嵌入式烧录/刷写文件】-3.3-Bin文件转换为S19/Hex文件

案例背景(共8页精讲): 该篇将告诉您:如何使用Vector HexView工具,j将一个bin文件转换为Intel Hex或Motorola S-record(S19/SREC/mot/SX)文件。 目录 1 Intel Hex,Motorola S-record(S19/SREC/mot/SX),Bin文件之间的…

Flutter 笔记 | Flutter 自定义组件

Flutter 自定义组件的几种方式 当Flutter提供的现有组件无法满足我们的需求,或者我们为了共享代码需要封装一些通用组件,这时我们就需要自定义组件。在Flutter中自定义组件有三种方式:通过组合其他组件、自绘和实现RenderObject。 1. 组合多…