envi5.3处理高分二号影像数据辐射定标大气校正

news2024/9/28 7:15:25

目录

一、多光谱影像处理

1. 辐射定标

 2.大气校正

1. 需要准备一些数据:

2.大气校正过程

3、正射校正

二、全色影像处理

1. 辐射定标

 2. 正射校正

三、图像融合

1.几何配准

2.图像融合


高分二号处理流程 


envi5.3的安装教程:

ENVI5.3安装

        安装完ENVI5.3后,还需要安装envi app store,然后在app store中安装“中国国产卫星支持工具”,这样才能在envi里导入国产卫星图像。

保姆级教程:

ENVI插件商店App Store的下载、安装、使用方法


全文根据此篇文章进行数据处理:

tm影像辐射定标_高分二号影像数据预处理及裁剪过程

本文中的操作与表述大部分来自于上述文章,处理过程作为上述文章的补充。


其他参考:

学习笔记---遥感影像辐射定标与大气校正

利用ENVI自带全球DEM数据计算区域平均高程

高分二号数据处理流程(有高分二号的数据信息)


打开.tif文件的方法(本文打开的都是.xml文件)

启动ENVI5.3,在菜单栏中,选择File > Open,弹出Open对话框,找到GF2数据⽂件夹所在位置,选中扩展名为.tiff的两个⽂件,点击打开。



GF2有多光谱和全色两个数据,MSS是多光谱的,PAN是全色的,多光谱的分辨率低(4m),全色的高(1m),需要把这两个数据融合,融合之前需要做定标等处理,获取经纬度。


一、多光谱影像处理

1. 辐射定标

以这个为例:

其他路径\2022.4.22\BaoTaQu\BaoTaQu_2022_DiZai\GF2_PMS1_E109.6_N36.2_20220214_L1A0006288992\GF2_PMS1_E109.6_N36.2_20220214_L1A0006288992-MSS1.xml

注意:路径中不要有中文,可能会报错(我的就报错了,无法生成.dat)

本文是以MSS1.xml为例,若为MSS2.xml,则和MSS相关的都将1替换成2即可

打开ENVI,使用国产卫星扩展工具打开MSS影像,启动File→Open As→China Satellites→GF2,选择MSS.xml文件打开;

在Toolbox中,Radiometric Correction→Radiometric Calibration,在File Selection中选择待处理影像,点击OK;

 弹出Radiometric Calibration对话框,Calibration type确认为Radiance,单击Apply FLAASH Setting,设置输出路径与文件名(这里需要创建一个output文件夹,用于存放生成的数据文件,output/MSS1_Radiometric.dat),点击OK开始执行;

(1)辐射定标前和辐射标定后的波普廓线

(2)辐射定标前和辐射标定后的直观图像

 2.大气校正

1. 需要准备一些数据:

(1)GF2的Sensor Altitude是631.000

(2)Ground Elevation平均高程需要对具体的图像进行计算。

平均高程计算过程:

File -->  Open World Data -->  Elevation(GMTED2010)(海拔)

得到 .jp2 图像

把要计算的.tif文件放在.jp2文件上面

可以看到tif图像在jp2图像的上方,如下图所示

选择ROI区域工具,画点(此区域用四个点即可)圈出tif图像区域。

 点击右键,选择第一个选项“完成和接受多边形”

 创建好区域,计算高程

得到1241m,则Ground Elevation=1241/1000=1.241km

也可以根据百度中查到的,海拔高度860.6~1525米,平均1193米,也可以按这个来,最好是计算。

注:计算完成后,可以将 .jp2图像remove掉,不然在导入生成好的大气校正图像时会提示 “···one or more····”这样的提示,不得不创建一个新的view。


2.大气校正过程

在Toolbox中,双击Radiometric Correction→Atmospheric Correction Module→FLAASH Atmospheric Correction工具启动FLAASH模块;

 参数解释

 (1) 设置输入与输出文件信息:

Input Radiance Image:输入辐射定标之后的数据,MSS1_Radiometric.dat;

