Alat Baris Perintah

Alat earthengine adalah program utilitas yang memungkinkan Anda mengelola aset dan tugas Earth Engine dari command line. Library ini diinstal secara otomatis saat Anda menginstal Python API. Untuk memeriksa apakah alat telah diinstal dan berfungsi dengan benar, ketik perintah berikut di command line:

    earthengine

Jika diinstal dengan benar, alat ini akan mencetak ringkasan singkat perintah yang tersedia. Untuk mendapatkan bantuan terkait perintah tertentu, gunakan:

    earthengine command -h

Saat pertama kali menginstal Python API, Anda harus login menggunakan perintah authenticate yang dijelaskan di bawah. Bagian berikut menjelaskan perintah yang tersedia secara lebih mendetail.

Kredensial akun layanan

Untuk menggunakan CLI dengan kredensial akun layanan, gunakan flag service_account_file untuk mengarah ke file JSON yang berisi kunci akun layanan.

    earthengine --service_account_file=service_account_creds.json

Penggunaan di Colab

Alat Command Line Earth Engine sudah diinstal sebelumnya dan siap digunakan di Google Colab.

Autentikasi

Lakukan autentikasi untuk setiap sesi Colab baru atau jika virtual machine berakhir masa berlakunya karena tidak aktif (kredensial tidak disimpan di seluruh sesi).

Impor library klien Python dan panggil ee.Authenticate() untuk memicu alur autentikasi. Ikuti petunjuk untuk menyelesaikan autentikasi. auth_mode default di Colab adalah colab, lihat Panduan autentikasi untuk mengetahui opsi lainnya.

import ee
ee.Authenticate()

Eksekusi perintah

Untuk menjalankan utilitas command line, seperti Earth Engine CLI, Anda harus menambahkan tanda seru di awal panggilan perintah.

!earthengine -h

Menetapkan project Cloud

Gunakan opsi --project untuk menetapkan project Cloud untuk setiap perintah earthengine.

!earthengine --project my-project <command>

Atau, tetapkan project default yang akan digunakan oleh semua panggilan earthengine menggunakan perintah set_project. Project akan ditambahkan ke file kredensial (~/.config/earthengine/credentials) dan digunakan untuk perintah berikutnya, kecuali jika diganti oleh opsi --project. Tetapkan project default untuk setiap sesi Colab baru atau jika masa berlaku virtual machine berakhir karena tidak aktif (kredensial tidak disimpan di seluruh sesi).

!earthengine set_project my-project

Referensi Perintah

autentikasi

Mengautentikasi alat command line dan library klien Python ke Earth Engine. Contoh:

    earthengine authenticate

Earth Engine menggunakan protokol OAuth 2.0 untuk autentikasi klien. Perintah autentikasi earthengine akan meminta Anda untuk melakukan proses autentikasi menggunakan browser web.

Anda harus menginstal gcloud jika menggunakan mode autentikasi gcloud default. Lihat mode autentikasi lainnya yang tersedia melalui parameter auth_mode di panduan autentikasi.

acl

Mencetak atau memperbarui daftar kontrol akses (ACL) aset Earth Engine. ACL mengontrol siapa yang dapat membaca atau menulis ke aset. Contoh:

    earthengine acl get projects/my-project/assets/asset_id
    earthengine acl set public projects/my-project/assets/asset_id
    earthengine acl ch -u username@gmail.com:R projects/my-project/assets/asset_id

Subperintah get akan mencetak deskripsi JSON ACL. Sub-perintah set menetapkan ACL yang disediakan dalam file dengan format JSON yang sama. Anda dapat menyalin ACL dari satu aset ke aset lain dengan menyimpan output dari get dan menyediakankannya ke set.

Subperintah set juga menerima dua nama ACL khusus:

  • private: Menghapus izin dari semua orang kecuali pemilik.
  • public: Memberikan izin baca kepada semua pengguna.

Subperintah ch memungkinkan Anda membuat perubahan satu per satu pada ACL. Untuk memberikan izin baca, tentukan -u username@gmail.com:R, untuk memberikan izin tulis, tentukan -u username@gmail.com:W, dan untuk menghapus izin pengguna, tentukan -d username@gmail.com. ID pengguna khusus AllUsers dapat digunakan untuk memberikan atau mencabut izin baca ke atau dari semua pengguna. (Perhatikan bahwa mencabut izin AllUsers tidak mencabut izin tambahan apa pun yang mungkin juga Anda berikan kepada setiap pengguna.)

aset

Mencetak atau memperbarui metadata yang terkait dengan aset Earth Engine. Contoh:

    earthengine asset info projects/my-project/assets/asset_id
    earthengine asset set -p name=value projects/my-project/assets/asset_id

Subperintah info mencetak informasi mendetail tentang aset, termasuk metadatanya, dalam bentuk JSON. Subperintah set menetapkan properti metadata individual pada aset.

