Komut Satırı Aracı

earthengine aracı, Earth Engine öğelerini ve görevlerini komut satırından yönetmenize olanak tanıyan bir yardımcı programdır. Python API'yi yüklediğinizde otomatik olarak yüklenir. Aracın yüklenip yüklenmediğini ve doğru şekilde çalışıp çalışmadığını kontrol etmek için komut satırına aşağıdakileri yazın:

    earthengine

Araç düzgün şekilde yüklendiyse kullanılabilir komutların kısa bir özetini yazdırır. Belirli bir komutla ilgili yardım almak için şunu kullanın:

    earthengine command -h

Python API'yi ilk kez yüklediğinizde, aşağıda açıklanan authenticate komutunu kullanarak oturum açmanız gerekir. Aşağıdaki bölümlerde, kullanılabilen komutlar daha ayrıntılı olarak açıklanmaktadır.

Hizmet hesabı kimlik bilgileri

KSA'yı bir hizmet hesabının yeterlilik belgeleriyle kullanmak için service_account_file işaretini kullanarak hizmet hesabının anahtarını içeren bir JSON dosyasını işaret edin.

    earthengine --service_account_file=service_account_creds.json

Colab'de kullanım

Earth Engine komut satırı aracı, Google Colab'de önceden yüklenmiş ve kullanıma hazırdır.

Kimlik doğrulama

Her yeni Colab oturumu için veya sanal makinenin etkinlik dışı kalma nedeniyle süresi dolarsa kimlik doğrulama yapın (kimlik bilgileri oturumlar arasında kaydedilmez).

Python istemci kitaplığını içe aktarın ve kimlik doğrulama akışını tetiklemek için ee.Authenticate() işlevini çağırın. Kimlik doğrulama işlemini tamamlamak için talimatları uygulayın. Colab'deki varsayılan auth_mode colab'dir. Diğer seçenekler için kimlik doğrulama kılavuzuna bakın.

import ee
ee.Authenticate()

Komut yürütme

Earth Engine CLI gibi komut satırı yardımcı programlarını çalıştırmak için komut çağrılarına ünlem işareti eklemeniz gerekir.

!earthengine -h

Bir Cloud projesi ayarlama

Her bir --project komut için bir Cloud projesi ayarlamak üzere earthengine seçeneğini kullanın.

!earthengine --project my-project <command>

Alternatif olarak, set_project komutunu kullanarak tüm earthengine çağrıları tarafından kullanılacak varsayılan bir proje ayarlayın. Proje, kimlik bilgileri dosyasına (~/.config/earthengine/credentials) eklenir ve --project seçeneğiyle geçersiz kılınmadığı sürece sonraki komutlar için kullanılır. Her yeni Colab oturumu için veya sanal makinenin etkinlik dışı kalma nedeniyle süresi dolarsa varsayılan bir proje ayarlayın (kimlik bilgileri oturumlar arasında kaydedilmez).

!earthengine set_project my-project

Komut Referansı

kimlik doğrulamak

Komut satırı aracını ve Python istemci kitaplığını Earth Engine'de kimlik doğrular. Örnek:

    earthengine authenticate

Earth Engine, istemcilerin kimliğini doğrulamak için OAuth 2.0 protokolünü kullanır. earthengine authenticate komutu, web tarayıcınızı kullanarak kimlik doğrulama sürecinde size yol gösterir.

Varsayılan gcloud kimlik doğrulama modunu kullanıyorsanız gcloud'u yüklemeniz gerekir. Kimlik doğrulama kılavuzundaki auth_mode parametresiyle kullanılabilen diğer kimlik doğrulama modlarına bakın.

acl

Bir Earth Engine öğesinin erişim kontrol listesini (EKL) yazdırır veya günceller. EKL, bir varlığı kimlerin okuyabileceğini veya varlığa kimlerin yazabileceğini kontrol eder. Örnekler:

    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

get alt komutu, ACL'nin JSON açıklamasını yazdırır. set alt komutu, aynı JSON biçiminde bir dosyada sağlanan bir EKL'yi ayarlar. get çıkışını kaydedip set'e sağlayarak bir öğedeki erişim kontrol listesini diğerlerine kopyalayabilirsiniz.

set alt komutu iki özel ACL adını da kabul eder:

  • private: Sahip dışındaki herkesin izinlerini kaldırır.
  • public: Tüm kullanıcılara okuma izni verir.

