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 akan ditangani sepenuhnya oleh Earth Engine. Jika tugas ekspor Anda mengalami masalah penskalaan (misalnya, memerlukan waktu lebih dari satu hari, menampilkan error memori atau waktu tunggu habis) atau Anda sudah memahami framework seperti Apache Beam, Spark, atau Dask, Anda mungkin lebih 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 multi-dimensi dari nilai piksel dengan skala dan proyeksi yang konsisten. Region, skala, proyeksi, dan/atau dimensi ditentukan dalam permintaan. Halaman ImageFileFormat mencantumkan kemungkinan format output. Tujuan output mencakup Cloud Storage atau direktori apa pun yang dipasang secara lokal. Permintaan manual menambah kompleksitas, tetapi dapat diskalakan ke workload 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 di wilayah, 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 dihitung, 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 cloud.

Paralelisasi permintaan manual

Meskipun Anda dapat membuat permintaan untuk tujuan apa pun dalam volume berapa pun, Anda mungkin ingin memparalelkan permintaan untuk alur kerja yang lebih besar. Untuk membuat banyak permintaan seperti itu 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.

Multi-threading

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 memparalelkan 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.