Nilai properti metadata yang Anda tetapkan dapat berupa angka atau string. Saat menetapkan nama properti menggunakan flag --property atau -p, pisahkan nama dan nilai properti dengan tanda sama dengan. Jenis data terdeteksi secara otomatis, atau Anda dapat menentukannya secara eksplisit dengan menambahkan awalan nama properti dengan (string), (number), atau (date). Misalnya, ini menetapkan properti bernilai string dengan nilai "42":

    earthengine asset set -p '(string)name=42' projects/my-project/assets/asset_id

(Kutipan dalam contoh ini mencegah shell menafsirkan tanda kurung. Hal ini mungkin diperlukan atau tidak, bergantung pada shell dan platform Anda.)

Untuk menghapus properti, tetapkan ke null tanpa jenis:

    earthengine asset set -p name=null projects/my-project/assets/asset_id

Properti tanggal hanyalah angka yang mewakili jumlah milidetik sejak epoch Unix (yaitu tengah malam pada 1 Januari 1970) dan dapat ditentukan langsung sebagai angka atau dalam salah satu format berikut:

    YYYY-MM-DD
    YYYY-MM-DDThh:mm:ss
    YYYY-MM-DDThh:mm:ss.f

Zona waktu diasumsikan sebagai UTC. Anda dapat menetapkan properti waktu mulai dan waktu akhir khusus menggunakan flag --time_start dan --time_end:

    earthengine asset set --time_start 1978-10-15T12:34:56 projects/my-project/assets/asset_id

cp

Menyalin aset. Contoh:

    earthengine cp projects/my-project/assets/asset_id projects/my-project/assets/new_asset_id

create

Membuat folder dan koleksi gambar baru. Contoh:

    earthengine create folder projects/my-project/assets/folder_id
    earthengine create collection projects/my-project/assets/collection_id

Gunakan subperintah folder untuk membuat folder dan collection untuk membuat kumpulan gambar. Anda dapat menentukan opsi -p untuk membuat folder induk secara rekursif sesuai kebutuhan. Folder dan image yang baru dibuat memiliki ACL pribadi secara default.

ls

Mencantumkan konten satu atau beberapa folder atau koleksi. Contoh:

    earthengine ls users/username

Opsi -l meminta format panjang dengan informasi selengkapnya tentang setiap aset (saat ini hanya jenisnya). Anda dapat menentukan --max_items number (atau -m untuk singkat) untuk membatasi jumlah item dari setiap folder atau koleksi yang Anda cantumkan:

    earthengine ls -m 10 projects/my-project/assets/my_large_collection

Menjalankan perintah ls tanpa argumen akan mencantumkan folder tingkat atas yang Anda miliki.

model

Alat untuk memanipulasi model tersimpan TensorFlow.

model prepare

Menyiapkan model tersimpan untuk ditayangkan di Earth Engine. Secara khusus, tindakan ini akan mengubah SavedModel Anda menjadi bentuk yang sesuai untuk memproses permintaan dari Earth Engine. (Pelajari SavedModel lebih lanjut.)

    earthengine model prepare my_source_dir my_dest_dir '{"Conv2D:0":"my_input_band"}' '{"Sigmoid:0":"my_output_band"}'

Pelajari model AI Platform lebih lanjut di sini. Lihat contoh lengkap di sini.

mv

Memindahkan atau mengganti nama aset. Contoh:

    earthengine mv projects/my-project/assets/asset_id projects/my-project/assets/new_asset_id

project_config

Menetapkan nilai konfigurasi project. Sebelum menggunakan perintah ini, pastikan untuk menetapkan project menggunakan set_project.

get

Untuk melihat konfigurasi project, gunakan sub-perintah get:

    earthengine alpha project_config get

Jika Anda memiliki izin untuk melihat setelan tugas batch project, output akan berisi:

  • maxConcurrentExports: angka yang menunjukkan jumlah maksimum tugas batch yang dapat berjalan secara paralel di semua pengguna untuk project tertentu. Secara default, nilai ini ditetapkan ke nilai maksimum yang diizinkan oleh paket langganan akun penagihan terkait.

Selain itu, jika Anda memiliki izin untuk melihat konfigurasi paket, output akan berisi:

  • planMaxConcurrentExports, angka yang menunjukkan jumlah maksimum tugas batch yang dapat berjalan secara paralel di semua pengguna dan project yang menggunakan akun penagihan.

set

Untuk memperbarui konfigurasi project, gunakan sub-perintah set. Setelan berikut dapat dikonfigurasi:

Misalnya, untuk mengonfigurasi project agar hanya mengizinkan 10 tugas berjalan secara paralel untuk project tertentu:

    earthengine alpha project_config set --max_concurrent_exports=10

Output menampilkan konfigurasi project yang diperbarui, yang identik dengan yang ditampilkan get.

