Implémentation de types raster personnalisés dans Python

Les types raster peuvent être personnalisés et implémentés dans Python selon le type de données raster que vous voulez ajouter. Les types raster peuvent être comparés à un ensemble de fonctions qui reconnaissent le format de la structure de métadonnées associée à vos données. Le type raster peut également analyser les métadonnées pour extraire des informations, telles que les chemins d'accès aux fichiers de données, des informations relatives aux références spatiales et les métadonnées (nom du capteur, altitude du soleil, azimut du soleil, distance du soleil, date d'acquisition, paramètres de rayonnement et réflectance).

Outre l'analyse et la lecture des informations des métadonnées à partir du fichier de métadonnées, un type raster définit également les modèles de traitement qui sont applicables au type de données en cours de lecture. Les modèles de traitement peuvent combiner différentes informations à partir des données source afin de générer une sortie qui est plus significative et pratique pour l'affichage et l'analyse. La plupart des types raster reposant sur des données de capteur définissent Multispectral comme l'un de ses modèles de traitement. De nombreux autres modèles peuvent être définis selon le type des données disponibles pour un produit. Par exemple, le type raster Landsat 8 définit différents modèles, tels que Multispectral, Panchromatique, Affiné, Végétation, Cirrus et Neige/glace.

Pour en savoir plus sur les types raster ArcGIS implémentés dans Python, reportez-vous à la rubrique Types raster Github.

Propriétés d'un type raster

Un type raster est créé en définissant une ou plusieurs des propriétés suivantes à partir de ses données source :

  • Propriétés des canaux : nom de canal, longueur d'onde maximale et minimale, et rayonnement solaire, par exemple
  • Modèles de traitement : modèles de fonctions raster contenant des entrées, fonctions et valeurs ou variables
  • Champs auxiliaires : qui sont ajoutés à une mosaïque
  • Entrées auxiliaires : informations supplémentaires requises par le type raster pour décrire entièrement la source de données, telles qu'un MNT qui doit être appliqué sur le jeu de données source pour orthorectifier l'image

Implémentation de types raster personnalisés

Les détails de l'implémentation d'un type raster dans un module Python sont décrits ci-dessous. Un type raster est une couche qui facilite l'interaction avec l'application dans différents aspects des données. Les types raster sont également essentiels pour ajouter des rasters à une mosaïque à l'aide de l'outil Ajouter des rasters à la mosaïque.

La structure ArcGIS identifie les types raster à l'aide d'un modèle de générateur connu. Un générateur de type raster détient une collection de types raster. La collection peut être organisée en fonction de critères spécifiques ou simplement être un conteneur qui renferme tous les types raster.

Trois composants d'un type raster sont implémentés dans Python :

Comme cela fonctionne-t-il ?

L'architecture de l'implémentation d'un type raster dans Python est intuitive. ArcGIS offre un adaptateur de type raster qui fait l'interface avec le système ArcGIS et le module Python pour l'implémentation du type raster. L'adaptateur charge le module Python et recherche RasterTypeFactory en vue d'identifier les types raster participants au sein de ce module. RasterTypeFactory doit contenir au moins une fonction publique, getRasterTypesInfo, qui renvoie des informations sur tous les types raster au sein du générateur. La fonction getRasterTypesInfo renvoie un dictionnaire de RasterTypeDefinitions. L'adaptateur extrait ensuite des informations sur RasterTypes et traite les types raster Python de la même manière que n'importe quel autre type raster contenu dans ArcGIS. La structure ArcGIS interagit ensuite avec le type raster Python à l'aide de l'API Builder et de l'API Crawler.

Après avoir implémenté votre type raster avec Python, placez le module Python dans le dossier [InstallDirectory]\Resources\Raster\Types.

La structure du type raster dans ArcGIS choisit tous les fichiers *.py à partir de cet emplacement et vérifie qu'ils contiennent des types raster valides. Si des types raster valides sont détectés, ils sont ajoutés à la liste des types raster dans l'outil Ajouter des rasters à la mosaïque.

Pour en savoir plus sur l'implémentation d'un type raster dans un module Python, reportez-vous à la rubrique Anatomie d'un type raster Python.

Rubriques connexes