Les éléments Earth Engine sont des données géospatiales appartenant à un projet et stockées sur la plate-forme. Vous pouvez importer vos propres données et stocker les données produites à partir de vos analyses Earth Engine en tant qu'éléments.
Types d'éléments
Earth Engine propose différents formats d'éléments pour différents types de données, ainsi que des éléments de conteneur pour l'organisation.
| Types d'éléments | |
|---|---|
Image |
Représentation matricielle des informations géographiques, où chaque cellule de la grille contient une valeur correspondant à un emplacement spécifique sur la surface de la Terre. |
ImageCollection |
Collection d'images matricielles associées qui constituent une mosaïque ou une série
temporelle. Elle est fonctionnellement semblable à un dossier, mais peut être importée dans
Earth Engine en tant qu'ee.ImageCollection objet, qui inclut un
ensemble de méthodes de filtrage et d'analyse. |
Table |
Structure de données tabulaire composée de caractéristiques vectorielles (lignes), chacune
contenant une série de propriétés (colonnes). Elle est représentée par l'
ee.FeatureCollection objet, qui inclut un ensemble de méthodes
de filtrage et d'analyse. |
Classifier |
Modèle de machine learning Earth Engine entraîné. Il est représenté par l'objet
ee.Classifier |
FeatureView |
Vue de visualisation d'une table à utiliser dans les applications Earth Engine. |
Folder |
Conteneur d'éléments et de dossiers supplémentaires pour faciliter l'organisation. |
Organisation des éléments
Les éléments Earth Engine sont organisés dans un système hiérarchique de dossiers et de collections. La structure est semblable à celle des systèmes de fichiers courants.
Racine
Les éléments appartiennent à un projet Cloud. Le nom du projet définit la racine du répertoire d'éléments. Par exemple, la racine de my-project est
projects/my-project/assets.
Tous les éléments appartenant à my-project se trouvent dans le projects/my-project/assets
dossier ou dans un sous-dossier (ou ImageCollection) de celui-ci.
Annuaire
Earth Engine utilise une structure d'annuaire arborescente pour organiser les éléments. Chaque projet Cloud possède un répertoire racine qui peut contenir des éléments et des dossiers individuels. Les ImageCollections sont un type d'élément spécial conçu spécifiquement pour contenir des ensembles d'images associées, telles que des séries temporelles ou des mosaïques. Contrairement aux dossiers, les ImageCollections ne peuvent contenir que des éléments d'image et ne peuvent pas imbriquer d'autres dossiers ou collections.
- 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 d'élément
Earth Engine utilise des ID d'élément pour référencer des données dans les scripts et les opérations de ligne de commande. Ils définissent les emplacements des éléments à l'aide de barres obliques (/) comme séparateurs entre les répertoires. Par exemple, projects/my-project/assets/my-asset spécifie un élément nommé "my-asset" situé dans la racine "my-project". Voici un exemple d'utilisation de cet ID pour obtenir des informations sur l'élément.
Python
print(ee.data.getAsset('projects/my-project/assets/my-asset'))
Éditeur de code
print(ee.Image('projects/my-project/assets/my-asset'))
Ligne de commande
earthengine asset info projects/my-project/assets/my-assetCréer des composants
Vous pouvez créer des dossiers et des ImageCollections, et ingérer des images et des tables à partir de fichiers locaux ou de fichiers dans un bucket Cloud Storage. Les formats d'image compatibles incluent GeoTIFF (standard et COG) et TFRecord. Les formats de table compatibles incluent Shapefile et CSV. (Les éléments peuvent également être créés en
exportant un résultat d'analyse Earth Engine
à l'aide des fonctions de traitement par lot Export.*.toAsset).
Client Python
Image
Utilisez la ee.data.startIngestion
fonction pour ingérer des images à partir de Cloud Storage. Pour en savoir plus sur la configuration de l'importation, consultez la page du
fichier manifeste d'image.
manifest = {
'name': 'projects/my-project/assets/asset-name',
'tilesets': [
{
'sources': [
{
'uris': [
'gs://my-bucket/filename.tif'
]
}
]
}
]
}
ee.data.startIngestion(None, manifest)
Tableau
Utilisez la ee.data.startTableIngestion
fonction pour ingérer des tables à partir de Cloud Storage. Pour en savoir plus sur la configuration de l'importation, consultez la page du
fichier manifeste d'image.
manifest = {
'name': 'projects/my-project/assets/asset-name',
'sources': [
{
'uris': [
'gs://my-bucket/filename.csv'
]
}
]
}
ee.data.startTableIngestion(None, manifest)
Dossier ou ImageCollection
Utilisez la ee.data.createAsset
fonction pour créer des dossiers ou des ImageCollections vides.
ee.data.createAsset(
{'type': 'FOLDER'}, # or 'IMAGE_COLLECTION'
'projects/my-project/assets/asset-name'
)
Éditeur de code
Dans le gestionnaire d'éléments, cliquez sur le bouton NOUVEAU , puis sélectionnez le type d'élément que vous souhaitez importer ou créer dans la liste déroulante. Configurez l'importation ou la création de l'élément dans la boîte de dialogue.
Ligne de commande
Image ou tableau
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
Dossier ou ImageCollection
Utilisez la earthengine create
commande pour créer des dossiers ou des ImageCollections vides.
earthengine create folder projects/my-project/assets/folder-nameearthengine create collection projects/my-project/assets/collection-name
Image externe
Les fichiers GeoTIFF optimisés pour le cloud (COG) que vous importez dans un bucket Google Cloud Storage peuvent être enregistrés en tant qu'éléments d'image externes et utilisés directement dans Earth Engine. Pour en savoir plus sur les éléments compatibles avec COG et la création d'un fichier manifeste, consultez la documentation de référence.
earthengine alpha upload external_image --manifest /tmp/foo.jsonRépertorier les éléments
Client Python
Utilisez la ee.data.listAssets
fonction pour répertorier les éléments d'un dossier ou d'une collection (non récursive).
Pour en savoir plus sur le filtrage et la pagination, consultez la documentation de référence.
ee.data.listAssets('projects/my-project/assets')
Consultez également ee.data.listImages et
ee.data.listFeatures.
Éditeur de code
Développez les dossiers dans le gestionnaire d'éléments pour afficher les éléments.
Ligne de commande
Utilisez la earthengine ls
commande pour répertorier les éléments d'un dossier ou d'une collection (non récursive). Pour en savoir plus sur la limitation du nombre d'éléments à répertorier et sur la quantité de détails à renvoyer, consultez la documentation de référence.
earthengine ls projects/my-project/assetsDéfinir les autorisations d'élément
Client Python
Utilisez la ee.data.setAssetAcl
fonction pour définir les autorisations sur un élément.
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)
Éditeur de code
Dans le gestionnaire d'éléments, pointez sur un élément, puis cliquez sur l'icône de partage. Dans la boîte de dialogue, saisissez une adresse e-mail ou un domaine avec lequel partager l'élément, puis sélectionnez un niveau d'autorisation à accorder dans la liste déroulante. Cliquez sur le bouton AJOUTER UN ACCÈS pour confirmer la modification. Cochez la case "Tout le monde peut lire" pour accorder à n'importe quelle entité l'autorisation de lecture. Vous pouvez également fournir un accès aux applications Earth Engine à partir de la boîte de dialogue en sélectionnant le nom de l'application dans la liste déroulante (éléments appartenant au projet actif de l'éditeur de code).
Ligne de commande
Utilisez la commande earthengine acl set pour définir l'accès en lecture d'un élément sur public ou private.
earthengine acl set public projects/my-project/assets/asset-nameUtilisez la commande earthengine acl ch pour définir des autorisations individuelles pour la lecture et l'écriture d'éléments.
earthengine acl ch -u person@gmail.com:R projects/my-project/assets/asset-namePour en savoir plus, consultez la page de référence de la ligne de commande.
Vérifier les autorisations d'élément
Client Python
Utilisez la ee.data.getAssetAcl
fonction pour récupérer la liste de contrôle d'accès d'un élément.
ee.data.getAssetAcl('projects/my-project/assets/asset-name')
Éditeur de code
Dans le gestionnaire d'éléments, pointez sur un élément, puis cliquez sur l'icône de partage. La boîte de dialogue affiche une liste d'adresses e-mail et de domaines, ainsi que leurs niveaux d'accès respectifs.
Ligne de commande
Utilisez la earthengine acl get
commande pour récupérer la liste de contrôle d'accès d'un élément.
earthengine acl get projects/my-project/assets/asset-nameCopier des éléments
Client Python
Utilisez la ee.data.copyAsset
fonction pour copier un élément.
ee.data.copyAsset('projects/my-project/assets/asset-name', 'projects/my-project/assets/asset-copy-name')
Éditeur de code
Utilisez le client Python ou l'outil de ligne de commande pour copier des éléments.
Ligne de commande
Utilisez la earthengine cp
commande pour copier un élément.
earthengine cp projects/my-project/assets/asset-name projects/my-project/assets/asset-copy-nameDéplacer ou renommer des éléments
Client Python
Utilisez la ee.data.renameAsset
fonction pour déplacer ou renommer un élément.
ee.data.renameAsset('projects/my-project/assets/asset-name', 'projects/my-project/assets/new-asset-name')
Éditeur de code
Déplacer
Dans le gestionnaire d'éléments, faites glisser un élément dans un nouveau dossier.
Renommer
Dans le gestionnaire d'éléments, pointez sur un élément, cliquez sur l'icône de modification modifier, puis saisissez un nouveau nom dans le champ de saisie modifiable.
Ligne de commande
Utilisez la earthengine mv
commande pour déplacer ou renommer un élément.
earthengine mv projects/my-project/assets/asset-name projects/my-project/assets/new-asset-nameSupprimer des éléments
Client Python
Utilisez la ee.data.deleteAsset
fonction pour supprimer un élément.
ee.data.deleteAsset('projects/my-project/assets/asset-name')
Éditeur de code
Cliquez sur un élément pour ouvrir la page de la boîte de dialogue de l'élément, puis cliquez sur le SUPPRIMER bouton.
Ligne de commande
Utilisez la earthengine rm
commande pour supprimer un élément. Pour en savoir plus sur les options récursives et d'exécution à sec, consultez la documentation de référence de la fonction.
earthengine rm projects/my-project/assets/asset-nameAfficher les métadonnées d'élément
Client Python
Utilisez la ee.data.getAsset
fonction pour obtenir les métadonnées de l'élément.
ee.data.getAsset('projects/my-project/assets/asset-name')
Éditeur de code
Cliquez sur un élément pour ouvrir la page de la boîte de dialogue de l'élément. Affichez les informations sur l'élément.
Ligne de commande
Utilisez la earthengine asset info
commande pour obtenir les métadonnées d'un élément.
earthengine asset info projects/my-project/assets/asset-nameDéfinir les métadonnées d'élément
Vous pouvez définir les métadonnées d'élément suivantes :
start_timeend_timeproperties
Client Python
Utilisez la ee.data.updateAsset
fonction pour mettre à jour les métadonnées de l'élément.
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)
Éditeur de code
Cliquez sur un élément pour ouvrir la page de la boîte de dialogue de l'élément, puis activez le bouton bascule de modification en haut à droite. Vous pouvez modifier la description, les propriétés, ainsi que les dates de début et de fin. Désactivez le bouton bascule de modification pour enregistrer les modifications.
Ligne de commande
Utilisez la earthengine asset set
commande pour mettre à jour les métadonnées de l'élément. Pour en savoir plus, consultez la documentation de référence.
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
Vérifier le quota d'éléments
Le quota est appliqué au niveau du projet. Pour en savoir plus sur le quota d'éléments, consultez la page Limites d'utilisation et de quota.
Client Python
Utilisez la ee.data.getAssetRootQuota
fonction pour obtenir l'utilisation du quota de stockage pour une racine d'élément.
ee.data.getAssetRootQuota('projects/my-project/assets')
Éditeur de code
Dans le gestionnaire d'éléments, pointez sur une racine de projet, puis cliquez sur l' data_usage. Une boîte de dialogue d'informations s'affiche.
Ligne de commande
Utilisez le client Python ou l'éditeur de code pour vérifier le quota d'éléments.