Output Reflectance File:单击按钮选择反射率数据输出目录与文件名(output/MSS1_FLAASH.dat)如果只在后面的文本框中输入文件名,则保存路径将为Output Directory for FLAASH Files中的路径;

 Output Directory for FLAASH Files:设置大气校正其他结果输出路径 output文件夹;

Rootname for FLAASH Files:设置大气校正其他输出结果的根文件名(这个我没设置)
 

(2) 设置传感器及图像信息:

ENVI5.3及以上版本能够对图像中心坐标和获取时间信息进行自动识别,所以只需要修改以下几点:

Sensor Type:传感器类型,这里选择Multispectral→UNKNOWN→MSI;

GF2的Sensor Altitude是631.000

Ground Elevation:成像区域平均高度,通过数据准备中,计算得到的Ground Elevation=1.241km

Pixel Size:4m;

(3) 大气模型和气溶胶模型:

Atmosphere model(大气模型)

根据数据经纬度与获取时间对应的大气模型进行选择:

本文实验的数据纬度为36°,日期为Feb(2月),故选取的是MLS(Mid-Latitude Summer),其他图像按照这个方法选择即可模型即可。

Aerosol Model

根据实际图像选择,本文例子为Rural

Aerosol Retrieval 气溶胶反演

第一种,选择 none。(本文选用的这种)

点击Multispectral Settings,在里面设置响应函数

 Filter Function File 是GF2-PMS1的光谱响应函数gf2_pms1_mss.sli(GF2-PMS2选择gf2_pms2_mss.sli);位于ENVI安装目录:*安装目录\ENVI53\resource\filterfuncs下,选择即可。

点击Fiiter Function File -->   Open --> New file

第二种,选择,需要设置Multispectral Settings--Kaufman --> Tanre Aerosol Retrieval

Advanced Settings

这里大部分都可以保持默认设置,但由于是多光谱数据,故将Modtran Resolution设置为15cm-1.

我的参数设置: 

 所有设置完成之后,点击Apply执行大气校正,完成后会得到反演的能见度和水汽柱含量;

 得到的结果:

 选择Display>Profiles>Spectral查看大气校正前后同一地物波谱曲线变化。

气溶胶反演选择的第一种,None,得到的 大气校正前后对比图,图片颜色有些许变化。

 这个是刚刚大气校正后得到的:

   

3、正射校正

点击File→Open打开大气校正后(或者原始的多光谱)的影像,View Metadata查看其元数据信息,可以看到ENVI很好地识别了数据的RPC信息;

  有了RPC信息之后,就可以基于这些RPC信息进行正射校正;点击Toolbox→Geometric Correction→Orthorectification→RPC Orthorectification
Workflow,打开正射校正流程化工具;

 在File Selection面板中,Input File选择经过大气校正的多光谱数据(MSS1_FLAASH.dat),DEM File会默认选择全球分辨率为900米的DEM数据,我们这里保持默认(如果有更高分辨率的DEM数据,可以替换此数据),点击Next;

在RPC Refinement面板中,有四个选项卡可以选择。

如果有实测的或从其他途径获取的控制点数据,可以在该面板中进行添加,添加后在Statistics选项卡中可以看到相应的误差统计信息;

1) 切换到Advanced选项卡,修改输出像元大小Output Pixel Size为4米,重采样方法Image Resampling选择三次卷积法,其他参数保持默认;
 

 2) 切换到Export选项卡,选择输出文件格式,设置输出路径及文件名(MSS1_FLAASH_rpcortho.dat),点击Finish;

 

正射校正前后对比:


二、全色影像处理

1. 辐射定标

打开ENVI,使用国产卫星扩展工具打开MSS影像,启动File→Open As→China Satellites→GF2,选择PAN.xml文件打开;

在Toolbox中,Radiometric Correction→Radiometric Calibration,在File Selection中选择待处理影像,点击OK;

Calibration Type: Reflectance,全色影像定标为大气表观反射率;

