Déformer (Gestion des données)

Résumé

Transforme un jeu de données raster à l'aide des points de contrôle source et cible. Cette opération s'apparente au géoréférencement.

Illustration

Exemple de transformations de coordonnées bidimensionnelles

Utilisation

  • Vous devez spécifier les coordonnées cible et source. Le type de transformation (ordre polynomial) à partir duquel le choix est effectué, dépend du nombre de points de contrôle saisis.

  • L'ordre polynomial par défaut effectue une transformation affine.

  • La transformation est utile lorsque le raster nécessite une correction géométrique systématique qui peut être modélisée avec un polynôme. Une transformation spatiale peut inverser ou supprimer une distorsion à l’aide d’une transformation polynomiale dans l’ordre approprié. Plus l'ordre de transformation est élevé, plus la déformation pouvant être corrigée est complexe. Les transformations d'ordre plus élevé impliquent une durée de traitement progressivement plus importante.

  • Pour déterminer le nombre minimum de liens nécessaire pour un ordre donné, utilisez la formule suivante :

    n = (p + 1) (p + 2) / 2

    n est le nombre minimal de liens requis pour une transformation d'ordre polynomial p. Il est recommandé d’utiliser plus que le nombre minimum de liens.

  • Cet outil détermine l'étendue du raster déformé et définit le nombre de lignes et de colonnes comme étant à peu près le même que celui du raster en entrée. Certaines différences mineures peuvent résulter de la modification des proportions entre les tailles du raster en sortie dans les directions x et y. La taille de cellule par défaut utilisée sera calculée en divisant l'étendue par le nombre d'enregistrements et de colonnes déterminé précédemment. La valeur de la taille de cellule est utilisée par l'algorithme de rééchantillonnage.

  • Si vous choisissez de définir une taille de cellule en sortie dans les paramètres d’environnement, le nombre de lignes et de colonnes sera calculé comme suit :

    columns = (xmax - xmin) / cell size rows = (ymax - ymin) / cell size
  • Vous pouvez enregistrer votre sortie au format BIL, BIP, BMP, BSQ, DAT, Carroyage Esri, GIF, IMG, JPEG, JPEG 2000, PNG, TIFF, MRF, CRF ou en tant que jeu de données raster de géodatabase.

  • Lorsque vous stockez un jeu de données raster dans un fichier JPEG, un fichier JPEG 2000 ou une géodatabase, vous pouvez spécifier un type de compression et une qualité de compression dans les environnements.

  • Cet outil prend en charge les données raster multidimensionnelles. Pour exécuter cet outil sur chaque tranche du raster multidimensionnel et générer une sortie raster multidimensionnelle, veillez à sauvegarder la sortie au format CRF.

    Les types de jeux de données multidimensionnels en entrée sont la couche raster multidimensionnelle, le jeu de données mosaïque, le service d’imagerie et CRF.

Syntaxe

Warp(in_raster, source_control_points, target_control_points, out_raster, {transformation_type}, {resampling_type})
ParamètreExplicationType de données
in_raster

Le raster à transformer.

Mosaic Layer; Raster Layer
source_control_points
[source_control_point,...]

Coordonnées du raster à déformer.

Point
target_control_points
[target_control_point,...]

Coordonnées auxquelles le raster source sera déformé.

Point
out_raster

Nom, emplacement et format du jeu de données que vous créez. Pour enregistrer un jeu de données raster dans une géodatabase, n'ajoutez pas d'extension de fichier au nom du jeu de données raster. Lorsque vous stockez votre jeu de données raster dans une géodatabase, un fichier JPEG un fichier JPEG 2000 ou un fichier TIFF, vous pouvez spécifier un type de compression et une qualité de compression.

Pour enregistrer le jeu de données raster dans un format de fichier, vous devez spécifier une extension de fichier :

  • .bil : Esri BIL
  • .bip : Esri BIP
  • .bmp : BMP
  • .bsq : Esri BSQ
  • .dat : ENVI DAT
  • .gif : GIF
  • .img : ERDAS IMAGINE
  • .jpg : JPEG
  • .jp2 : JPEG 2000
  • .png : PNG
  • .tif : TIFF
  • .mrf : MRF
  • .crf : CRF
  • Aucune extension pour Grid Esri
Raster Dataset
transformation_type
(Facultatif)

