1. 高分二号数据预处理入门指南
第一次接触高分二号多光谱影像处理时,我被各种专业术语和复杂流程搞得晕头转向。经过半年多的实战摸索,终于总结出这套保姆级操作指南,特别适合刚入门的遥感工程师或地理信息专业学生。高分二号作为我国自主研制的亚米级高分辨率卫星,其多光谱数据在农业监测、城市规划等领域应用广泛,但原始数据必须经过预处理才能发挥价值。
ENVI5.3是目前最主流的遥感处理平台之一,但很多新手会遇到三个典型问题:插件安装报错、定标系数过期、高程计算不准确。本文将手把手带你解决这些问题,从数据准备到正射校正全程演示,特别加入了2023年最新定标系数查询方法和自动高程计算技巧。所有操作步骤都经过20+次实测验证,确保在Windows和Linux系统都能稳定运行。
提示:处理前请确保计算机至少有8GB内存,建议使用英文路径存放数据,避免因中文字符导致程序异常退出。
2. 环境配置与数据准备
2.1 安装国产卫星支持插件
ENVI默认不支持国产卫星数据格式,需要先安装专用插件。这里推荐两种经过验证的安装方式:
方案A:通过ENVI App Store自动安装
- 启动ENVI5.3,点击顶部菜单Help→ENVI App Store
- 搜索"China Satellites Support"插件
- 点击Install按钮等待自动完成(需保持网络连接)
方案B:手动安装插件包当服务器无法联网时,可手动下载插件:
# 下载地址(需替换为最新版本): wget https://example.com/gf_plugin_v2.3.zip unzip gf_plugin_v2.3.zip -d /usr/local/envi53/extensions/安装后需重启ENVI,在File→Open As菜单中会出现China Satellites选项即表示成功。我曾遇到插件版本不兼容问题,解决方案是同时安装VC++2015运行库。
2.2 数据文件检查
拿到高分二号数据包后,重点检查三个文件:
- MSS.xml:主元数据文件(必须存在)
- PAN.tiff:全色波段(本文不涉及)
- MSS.tiff:多光谱数据(含蓝、绿、红、近红外4个波段)
注意:2023年后新获取的数据可能采用.tif后缀,这是正常的格式升级。如果遇到"Invalid XML"报错,可能是文件编码问题,用Notepad++转为UTF-8编码即可。
3. 辐射定标实战详解
3.1 加载影像与系数验证
在Toolbox中选择Radiometric Correction→Radiometric Calibration,关键参数设置:
- Calibration Type选Radiance
- Scale Factor建议手动输入2023年最新系数(如下表)
| 波段 | 旧系数 | 2023新系数 |
|---|---|---|
| 蓝 | 0.1935 | 0.2018 |
| 绿 | 0.1852 | 0.1923 |
| 红 | 0.1736 | 0.1801 |
| 近红外 | 0.1659 | 0.1724 |
这些系数可从中国资源卫星应用中心官网下载PDF文档获取。有个实用技巧:用Python脚本自动提取PDF中的系数表:
import pdfplumber with pdfplumber.open("GF2_coeff.pdf") as pdf: print(pdf.pages[3].extract_table()[2:6])3.2 执行定标与质量检查
点击Apply后生成Radiance数据,建议立即做两项验证:
- 用Spectral Profile工具查看典型地物(如水体、植被)的光谱曲线
- 检查数值范围是否合理(正常情况蓝波段在0-120之间)
常见问题排查:
- 若出现全黑图像:检查输入文件是否选错
- 数值异常偏高:确认是否使用了正确定标系数
- 波段顺序错乱:重新检查XML文件中的波段定义
4. 大气校正关键技巧
4.1 FLAASH参数配置
在Atmospheric Correction Module中,这些参数最容易出错:
- Sensor Altitude:631km(千万别用默认值)
- Pixel Size:多光谱数据填4米
- Ground Elevation:用DEM自动计算更准确
高程自动计算步骤:
- 打开Toolbox→Statistics→Compute Statistics
- 选择辐射定标后的影像作为输入
- 在Elevation图层上框选感兴趣区域
- 查看输出的平均高程值(单位:千米)
4.2 响应函数设置
这是最容易被忽视的关键步骤:
- 找到ENVI安装目录下的filterfuncs文件夹
- 选择对应传感器的.sli文件:
- GF2-PMS1选gf2_pms1_mss.sli
- GF2-PMS2选gf2_pms2_mss.sli
- 在Multispectral Settings中加载该文件
实测发现,错误的光谱响应函数会导致植被红边特征异常。建议校正后立即用以下方法验证:
- 健康植被在近红外波段反射率应显著升高
- 清洁水体在可见光波段吸收率应大于90%
5. 正射校正与后处理
5.1 RPC模型优化
在RPC Orthorectification Workflow中,高级设置建议:
- 输出分辨率设为4米(与原始数据一致)
- 重采样方法选Cubic Convolution(保持纹理)
- DEM源选GMTED2010(比默认的SRTM更精确)
遇到地形起伏大的区域时,可以:
- 在Advanced选项卡勾选Use Topographic Correction
- 调整Terrain Height Variation阈值(通常设0.3-0.5)
5.2 反射率换算
由于ENVI会将大气校正结果放大10000倍,需要用Band Math做还原:
- 输入公式:float(b1)/10000.0
- 选择所有波段依次处理
- 输出格式建议选择ENVI标准格式(.dat)
最终数据应满足:
- 植被反射率在0.1-0.5之间
- 水体反射率低于0.1
- 无负值或大于1的异常值
6. 常见问题解决方案
在批量处理100+景数据后,我整理出这些实战经验:
问题1:大气校正后出现条带噪声
- 原因:原始数据存在探测器异常
- 解决方案:在FLAASH中开启Strip Correction选项
问题2:正射校正边缘扭曲
- 原因:RPC模型外推误差
- 解决方案:手动设置Output Extent比原图小50像素
问题3:波段运算报错
- 典型错误:"Array dimensions must match"
- 检查:确认所有输入波段空间分辨率一致
- 技巧:先用Resize Data工具统一尺寸
对于时间序列分析,建议建立标准化处理流程:
- 创建批处理脚本(.sav文件)
- 用ENVI API实现自动化:
import envi task = envi.Task('RadiometricCalibration') task.input_file = 'GF2_MSS.xml' task.execute()最后提醒:每次升级ENVI版本后,建议重新测试处理流程,我曾遇到过5.3.1和5.3.2版本对GF2支持差异导致的结果偏差。保存完整的处理日志(包括参数截图)是后续质量追溯的关键。