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
!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:
max_concurrent_exports
, untuk mengontrol paralelisme tugas batch- maksimum project
- memerlukan izin yang benar
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.