Output Interleave: BIL;

Output Data Type:Uint;

Scale Factor:10000;

output/PAN1_Radiometric.dat

 注:由于多光谱FLAASH大气校正的结果为扩大了10000倍的反射率数据,为了让融合图像效果好,需要将全色数据与多光谱数据的像元值变成一致。这里使用辐射定标工具将全色数据定标为大气表观反射率,并扩大10000倍。

辐射定标前和辐射标定后的直观图像

 2. 正射校正

全色数据的正射校正操作与多光谱数据的正射校正完全相同,需要提醒的地方是GF2全色数据正射校正时输出像元大小需设置为1米,以便我们下面进行图像融合。

 点击Toolbox→Geometric Correction→Orthorectification→RPC Orthorectification
Workflow,打开正射校正流程化工具;

 在File Selection面板中,Input File选择经过辐射定标(因为本文的全色图没有进行大气校正)的全色数据(PAN1_Radiometric.dat),DEM File会默认选择全球分辨率为900米的DEM数据,我们这里保持默认(如果有更高分辨率的DEM数据,可以替换此数据),点击Next;

1) 切换到Advanced选项卡,修改输出像元大小Output Pixel Size为1米,重采样方法Image Resampling选择三次卷积法(Cubic Convolution),其他参数保持默认;

 2) 切换到Export选项卡,选择输出文件格式,设置输出路径及文件名(PAN1_Radiometric_rpcortho.dat),点击Finish;

 

正射校正前、后对比:

 以上全色图的处理已完成。

三、图像融合

1.几何配准

(本次处理中没有进行几何配准,这部分没有处理)

        图像融合之前,需要查看二者是否完全配准,如果没有完全配准,就需要对其进行配准,可以使用ENVI中的自动配准流程化工具,以全色数据为基准对多光谱数据进行配准;此工具的位置在:Toolbox > Geometric Correction > Registration > Image Registration Workflow

        本次操作正射校正后的多光谱和全色数据配准的比较好(目前,大部分高分辨率数据正射校正后多光谱和全色数据配准的均比较好),所以我们这里不进行图像配准,直接进行图像融合;

2.图像融合

(1)NNDiffuse Pan Sharpening方法

点击在Toolbox→Extensions→NNDiffuse Pan Sharpening ;

Input Low Resolution Raster选择上一步正射校正后的多光谱数据;

Input High Resolution Raster选择上一步正射校正后的全色数据;

Output Raster:NNDiffusePanSharpening.dat应该是自己出来的,如需修改位置、名称可以进行修改,也可以将融合的数据改为.tiff格式的,NNDiffusePanSharpening.tiff;

其他参数保持默认;

点击OK运行;

注:NNDiffuse Pan Sharpening工具要求输入的多光谱和全色数据的空间分辨率是整数倍的(本例正射校正时分别将多光谱的全色的分辨率重采样为4米和1米,就是为了方便该工具的使用)。

浏览融合之后的影像与融合之前的多光谱影像,空间分辨率得到明显提升,颜色纹理也得到了比较好的保留。与全色融合后的光谱曲线整体升高。

 

 

对于图像变白问题,可以将背景值设置为0,有两种方式

(1)使用ENVI自带的工具

具体操作:

Toolbox > Extensions > Raster Processing Batch Tool > Data Ignore Value > Set Ignore Value[Zero]

 (2)手动修改源数据

        使用记事本等工具打开图像头文件,如下图所示。

        在头文件中手动增加一行为data ignore value = 0(其中0为背景值,可以设置为其他值)。重新打开图像即可。

最终得到的图像保存:

此处保存的文件格式是.dat,可根据自己所需,保存成.tif或者其他格式都可以


处理过程中涉及到的文件名:

MSS1_Radiometric.dat
MSS1_FLAASH.dat
MSS1_FLAASH_rpcortho.dat
PAN1_Radiometric.dat
PAN1_Radiometric_rpcortho.dat

