Mengekspor Diagram dan Gambar

Earth Engine adalah alat analisis yang canggih, tetapi Anda mungkin perlu mengekspor hasil analisis untuk menyematkan diagram, gambar, peta, dll. ke dalam laporan atau publikasi. Di bagian ini, Anda akan mempelajari cara membuat diagram dan gambar yang dapat diekspor dan dilihat di software lain. Ingatlah bahwa di bagian sebelumnya, Anda menggunakan kode seperti berikut untuk menambahkan band NDVI ke setiap gambar dalam koleksi, dengan variabel l8 mereferensikan koleksi pantulan TOA Landsat 8:

Code Editor (JavaScript)

// Import the Landsat 8 TOA image collection.
var l8 = ee.ImageCollection('LANDSAT/LC08/C02/T1_TOA');

// Map a function over the Landsat 8 TOA collection to add an NDVI band.
var withNDVI = l8.map(function(image) {
  var ndvi = image.normalizedDifference(['B5', 'B4']).rename('NDVI');
  return image.addBands(ndvi);
});

Posisi di Tangga Lagu

Misalkan yang Anda inginkan sebenarnya adalah diagram NDVI dari waktu ke waktu di lokasi tertentu. Untuk membuat diagram tersebut, langkah pertama adalah memilih lokasi yang diinginkan. Buat titik dengan mendapatkan alat menggambar titik () dan buat geometri titik tunggal di area yang Anda minati. (Jika Anda sudah memiliki impor, arahkan kursor ke Impor Geometri, lalu klik + lapisan baru terlebih dahulu). Temukan titik di area pertanian, hutan gugur, padang rumput tahunan, atau beberapa penutup lahan lain dengan siklus tahunan). Beri nama impor roi. (Lihat halaman ini untuk mengetahui informasi tentang cara membuat geometri secara terprogram).

Sekarang, mari kita gunakan titik roi untuk membuat diagram NDVI dari waktu ke waktu di piksel di bawah titik tersebut. Cara membuat diagram di Earth Engine adalah dengan paket ui.Chart. (Pelajari lebih lanjut cara membuat diagram di Earth Engine). Secara khusus, untuk membuat diagram dari waktu ke waktu, Anda dapat menggunakan metode ui.Chart.image.series():

Code Editor (JavaScript)

// Create a chart.
var chart = ui.Chart.image.series({
  imageCollection: withNDVI.select('NDVI'),
  region: roi,
  reducer: ee.Reducer.first(),
  scale: 30
}).setOptions({title: 'NDVI over time'});

// Display the chart in the console.
print(chart);

Untuk geometri roi, kami memilih titik di area pertanian, sehingga menghasilkan diagram yang terlihat seperti Gambar 10. Perhatikan bahwa parameter untuk konstruktor diagram mencakup peredam dan skala seperti reduceRegion(). Karena titik yang kita berikan sebagai wilayah hanya dapat berpotongan dengan satu piksel, cukup menggunakan peredam 'pertama'. Jika Anda memiliki wilayah yang lebih besar, Anda harus menggunakan 'mean' atau peredam lainnya yang menentukan cara menggabungkan piksel. Perhatikan juga bahwa untuk memvisualisasikan diagram, Anda hanya perlu mencetaknya.

Tutorial_api_10_ndvi_chart.png
Gambar 10. Diagram NDVI Landsat dari waktu ke waktu pada geometri titik.

Digresi: Masking Awan Sederhana untuk Landsat

Sesuatu yang mungkin Anda perhatikan tentang diagram ini adalah deret waktu nilai NDVI di titik tersebut terlihat sedikit berisik. Hal ini kemungkinan disebabkan oleh awan. Untuk mengurangi efek ini, Earth Engine menyertakan algoritma masking awan untuk sensor Landsat dengan band termal: ee.Algorithms.Landsat.simpleCloudScore(). Fungsi ini menggunakan gambar reflektansi TOA Landsat sebagai input dan menambahkan band bernama cloud yang merupakan indeks kebasahan dalam piksel dari nol hingga 100, dari yang paling tidak basah hingga yang paling basah. Dengan mengubah fungsi yang Anda petakan ke koleksi, Anda dapat menggunakan nilai minimum arbitrer (20) pada indeks cloud untuk membersihkan diagram:

