Décalage à droite bit à bit (Image Analyst)

Disponible avec une licence Spatial Analyst.

Disponible avec une licence Image Analyst.

Synthèse

Effectue une opération de décalage à droite bit à bit sur les valeurs binaires de deux rasters en entrée.

Pour en savoir plus sur le fonctionnement des outils de mathématiques bit à bit

Illustration

Illustration de l’outil Décalage à droite bit à bit
OutRas = BitwiseRightShift(InRas1, 1)

Utilisation

  • Deux entrées sont nécessaires pour cette opération bit à bit.

  • L'ordre des entrées est important pour cet outil.

  • Si une entrée présente une virgule flottante, les valeurs sont converties en entiers par troncation avant l'opération bit à bit.

  • Dans les opérations bit à bit, les conditions suivantes s’appliquent :

    • Les valeurs binaires sont stockées dans deux compléments.
    • Les outils fonctionnent sur les nombres entiers 32 bits.
    • La position de bit la plus à gauche est réservée au signe (positif ou négatif) de la valeur. Si le nombre entier est positif, la position du bit est 0 ; s’il est négatif, la position du bit est 1.

  • L'opération Décalage à droite bit à bit ne fait aucun retour à la ligne automatique de bits. Le bit le plus à droite est supprimé.

  • Si les deux entrées correspondent à des rasters monocanaux ou que l’une des entrées est une constante, la sortie correspond à un raster monocanal.

  • Si les deux entrées sont des rasters multicanaux, l’outil effectue l’opération sur chaque canal d’une entrée et la sortie est un raster multicanal. Le nombre de canaux de chaque entrée multicanale est identique.

  • Si l’une des entrées correspond à un raster multicanal et que l’autre entrée est une constante, l’outil effectue l’opération à l’aide de la valeur constante de chaque canal de l’entrée multicanal et la sortie est un raster multicanal.

  • Dans ArcPy, si les deux entrées sont des rasters multidimensionnels comportant le même nombre de variables, l’outil effectue l’opération pour toutes les tranches dotées de la même valeur de dimension et la sortie est un raster multidimensionnel. Les variables des entrées doivent avoir les mêmes dimensions ou une dimension commune.

    Si les deux entrées possèdent une variable mais ont des noms différents, définissez l’environnement de géotraitement matchMultidimensionalVariable sur False pour effectuer l’opération.

    Dans ArcPy, si l’une des entrées correspond à un raster multidimensionnel et que l’autre entrée est une constante, l’outil effectue l’opération pour toutes les tranches de toutes les variables à l’aide de la valeur constante et la sortie est un raster multidimensionnel.

Paramètres

ÉtiquetteExplicationType de données
Raster ou valeur constante 1 en entrée

Entrée sur laquelle exécuter le décalage.

Un nombre peut être utilisé en entrée pour ce paramètre, à condition qu'un raster soit spécifié pour l'autre paramètre. Pour spécifier un nombre pour les deux entrées, la taille de cellule et l’étendue doivent d’abord être définies dans l’environnement.

Raster Layer; Constant
Raster ou valeur constante 2 en entrée

Entrée définissant le nombre de positions duquel déplacer les bits.

Un nombre peut être utilisé en entrée pour ce paramètre, à condition qu'un raster soit spécifié pour l'autre paramètre. Pour spécifier un nombre pour les deux entrées, la taille de cellule et l’étendue doivent d’abord être définies dans l’environnement.

Raster Layer; Constant

Valeur renvoyée

ÉtiquetteExplicationType de données
Raster en sortie

Raster en sortie.

Valeurs de cellule correspondant au résultat de l'opération Décalage à droite bit à bit sur les entrées.

Raster

BitwiseRightShift(in_raster_or_constant1, in_raster_or_constant2)
NomExplicationType de données
in_raster_or_constant1

Entrée sur laquelle exécuter le décalage.

Un nombre peut être utilisé en entrée pour ce paramètre, à condition qu'un raster soit spécifié pour l'autre paramètre. Pour spécifier un nombre pour les deux entrées, la taille de cellule et l’étendue doivent d’abord être définies dans l’environnement.

Raster Layer; Constant
in_raster_or_constant2

Entrée définissant le nombre de positions duquel déplacer les bits.

Un nombre peut être utilisé en entrée pour ce paramètre, à condition qu'un raster soit spécifié pour l'autre paramètre. Pour spécifier un nombre pour les deux entrées, la taille de cellule et l’étendue doivent d’abord être définies dans l’environnement.

Raster Layer; Constant

Valeur renvoyée

NomExplicationType de données
out_raster

Raster en sortie.

Valeurs de cellule correspondant au résultat de l'opération Décalage à droite bit à bit sur les entrées.

Raster

Exemple de code

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

Cet exemple décale vers la droite les valeurs de la première entrée par le nombre de bits défini par la seconde entrée, et génère le résultat sous la forme d'un raster Grid.

import arcpy
from arcpy import env
from arcpy.ia import *
env.workspace = "C:/iapyexamples/data"
outBitwiseRShift = BitwiseRightShift("degs", "negs")
outBitwiseRShift.save("C:/iapyexamples/output/outbitrs")
Exemple 2 d'utilisation de l'outil BitwiseRightShift (script autonome)

Cet exemple décale vers la droite les valeurs de la première entrée par le nombre de bits défini par la seconde entrée, et génère le résultat sous la forme d'un raster IMG.

# Name: BitwiseRightShift_Ex_02.py
# Description: Performs a Bitwise Right Shift operation on the binary
#              values of two input rasters
# Requirements: Image Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.ia import *

# Set environment settings
env.workspace = "C:/iapyexamples/data"

# Set local variables
inRaster1 = "degs"
inRaster2 = "negs"

# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")

# Execute BitwiseRightShift
outBitwiseRShift = BitwiseRightShift(inRaster1, inRaster2)

# Save the output 
outBitwiseRShift.save("C:/iapyexamples/output/outbitrshift.img")

Informations de licence

  • Basic: Nécessite Image Analyst ou Spatial Analyst
  • Standard: Nécessite Image Analyst ou Spatial Analyst
  • Advanced: Nécessite Image Analyst ou Spatial Analyst

Rubriques connexes