ch alt komutu, bir ACL'de tek tek değişiklikler yapmanıza olanak tanır. Okuma izni vermek için -u username@gmail.com:R, yazma izni vermek için -u username@gmail.com:W, kullanıcının izinlerini kaldırmak için ise -d username@gmail.com simgesini belirtin. Tüm kullanıcılara okuma izni vermek veya bu izni iptal etmek için özel kullanıcı tanımlayıcısı AllUsers kullanılabilir. (AllUsers izinlerinin iptal edilmesinin, ayrı ayrı kullanıcılara vermiş olabileceğiniz ek izinleri iptal etmeyeceğini unutmayın.)

öğe

Bir Earth Engine öğesiyle ilişkili meta verileri yazdırır veya günceller. Örnekler:

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

info alt komutu, meta verileri de dahil olmak üzere öğe hakkında ayrıntılı bilgileri JSON biçiminde yazdırır. set alt komutu, bir öğede ayrı meta veri özellikleri ayarlar.

Ayarladığınız meta veri özelliklerinin değerleri sayı veya dize olabilir. --property veya -p işaretini kullanarak özellik adlarını ayarlarken özellik adını ve değeri eşittir işaretiyle ayırın. Veri türü otomatik olarak algılanır veya özellik adının başına (string), (number) ya da (date) ekleyerek veri türünü açıkça belirtebilirsiniz. Örneğin, bu kod, "42" değerine sahip bir dize değerli özellik ayarlar:

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

(Bu örnekteki tırnak işaretleri, kabuğun parantezleri yorumlamasını engeller. Kabuğunuza ve platformunuza bağlı olarak gerekli olabilir veya olmayabilir.)

Bir mülkü silmek için türü olmayan null olarak ayarlayın:

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

