Ekstraksi Data Gambar

Mendapatkan data gambar dari Earth Engine

Untuk mendapatkan data gambar dari Earth Engine ke Google Drive, Cloud Storage, atau aset Earth Engine, Anda dapat menggunakan Export dan tugas tersebut ditangani sepenuhnya oleh Earth Engine. Jika tugas ekspor Anda memiliki masalah penskalaan (misalnya, memerlukan waktu lebih dari satu hari, menampilkan error memori atau waktu tunggu habis) atau Anda sudah terbiasa dengan framework seperti Apache Beam, Spark, atau Dask, Anda dapat memilih metode ekstraksi data yang dijelaskan di sini. Alur kerja yang diterapkan dalam framework ini dapat diskalakan menggunakan alat Google Cloud seperti Dataflow atau Dataproc.

Secara khusus, panduan ini menjelaskan metode untuk membuat permintaan data gambar secara manual menggunakan getPixels atau computePixels. Di sini, "data gambar" berarti array nilai piksel multidimensi dengan skala dan proyeksi yang konsisten. Wilayah, skala, proyeksi, dan/atau dimensi ditentukan dalam permintaan. Halaman ImageFileFormat mencantumkan kemungkinan format output. Tujuan output mencakup Cloud Storage atau direktori yang di-mount secara lokal. Permintaan manual menambah kompleksitas, tetapi dapat diskalakan ke beban kerja yang lebih besar.

Mendapatkan data gambar dari aset yang ada

Gunakan getPixels untuk mendapatkan data gambar dari aset Earth Engine yang ada. Anda meneruskan ID aset langsung ke permintaan, sehingga Anda tidak dapat melakukan komputasi apa pun pada piksel sebelum mengekstraknya. Blok piksel dalam region, skala, proyeksi, dan format yang ditentukan akan ditampilkan. Contoh berikut menunjukkan cara mendapatkan deret waktu NDVI dari koleksi gambar MODIS menggunakan getPixels.

Mendapatkan data gambar dari gambar yang dihitung

Gunakan computePixels untuk mendapatkan data gambar dari gambar yang dikomputasi, misalnya komposit. Dengan computePixels, Anda meneruskan objek ee.Image yang dihitung melalui parameter expression. Blok piksel yang dihitung di region, skala, proyeksi, dan format yang ditentukan akan ditampilkan. Contoh berikut menunjukkan cara mendapatkan patch data multispektral dari komposit Sentinel-2 bebas awan.

Paralelisasi permintaan secara manual

Meskipun Anda dapat membuat permintaan untuk tujuan apa pun dalam volume berapa pun, sebaiknya paralelkan permintaan untuk alur kerja yang lebih besar. Untuk membuat banyak permintaan tersebut secara paralel, Anda harus menggunakan endpoint volume tinggi Earth Engine. Jumlah permintaan paralel yang dapat Anda miliki ditetapkan oleh kuota permintaan interaktif serentak. Lihat halaman volume tinggi Earth Engine untuk mengetahui detail tentang kapan harus menggunakan endpoint volume tinggi.

Multithreading

Anda dapat menggunakan thread untuk membuat permintaan serentak. Pendekatan ini ditunjukkan dalam notebook contoh getPixels dan computePixels.

Apache Beam

Anda dapat menggunakan pipeline Apache Beam untuk melakukan paralelisasi permintaan. Pipeline ini dapat dijalankan secara lokal atau sebagai tugas Google Dataflow. Untuk contoh, lihat pelatihan Geo for Good ini atau demonstrasi People, Planet, and AI ini. Atau, library paralelisasi lainnya mencakup Dask dan Apache Spark.