Google Earth Engine(GEE)——Landsat 8 和 9 collection 2 去云方式

这篇教程介绍了如何在Google Earth Engine (GEE)中处理Landsat 8和9 Collection 2的云遮挡问题。通过利用Landsat 8的CFMask QA_PIXEL波段,可以有效地筛选并排除不需的像素,同样适用于Landsat 9的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本次教程展示的是Landsat 8 和 9 去云的方式,这个例子演示了使用Landsat 8 Collection 2, Level 2 QA_PIXEL波段(CFMask)来掩盖不需要的像素。

Landsat 8 

Dataset Availability

2013-03-18T15:58:14 -

Dataset Provider

USGS

Collection Snippet

Copied

ee.ImageCollection("LANDSAT/LC08/C02/T1_L2")

Landsat 9

Dataset Availability

2021-10-31T00:00:00 -

Dataset Provider

### 使用 Google Earth Engine API 下载无 Landsat 8 图像 以下是通过 Python 调用 Google Earth Engine (GEE) 的方法来下载除了层影响的 Landsat 8 地表反射率图像的示例代码: #### 安装依赖库 在运行以下代码之前,请确保已安装 `earthengine-api` 库。可以通过 pip 进行安装: ```bash pip install earthengine-api ``` #### 初始化 GEE 初始化 GEE 需要先完成身份验证并启动服务。 ```python import ee # 初始化 Earth Engine ee.Initialize() ``` #### 示例代码:下载无 Landsat 8 图像 下面是一个完整的脚本,展示了如何利用 `.map()` 函数批量处理多张 Landsat 8 图像以移除受污染的部分,并最终导出为 GeoTIFF 文件[^2]。 ```python # 导入必要的模块 import ee # 初始化 Earth Engine ee.Authenticate() # 如果尚未认证,则需要手动登录 ee.Initialize() # 定义研究区域(AOI) aoi = ee.Geometry.Rectangle([-106.5, 43.7, -105.9, 44.2]) # 示例坐标范围 # 加载 Landsat 8 表面反射率集合 l8sr = ee.ImageCollection(&#39;LANDSAT/LC08/C02/T1_L2&#39;) # 设置时间过滤器 filtered_collection = l8sr.filterDate(&#39;2022-01-01&#39;, &#39;2022-12-31&#39;) \ .filterBounds(aoi) # 创建一个函数用于掩膜 def maskClouds(image): qa_pixel = image.select(&#39;QA_PIXEL&#39;) # 提取 QA 像素中的位掩码 cloud_bitmask = 1 << 3 cirrus_bitmask = 1 << 2 # 构建掩模条件 mask = qa_pixel.bitwiseAnd(cloud_bitmask).eq(0) \ .And(qa_pixel.bitwiseAnd(cirrus_bitmask).eq(0)) return image.updateMask(mask) # 对整个影像集应用掩膜函数 cloud_free_images = filtered_collection.map(maskClouds) # 将第一个可用的无图像转换为单个 Image 并裁剪到 AOI first_image = cloud_free_images.first().clip(aoi) # 获取波段列表 bands_of_interest = [&#39;SR_B4&#39;, &#39;SR_B3&#39;, &#39;SR_B2&#39;] # 波段顺序对应 RGB 显示 # 导出图像至 Google Drive 或本地文件夹 task = ee.batch.Export.image.toDrive( image=first_image.select(bands_of_interest), description=&#39;Landsat8_CloudFree_Export&#39;, folder=&#39;gee_exports&#39;, region=aoi, scale=30, # 分辨率为 30 米 crs=&#39;EPSG:4326&#39; ) # 启动导出任务 task.start() print(f&#39;Export task started with ID {task.id}&#39;) ``` 上述代码实现了以下几个功能: 1. **加载数据源**:选择了 Landsat 8 Collection 2 Level 2 数据产品。 2. **定义地理边界**:指定了感兴趣区(AOI),即目标地理位置。 3. **筛选日期范围内的影像**:限定了分析的时间窗口。 4. **创建自定义函数**:编写了一个名为 `maskClouds` 的函数,该函数基于质量评估 (`QA_PIXEL`) 层提取干净像素。 5. **映射操作**:使用 `.map()` 方法将此函数应用于所有符合条件的影像集合。 6. **导出结果**:选取了其中一张代表性的无影像,并将其保存为 GeoTIFF 格式的文件。 #### 注意事项 - 上述代码假设用户已经配置好 Google Cloud Storage 或 Google Drive 来存储输出文件。 - 可能需要调整参数如分辨率 (`scale`) 投影系统 (`crs`) 以满足具体需求。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

此星光明

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值