Gli asset di Earth Engine sono dati geospaziali di proprietà del progetto archiviati all'interno della piattaforma. Puoi caricare i tuoi dati e archiviare i dati prodotti dalle analisi di Earth Engine come asset.
Tipi di asset
Earth Engine offre vari formati di asset per diversi tipi di dati, nonché elementi contenitore per l'organizzazione.
Tipi di asset | |
---|---|
Image |
Un raster, una rappresentazione delle informazioni geografiche basata su una griglia in cui ogni cella della griglia contiene un valore corrispondente a una posizione specifica sulla superficie terrestre. |
ImageCollection |
Una raccolta di immagini raster correlate che costituiscono un mosaico o una serie temporale. È funzionalmente simile a una cartella, ma può essere importato in Earth Engine come oggetto ee.ImageCollection che include un insieme di metodi per il filtraggio e l'analisi. |
Table |
Una struttura di dati di tabella composta da elementi vettoriali (righe), ciascuna contenente una serie di proprietà (colonne). È rappresentato dall'oggetto
ee.FeatureCollection , che include un insieme di metodi
per il filtro e l'analisi. |
Classifier |
Un modello di machine learning di Earth Engine addestrato. È rappresentato dall'oggetto
ee.Classifier |
FeatureView |
Una visualizzazione di una tabella da utilizzare nelle app Earth Engine. |
Folder |
Un contenitore per gli asset e cartelle aggiuntive per facilitare l'organizzazione. |
Organizzazione delle risorse
Gli asset Earth Engine sono organizzati in un sistema gerarchico di cartelle e raccolte. La struttura è simile a quella dei file system comuni.
Radice
Gli asset sono di proprietà di un progetto Cloud. Il nome del progetto definisce la radice della directory delle risorse. Ad esempio, la radice di my-project
è
projects/my-project/assets
.
Tutti gli asset che appartengono a my-project
si trovano nella cartella projects/my-project/assets
o in una sottocartella (o ImageCollection) al suo interno.
Directory
Earth Engine utilizza una struttura di directory ad albero per organizzare gli asset. Ogni progetto Cloud ha una directory principale che può contenere singoli asset e cartelle. Le raccolte di immagini sono un tipo di asset speciale progettato specificamente per contenere insiemi di immagini correlate, come serie temporali o mosaici. A differenza delle cartelle, le raccolte di immagini possono contenere solo asset immagine e non possono nidificare altre cartelle o raccolte al loro interno.
- folder_dataprojects/my-project/assets/
- cartella nome-cartella/
- photo nome-immagine
- view_comfy nome_tabella
- satellite featureview-name
- bubble_chart nome-classificatore
- photo_library nome_raccolta_immagini/
- photo image-name-1
- photo image-name-2
ID risorsa
Earth Engine utilizza gli ID risorsa per fare riferimento ai dati sia negli script sia nelle operazioni da riga di comando. Definiscono le posizioni delle risorse utilizzando le barre oblique (/) come separatori tra le directory. Ad esempio,
projects/my-project/assets/my-asset
specifica un asset denominato
"my-asset" nella directory principale "my-project". Ecco un
esempio di utilizzo di questo ID per ottenere informazioni sulla risorsa.
Python
print(ee.data.getAsset('projects/my-project/assets/my-asset'))
Editor di codice
print(ee.Image('projects/my-project/assets/my-asset'))
Riga di comando
earthengine asset info projects/my-project/assets/my-asset
Crea asset
Puoi creare cartelle e raccolte di immagini e importare immagini e tabelle da file locali o da file in un bucket Google Cloud Storage. I formati di immagini supportati includono GeoTIFF (standard e COG) e TFRecord. I formati delle tabelle supportati includono shapefile e CSV. Gli asset possono essere creati anche esportando un risultato dell'analisi di Earth Engine utilizzando le funzioni batch Export.*.toAsset
.
Client Python
Immagine
Utilizza la funzione ee.data.startIngestion
per importare le immagini da Cloud Storage. Per ulteriori informazioni sulla configurazione del caricamento, consulta la pagina manifesto delle immagini.
manifest = {
'name': 'projects/my-project/assets/asset-name',
'tilesets': [
{
'sources': [
{
'uris': [
'gs://my-bucket/filename.tif'
]
}
]
}
]
}
ee.data.startIngestion(None, manifest)
Tabella
Utilizza la funzione ee.data.startTableIngestion
per importare le tabelle da Cloud Storage. Per ulteriori informazioni sulla configurazione del caricamento, consulta la pagina manifesto delle immagini.
manifest = {
'name': 'projects/my-project/assets/asset-name',
'sources': [
{
'uris': [
'gs://my-bucket/filename.csv'
]
}
]
}
ee.data.startTableIngestion(None, manifest)
Cartella o ImageCollection
Utilizza la funzione ee.data.createAsset
per creare cartelle o raccolte di immagini vuote.
ee.data.createAsset(
{'type': 'FOLDER'}, # or 'IMAGE_COLLECTION'
'projects/my-project/assets/asset-name'
)
Editor di codice
In Asset Manager, fai clic sul pulsante NUOVO e seleziona il tipo di risorsa da caricare o creare dal menu a discesa. Configura il caricamento o la creazione degli asset nella finestra di dialogo.
Riga di comando
Immagine o tabella
earthengine upload image --asset_id=projects/my-project/assets/asset-name gs://my-bucket/filename.tif
earthengine upload table --asset_id=projects/my-project/assets/asset-name gs://my-bucket/filename.csv
Cartella o ImageCollection
Utilizza il comando earthengine create
per creare cartelle o raccolte di immagini vuote.
earthengine create folder projects/my-project/assets/folder-name
earthengine create collection projects/my-project/assets/collection-name
Immagine esterna
I file GeoTIFF (COG) ottimizzati per il cloud che carichi in un bucket Google Cloud Storage possono essere registrati come asset immagine esterni e utilizzati direttamente in Earth Engine. Consulta la documentazione di riferimento per ulteriori informazioni sulle risorse basate su COG e sulla creazione di un manifest.
earthengine alpha upload external_image --manifest /tmp/foo.json
Elencare gli asset
Client Python
Utilizza la funzione ee.data.listAssets
per elencare gli asset in una cartella o una raccolta (non ricorsiva).
Per ulteriori informazioni su filtri e paginazione, consulta la documentazione di riferimento.
ee.data.listAssets('projects/my-project/assets')
Consulta anche ee.data.listImages
e
ee.data.listFeatures
.
Editor di codice
Espandi le cartelle in Asset Manager per visualizzare gli asset.
Riga di comando
Utilizza il comando earthengine ls
per elencare gli asset in una cartella o una raccolta (non ricorsiva). Consulta la documentazione di riferimento per ulteriori informazioni su come limitare il numero di asset da elencare e i dettagli sull'importo da restituire.
earthengine ls projects/my-project/assets
Impostare le autorizzazioni per le risorse
Client Python
Utilizza la funzione ee.data.setAssetAcl
per impostare le autorizzazioni per una risorsa.
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 di codice
In Asset Manager, tieni il puntatore del mouse sopra un asset e fai clic sull'icona Condividi. Nella finestra di dialogo, inserisci un indirizzo email o un dominio con cui condividere l'asset, poi seleziona un livello di autorizzazione da concedere dall'elenco a discesa. Fai clic sul pulsante AGGIUNGI ACCESSO per confermare la modifica. Seleziona la casella "Chiunque può leggere" per concedere l'autorizzazione di lettura a qualsiasi entità. Puoi anche fornire l'accesso alle app Earth Engine dalla finestra di dialogo selezionando il nome dell'app dall'elenco a discesa (asset di proprietà del progetto Editor di codice attivo).
Riga di comando
Utilizza il comando earthengine acl set
per impostare l'accesso in lettura di un asset su
public
o private
.
earthengine acl set public projects/my-project/assets/asset-name
Utilizza il comando earthengine acl ch
per impostare le autorizzazioni individuali per la lettura e la scrittura delle risorse.
earthengine acl ch -u person@gmail.com:R projects/my-project/assets/asset-name
Per ulteriori dettagli, consulta la pagina Riferimento alla riga di comando.
Controlla le autorizzazioni delle risorse
Client Python
Utilizza la funzione ee.data.getAssetAcl
per recuperare l'elenco di controllo dell'accesso per una risorsa.
ee.data.getAssetAcl('projects/my-project/assets/asset-name')
Editor di codice
In Asset Manager, tieni il puntatore del mouse sopra un asset e fai clic sull'icona Condividi. La finestra di dialogo mostra un elenco di email e domini con i relativi livelli di accesso.
Riga di comando
Utilizza il comando earthengine acl get
per recuperare l'elenco di controllo dell'accesso per un asset.
earthengine acl get projects/my-project/assets/asset-name
Copiare gli asset
Client Python
Utilizza la funzione ee.data.copyAsset
per copiare un asset.
ee.data.copyAsset('projects/my-project/assets/asset-name', 'projects/my-project/assets/asset-copy-name')
Editor di codice
Utilizza il client Python o lo strumento a riga di comando per copiare gli asset.
Riga di comando
Utilizza il comando earthengine cp
per copiare un asset.
earthengine cp projects/my-project/assets/asset-name projects/my-project/assets/asset-copy-name
Spostare o rinominare gli asset
Client Python
Utilizza la funzione ee.data.renameAsset
per spostare o rinominare un asset.
ee.data.renameAsset('projects/my-project/assets/asset-name', 'projects/my-project/assets/new-asset-name')
Editor di codice
Sposta
In Asset Manager, trascina un asset in una nuova cartella.
Rinomina
In Asset Manager, tieni premuto il cursore sopra una risorsa, fai clic sull'icona di modifica e digita un nuovo nome nel campo di immissione modificabile.
Riga di comando
Utilizza il comando earthengine mv
per spostare o rinominare un asset.
earthengine mv projects/my-project/assets/asset-name projects/my-project/assets/new-asset-name
Elimina asset
Client Python
Utilizza la funzione ee.data.deleteAsset
per eliminare una risorsa.
ee.data.deleteAsset('projects/my-project/assets/asset-name')
Editor di codice
Fai clic su una risorsa per aprire la relativa pagina di dialogo, poi fai clic sul pulsante ELIMINA.
Riga di comando
Utilizza il comando earthengine rm
per eliminare una risorsa. Consulta il riferimento della funzione per le opzioni di prova secca e ricorsiva.
earthengine rm projects/my-project/assets/asset-name
Visualizzare i metadati delle risorse
Client Python
Utilizza la funzione ee.data.getAsset
per recuperare i metadati delle risorse.
ee.data.getAsset('projects/my-project/assets/asset-name')
Editor di codice
Fai clic su una risorsa per aprire la relativa pagina della finestra di dialogo. Visualizza le informazioni sulla risorsa.
Riga di comando
Utilizza il comando earthengine asset info
per recuperare i metadati della risorsa.
earthengine asset info projects/my-project/assets/asset-name
Impostare i metadati della risorsa
È possibile impostare i seguenti metadati degli asset:
start_time
end_time
properties
Client Python
Utilizza la funzione ee.data.updateAsset
per aggiornare i metadati delle risorse.
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 di codice
Fai clic su un asset per aprire la relativa pagina di dialogo, quindi attiva l'opzione di modifica in alto a destra. Puoi modificare la descrizione, le proprietà e le date di inizio e di fine. Disattiva l'opzione di modifica per salvare le modifiche.
Riga di comando
Utilizza il comando earthengine asset set
per aggiornare i metadati della risorsa. Per ulteriori informazioni, consulta la documentazione di riferimento.
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
Controllare la quota di asset
La quota viene applicata a livello di progetto. Scopri di più sulla quota delle risorse nella pagina Limiti di utilizzo e quota.
Client Python
Utilizza la funzione ee.data.getAssetRootQuota
per ottenere l'utilizzo della quota di spazio di archiviazione per la radice di una risorsa.
ee.data.getAssetRootQuota('projects/my-project/assets')
Editor di codice
In Asset Manager, tieni il puntatore del mouse sopra la cartella principale di un progetto e fai clic sull'icona data_usage. Viene visualizzata una finestra di dialogo informativa.
Riga di comando
Utilizza il client Python o l'editor di codice per controllare la quota di asset.