
简介《ENVI对SAR数据的预处理过程详细版》是一份面向遥感初学者与ENVI/SARscape用户的实操型PDF教程系统梳理SAR数据从导入到成图的关键步骤。文档以ALOS PALSAR数据为例依次讲解数据导入、多视单视复数SLC处理、滤波降噪、地理编码与辐射定标并在后文补充了影像镶嵌与不同传感器图像融合如SPOT4与Landsat TM的操作流程。每个环节均给出Toolbox菜单路径、参数设置建议如方位向视数5、距离向视数1、Frost滤波窗口5×5等并解释各步骤的作用如多视抑制斑点噪声但降低空间分辨率便于读者理解原理后动手实践。资源为单个PDF文件大小1.16MB已获得230人次学习适合需要按步骤完成SAR预处理、缺少系统操作指引的工程师或科研人员作为案头参考。1. ENVI做SAR数据预处理为什么拿到手的雷达影像不能直接用第一次把哨兵一号GRD数据拖进ENVI的人大概率会愣一下一片灰白噪点城市和农田的边缘像被砂纸打过山区还有大块黑影。直接用这张图做分类或变化检测精度会惨到让人怀疑数据本身出了问题。ENVI对SAR数据的预处理过程详细版本质上解决的就是一件事——把雷达测量值DN变成有物理意义的后向散射系数同时把斑点噪声、叠掩、阴影和地形扭曲一层层剥掉。这个过程在行业里没有捷径主流做法是ENVI配合SARscape模块走完整条链。适合做InSAR、光学和SAR协同、地物分类与变化检测的从业者也适合刚拿到Sentinel-1、TerraSAR-X数据不知道从哪一步下手的初学者。2. 用ENVI做SAR数据预处理先弄清楚四个核心问题再做菜单操作2.1 从SAR成像原理看为什么SAR预处理和光学预处理思路完全不一样SAR是主动微波遥感卫星侧视发射电磁波并接收地面回波。SAR成像原理和光学成像最大的区别在于光学影像记录的是地物反射太阳光的强度而SAR记录的是地物对雷达波的“后向散射能力”。同一块地在光学影像里叶子绿不绿决定亮度在SAR影像里决定亮度的是表面粗糙度、介电常数和几何结构。所以很多做光学遥感的人第一次拿到SAR影像下意识套用大气校正、辐射定标那套思路结果发现完全行不通——SAR根本没有“大气散射”这个概念它真正要处理的是相干斑噪声和侧视几何畸变。侧视成像意味着地形起伏会把原本等距的地面压缩或拉长。面向卫星的坡面在影像上被压缩叫透视收缩陡坡超过雷达入射角时顶部回波先到形成叠掩雷达波照不到的山背后就是阴影。这些几何畸变和光学影像的投影差完全不同不能用多项式拟合随便纠正必须借助DEM做逐像素的地形校正。不同成像模式的畸变规律还不一样聚束模式用PFA成像算法处理时相位历史的重构方式不同叠掩和阴影的表现也更集中。所以预处理的第一步不是点菜单而是先看你手里的数据是哪种产品、哪个级别、什么成像模式。辐射定标的目标是把传感器输出的DN值转换成后向散射系数。对Sentinel-1 GRD产品来说常用定标关系是σ0 DN² / A²A是定标常数同时需要用查找表去除热噪声。这里有个常见误区有人直接把DN转成8位灰度图再拉伸然后拿去训练分类器这样的特征值既不是后向散射强度也不是归一化值换一个轨道或换一个时相就完全不可比。ENVI里做预处理为的就是让不同时相、不同轨道、不同传感器的SAR数据放到同一个物理量纲下比较。从工具属性看ENVI把SAR预处理分成几个独立环节导入、热噪声去除、辐射定标、多视、滤波、地理编码和地形校正。每个环节解决一类问题顺序不能乱。多视通常在定标之前或紧跟着定标做滤波放在定标之后地形校正放在最后。实际项目里很多人图省事跳过热噪声去除或者先裁剪再校正这些省掉的步骤会在后续定量分析时加倍还回来。2.2 ENVI的SAR工具链怎么选内置工具、SARscape和SNAP各管什么ENVI对SAR数据的支持经历了两个阶段。早期ENVI Classic自带一套Radar Tools菜单能处理ERS、Radarsat这些老一代卫星的强度数据做多视、滤波和简单地理编码。这套工具今天还在但面对Sentinel-1、TerraSAR-X、ALOS-2这些新传感器时力不从心不支持轨道导入、不支持SLC级别的相位处理。现在的行业主流做法是ENVI加SARscape模块。SARscape从第三方模块被收购进ENVI生态后几乎成了ENVI用户做SAR预处理的默认选择。SARscape把数据处理链路组织成几个固定目录Import Data负责读入不同卫星产品Focus做滤波和增强Interferometry做干涉测量DEM管理数字高程模型所有工具都提供GUI菜单和批处理方式。相比之下ESA官方的SNAP是另一个常见方案免费、开源、对Sentinel-1的支持甚至比SARscape更细。很多新手会在两个工具之间纠结我的建议是按项目定位选如果你只处理Sentinel-1且只做GRD强度图的预处理SNAP完全够用但如果你手里同时有光学影像和高光谱数据希望在同一个工程里做光学和SAR协同、做蚀变信息提取、做PCA分析那ENVI加SARscape的整合度更高不用在SNAP和ENVI之间反复导数据。安装环节有一个很容易翻车的点装完SARscape后ENVI菜单里看不到SARscape入口。原因通常是许可文件没被正确加载或者ENVI版本和SARscape版本不匹配。SARscape 5.5以后的版本对ENVI 5.x各版本支持不同装之前一定要对照模块说明确认版本对应关系别只看安装包能跑就一路点下去。选ENVI版本也建议用5.6以上老版本对BigTIFF和超大影像的支持会让你在处理大场景时吃不少苦头。2.3 数据产品与目录组织SLC和GRD别搞混文件夹命名决定批处理效率拿到SAR数据的第一件事不是打开ENVI而是确认产品级别。这个决定直接改变整条预处理链条的方向。SLC是单视复数产品保留了相位信息做InSAR、地表形变必须用它GRD是地距多视产品已经是强度图丢掉了相位做地物分类、变化检测、光学和SAR协同分析用这个就够。SARscape里导入SLC和GRD是两条完全不同的入口输出结果也不同SLC导入后需要多视才能生成强度图GRD导入后可直接走定标、滤波、地形校正不需要再做多视。实际项目中还有一个很实际的细节目录组织和文件名规范。SARscape的批处理工具对输出路径有要求路径里不能有中文和特殊字符。更重要的是ENVI打开导入数据后波段名默认显示为SARscape生成的名字不一定带极化信息。如果你一次倒入VV、VH两个极化后面处理完波段名可能只显示成类似“s1a_iw_dv_010_..._σ0”这样一串难以分辨哪个是VV哪个是VH。我的习惯是在预处理开始前就建好规范目录原始数据、预处理输出、DEM、中间临时文件四层原始文件名保留卫星名、轨道号和极化输出文件名也按相同规则加后缀例如S1A_IW_GRD_VV_σ0_DB.tif。GRD和SLC的预处理差异可以用一张表说清楚产品级别保留信息适用任务预处理链路的差异SLC振幅相位InSAR、差分干涉、形变监测导入后需多视生成强度图相位链路单独走干涉流程GRD振幅强度分类、变化检测、光学融合导入后直接定标、滤波、地形校正不需要相位处理预处理链路定了再来看具体怎么做这里落到几个真实参数上才算是完整的过程。3. SAR预处理详细步骤用ENVI加SARscape跑通Sentinel-1 GRD全流程3.1 从导入到地形校正的七个步骤下面以Sentinel-1 IW模式GRD产品为例用ENVI加SARscape走一遍完整预处理链。第一步导入数据。菜单路径是SARscape → Import Data → SAR Spaceborne → Sentinel-1。选到包含manifest.safe文件的文件夹输出格式选ENVI Standard这会生成一个.dat文件和配套的.hdr文件。导入时注意GRD产品不要勾选SLC选项两个产品在导入界面上虽然长得像但选错后面的所有步骤都会崩。另外Output Directory一定用英文路径路径里有中文会在后续处理中报莫名其妙的错。第二步热噪声去除。菜单路径是SARscape → Focus → Thermal Noise Removal。这一步很多人直接跳过觉得不做也能出图。实际效果是不做热噪声去除影像边缘会出现明显的条带状噪声尤其在近距端和远距端的强度分布会偏离真实后向散射。在平坦区域不明显但在海洋、裸土这类低后向散射区热噪声会直接盖住真实信号。多极化数据记得选择All Polarizations让VV和VH一起处理。第三步辐射定标。菜单路径是SARscape → Focus → Radiometric Calibration。校准类型选Sigmaσ0输出数据类型选Float。SARscape内部会自动读取定标常数并应用定标方程。这一步的关键是把定标结果存成浮点型千万别为了省空间输出成Byte。以后如果要计算比值、做时序分析整数化的强度值会产生巨大的量化误差这个坑在SAR数据处理里特别阴。第四步多视。GRD产品本身是经过多视处理的所以在这里直接用1×1保持现状即可。如果你用的是SLC产品或者觉得影像的等效视数还不够想通过多视抑制斑点噪声可以用2×2或3×3。多视的本质是用分辨率的代价换取辐射分辨率视数越大斑点越平滑但空间细节丢失越多。做变化检测通常2×2做地物分类可以用3×3做需要保留线性地物的任务时老老实实1×1。第五步滤波。菜单路径是SARscape → Focus → Filtering滤波器选Refined Lee窗口大小选5×5。Refined Lee是SARscape里用得最多的自适应滤波器它能在平滑斑点噪声的同时尽量保留边缘和点目标。窗口大小选7×7以上时河流、道路这类线性地物会被磨得看不出边界后面做分类时会直接翻车。滤波的核心理念是选时相不变、窗口不变保持处理一致性宁可多留一点噪声也不要过度平滑。第六步地形校正。菜单路径是SARscape → General Tools → Geocoding → Range-Doppler Terrain Correction。这个步骤需要指定DEM。如果做的是小范围场景用SRTM 30米DEM可以接受如果研究区是山地或丘陵强烈建议换国产的GDEMV3或Copernicus 30米DEM陡峭区域需要10米分辨率。重采样方法选双线性插值输出投影选择当地UTM带这样影像才能和矢量底图、光学影像精确叠加。第七步检查输出。地形校正完成后打开影像看一眼重点检查三件事。第一山区的阴影方向是否和雷达成像方向一致如果阴影跑到另一边说明DEM和影像的几何关系错位了。第二影像边缘是否有大面积黑边有的话说明导入时选择的范围包含了无效扫描带。第三强度直方图是否合理如果直方图集中在极小值或极大值多半是辐射定标参数没设对。这几步走完SAR数据就能用于目视解译和初步分析但要真正做定量分析参数的选择逻辑还需要展开讲透。3.2 必调参数的选择逻辑多视、滤波窗口、DEM、σ0还是γ0参数选择不是拍脑袋而是要回到SAR数据的物理特性上去。多视和滤波的目的都是抑制相干斑噪声而相干斑是一种乘性噪声噪声强度与信号强度成正比。这就意味着你不能像处理光学影像那样用固定窗口的高斯滤波去处理它否则强信号区会有残余噪声弱信号区会被过度平滑。Refined Lee这类自适应滤波器的好处在于它会根据局部方差动态调整平滑强度在均匀区域多平滑在边缘区域少平滑。窗口大小选择有实际规律5×5适合城市、裸土、农田这类纹理丰富但边界清晰的场景7×7适合大面积水体、沙漠这类均匀地表3×3适合需要精细保留线性地物的任务比如道路提取和河网提取。滤波参数在预处理链中的位置同样重要——滤波一定要在辐射定标之后做因为定标会改变影像强度值的统计分布先滤波再定标会让滤波器的统计假设失效。DEM的影响往往被低估。地形校正的本质是用DEM模拟雷达侧视几何然后逐个像素重新投影。如果DEM的分辨率明显低于SAR影像校正完的影像会出现“阶梯状”纹理如果DEM本身高程误差大山脊线处会产生错位重影。SARscape里提供Range-Doppler和光学Flow算法两种校正方式SAR数据常规用Range-Doppler。对Sentinel-1 GRD这类地距产品Range-Doppler校正还支持一个关键参数校正时选择输出σ0还是γ0。σ0是雷达截面归一化到地面投影面积的量γ0是归一化到垂直于雷达视线方向的投影面积。在平地上两者差别不大在地形起伏大的山区局部入射角变化会让σ0值产生较大波动看起来像后向散射的真实变化其实是几何效应。处理山地数据时我一般会输出γ0它会减弱地形引起的强度调制让后续分类和时间序列分析更稳定。SARscape的地形校正界面里有Sigma和Gamma两个选项直接选Gamma就行。还有一个细节是投影设置。以中国为例青藏高原用UTM 46N或47N云贵川用48N附近选错了UTM带会让影像产生明显的旋转和位移。如果涉及跨带的大范围数据直接用Albers等面积投影比UTM更合适。3.3 批处理与数据导出从浮点σ0到能入库的成品SARscape本身提供批处理工具Batch Processing但它的批处理基于GUI参数一次性提交不够灵活。更常见的是把预处理链完整跑完后在ENVI里做最后一步包装把浮点型σ0转成dB并导出带地理信息的GeoTIFF。这里给出一段可用的IDL代码做的是σ0转dB并浮点转Byte的标准化导出。; 预处理输出包装σ0浮点转dB并导出GeoTIFF ; 前提已完成SARscape辐射定标和地形校正输出为Float型 file S1A_IW_GRD_VV_sigma0.dat ENVI_OPEN_FILE, file, r_fidr_fid ENVI_FILE_QUERY, r_fid, NBnb, DIMSdims, DATA_TYPEdt ; 波段运算 dB 10*log10(σ0 0.001) ; 加0.001是为了避免log(0)出现-Inf并把极小值压低 exp 10 * ALOG10(b1 0.001) ENVI_DOIT, ENVI_BAND_MATH_DOIT, $ EXPexp, DIMSdims, $ B1{FID:r_fid, POS:0}, $ OUT_NAMES1A_IW_GRD_VV_sigma0_db.dat ; 导出GeoTIFF保留地理参考信息 ENVI_FILE_QUERY, r_fid, MAP_INFOmap_info ENVI_EXPORT_TIFF, S1A_IW_GRD_VV_sigma0_db.tif, $ FIDr_fid, POS0, MAP_INFOmap_info这段代码的逻辑很直接先打开定标后的浮点影像用波段运算公式把后向散射系数转成dB单位。之所以转dB是因为后向散射系数的动态范围很大线性域下低后向散射区水体、道路和高后向散射区建筑、裸岩相差数十倍在8位灰度下全挤在暗部完全看不出层次。转成dB后典型水体约-18dB城市约-5dB动态范围变成十几dB目视解译和阈值分割都更舒服。加0.001是工程里的小技巧水面和阴影区域σ0可能接近0直接求对数会产生负无穷加一个小的偏移量把下界压住。ENVI_EXPORT_TIFF是ENVI Classic里最常用的轻量级导出方式适合单波段数据。新版ENVI 5.x推荐用ENVIExportTask功能更完整能支持BigTIFF。如果一张影像超过4GB旧版TIFF格式写不进去导出会直接失败。处理大范围Sentinel-1数据时经常遇到这种情况解决方法是改用BigTIFF或者在SARscape里按分块处理最后再拼接。代码里的Float输出问题是另一个常见坑。很多人在辐射定标时为了省空间选了Byte输出等到转dB的时候发现负值全被截断了影像直方图出现明显的断崖。这个损失是不可逆的相当于把后向散射系数之间的比值信息扔掉了。所以前面说定标这一步必须输出Float不是洁癖是后面所有定量分析的根基。4. 避坑SAR预处理最容易翻车的5个细节4.1 常见问题定标、滤波和地形校正的翻车现场现象一导入Sentinel-1 GRD后影像有明显的条带状噪声尤其在影像近距边和远距边像一层横向的水波纹压在地表上。原因热噪声去除步骤被跳过。GRD产品的热噪声在边缘区域尤其明显它会抬高低后向散射区的强度估计使得水体、道路这类暗目标看起来像覆盖了一层雾。解决在SARscape里先执行Thermal Noise Removal再辐射定标。注意参数里要选中所有需要的极化VV和VH均去除热噪声后两极化通道才具备可比性。现象二滤波后点目标消失了。一座独立的高压电塔、一辆停在裸地上的车处理前还能分辨处理后变成一片模糊。原因滤波窗口太大或者用了非自适应的滤波模式。常看到有人用7×7甚至9×9的Lee滤波处理城市区域结果把线状和点状目标磨平了。解决把滤波器换成Refined Lee窗口调回5×5。先多视后滤波多视本身已经起了一次平滑作用不要再叠加额外的大窗口。如果要做目标检测和线性地物提取滤波强度应进一步降低或者干脆不做滤波只做多视。现象三山地地形校正后山脊线和沟谷的位置和光学影像对不上严重时出现重影。原因DEM和SAR影像的分辨率差距太大或者DEM的投影与校正输出投影不一致。SRTM 30米DEM在地形平缓地区够用在陡峭山谷里一个像素可能跨越几十米的高差校正算法找不到精确的匹配位置。解决换用Copernicus 30米或更精细的DEM在SARscape地形校正界面上把DEM重采样方法设为双线性输出投影和DEM投影先人工统一。另外检查是否选了Range-Doppler校正别误选简单的多项式地理编码。现象四σ0输出后直方图堆积在0附近整体影像发黑。原因辐射定标时选了线性尺度输出而水体、阴影这类低后向散射目标的σ0值只有零点零零几线性显示下几乎为黑。并不一定是处理错误而是显示问题。解决转成dB单位显示。这在ENVI里就是一段Band Math的事10*ALOG10(b10.001)。如果因为储存类型是Byte导致负值被截断那就必须回头重新定标输出Float截断造成的损失补不回来。4.2 参数与环境相关的坑轨道文件、坐标系和内存现象五用SARscape做多时相序列预处理时各景影像的地理编码结果始终对不齐同一地物在不同影像上偏差几个像素到十几像素。原因没有使用精确轨道文件。Sentinel-1发布时自带的轨道状态向量是预报轨道定位精度在米级而SAR预处理要求的地形校正精度需要亚像素级的一致性。这个问题在做时序分析和干涉测量时会被放大直接影响形变解算结果。解决预处理前到ESA官网下载对应时段的精确轨道文件EOF文件导入SARscape的轨道设置里。SARscape支持在导入数据时自动关联轨道文件但需要保证数据文件夹中有对应的EOF文件。用精确轨道完成后同一地区的多时相影像可以做到亚像素级对齐。坐标系也是一个高频翻车点。常见操作是先用ENVI里的多边形裁剪工具把SAR影像裁到研究区再地形校正结果校正后的影像边缘出现大量拉伸变形几何精度惨不忍睹。地距几何校正必须在原始斜距或地距空间完成先裁剪会破坏轨道几何和DEM之间的映射关系尤其在大地形变的边缘地区错误会被地形校正在校正过程里放大。正确顺序是先完成整个数据范围的地形校正再在投影坐标系下做矢量裁剪。内存不足是另一个隐蔽问题。ENVI处理Sentinel-1 IW模式GRD时单景数据体量通常在1-2GB如果还叠加了高分辨率的DEM和多极化输出SARscape的临时缓存会迅速占满系统盘。造成的结果是运行到一半跳出“Invalid parameter”或直接闪退给的报错信息完全没参考价值。解决办法是在ENVI的Preferences里把临时文件目录和缓存大小指到大分区SSD余量留出两倍于SAR影像数据体量的空间同时确认ENVI 5.x的64位版本和足够的系统内存。别在8GB内存的机器上跑多极化大场景批处理这个配置下做一景都勉强。5. 进阶用法预处理做完不等于结束验证和数据挖掘才是分水岭5.1 预处理质量体检三个指标一张表我前后跑过几十条SAR预处理链后总结出一个习惯任何一条链跑完先做三个检查再谈后续分析。第一个指标是等效视数ENL计算公式是mean²/variance在影像里选一块均匀区域平静水面、平整裸地计算GRD产品预处理后ENL通常在10到30之间。ENL太低说明滤波不足或没有多视太高说明细节被磨平了。第二个指标是后向散射直方图的形状自然地表多时相影像的直方图应该是连续的、单峰的如果是锯齿状或双峰多半是定标或量化出了问题。第三个指标是几何配准误差把预处理完的影像和光学底图或矢量边界叠在一起看道路、水岸线这些线性特征的偏移量山地场景允许一个像素内平地场景应该做到0.5个像素以下。这三个检查不需要复杂工具ENVI里直接用统计功能和叠加窗口就能完成。拍照记下每景影像的ENL值和直方图范围积累几条链后你能本能地识别出哪些预处理参数设错了。5.2 让预处理结果创造价值的两个方向多时相PCA与光学协同预处理完成的σ0影像真正有价值的用法是做多时相分析。把同一地区不同日期的VV、VH影像按时间顺序叠成一个多波段文件然后在ENVI里做主成分分析PCA第一主成分通常是总体后向散射强度的时相平均值第二主成分往往能分离出植被物候变化或土壤湿度波动。这个方法在ENVI里就是标准PCA流程但要注意把不同时相的影像先做直方图匹配避免轨道或入射角差异被PCA当成主要信号。SAR数据和光学数据的协同是这两年特别值得投入的方向。光学影像有云就容易失效而SAR不受云干扰用预处理后的SAR强度图和纹理特征可以辅助光学影像的云区信息重建这个思路在植被监测和灾害评估里都有实际需求。另一条路是把SAR预处理结果和ENVI里的GF-5高光谱蚀变信息提取流程放在同一个工作流里用SAR的后向散射特征去补充高光谱数据的地表粗糙度信息对裸露区的矿物填图有帮助。从我自己的经验看SAR预处理里最常出问题的不是软件操作而是处理目标不明确。拿到数据先问自己我要的是强度、纹理还是相位我关心的地表参数在哪个极化、哪个入射角下最敏感这些问题想清楚了参数设置自然有依据。我前年处理一批山地影像时就因为没做γ0归一化把地形无意中当成了变化信号浪费了不少时间。之后每条链路过完都先做上面三个检查再叠加一句先相信数据本身再用验证结果去修正流程。希望这些经验对你的SAR处理能少走点弯路也希望你能早点找到适合自己研究区的那套固定参数组合。本文还有配套的精品资源点击获取