Bitwise Right Shift (Image Analyst)

Spatial Analyst のライセンスで利用可能。

Image Analyst ライセンスで利用できます。

サマリー

2 つの入力ラスターのバイナリ値に対してビット単位の右シフト演算を行います。

ビット演算ツールの詳細

Bitwise Right Shift の図
OutRas = BitwiseRightShift(InRas1, 1)

使用法

  • このビット単位の演算を実行するには、2 つの入力値が必要です。

  • このツールでは、入力の順番が結果に影響します。

  • 入力値が浮動小数点数値の場合は、ビット単位の演算を実行する前に値を切り捨てて整数値に変換されます。

  • ビット単位の計算では、以下が当てはまります。

    • バイナリ値は 2 の補数として格納されます。
    • ツールは 32 ビット整数を対象とします。
    • 最左端のビット位置は値の符号 (正または負) のために予約されています。 整数が正の値である場合、そのビット位置の値は 0 で、負の値である場合、そのビット位置の値は 1 です。

  • Bitwise Right Shift 演算は、ビットをラッピングしません。 右端のビットは切り落とされます。

  • 両方の入力がシングルバンド ラスターである場合、またはいずれかの入力が定数である場合、出力はシングルバンド ラスターになります。

  • 両方の入力がマルチバンド ラスターである場合、ツールは 1 つの入力の各バンドに対して演算を実行し、出力はマルチバンド ラスターになります。 各マルチバンド入力のバンド数は同一である必要があります。

  • 入力のうちの 1 つがマルチバンド ラスターであり、もう 1 つが定数である場合、ツールはマルチバンド入力に含まれるバンドごとに定数値を使用して演算を実行し、出力はマルチバンド ラスターになります。

  • 両方の入力が、同数の変数を含む「多次元ラスター データ」の場合、このツールは、ディメンション値が同じすべてのスライスについて演算を実行します。 出力は CRF 形式の多次元ラスターになります。 このツールで処理を行うには、一般的なディメンションと一般的なディメンション値が入力の変数に少なくとも 1 つ必要です。これらがないとエラーが発生します。

    両方の入力に 1 つの変数が含まれているが、名前が異なっている場合は、このツールを実行する前に、「多次元変数の照合」ジオプロセシング環境をオフにします (Python で arcpy.env.matchMultidimensionalVariable = False を設定します)。

    入力のいずれかが多次元ラスターで、それ以外の入力が定数である場合、このツールは、すべての変数のすべてのスライスについて、その定数値を使用して演算を実行し、出力は多次元ラスターになります。

パラメーター

ラベル説明データ タイプ
入力ラスター、または定数値 1

シフト処理の実行対象となる入力。

他のパラメーターでラスターが指定されている場合、数値をこのパラメーターの入力として使用できます。 両方の入力で数値を指定するには、セル サイズと範囲を最初に環境で設定しておく必要があります。

Raster Layer; Constant
入力ラスター、または定数値 2

ビットのシフト回数を定義する入力。

他のパラメーターでラスターが指定されている場合、数値をこのパラメーターの入力として使用できます。 両方の入力で数値を指定するには、セル サイズと範囲を最初に環境で設定しておく必要があります。

Raster Layer; Constant

戻り値

ラベル説明データ タイプ
出力ラスター

出力ラスター。

セル値は、入力に対する Bitwise Right Shift 演算の結果です。

Raster

BitwiseRightShift(in_raster_or_constant1, in_raster_or_constant2)
名前説明データ タイプ
in_raster_or_constant1

シフト処理の実行対象となる入力。

他のパラメーターでラスターが指定されている場合、数値をこのパラメーターの入力として使用できます。 両方の入力で数値を指定するには、セル サイズと範囲を最初に環境で設定しておく必要があります。

Raster Layer; Constant
in_raster_or_constant2

ビットのシフト回数を定義する入力。

他のパラメーターでラスターが指定されている場合、数値をこのパラメーターの入力として使用できます。 両方の入力で数値を指定するには、セル サイズと範囲を最初に環境で設定しておく必要があります。

Raster Layer; Constant

戻り値

名前説明データ タイプ
out_raster

出力ラスター。

セル値は、入力に対する Bitwise Right Shift 演算の結果です。

Raster

コードのサンプル

BitwiseRightShift の例 1 (Python ウィンドウ)

この例では、2 つ目の入力で定義されたビット数で最初の入力値を右シフトし、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")
BitwiseRightShift の例 2 (スタンドアロン スクリプト)

この例では、2 つ目の入力で定義されたビット数で最初の入力値を右シフトし、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")

ライセンス情報

  • Basic: 次のものが必要 Image Analyst または Spatial Analyst
  • Standard: 次のものが必要 Image Analyst または Spatial Analyst
  • Advanced: 次のものが必要 Image Analyst または Spatial Analyst

関連トピック