Học Google Earth Engine 4 – Làm việc với bộ sưu tập ảnh Image Collections

3.2. Làm việc với Image Collections

Hầu hết các bộ dữ liệu trong Earth Engine đều có dạng ImageCollection. Bộ sưu tập hình ảnh là một tập dữ liệu bao gồm các hình ảnh được chụp tại các thời điểm và địa điểm khác nhau – thường là từ cùng một vệ tinh hoặc nhà cung cấp dữ liệu. Bạn có thể tải một bộ sưu tập bằng cách tìm kiếm Danh mục dữ liệu Earth Engine cho ID ImageCollection. 

Tìm kiếm tập dữ liệu Sentinel-2 Cấp 1C và bạn sẽ tìm thấy id COPERNICUS/S2_SR của nó. Truy cập trang Sentinel-2, Level 1C page và xem phần Khám phá trong Earth Engine để tìm đoạn mã cần tải và trực quan hóa bộ sưu tập. Đoạn mã này là một điểm khởi đầu tuyệt vời cho công việc của bạn với tập dữ liệu này. Nhấp vào nút Sao chép mẫu mã và dán mã vào trình chỉnh sửa mã. Nhấp vào Chạy và bạn sẽ thấy các ô hình ảnh được tải trong bản đồ.

Trong đoạn mã, Bạn sẽ thấy một hàm Map.setCenter () đặt chế độ xem thành một vị trí cụ thể và mức thu phóng. Hàm lấy các tham số tọa độ X (kinh độ), tọa độ Y (vĩ độ) và Mức thu phóng. Thay thế tọa độ X và Y bằng tọa độ thành phố của bạn và nhấp vào Run để xem hình ảnh thành phố của bạn.

3.2.1. Bài tập

// Find the ‘Sentinel-2 Level-2A’ dataset page

// https://developers.google.com/earth-engine/datasets

// Copy/page the code snippet

// Change the code to display images for your home city

// Tìm trang tập dữ liệu ‘Sentinel-2 Level-2A’

// https://developers.google.com/earth-engine/datasets

// Sao chép / trang đoạn mã

// Thay đổi mã để hiển thị hình ảnh cho thành phố quê hương của bạn

3.2.2. Kết quả

// Tìm trang tập dữ liệu ‘Sentinel-2 Level-2A’

// https://developers.google.com/earth-engine/datasets

https://developers.google.com/earth-engine/datasets/catalog/COPERNICUS_S2_SR?hl=en

// Sao chép / trang đoạn mã

// Thay đổi mã để hiển thị hình ảnh cho thành phố quê hương của bạn

/**

 * Function to mask clouds using the Sentinel-2 QA band

 * @param {ee.Image} image Sentinel-2 image

 * @return {ee.Image} cloud masked Sentinel-2 image

 */

function maskS2clouds(image) {

  var qa = image.select(‘QA60’);

  // Bits 10 and 11 are clouds and cirrus, respectively.

  var cloudBitMask = 1 << 10;

  var cirrusBitMask = 1 << 11;

  // Both flags should be set to zero, indicating clear conditions.

  var mask = qa.bitwiseAnd(cloudBitMask).eq(0)

      .and(qa.bitwiseAnd(cirrusBitMask).eq(0));

  return image.updateMask(mask).divide(10000);

}

var dataset = ee.ImageCollection(‘COPERNICUS/S2_SR’)

                  .filterDate(‘2020-01-01’, ‘2020-01-30’)

                  // Pre-filter to get less cloudy granules.

                  .filter(ee.Filter.lt(‘CLOUDY_PIXEL_PERCENTAGE’,20))

                  .map(maskS2clouds);

var visualization = {

  min: 0.0,

  max: 0.3,

  bands: [‘B4’, ‘B3’, ‘B2’],

};

Map.setCenter(107.45659042915429, 15.726611146798092, 6);

Map.addLayer(dataset.mean(), visualization, ‘RGB’);

Recommended For You

About the Author: Admin