Raster vers réels (Conversion)
Récapitulatif
Convertit un jeu de données raster en un fichier de valeurs binaires à virgule flottante représentant les données raster.
Utilisation
-
Le jeu de données raster en entrée peut correspondre à tout jeu de données raster valide.
-
Deux sorties sont créées : un fichier de nombres binaires à virgule flottante IEEE, 32 bits, avec une extension .flt et un fichier d'en-tête ASCII avec une extension .hdr. Ces deux fichiers utilisent le même nom de fichier raster de type flottant en sortie.
-
Le fichier ASCII se compose de données d'en-tête contenant un ensemble de mots-clés.
En général le format du fichier se présente ainsi :
NCOLS xxx NROWS xxx XLLCORNER xxx YLLCORNER xxx CELLSIZE xxx NODATA_VALUE xxx BYTEORDER <MSBFIRST | LSBFIRST>
Définitions des mots-clés :
NCOLS et NROWS désignent le nombre de colonnes et de lignes contenues dans le raster défini par le fichier binaire.
XLLCORNER et YLLCORNER désignent les coordonnées du coin inférieur gauche de la cellule inférieure gauche.
L'utilisation de XLLCENTER et de YLLCENTER n'est pas prise en charge par l'outil Raster vers réels.
CELLSIZE désigne la taille de la cellule du raster.
NODATA_VALUE représente la valeur des cellules NoData.
BYTEORDER représente la méthode de stockage des nombres binaires représentés sur plusieurs octets dans le système dans lequel le fichier binaire a été généré. Sur les systèmes basés sur Intel, l'ordre des octets est LSBFIRST, également appelé Little Endian. Sur la plupart des autres architectures (les systèmes UNIX à l'exception d'Alpha, et les anciens ordinateurs Macintosh équipé d'une unité centrale Motorola) l'ordre des octets est MSBFIRST, également appelé Big Endian.
-
La valeur NODATA_VALUE du fichier de sortie est attribuée à toutes les cellules NoData du raster en entrée. Normalement, cette valeur est réservée aux cellules dont la valeur vraie est inconnue.
-
Par défaut, les valeurs NoData du raster en entrée est égale à -9999 dans le fichier de type flottant en sortie. Pour utiliser une autre valeur pour représenter NoData, appliquez la procédure suivante :
- Exécutez l'outil IsNull de l'Extension ArcGIS Spatial Analyst sur le raster d'origine. Vous obtiendrez en sortie un raster de valeurs binaires, où 1 correspond à NoData sur le raster d'origine et 0 à toute autre valeur.
- Exécutez l'outil Con de l'Extension ArcGIS Spatial Analyst, en indiquant le résultat de l'outil IsNull comme la condition à vérifier dans le Raster de condition en entrée, la nouvelle valeur à attribuer aux valeurs NoData pour lesquelles la condition est vraie en entrée, le raster d'origine comme raster faux en entrée, et une Expression de condition de "valeur = 1".
- Convertissez le raster en sortie Con en un fichier binaire à virgule flottante avec l'outil Raster vers réels
- Modifiez la valeur du paramètre NODATA_VALUE dans le fichier d'en-tête ASCII par la valeur obtenue après conversion de la valeur NoData.
-
Cet outil identifie l'origine uniquement par les coordonnées du coin inférieur gauche de la cellule inférieure gauche. L'outil Réels vers raster identifie également l'origine avec le centre de la cellule inférieure gauche.
Syntaxe
Paramètre | Explication | Type de données |
in_raster |
Jeu de données raster en entrée. Le raster peut être de type entier ou à virgule flottante. | Raster Layer |
out_float_file |
Fichier maillé de réels en sortie. Le nom de fichier doit porter une extension .flt. | File |
Exemple de code
Convertit un jeu de données raster en un fichier de valeurs binaires à virgule flottante représentant les données raster.
import arcpy
from arcpy import env
env.workspace = "C:/data"
inRaster = "elevation"
outFloat = "c:/output/elevation.flt"
arcpy.RasterToFloat_conversion("elevation", "c:/output/elevation.flt")
Convertit un jeu de données raster en un fichier de valeurs binaires à virgule flottante représentant les données raster.
# Name: RasterToFloat_Ex_02.py
# Description: Converts a raster dataset to a file of binary floating-point
# values representing raster data.
# Requirements: None
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
inRaster = "elevation"
outFloat = "c:/output/elevation.flt"
# Execute RasterToFloat
arcpy.RasterToFloat_conversion(inRaster, outFloat)