MSS2_Radiometric.dat
MSS2_FLAASH.dat
MSS2_FLAASH_rpcortho.dat
PAN2_Radiometric.dat
PAN2_Radiometric_rpcortho.dat

NNDiffusePanSharpening.tiff

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

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

相关文章

陪诊系统|挂号陪护搭建二开陪诊师入驻就医小程序

我们的陪诊小程序拥有丰富多样的功能,旨在最大程度满足现代人的需求。首先,我们采用了智能排队系统,通过扫描二维码获取排号信息,让您从繁琐的排队过程中解放出来。其次,我们提供了多种支付方式,不仅可以实…

C++快餐——C++11(2)

如期待奇迹发生,那唯有不停伸手去抓紧,去把握才行。 文章目录 类成员变量缺省值default关键字delete关键字final关键字可变参数模板STL容器中empalce相关接口函数优点 lambda表达式捕获列表注意!!!底层实现 总结 类成员…

第N个斐波那契数列

第N个斐波那契数列 力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 class Solution { public:int tribonacci(int n) {int a[4]{0,1,1,2};if(n<4) return a[n];int kn-3;for(int i0; i<k;i){int tmpa[3];a[3]a[1]a[2]a[3];//不是【0】开始&…

MATLAB——多层小波的重构

%% 学习目标&#xff1a;多层小波的重构 %% 程序1 clear all; close all; load noissin.mat; xnoissin; [C,L]wavedec(x,3,db1); %小波多层分解 ywaverec(C,L,db1); %重构&#xff0c;必须小波类型一致 emax(abs(x-y)) %重构的误差 %% 程序2 clear all;…

基于模拟退火算法的无人机航迹规划-附代码

基于模拟退火算法的无人机航迹规划 文章目录 基于模拟退火算法的无人机航迹规划1.模拟退火搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要&#xff1a;本文主要介绍利用模拟退火算法来优化无人机航迹规划。 …

设计模式(全23种)

1.前言 1.CUML类图 面向对象设计主要就是使用UML的类图&#xff0c;类图用于描述系统中所包含的类以及它们之间的相互关系&#xff0c;帮助人们简化对系统的理解&#xff0c;它是系统分析和设计阶段的重要产物&#xff0c;也是系统编码和测试的重要模型依据。下面基于C这门语…

Leetcode970. 强整数

Every day a Leetcode 题目来源&#xff1a;970. 强整数 解法1&#xff1a;枚举 枚举 i 和 j 所有的可能性&#xff0c;然后计算 pow(x, i) pow(y, j)&#xff0c;判断是否 < bound。若满足&#xff0c;则放入一个哈希集合&#xff0c;最后将集合转成数组返回。 第一种…

​轻量应用服务器有什么优势?如何评价亚马逊云科技轻量应用服务器?

什么是轻量应用服务器&#xff1f; 随着如今各行各业对云计算的需求越来越多&#xff0c;云服务器也被越来越多的企业所广泛采用。其中&#xff0c;轻量应用服务器是一种简单、高效、可靠的云计算服务&#xff0c;能够为开发人员、企业和个人提供轻量级的虚拟专用服务器&#…

关于c++unique后会打乱顺序

这为什么加上注释这三行输出就会多个4 5 吗 还是a已经发生了变化? 疑问? 解决: unique要求容器有序&#xff0c;而且执行完以后会把重复的放在后面 因为unique后可能无序所以要排序一下,代码如下 。 源代码 #include <iostream> #include <algorithm> #…

Jina AI 推出全球首款开源 8K 语义向量模型,比肩 OpenAI

作为多模态人工智能技术领域的翘楚&#xff0c;Jina AI 的愿景是铺平通往多模态 AI 的未来之路。今天&#xff0c;Jina AI 在向着该愿景前进的路上&#xff0c;达成了一个重要里程碑。我们正式发布了自主研发的第二代文本向量模型&#xff1a;jina-embeddings-v2&#xff0c;是…

记录一道0xGame 2023 CTF Web ez_unserialize的反序列化漏洞题目收获

ez_unserialize 考点&#xff1a; 1. PHP 的引用来绕过 __wakeup 2.命令行中执行php -r phpinfo();&#xff0c;即可获得完整的phpinfo输出 3.PHP 反序列化 POP 链的构造 源码和代码审计&#xff1a; <?phpshow_source(__FILE__);class Cache {public $key;public $value…

高等数学教材重难点题型总结(八)向量代数与空间解析几何

同期更新配套的课后题&#xff0c;这部分的题普遍容易&#xff0c;仅对计算能力有一定要求&#xff0c;理解层面没有什么难度。中学立体几何和解析几何掌握不错的同志&#xff0c;这部分只要稍加记忆是没有什么难度的。

Python语言: 切片的使用

切片的本质&#xff1a;通过切片来截取指定的元素&#xff0c;形成一个新的容器。 切片的具体阐释&#xff1a; 此切片非切片面包的切片&#xff0c;而是python语言中的切片。切片&#xff1a;顾名思义&#xff0c;就是把整块的东西分割开来。python语言中的切片是把一个容器截…

论文阅读 - DCGNN: Dual-Channel Graph Neural Network for Social Bot Detection

论文链接&#xff1a; https://dl.acm.org/doi/pdf/10.1145/3583780.3615237 摘要 由于社交机器人检测对信息传播的深远影响&#xff0c;其重要性已得到越来越多的认识。现有的方法可以分为特征工程和基于深度学习的方法&#xff0c;它们主要关注静态特征&#xff0c;例如帖子…

gitee上传项目

目录 首先在gitee新建一个仓库 接下来创建好项目&#xff0c;先找到生成公钥SSH的目录 接下来是生成公钥SSH 仓库创建好后&#xff0c;接着开始链接项目 首先在gitee新建一个仓库 接下来创建好项目&#xff0c;先找到生成公钥SSH的目录 接下来是找目录&#xff1a;C盘&a…

学习鸟哥Linux shell 时遇到的unexpected operator错误

最近在学习鸟哥Linux&#xff0c;其中一个章节讲解了Linux shell script使用语法&#xff0c;运行总是错误&#xff0c;源码如下&#xff1a; #!/bin/bashread -p "Please input &#xff08;Y/N&#xff09;: " yn[ "${yn}" "Y" -o "${y…

这么理解矩阵乘法,让你吊打面试官

大家好啊&#xff0c;我是董董灿。 很多与深度学习算法相关的面试&#xff0c;面试官可能都会问一个问题&#xff0c;那就是你是如何理解矩阵乘算法的。 更有甚者&#xff0c;会让你当场手写矩阵乘算法&#xff0c;然后问细节&#xff0c;问如何优化&#xff0c;面试现场&…

用大白话聊聊SpringBoot的自动配置原理(面试题详解)

首先&#xff0c;SpringBoot的自动配置不等于自动装配&#xff01; 自动配置是Auto-Configuration&#xff0c;针对的是SpringBoot中的配置类&#xff0c; 而自动装配是Autowire&#xff0c;针对的是Spring中的依赖注入。 进入主题&#xff1a; 自动配置简单来说就是自动去把…

告诉你一个真实的短视频自媒体收入

我是卢松松&#xff0c;点点上面的头像&#xff0c;欢迎关注我哦&#xff01; 10个月前我分享了《这一年半我在短视频的收入》都是真实的&#xff0c;最近我看到有人在分享卢松松做短视频的收入&#xff0c;玩视频又被赋予了很多内容&#xff0c;我这说明下也是一些小感悟分享…

故障诊断模型 | Maltab实现CNN卷积神经网络故障诊断

文章目录 效果一览文章概述模型描述源码设计参考资料效果一览 文章概述 故障诊断模型 | Maltab实现CNN卷积神经网络故障诊断 模型描述 卷积神经网络(convolutional neural network)是具有局部连接、权重共享等特性的深层前馈神经网络,最早主要是用来处理图像信息。 相比于全…