Spécifie la méthode de transformation pour le déplacement du jeu de données raster.

  • POLYORDER0 Cette méthode utilise une transformation polynomiale d'ordre nul pour décaler les données. Elle est souvent utilisée lorsque les données sont systématiquement géoréférencées, mais qu'un petit décalage peut améliorer l'alignement des données. Un seul lien est requis pour un décalage polynomial d'ordre zéro.
  • POLYSIMILARITY Il s'agit d'une transformation de premier ordre qui tente de préserver la forme du raster d'origine. L'erreur QM tend à être supérieure à celle des autres transformations polynomiales, car la préservation de la forme est plus importante que le meilleur ajustement.
  • POLYORDER1Transformation polynomiale de premier ordre (affine) qui ajuste une surface plane sur les points en entrée.
  • POLYORDER2Transformation polynomiale de second ordre qui ajuste une surface un peu plus complexe sur les points en entrée.
  • POLYORDER3Transformation polynomiale de troisième ordre qui ajuste une surface plus complexe sur les points en entrée.
  • ADJUST Cette méthode combine une transformation polynomiale et utilise une technique d'interpolation de réseau triangulé irrégulier (TIN) pour optimiser à la fois la précision globale et locale.
  • SPLINE Cette méthode transforme les points de contrôle source précisément en points de contrôle cible. Dans la sortie, les points de contrôle sont précis, mais les pixels du raster entre les points de contrôle ne le sont pas.
  • PROJECTIVE Cette méthode déforme les lignes afin qu'elles restent droites. Pour ce faire, les lignes qui étaient parallèles peuvent ne plus l'être. La transformation projective est particulièrement utile pour l'imagerie oblique, les cartes numérisées et certains produits de l'imagerie.
String
resampling_type
(Facultatif)

L'algorithme de rééchantillonnage à utiliser. La valeur par défaut est Plus proche voisin.

  • NEAREST Voisin le plus proche est la méthode de rééchantillonnage la plus rapide : elle minimise les modifications en valeurs de pixel car aucune nouvelle valeur n'est créée. Elle convient aux données discrètes, telles que l'occupation du sol.
  • BILINEAR L'interpolation bilinéaire calcule la valeur de chaque pixel en établissant la moyenne (pondérée pour la distance) des valeurs des 4 pixels voisins. Elle convient aux données continues.
  • CUBIC La convolution cubique calcule la valeur de chaque pixel en ajustant une courbe lissée en fonction des 16 pixels voisins. Elle génère l'image la plus lisse, mais peut créer des valeurs en dehors de la plage identifiée dans les données source. Elle convient aux données continues.
  • MAJORITYLe rééchantillonnage par majorité détermine la valeur de chaque pixel en fonction de la valeur la plus utilisée au sein d'une fenêtre 3 par 3. Convient aux données discrètes.

Les options Plus proche voisin et Majorité sont utilisées pour les données de catégorie, telles que la classification d'utilisation du sol. L'option Plus proche voisin est la valeur par défaut dans la mesure où elle est la plus rapide et ne modifie pas les valeurs de cellules. N'utilisez aucune de ces options pour des données continues, telles que les surfaces d'altitude.

L'option Bilinéaire et l'option Cubique sont les plus appropriées pour les données continues Il est recommandé de ne pas utiliser ces options avec des données de catégorie car les valeurs de cellules peuvent être modifiées.

String

Exemple de code

Exemple 1 d'utilisation de l'outil Transformer (fenêtre Python)

Il s'agit d'un exemple Python d'utilisation de l'outil Warp.

import arcpy
from arcpy import env
env.workspace = "c:/data"
source_pnt = "'234718 3804287';'241037 3804297';'244193 3801275'"
target_pnt = "'246207 3820084';'270620 3824967';'302634 3816147'"
arcpy.Warp_management("raster.img", source_pnt, target_pnt, "warp.tif", "POLYORDER1",\
                          "BILINEAR")
Exemple 2 d'utilisation de l'outil Transformer (script autonome)

Il s'agit d'un exemple de script Python d'utilisation de l'outil Warp.

##====================================
##Warp
##Usage: Warp_management in_raster source_control_points;source_control_points... 
##                       target_control_points;target_control_points... out_raster
##                       {POLYORDER_ZERO | POLYORDER1 | POLYORDER2 | POLYORDER3 | 
##                       ADJUST | SPLINE | PROJECTIVE} {NEAREST | BILINEAR | 
##                       CUBIC | MAJORITY}
    

import arcpy

arcpy.env.workspace = r"C:/Workspace"

##Warp a TIFF raster dataset with control points
##Define source control points
source_pnt = "'234718 3804287';'241037 3804297';'244193 3801275'"

##Define target control points
target_pnt = "'246207 3820084';'270620 3824967';'302634 3816147'"

arcpy.Warp_management("raster.img", source_pnt, target_pnt, "warp.tif", "POLYORDER2",\
                      "BILINEAR")

Informations de licence

  • Basic: Oui
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes