ASTER L2地表温度数据下载全攻略:按shp范围精确获取与处理 📅 发布时间:2026/9/20 15:37:02 👁 浏览次数: 1. 为什么ASTER L2地表温度数据值得你花时间折腾做遥感反演、城市热岛分析或者农业旱情监测的人迟早会撞上地表温度这个坎。商业卫星的LST产品动辄几万块一年MODIS的1km分辨率又嫌粗这时候ASTER L2就成了一个很微妙的选择——90米空间分辨率、5个热红外波段、全球覆盖、而且免费。代价是它的获取流程比MODIS麻烦得多NASA Earthdata那套Earthdata Search的交互逻辑对新手并不友好尤其是当你手里已经有一个研究区的shp边界、想按范围精确裁剪下载的时候。我自己第一次下ASTER L2是在做一个长三角城市群热岛的项目当时傻乎乎地按图幅整景下载一个景就是几百MB下了十几景才发现研究区只占每景的边角硬盘和时间全浪费了。后来才摸清楚Earthdata Search的shp拖拽裁剪逻辑以及ASTER L2产品本身的一些坑——比如它分AST_08地表辐射率和AST_09地表温度两个数据集很多人下错了再比如它的LST是经过TES算法反演的不是简单的亮温云掩膜处理方式和MODIS完全不同。这篇内容就是把我踩过的这些坑一次性讲清楚。适合三类人一是刚接触遥感数据下载、需要按研究区精确获取数据的研究生二是做热环境分析、需要高分辨率LST的规划或环境从业者三是已经会用GEE但需要下载原始数据做本地精细处理的人。全程不需要写代码浏览器加一个shp文件就能搞定但每一步背后的逻辑我会讲透让你下次遇到类似的数据平台也能自己摸出门道。2. 动手之前Earthdata账号与ASTER L2产品认知2.1 注册Earthdata账号的几个隐藏细节NASA Earthdata的账号注册本身不复杂但有几个地方新手容易卡住。打开urs.earthdata.nasa.gov点Register填用户名、邮箱、密码。用户名不能用中文、不能有空格建议用姓名拼音数字的组合因为后面在Earthdata Search里登录时如果用户名有特殊字符会报错。邮箱建议用Gmail或者学校邮箱国内某些邮箱偶尔收不到验证邮件我遇到过QQ邮箱延迟半小时才到的情况。注册完成后会要求你选择所属机构和应用领域这一步随便填不影响使用但建议如实填University或Research Institution因为部分数据集包括ASTER的下载权限和你的profile有一定关联。注册完别急着关页面去Profile里把Earthdata Login的授权确认一下有些浏览器会拦截跳转导致你以为注册成功了其实没激活。提示如果你所在机构有机构账号Institutional Login优先用机构账号登录下载速度在某些时段会比个人账号稳定而且不用反复验证邮箱。2.2 ASTER L2到底包含哪些数据集别下错了ASTER是Terra卫星上的一个传感器1999年发射设计寿命6年结果超期服役到现在还在工作虽然部分波段已经失效。它的L2级产品是一大类和地表温度直接相关的主要是这两个产品简称全称内容分辨率AST_08ASTER Level 2 Surface Kinetic Temperature地表动力学温度LST90mAST_09ASTER Level 2 Surface Radiance地表辐射率90mAST_05ASTER Level 2 Surface Emissivity地表发射率90mAST_07ASTER Level 2 Surface Reflectance地表反射率VNIR/SWIR15m/30m很多人搜ASTER地表温度会直接下AST_08这是对的但要注意AST_08的LST是基于TESTemperature-Emissivity Separation算法从AST_09的辐射率反演出来的如果你要做发射率校正或者自己重新反演那得下AST_09和AST_05。另外AST_08有V003和V004两个版本V004是最新的改进了云掩膜和低发射率地表的处理优先选V004。还有一个坑ASTER是on-demand传感器不是每天都有数据。它只在被指令拍摄的时候才采集所以某些区域可能几个月都没有一景。下载前先在Earthdata Search里看时间范围如果某段时间没数据别以为是搜索方法错了就是真没有。2.3 shp文件在下载流程里扮演什么角色Earthdata Search支持上传shp文件来裁剪下载范围这个功能叫Area of Interest (AOI) file upload。它的作用不是真的在服务器端裁剪影像而是用你的shp边界去筛选和裁剪下载的图幅。具体来说Earthdata Search会读取shp的几何范围然后只返回和这个范围有交集的数据granule并且在下载时可以选择Clip to AOI来裁剪。这里有个关键点shp文件必须是WGS84地理坐标系EPSG:4326如果是投影坐标系比如UTM上传后会报错或者范围错乱。我见过有人用CGCS2000的投影shp上传结果搜索出来的范围偏了几百公里。所以在ArcGIS或QGIS里先把shp转成WGS84再上传这一步不能省。另外shp文件是一套文件包括.shp、.shx、.dbf、.prj四个有时还有.cpg上传时Earthdata Search只让你选.shp但它会自动读取同目录下的其他文件。所以上传前确保这四个文件在同一文件夹、文件名一致否则会提示无法读取几何信息。3. 从零开始Earthdata Search里按shp范围精确检索ASTER L23.1 进入正确的搜索入口打开search.earthdata.nasa.gov用刚才注册的账号登录。登录后右上角会显示你的用户名。注意不要从nasa.gov首页乱点直接进这个搜索地址最稳。登录后在搜索框里输入ASTER L2 Surface Kinetic Temperature或者直接输AST_08。搜索结果会列出多个数据集认准全称里带ASTER Level 2 Surface Kinetic Temperature的那个版本选V004。点进去会看到数据集的详细描述、时间范围、空间覆盖等信息。这里有个效率技巧不要一上来就上传shp。先在搜索框里输入关键词然后在左侧筛选栏里设置时间范围Temporal和平台Platform选Terra。等结果出来后再上传shp做空间筛选这样比先传shp再搜关键词快得多因为shp筛选是在已有结果上做交集如果一开始结果集太大浏览器会卡。3.2 shp文件拖拽上传的完整操作在搜索结果页面的左侧筛选栏找到Spatial或者Area of Interest区域有一个Upload a shapefile的按钮。点击后弹出文件选择框选中你的.shp文件。上传成功后地图上会显示你的研究区边界同时搜索结果会自动刷新只保留和这个边界有交集的granule。拖拽技巧在这里如果你不想点按钮可以直接把.shp文件从文件夹拖到地图区域Earthdata Search会自动识别并加载。这个拖拽功能在Chrome和Edge上最稳定Firefox偶尔会没反应。拖拽时注意拖的是.shp文件本身不是整个文件夹也不是压缩包。上传后如果地图上没显示边界检查三件事一是shp的坐标系是不是WGS84二是shp文件是不是空的有些shp只有属性表没有几何三是浏览器有没有拦截弹窗。我遇到过一种情况是shp的几何类型是MultiPolygon但里面有空几何Earthdata Search会加载失败这时候在QGIS里用Fix Geometries工具修一下再上传。3.3 筛选结果里的granule命名规则解读搜索结果里每一条就是一个granule命名类似AST_L1T_00308262006030907_20150416105448_12345。这串字符不是随机的拆开看AST_L1T产品级别和类型L1T是经过几何校正的00308262006030907采集日期和时间前7位是儒略日年份后面是时分秒20150416105448处理日期和时间12345序列号对于AST_08命名类似AST_08_00308262006030907_20150416105448_12345。看懂这个命名你就能快速判断哪些granule是同一景、哪些是不同时间的。下载前建议按时间排序先下最近几年的因为早期数据2000-2005的云掩膜质量不如后期。另外注意granule的Day/Night标识。ASTER的热红外波段在白天和夜间都能采集但夜间数据没有太阳反射影响LST反演更干净。做热岛分析通常用夜间数据做地表能量平衡可能用白天数据。在搜索结果里每条granule都有Day/Night标签按需筛选。4. 下载环节批量获取与断点续传的实战配置4.1 单景下载与批量下载的选择Earthdata Search里每条granule右侧有个Download按钮点一下会跳转到下载页面通常提供两种链接一种是直接下载Direct Download一种是通过Earthdata Download工具下载。单景下载适合只下几景的情况但如果你的研究区跨了十几景、时间跨度又长手动点会点到手软。批量下载的正确姿势是在搜索结果页面勾选多条granule左侧有复选框然后点页面顶部的Download All或者Bulk Download。这时候会生成一个下载链接列表你可以选择用Earthdata Download客户端批量拉取或者导出链接列表用下载工具如IDM、aria2批量下载。注意Earthdata Search的批量下载有数量限制一次最多勾选2000条granule。超过的话分批操作。另外批量下载生成的链接有时效性一般24小时内有效过期需要重新生成。4.2 Earthdata Download客户端的配置要点Earthdata Download是NASA官方推荐的下载工具支持断点续传和多线程。下载安装后第一次运行需要登录Earthdata账号。配置里有一个Download Directory设置建议设在一个空间充足的盘因为ASTER L2单景解压后可能上百MB。关键配置是Concurrent Downloads并发下载数。默认是3可以调到5-8但不要太高否则NASA服务器可能限流。我实测下来5个并发比较稳再高会出现部分文件下载失败。另外Retry次数设成3-5次网络波动时自动重试。如果你不想装客户端也可以用浏览器直接下载但浏览器不支持断点续传下到一半断了就得重来。对于大文件ASTER L2单景压缩包通常50-200MB强烈建议用客户端或者aria2。4.3 用aria2批量下载的配置模板如果你习惯命令行aria2是个很好的选择。先从Earthdata Search导出下载链接列表通常是一个txt文件每行一个URL然后写一个aria2的配置aria2c -i urls.txt -j 5 -x 8 -s 8 -c --headerAuthorization: Bearer YOUR_TOKEN --dir/data/aster_l2参数解释-j 5是同时下载5个文件-x 8是每个文件最多8个连接-s 8是分片数-c是断点续传。Authorization头需要你的Earthdata token在Earthdata Login的profile页面可以生成。这个token有效期通常几个月过期后重新生成即可。实测下来aria2的下载速度比Earthdata Download客户端略快但配置门槛高一些。如果你只是偶尔下几景用客户端就够了如果经常批量下aria2值得花十分钟配置。5. 下载之后数据解压、格式转换与LST提取5.1 解压后的文件结构ASTER L2下载下来通常是.hdf格式的压缩包解压后得到.hdf文件。用HDFView或者Python的h5py库打开会看到多个数据集SDS。以AST_08为例主要SDS包括LST地表动力学温度单位开尔文缩放因子0.01Quality质量图层标识每个像元的反演质量Cloud云掩膜Latitude/Longitude每个像元的经纬度注意LST的缩放因子是0.01也就是说原始整数值乘以0.01才是真实温度开尔文。很多人忘了乘结果得到30000多度的温度。转摄氏度再减273.15。5.2 用Python批量提取LST并裁剪到shp范围如果你有几十景数据要处理手动在ArcGIS里一景一景裁剪不现实。用Python的rasterio和geopandas可以批量搞定import rasterio from rasterio.mask import mask import geopandas as gpd import numpy as np shp gpd.read_file(study_area.shp) geoms [geom for geom in shp.geometry] with rasterio.open(AST_08.hdf, r) as src: # 读取LST子数据集 lst src.read(1) * 0.01 - 273.15 out_image, out_transform mask(src, geoms, cropTrue) out_meta src.meta.copy() out_meta.update({driver: GTiff, height: out_image.shape[1], width: out_image.shape[2], transform: out_transform}) with rasterio.open(lst_clipped.tif, w, **out_meta) as dest: dest.write(out_image, 1)这段代码的核心是rasterio的mask函数它用shp的几何去裁剪栅格。注意HDF文件里LST子数据集的路径可能不是简单的1需要用src.subdatasets查看实际路径。另外裁剪后的NoData值要设对否则边缘会出现异常值。5.3 质量图层与云掩膜的处理经验ASTER L2的Quality图层是个位掩码不同位代表不同含义。简单来说值越低质量越好。我通常只保留Quality值小于等于1的像元大于1的当作无效值处理。云掩膜图层里0是晴空1是云2是可能云做LST分析时把1和2都剔除。这里有个坑ASTER的云掩膜在雪地和亮地表上误判率较高如果你研究区有雪山或者沙漠云掩膜可能会把大量有效像元标成云。这时候需要结合Quality图层和目视检查来调整。我做过一个青藏高原的项目直接用云掩膜剔除了40%的像元后来发现其中一半是误判改用Quality2的阈值后有效像元比例提升到75%。6. 那些没人告诉你但一定会踩的坑6.1 shp上传后范围偏移的排查链路有一次我上传了一个研究区的shp地图上显示的边界明显偏了本来应该在长三角结果跑到了黄海。排查过程是这样的先检查shp的.prj文件发现是CGCS2000的投影坐标系不是WGS84。用QGIS的Reproject Layer工具转成EPSG:4326后重新上传范围就对了。但还有一次shp坐标系是对的上传后范围还是偏。后来发现是shp的几何本身有问题——在ArcGIS里看是正常的但导出时用了Feature to Polygon工具生成的几何有自相交。用QGIS的Check Validity工具检测后修复再上传就正常了。所以上传前用QGIS做一次几何有效性检查是个好习惯。6.2 下载链接失效与token过期的应对Earthdata的下载链接有时效性尤其是批量下载生成的链接。我遇到过下载到一半链接失效的情况原因是token过期了。Earthdata的token默认有效期是60天但如果你在多个设备登录可能会提前失效。应对方法是批量下载前重新生成token并且在下载工具里设置好重试机制。如果链接失效回到Earthdata Search重新生成即可已下载的部分用断点续传接着下。6.3 ASTER L2在夜间数据上的特殊性ASTER的夜间数据没有太阳辐射LST反演主要依赖热红外波段。但夜间数据的信噪比通常比白天低尤其是寒冷季节。我对比过同一区域白天和夜间的AST_08夜间LST的空间纹理更平滑但局部细节如小水体、道路的对比度不如白天。做城市热岛分析时夜间数据更能反映地表储热差异但做地表温度日变化研究时白天数据不可替代。选择哪种取决于你的研究问题没有绝对的好坏。6.4 数据版本V003与V004的差异V003和V004的主要差异在云掩膜算法和发射率校正。V004改进了对低发射率地表如沙漠、城市建筑的处理LST反演精度在干旱区提升明显。我做过对比同一景数据V004的LST比V003平均低0.5-1K在沙漠区域差异更大。如果你做的是精度要求高的研究优先用V004如果只是做趋势分析V003和V004的差异在可接受范围内。7. 从下载到出图一个完整的小案例假设你要做上海市2020年夏季的地表温度分布图。步骤是先在QGIS里把上海市行政边界的shp转成WGS84检查几何有效性然后在Earthdata Search里搜索AST_08 V004时间范围设2020年6月到8月上传shp筛选勾选所有granule批量下载用Python脚本批量提取LST、裁剪、剔除云像元最后在ArcGIS或QGIS里做镶嵌和出图。这个流程走下来从注册账号到出图熟练的话半天能搞定。第一次做可能会花一两天主要时间花在排查shp问题和配置下载工具上。但一旦跑通后面换研究区就是改改shp和路径的事。我个人在实际操作中的体会是ASTER L2的下载流程虽然比MODIS繁琐但90米分辨率带来的细节是1km数据给不了的。尤其是做城市尺度的热环境分析ASTER能分辨出街区级别的温度差异而MODIS只能看到城市和郊区的整体差异。如果你对空间分辨率有要求又不想花钱买商业数据ASTER L2是目前最务实的选择。最后再分享一个小技巧下载前先在Earthdata Search里用Preview功能看一眼数据快视图确认云量少、质量好再下能省不少时间。