Untuk mengetahui informasi selengkapnya tentang paralelisme tugas batch, lihat halaman kuota Earth Engine.

rm

Menghapus satu atau beberapa aset. Contoh:

    earthengine rm projects/my-project/assets/asset_id
    earthengine rm -r projects/my-project/assets/folder_id

Anda dapat menggunakan flag -r untuk menghapus konten folder atau koleksi secara rekursif. Untuk keamanan saat menghapus beberapa aset, Anda dapat menggunakan flag --dry_run untuk memverifikasi dengan tepat apa yang akan dihapus tanpa benar-benar menghapus apa pun.

set_project

Menetapkan project Google Cloud yang digunakan untuk merutekan permintaan komputasi.

    earthengine set_project foo-project

Perintah ini diperlukan sebelum menjalankan perintah yang memerlukan fungsi Cloud, misalnya model.

tugas

Mencetak informasi tentang atau mengelola tugas yang berjalan lama. Contoh:

    earthengine task list
    earthengine task list -l
    earthengine task info TASK_ID
    earthengine task cancel TASK_ID

Subperintah list mencantumkan informasi dasar tentang tugas yang baru saja Anda kirimkan. Opsi -l meminta format panjang dengan informasi lebih lanjut tentang setiap tugas. Subperintah info mencetak informasi mendetail tentang setiap tugas. Subperintah cancel membatalkan satu atau beberapa tugas yang sedang berjalan.

upload

Mengupload gambar atau tabel dari Google Cloud Storage ke Earth Engine, atau membuat aset yang didukung oleh gambar eksternal.

gambar

Untuk mengupload aset gambar menggunakan setelan default:

    earthengine upload image --asset_id=projects/my-project/assets/asset_id gs://bucket/image.tif

Jika Anda menentukan beberapa file gambar input, file tersebut akan ditafsirkan sebagai ubin dari satu aset gambar. Anda dapat mempelajari lebih lanjut opsi untuk mengupload gambar ke Earth Engine di Mengupload aset gambar: Opsi lanjutan.

Anda dapat menentukan kebijakan pengurangan piramida menggunakan tanda --pyramiding_policy, yang dapat disetel ke salah satu dari mean (default), sample, mode, min, atau max. Tindakan ini akan mengontrol cara Earth Engine membuat piramida versi gambar dengan resolusi lebih rendah:

    earthengine upload image --asset_id=projects/my-project/assets/asset_id --pyramiding_policy=sample gs://bucket/image.tif

Anda dapat menggunakan --last_band_alpha untuk menunjukkan bahwa mask untuk gambar harus diambil dari saluran alfa di band terakhir:

    earthengine upload image --asset_id=projects/my-project/assets/asset_id --last_band_alpha gs://bucket/image.tif

Anda dapat menentukan nilai tanpa data menggunakan flag --nodata_value. Tindakan ini akan menyamarkan piksel apa pun dalam gambar dengan nilai tersebut:

    earthengine upload image --asset_id=users/myuser/asset --nodata_value=255 gs://bucket/image.tif

Anda juga dapat menentukan properti metadata yang akan ditetapkan pada aset menggunakan flag yang sama dengan yang diterima oleh perintah asset set yang dijelaskan di atas. Opsi ini juga dijelaskan dalam panduan Manifes Gambar.

meja

Untuk mengupload Shapefile, CSV, atau TFRecord dari Google Cloud Storage ke aset tabel Earth Engine, Anda dapat menggunakan salah satu dari:

    earthengine upload table --asset_id=projects/my-project/assets/myUploadedShapefile gs://bucket/foo.shp
    earthengine upload table --asset_id=projects/my-project/assets/myUploadedCSV gs://bucket/foo.csv
    earthengine upload table --asset_id=projects/my-project/assets/myUploadedTFRecord gs://bucket/foo.tfrecord

Ada banyak opsi yang berkaitan dengan cara file CSV dan TFRecord diinterpretasikan. Anda dapat melihat daftar lengkap opsi upload tabel dengan membuka panduan Manifes Tabel atau dengan:

    earthengine upload table -h

external_image

Untuk membuat aset yang didukung oleh gambar eksternal, jalankan perintah upload_image dengan manifes:

earthengine alpha upload external_image --manifest /tmp/foo.json

Contoh manifes adalah:

{
  "name": "projects/{project}/assets/cogdemo1",
  "tilesets": [
    { "id": "0", "sources": [{ "uris": ["gs://ee-docs-demos/COG_demo.tif"] }] }
  ],
  "properties": {
    "source": "https://code.earthengine.google.com/d541cf8b268b2f9d8f834c255698201d"
  },
  "startTime": "2016-01-01T00:00:00.000000000Z",
  "endTime": "2016-12-31T15:01:23.000000000Z"
}

Lihat panduan Cloud GeoTIFF dan panduan Manifes Gambar untuk mengetahui detail selengkapnya tentang cara membuat manifes.