3、数据获取与预处理:影像下载、辐射定标、大气校正、几何校正、云掩膜等关键步骤
遥感植被指数计算的精度,很大程度上并不取决于算法本身,而取决于输入影像的质量。无论是基于Landsat、Sentinel-2的公开光学影像,还是高分系列、Planet等商业影像,原始数据中均混杂着大气散射、传感器响应差异、地形起伏和云层遮挡等干扰信息。若未经系统预处理,直接计算NDVI、EVI或SAVI,将导致植被指数出现系统性偏差——例如,同一条植被覆盖度较高的样带,在含薄雾影像上计算的NDVI可能比晴空影像低0.1~0.2,足以改变土地覆盖分类结果。因此,本章围绕“从原始影像到可用反射率数据”的完整链路,系统讲解影像下载、辐射定标、大气校正、几何校正与云掩膜五大关键步骤,并结合GEE(Google Earth Engine)与ENVI两种主流工具给出实操路径。
上图展示了从数据源到生态评估的完整预处理链路。需要特别强调的是,这五个步骤并非简单的线性串联,而是存在反馈与迭代关系:例如,云掩膜的结果会影响大气校正参数的选择(如暗像元提取),几何校正的精度又制约着多时相合成时像元对齐的可靠性。在实际项目中,建议按照“先辐射定标→再大气校正→后几何校正→最后云掩膜与合成”的顺序执行,但云掩膜也可提前至辐射定标之后进行,以便在早期剔除无效像元、节省后续计算资源。
3.1 影像下载:数据源选择与获取策略
核心原理:遥感影像下载是预处理工作的起点,其核心任务是根据研究区的时空范围、光谱分辨率需求和云量限制,从合适的平台获取高质量的Level-1级(或更高等级)影像产品。对于植被指数计算而言,最常用的数据源包括:NASA/USGS的Landsat系列(30m分辨率,16天重访)、ESA的Sentinel-2系列(10m/20m分辨率,5天重访)、以及我国的高分一号/六号(16m分辨率,4天重访)。不同数据源在辐射分辨率、光谱通道设置和几何精度上存在差异,直接影响后续植被指数的可计算性和精度。
操作流程:以GEE平台为例,获取Sentinel-2影像的核心代码如下:
// 定义研究区(以北京市为例)
var roi = ee.FeatureCollection('FAO/GAUL/2015/level0')
.filter(ee.Filter.eq('ADM0_NAME', 'China'))
.geometry().centroid().buffer(50000);
// 加载Sentinel-2 SR数据(已含大气校正)
var s2 = ee.ImageCollection('COPERNICUS/S2_SR')
.filterBounds(roi)
.filterDate('2023-06-01', '2023-09-30')
.filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE', 20))
.map(function(img) {
var ndvi = img.normalizedDifference(['B8', 'B4']).rename('NDVI');
return img.addBands(ndvi);
});
// 生成生长季NDVI最大值合成
var maxNdvi = s2.select('NDVI').max().clip(roi);
Map.addLayer(maxNdvi, {min:0, max:1, palette:['brown','yellow','green']}, 'Max NDVI');
案例拆解:在2023年内蒙古草原植被长势监测项目中,我们对比了Landsat-8与Sentinel-2的NDVI反演结果。研究区位于锡林郭勒盟,面积约1200km²。初始目标是通过NDVI时间序列分析草原返青期。我们分别下载了Landsat-8(30m)和Sentinel-2(10m)各12景影像。关键发现是:在草地斑块破碎化区域(斑块直径小于50m),Landsat的NDVI均值比Sentinel-2低0.08~0.12,这是因为混合像元效应导致草地与裸土信号混合。最终我们选择Sentinel-2作为主数据源,并利用其红边波段(B5、B6)计算了红边NDVI(NDVI_RE),有效提升了植被覆盖度估算精度。
3.2 辐射定标:从DN值到辐亮度的转换
核心原理:传感器记录的原始DN(Digital Number)值是一个无量纲的整数,其大小取决于传感器增益、偏置和入射辐射亮度。辐射定标的目的就是建立DN值与大气顶层辐亮度(Top-of-Atmosphere Radiance, L_TOA)之间的定量关系。对于Landsat 8/9 OLI传感器,定标公式为:L_TOA = DN × gain + bias,其中gain和bias存储在影像元数据(MTL文件)中。对于Sentinel-2 MSI,则通过查询辐射定标查找表(LUT)实现。值得注意的是,如果后续要进行大气校正,辐射定标是必须的前置步骤;如果直接使用GEE中的SR(Surface Reflectance)产品,则已包含辐射定标和大气校正结果。
判断方法:判断辐射定标是否正确的快速方法是检查辐亮度值的量级。对于Landsat-8可见光波段,晴空条件下典型L_TOA值范围约为50~150 W/(m²·sr·μm)。若计算出的辐亮度值出现负值或超过200,则说明定标参数使用有误。此外,不同版本的传感器(如Landsat-5 TM与Landsat-8 OLI)定标系数差异显著,不可混用。
| 传感器 | 定标参数来源 | 典型增益范围 | 典型偏置范围 | 注意事项 |
|---|---|---|---|---|
| Landsat 8 OLI | MTL文件中的RADIANCE_MULT_BAND_x | 1.0e-5 ~ 2.0e-5 | -0.1 ~ -0.05 | 每波段独立参数 |
| Sentinel-2 MSI | 产品元数据中的RADIO_GAIN | 0.01 ~ 0.05 | 0 | 需按分辨率等级选择 |
| 高分一号 PMS | 中国资源卫星中心发布的定标系数 | 0.5 ~ 1.5 | 0 ~ 10 | 需定期更新 |
常见误区:初学者常犯的错误是直接使用影像头文件中的“Scale Factor”进行定标,而忽略了该因子可能仅适用于特定产品级别。例如,Landsat Collection 2 Level-1产品的DN值范围为1~65535,但实际有效辐射范围对应的DN值通常为5000~40000。若直接乘以Scale Factor(0.0001),得到的辐亮度值会偏小一个数量级。正确做法是使用MTL文件中提供的增益和偏置参数,或使用ENVI中的Radiometric Calibration工具自动读取。
3.3 大气校正:消除大气散射与吸收影响
核心原理:太阳辐射在穿过大气层到达地表并被传感器接收的过程中,会受到大气分子和气溶胶的散射、吸收作用,导致传感器接收到的信号中混入了大气路径辐射(Path Radiance),同时地表反射信号也被衰减。大气校正的目的就是反演地表真实反射率。常用的算法包括:基于辐射传输模型的6S(Second Simulation of a Satellite Signal in the Solar Spectrum)、MODTRAN,以及基于简化模型的FLAASH、Sen2Cor和GEE中的LEDAPS/LaSRC。对于植被指数计算,大气校正尤其重要,因为蓝波段和红波段受大气散射影响显著,若不校正,NDVI值会系统性偏低。
操作流程(以ENVI FLAASH为例):
- 输入辐射定标后的辐亮度影像,设置传感器类型、飞行日期和时间、研究区平均海拔。
- 选择大气模型(中纬度夏季/冬季、热带等),设置气溶胶模型(城市、乡村、海洋)和初始能见度。
- 开启多光谱设置,选择气溶胶反演方法(如2-band K-T方法),设置水汽反演选项。
- 执行校正,输出地表反射率影像和大气参数文件。
案例拆解:在2022年云南普洱茶园遥感监测中,我们对比了大气校正前后的NDVI差异。研究区海拔1200~1800m,属于亚热带季风气候,影像获取时大气水汽含量较高。使用FLAASH校正后,NDVI均值从0.42提升至0.58,标准差从0.15降至0.09。进一步分析发现,校正前NDVI与海拔高度呈显著负相关(r=-0.63),校正后相关性降至-0.21,说明大气校正有效消除了地形引起的路径辐射差异。但我们也注意到,在阴影区域(如陡坡北坡),校正后的NDVI仍偏低约0.05,这提示在复杂地形区需要额外进行地形校正。
3.4 几何校正:像元空间位置的精确配准
核心原理:几何校正解决的是“影像像元对应地面哪个位置”的问题。由于卫星姿态、轨道高度、地形起伏和传感器扫描角度的影响,原始影像存在几何形变。几何校正分为粗校正(基于卫星星历参数)和精校正(基于地面控制点GCPs)。对于植被指数计算,几何校正的精度直接影响多时相分析的可靠性——若两期影像存在超过1个像元的偏移,NDVI差值将混入大量伪变化信息。
判断方法:几何校正精度的评价指标是均方根误差(RMSE),一般要求RMSE小于0.5个像元。在GEE中,Sentinel-2 L2A产品的几何精度通常优于10m(1个像元),而Landsat Collection 2 Level-2产品的几何精度优于12m。若使用第三方下载的影像,可通过与高精度参考影像(如Google Earth影像)对比检查配准精度。
操作流程(ENVI经典流程):
- 打开待校正影像和参考影像(或矢量控制点文件)。
- 选择“Geometric Correction”工具,选择“Image to Image”或“Image to Map”。
- 在影像上均匀选取至少20个控制点,优先选择道路交叉口、水库边界等永久性地物。
- 选择多项式模型(1阶或2阶),设置重采样方法(最近邻、双线性、三次卷积)。
- 输出校正后影像,并检查RMSE值。
常见误区:许多用户直接使用GEE中提供的“投影转换”功能,误以为这就是几何校正。实际上,投影转换只是将影像从一种坐标系统转换到另一种,并未消除地形引起的局部形变。在山区,即使经过投影转换,影像与真实地物之间仍可能存在数十米的偏移。正确的做法是使用SRTM或ASTER DEM进行地形校正(Orthorectification),尤其对于高分辨率影像(如Planet 3m)更是如此。
3.5 云掩膜与多时相合成:确保数据质量与连续性
核心原理:云层是光学遥感最大的“敌人”。云及其阴影不仅遮挡地表信息,还会导致植被指数出现异常高值(云顶反射)或异常低值(云影)。云掩膜的目的是识别并剔除这些无效像元。常用的云检测方法包括:基于阈值的波段测试(如蓝波段反射率大于0.3)、基于热红外亮温测试(Landsat)、以及基于机器学习的Fmask算法。对于Sentinel-2,官方提供了Scene Classification Layer(SCL)产品,可直接用于云掩膜。
操作流程(GEE中实现云掩膜与合成):
// Sentinel-2 云掩膜函数
function maskS2clouds(image) {
var qa = image.select('QA60');
var cloudBitMask = 1 << 10; // 云
var cirrusBitMask = 1 << 11; // 卷云
var mask = qa.bitwiseAnd(cloudBitMask).eq(0)
.and(qa.bitwiseAnd(cirrusBitMask).eq(0));
return image.updateMask(mask).divide(10000);
}
// 加载并处理影像
var collection = ee.ImageCollection('COPERNICUS/S2_SR')
.filterBounds(roi)
.filterDate('2023-06-01', '2023-09-30')
.map(maskS2clouds)
.map(function(img) {
var ndvi = img.normalizedDifference(['B8', 'B4']).rename('NDVI');
return img.addBands(ndvi);
});
// 中值合成(有效去除残留云影)
var composite = collection.select('NDVI').median().clip(roi);
案例拆解:在2021年东北黑土地农作物长势监测中,我们面临严重的云污染问题。研究区位于黑龙江省海伦市,生长季(6-9月)有效晴空影像仅4景,且每景均有不同程度云覆盖。我们采用了“先掩膜后合成”的策略:首先利用SCL图层剔除云和云影像元,然后对剩余像元进行时间序列线性插值,最后生成15天间隔的NDVI合成产品。结果显示,合成后的NDVI时间曲线与田间实测LAI(叶面积指数)的相关系数达到0.87,优于使用单景最优影像的0.72。但代价是合成影像的空间分辨率从10m降至20m(因部分像元缺失需邻域插值),且边缘区域出现轻微条带效应。