Code Editor (JavaScript)

var cloudlessNDVI = l8.map(function(image) {
  // Get a cloud score in [0, 100].
  var cloud = ee.Algorithms.Landsat.simpleCloudScore(image).select('cloud');

  // Create a mask of cloudy pixels from an arbitrary threshold.
  var mask = cloud.lte(20);

  // Compute NDVI.
  var ndvi = image.normalizedDifference(['B5', 'B4']).rename('NDVI');

  // Return the masked image with an NDVI band.
  return image.addBands(ndvi).updateMask(mask);
});

print(ui.Chart.image.series({
  imageCollection: cloudlessNDVI.select('NDVI'),
  region: roi,
  reducer: ee.Reducer.first(),
  scale: 30
}).setOptions({title: 'Cloud-masked NDVI over time'}));

Hasil yang ditutupi awan diilustrasikan pada Gambar 11. Perhatikan bahwa deret waktu terlihat sedikit lebih halus, tetapi mungkin masih berisi piksel yang terpengaruh oleh awan. Sesuaikan nilai minimum pada indeks cloud dan amati deret waktu yang diplot untuk mempelajari bagaimana nilai minimum ini dapat memengaruhi hasil Anda.

Tutorial_api_11_cloudless_chart.png
Gambar 11. Diagram NDVI yang ditutupi awan dari waktu ke waktu pada geometri titik.

Mengekspor Gambar

Anda telah melihat cara mengekspor diagram data yang dihitung oleh Earth Engine, tetapi bagaimana dengan seluruh gambar? Misalnya, Anda telah membuat komposit piksel terhijau seperti yang dibahas di bagian sebelumnya:

Code Editor (JavaScript)

var greenest = cloudlessNDVI.qualityMosaic('NDVI');

Satu-satunya perbedaan dalam kode ini dari yang Anda lakukan sebelumnya adalah bahwa sekarang kita menggunakan kumpulan data yang dikamuflase cloud. Anda dapat mengekspor subkumpulan (yang ditentukan oleh region) ini menggunakan paket Export. (Pelajari lebih lanjut cara mengekspor data raster dan vektor dari Earth Engine.) Misalnya, untuk mengekspor gambar yang dapat disematkan dengan mudah di dokumen lain, mari buat gambar visualisasi, seperti yang telah Anda lakukan sebelumnya, lalu Ekspor ke folder Google Drive Anda:

Code Editor (JavaScript)

// Create a 3-band, 8-bit, color-IR composite to export.
var visualization = greenest.visualize({
  bands: ['B5', 'B4', 'B3'],
  max: 0.4
});

// Create a task that you can launch from the Tasks tab.
Export.image.toDrive({
  image: visualization,
  description: 'Greenest_pixel_composite',
  scale: 30
});

Saat Anda menjalankan kode ini, perhatikan bahwa tugas baru dibuat di tab Tasks. Untuk meluncurkan dialog konfigurasi ekspor, klik tombol RUN di tab Tasks. Setelah mengonfigurasi tugas, klik tombol Run di dialog untuk memulai ekspor. Namun, sebelum Anda melakukannya, perhatikan:

Alasan Anda harus berhati-hati saat mengekspor tanpa argumen region adalah jika Anda menetapkan nilai yang relatif kecil untuk scale, dan Peta di-zoom out ke area yang luas, maka Anda akan mengekspor gambar yang berpotensi sangat besar ke folder Drive Anda. Lihat dokumen Export.image.toDrive() di tab Dokumen untuk mengetahui detail selengkapnya dan daftar kemungkinan parameter konfigurasi.

Dengan demikian, pengantar Earth Engine API ini telah selesai. Sekarang Anda telah melihat sebagian besar fungsi Earth Engine yang paling umum dan dapat melanjutkan ke analisis yang lebih kompleks dengan percaya diri. Pastikan Anda membaca dokumen dan menelusuri forum untuk mendapatkan jawaban atas pertanyaan lainnya. Selamat membuat kode!