Aset Earth Engine adalah data geospasial milik project yang disimpan dalam platform. Anda dapat mengupload data Anda sendiri dan menyimpan data yang dihasilkan dari analisis Earth Engine sebagai aset.
Jenis aset
Earth Engine menawarkan berbagai format aset untuk berbagai jenis data, beserta elemen penampung untuk pengaturan.
| Jenis aset | |
|---|---|
Image |
Raster, representasi informasi geografis berbasis petak, dengan setiap sel dalam petak menyimpan nilai yang sesuai dengan lokasi tertentu di permukaan Bumi. |
ImageCollection |
Kumpulan gambar raster terkait yang membentuk mosaik atau deret waktu. Secara fungsional, koleksi gambar mirip dengan folder, tetapi dapat diimpor ke Earth Engine sebagai objek ee.ImageCollection yang mencakup serangkaian metode untuk pemfilteran dan analisis. |
Table |
Struktur data tabel yang terdiri dari fitur vektor (baris), yang masing-masing berisi serangkaian properti (kolom). Hal ini direpresentasikan oleh
objek ee.FeatureCollection, yang mencakup serangkaian metode
untuk pemfilteran dan analisis. |
Classifier |
Model machine learning Earth Engine yang telah dilatih. Model ini direpresentasikan oleh objek ee.Classifier |
FeatureView |
Tampilan visualisasi tabel untuk digunakan di Aplikasi Earth Engine. |
Folder |
Penampung untuk aset dan folder tambahan guna membantu pengaturan. |
Pengelolaan aset
Aset Earth Engine diatur ke dalam sistem hierarkis folder dan koleksi. Strukturnya mirip dengan sistem file umum.
Root
Aset dimiliki oleh project Cloud. Nama project menentukan root direktori aset. Misalnya, root my-project adalah
projects/my-project/assets.
Semua aset milik my-project berada di folder projects/my-project/assets
atau subfolder (atau ImageCollection) di dalamnya.
Direktori
Earth Engine menggunakan struktur direktori seperti hierarki untuk mengatur aset. Setiap project Cloud memiliki direktori root yang dapat berisi aset dan folder individual. ImageCollection adalah jenis aset khusus yang dirancang khusus untuk menyimpan kumpulan gambar terkait, seperti deret waktu atau mosaik. Tidak seperti folder, ImageCollection hanya dapat berisi aset gambar dan tidak dapat menyusun bertingkat folder atau koleksi lain di dalamnya.
- folder_dataprojects/my-project/assets/
- folder folder-name/
- photo image-name
- view_comfy table-name
- satellite featureview-name
- bubble_chart classifier-name
- photo_library imagecollection-name/
- photo image-name-1
- photo image-name-2
ID Aset
Earth Engine menggunakan ID aset untuk mereferensikan data dalam skrip dan operasi command line. Mereka menentukan lokasi aset menggunakan garis miring (/) sebagai pemisah
antar-direktori. Misalnya,
projects/my-project/assets/my-asset menentukan aset bernama
"my-asset" yang terletak di root "my-project". Berikut adalah contoh penggunaan ID ini untuk mendapatkan informasi tentang aset.
Python
print(ee.data.getAsset('projects/my-project/assets/my-asset'))
Editor Kode
print(ee.Image('projects/my-project/assets/my-asset'))
Command line
earthengine asset info projects/my-project/assets/my-assetBuat aset
Anda dapat membuat folder dan ImageCollection serta menyerap gambar dan tabel dari file lokal atau file di bucket Google Cloud Storage. Format gambar yang didukung mencakup GeoTIFF dan TFRecord; Cloud Optimized GeoTIFF (COG) di Cloud Storage juga dapat didaftarkan di tempat, bukan diserap. Format tabel yang didukung mencakup Shapefile dan CSV. (Aset juga dapat dibuat dengan
mengekspor hasil analisis Earth Engine
menggunakan fungsi batch Export.*.toAsset).
Klien Python
Gambar
Gunakan fungsi ee.data.startIngestion
untuk menyerap gambar dari Cloud Storage. Lihat halaman
manifes image
untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi upload.
manifest = {
'name': 'projects/my-project/assets/asset-name',
'tilesets': [
{
'sources': [
{
'uris': [
'gs://my-bucket/filename.tif'
]
}
]
}
]
}
ee.data.startIngestion(None, manifest)
Tabel
Gunakan fungsi ee.data.startTableIngestion untuk menyerap tabel dari Cloud Storage. Lihat halaman
manifes image
untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi upload.
manifest = {
'name': 'projects/my-project/assets/asset-name',
'sources': [
{
'uris': [
'gs://my-bucket/filename.csv'
]
}
]
}
ee.data.startTableIngestion(None, manifest)
Folder atau ImageCollection
Gunakan fungsi ee.data.createAsset
untuk membuat folder atau ImageCollection kosong.
ee.data.createAsset(
{'type': 'FOLDER'}, # or 'IMAGE_COLLECTION'
'projects/my-project/assets/asset-name'
)
Editor Kode
Dalam Pengelola Aset, klik tombol NEW dan pilih jenis aset yang ingin Anda upload atau buat dari daftar drop-down. Konfigurasikan upload atau pembuatan aset dalam dialog.
Command line
Gambar atau tabel
earthengine upload image --asset_id=projects/my-project/assets/asset-name gs://my-bucket/filename.tifearthengine upload table --asset_id=projects/my-project/assets/asset-name gs://my-bucket/filename.csv
Folder atau ImageCollection
Gunakan perintah earthengine create
untuk membuat folder atau ImageCollection kosong.
earthengine create folder projects/my-project/assets/folder-nameearthengine create collection projects/my-project/assets/collection-name
Gambar eksternal
File Cloud Optimized GeoTIFF (COG) di bucket Cloud Storage dapat didaftarkan sebagai aset yang didukung COG (disebut image eksternal di API) dan digunakan langsung di Earth Engine. Lihat panduan pendaftaran COG untuk membuat manifes.
earthengine upload external_image --manifest /tmp/foo.jsonMencantumkan aset
Klien Python
Gunakan fungsi ee.data.listAssets untuk mencantumkan aset dalam folder atau koleksi (tidak rekursif).
Lihat dokumen referensi untuk mengetahui informasi selengkapnya tentang pemfilteran dan penomoran halaman.
ee.data.listAssets('projects/my-project/assets')
Lihat juga ee.data.listImages dan
ee.data.listFeatures.
Editor Kode
Luaskan folder di Pengelola Aset untuk melihat aset.
Command line
Gunakan perintah earthengine ls
untuk mencantumkan aset dalam folder atau koleksi (tidak rekursif). Lihat dokumen referensi untuk mengetahui informasi selengkapnya tentang cara membatasi jumlah aset yang akan dicantumkan dan jumlah detail yang akan ditampilkan.
earthengine ls projects/my-project/assetsMenetapkan izin aset
Klien Python
Gunakan fungsi ee.data.setAssetAcl
untuk menetapkan izin pada aset.
asset_id = 'projects/my-project/assets/asset-name'
acl_update = {
'owners': [
'user:big_cheese@example.com',
'user:el_jefe@example.com'
],
'writers': [
'user:romeo@example.com',
'user:juliet@example.com'
],
'readers': [
'group:some-group@googlegroups.com',
'domain:example.com',
'serviceAccount:some-project-id@appspot.gserviceaccount.com'
],
'all_users_can_read': False
}
ee.data.setAssetAcl(asset_id, acl_update)
Editor Kode
Dalam Pengelola Aset, tahan kursor di atas aset, lalu klik ikon bagikan. Dalam dialog, masukkan alamat email atau domain untuk berbagi aset, lalu pilih tingkat izin yang akan diberikan dari menu drop-down. Klik tombol ADD ACCESS untuk mengonfirmasi perubahan. Centang kotak "Anyone can read" untuk memberikan izin baca kepada entitas mana pun. Anda juga dapat memberikan akses ke aplikasi Earth Engine dari dialog dengan memilih nama aplikasi dari menu drop-down (aset yang dimiliki oleh project Editor Kode yang aktif).
Command line
Gunakan perintah earthengine acl set untuk menetapkan akses baca aset ke
public atau private.
earthengine acl set public projects/my-project/assets/asset-nameGunakan perintah earthengine acl ch untuk menetapkan izin individual untuk baca dan tulis aset.
earthengine acl ch -u person@gmail.com:R projects/my-project/assets/asset-nameLihat halaman referensi command line untuk mengetahui detail selengkapnya.
Memeriksa izin aset
Klien Python
Gunakan fungsi ee.data.getAssetAcl
untuk mengambil daftar kontrol akses untuk aset.
ee.data.getAssetAcl('projects/my-project/assets/asset-name')
Editor Kode
Dalam Pengelola Aset, tahan kursor di atas aset, lalu klik ikon bagikan. Dialog ini menampilkan daftar email dan domain beserta tingkat akses masing-masing.
Command line
Gunakan perintah earthengine acl get
untuk mengambil daftar kontrol akses aset.
earthengine acl get projects/my-project/assets/asset-nameMenyalin aset
Klien Python
Gunakan fungsi ee.data.copyAsset
untuk menyalin aset.
ee.data.copyAsset('projects/my-project/assets/asset-name', 'projects/my-project/assets/asset-copy-name')
Editor Kode
Gunakan klien Python atau alat command line untuk menyalin aset.
Command line
Gunakan perintah earthengine cp
untuk menyalin aset.
earthengine cp projects/my-project/assets/asset-name projects/my-project/assets/asset-copy-nameMemindahkan atau mengganti nama aset
Klien Python
Gunakan fungsi ee.data.renameAsset
untuk memindahkan atau mengganti nama aset.
ee.data.renameAsset('projects/my-project/assets/asset-name', 'projects/my-project/assets/new-asset-name')
Editor Kode
Pindahkan
Dalam Pengelola Aset, tarik aset ke folder baru.
Ganti nama
Dalam Pengelola Aset, arahkan kursor ke aset, lalu klik ikon edit dan ketik nama baru di kolom input yang dapat diedit.
Command line
Gunakan perintah earthengine mv
untuk memindahkan atau mengganti nama aset.
earthengine mv projects/my-project/assets/asset-name projects/my-project/assets/new-asset-nameMenghapus aset
Klien Python
Gunakan fungsi ee.data.deleteAsset
untuk menghapus aset.
ee.data.deleteAsset('projects/my-project/assets/asset-name')
Editor Kode
Klik aset untuk membuka halaman dialog aset, lalu klik tombol DELETE.
Command line
Gunakan perintah earthengine rm
untuk menghapus aset. Lihat referensi fungsi untuk opsi rekursif dan uji coba.
earthengine rm projects/my-project/assets/asset-nameMelihat metadata aset
Klien Python
Gunakan fungsi ee.data.getAsset
untuk mendapatkan metadata aset.
ee.data.getAsset('projects/my-project/assets/asset-name')
Editor Kode
Klik aset untuk membuka halaman dialog aset. Lihat informasi aset.
Command line
Gunakan perintah earthengine asset info
untuk mendapatkan metadata aset.
earthengine asset info projects/my-project/assets/asset-nameMenetapkan metadata aset
Metadata aset berikut dapat ditetapkan:
start_timeend_timeproperties
Klien Python
Gunakan fungsi ee.data.updateAsset
untuk memperbarui metadata aset.
asset_id = 'projects/my-project/assets/asset-name'
new_metadata = {
'properties': {
'name': 'value'
},
'start_time': '2024-10-02T15:01:24Z',
'end_time': '2024-10-02T15:01:25Z',
}
update_these = ['start_time', 'end_time', 'properties']
ee.data.updateAsset(asset_id, new_metadata, update_these)
Editor Kode
Klik aset untuk membuka halaman dialog aset, lalu aktifkan tombol edit di kanan atas. Anda dapat mengedit deskripsi, properti, serta tanggal mulai dan akhir. Nonaktifkan tombol edit untuk menyimpan perubahan.
Command line
Gunakan perintah earthengine asset set
untuk memperbarui metadata aset. Lihat dokumen referensi untuk mengetahui informasi selengkapnya.
earthengine asset set \
--time_start 2024-10-02T15:01:24 \
--time_end 2024-10-02T15:01:25 \
--property 'name=value' \
projects/my-project/assets/asset-name
Memeriksa kuota aset
Kuota diterapkan di level project. Pelajari lebih lanjut kuota aset di halaman batas penggunaan dan kuota.
Klien Python
Gunakan fungsi ee.data.getAssetRootQuota
untuk mendapatkan penggunaan kuota penyimpanan untuk root aset.
ee.data.getAssetRootQuota('projects/my-project/assets')
Editor Kode
Dalam Pengelola Aset, tahan kursor di root project, lalu klik ikon data_usage. Dialog informasi akan muncul.
Command line
Gunakan klien Python atau Editor Kode untuk memeriksa kuota aset.