Tarih özellikleri, Unix döneminden (ör. 1 Ocak 1970'te gece yarısı) itibaren geçen milisaniye sayısını temsil eden sayılardır ve doğrudan sayı olarak veya aşağıdaki biçimlerden birinde belirtilebilir:

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

Saat diliminin UTC olduğu varsayılır. --time_start ve --time_end işaretlerini kullanarak özel başlangıç ve bitiş zamanı özelliklerini ayarlayabilirsiniz:

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

cp

Bir öğeyi kopyalar. Örnek:

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

create

Yeni klasörler ve resim koleksiyonları oluşturur. Örnek:

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

Klasör oluşturmak için folder alt komutunu, resim koleksiyonları oluşturmak için ise collection alt komutunu kullanın. Gerekirse üst klasörleri yinelemeli olarak oluşturmak için -p seçeneğini belirtebilirsiniz. Yeni oluşturulan klasörler ve resimler varsayılan olarak özel ACL'lere sahiptir.

ls

Bir veya daha fazla klasörün ya da koleksiyonun içeriğini listeler. Örnek:

    earthengine ls users/username

-l seçeneği, her öğe hakkında daha fazla bilgi (şu anda yalnızca türü) içeren uzun bir biçim ister. Listelediğiniz her klasör veya koleksiyondaki öğe sayısını sınırlamak için --max_items number (veya kısa haliyle -m) belirtebilirsiniz:

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

ls komutunu herhangi bir bağımsız değişken olmadan çalıştırmak, sahip olduğunuz üst düzey klasörleri listeler.

model

TensorFlow kaydedilmiş modellerini işlemek için kullanılan araç.

model prepare

Earth Engine'de yayınlanmak üzere kaydedilmiş bir model hazırlayın. Bu işlem, özellikle SavedModel verilerinizi Earth Engine'den gelen isteklerin işlenmesine uygun bir forma dönüştürür. (SavedModel hakkında daha fazla bilgi edinin.)

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

AI Platform modelleri hakkında daha fazla bilgiyi burada bulabilirsiniz. Tam bir örneği burada görebilirsiniz.

mv

Öğeyi taşır veya yeniden adlandırır. Örnek:

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

project_config

Proje yapılandırma değerlerini ayarlar. Bu komutu kullanmadan önce set_project ile bir proje ayarladığınızdan emin olun.

get

Proje yapılandırmasını görüntülemek için get alt komutunu kullanın:

    earthengine alpha project_config get

Projenin toplu görev ayarlarını görüntüleme izniniz varsa çıkışta şunlar yer alır:

  • maxConcurrentExports: Belirli bir proje için tüm kullanıcılarda paralel olarak çalıştırılabilecek maksimum toplu görev sayısını gösteren bir sayı. Bu değer, varsayılan olarak ilişkili faturalandırma hesabının abonelik planı tarafından izin verilen maksimum değere ayarlanır.

Ayrıca, plan yapılandırmasını görüntüleme izniniz varsa çıkışta şunlar yer alır:

  • planMaxConcurrentExports: Faturalandırma hesabını kullanan tüm kullanıcılar ve projelerde paralel olarak çalıştırılabilecek maksimum toplu görev sayısını gösteren bir sayı.

grup

Projenin yapılandırmasını güncellemek için set alt komutunu kullanın. Aşağıdaki ayarlar yapılandırılabilir:

Örneğin, bir projede yalnızca 10 görevin paralel olarak çalışmasına izin verecek şekilde yapılandırmak için:

    earthengine alpha project_config set --max_concurrent_exports=10

Çıktıda, get tarafından döndürülenle aynı olan güncellenmiş proje yapılandırması gösterilir.

Toplu görev paralelliği hakkında daha fazla bilgi için Earth Engine kotaları sayfasını inceleyin.

rm

Bir veya daha fazla öğeyi siler. Örnek:

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

Bir klasörün veya koleksiyonun içeriğini yinelemeli olarak silmek için -r işaretini kullanabilirsiniz. Birden fazla öğeyi silerken güvenliği sağlamak için --dry_run işaretini kullanarak hiçbir şeyi silmeden tam olarak neyin silineceğini doğrulayabilirsiniz.

set_project

Hesaplama isteklerinin yönlendirildiği Google Cloud projesini ayarlar.

    earthengine set_project foo-project

Bu komut, Cloud işlevselliği gerektiren komutlar (ör. model) çalıştırılmadan önce gereklidir.

görev

Uzun süren görevler hakkında bilgi yazdırır veya bu görevleri yönetir. Örnekler:

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

list alt komutu, son gönderdiğiniz görevlerle ilgili temel bilgileri listeler. -l seçeneği, her görev hakkında daha fazla bilgi içeren uzun bir biçim ister. info alt komutu, tek tek görevlerle ilgili ayrıntılı bilgileri yazdırır. cancel alt komutu, çalışmakta olan bir veya daha fazla görevi iptal eder.

yükle

Google Cloud Storage'daki resimleri veya tabloları Earth Engine'e yükler ya da harici resimlerle desteklenen öğeler oluşturur.

resim

Varsayılan ayarları kullanarak resim öğesi yüklemek için:

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

Birden fazla giriş resmi dosyası belirtirseniz bunlar tek bir resim öğesinin döşemeleri olarak yorumlanır. Resimleri Earth Engine'e yükleme seçenekleri hakkında daha fazla bilgiyi Resim öğelerini yükleme: Gelişmiş seçenekler başlıklı makalede bulabilirsiniz.

Piramit küçültme politikasını --pyramiding_policy işaretini kullanarak belirleyebilirsiniz. Bu işaret mean (varsayılan), sample, mode, min veya max değerlerinden birine ayarlanabilir. Bu parametre, Earth Engine'in resminizin daha düşük çözünürlüklü sürümlerinin piramidini nasıl oluşturacağını kontrol eder:

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

Resmin maskesinin son banttaki bir alfa kanalından alınması gerektiğini belirtmek için --last_band_alpha öğesini kullanabilirsiniz:

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

--nodata_value işaretini kullanarak veri yok değeri belirtebilirsiniz. Bu işlem, resimdeki söz konusu değere sahip tüm pikselleri maskeler:

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

Ayrıca, asset set komutu tarafından kabul edilen yukarıda açıklanan aynı işaretleri kullanarak öğede ayarlanacak meta veri özelliklerini de belirtebilirsiniz. Seçenekler, Resim Manifesti kılavuzunda da açıklanmıştır.

masa

Google Cloud Storage'dan bir Shapefile, CSV veya TFRecord'u Earth Engine tablo öğesine yüklemek için aşağıdakilerden herhangi birini kullanabilirsiniz:

    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

CSV ve TFRecord dosyalarının yorumlanma şekliyle ilgili birçok seçenek vardır. Tablo yükleme seçeneklerinin tam listesini görmek için Tablo Manifesti kılavuzunu ziyaret edebilir veya aşağıdaki yöntemleri kullanabilirsiniz:

    earthengine upload table -h

external_image

Bilinmeyen kaynaktan gelen bir resimle desteklenen bir öğe oluşturmak için manifest ile upload_image komutunu çalıştırın:

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

Örnek bir manifest:

{
  "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"
}

Manifest oluşturma hakkında daha fazla bilgi için Cloud GeoTIFF kılavuzuna ve Image Manifest kılavuzuna bakın.