LAS データセット → ラスタ(LAS Dataset to Raster) (変換)

ライセンス レベル:BasicStandardAdvanced

サマリ

LAS データセットが参照する lidar ファイル(*.las)に格納された高さ、強度、あるいは RGB の値を使用してラスタを作成します。

LAS Dataset to Raster

使用法

構文

LasDatasetToRaster_conversion (in_las_dataset, out_raster, {value_field}, {interpolation_type}, {data_type}, {sampling_type}, {sampling_value}, {z_factor})
パラメータ説明データ タイプ
in_las_dataset

入力 LAS データセット。

LAS Dataset Layer
out_raster

出力ラスタの場所と名前。ジオデータベースまたは Esri Grid などのフォルダにラスタ データセットを格納する場合、ラスタ データセットの名前にファイル拡張子は付けません。ラスタをフォルダに格納するときにその形式を定義するためにファイル拡張子を付けることはできます。

  • .bil - Esri BIL
  • .bip - Esri BIP
  • .bsq - Esri BSQ
  • .dat - ENVI DAT
  • .img - ERDAS IMAGINE
  • .png - PNG
  • .tif - TIFF

ラスタを TIFF ファイルとして、またはジオデータベースに格納する場合は、ジオプロセシング環境設定を使用して、そのラスタ圧縮のタイプと品質を指定できます。

Raster Dataset
value_field
(オプション)

ラスタ出力を生成する際に用いられる lidar 情報を指定します。

  • ELEVATIONlidar ファイルから得られる高さがラスタの作成に使用されます。これがデフォルトです。
  • INTENSITYlidar ファイルから得られる強度情報がラスタの作成に使用されます。
  • RGBLidar ポイントに埋め込まれた RGB 値から得られる画像がラスタの作成に使用されます。
String
interpolation_type
"BINNING {cell_assignment_type} {void_fill_method}" or "TRIANGULATION {interpolation_method} {point_thinning_type} {point_selection_method} {resolution}"
(オプション)

ラスタの生成に使用する内挿法。

ラスタ化 - セル値はその範囲内に配置されたポイントによって得られるが、セルによってはその範囲内にポイントが含まれません。この手法では、次のオプションが利用できます。

  • 集約タイプ - 範囲内にポイントを含むセルの値を定義する手法。
    • AVERAGE - セル内の全ポイントの平均値を割り当てます。これがデフォルトです。
    • MINIMUM - セル内にあるポイントの最小値を割り当てます。
    • MINIMUM - セル内にあるポイントの最大値を割り当てます。
    • IDW - 逆距離加重内挿法を使ってセル値を決定します。
    • NEAREST - 再近隣内挿法を使ってセル値を決定します。
  • 穴埋め - 範囲内にポイントが無いセルの値を定義する内挿法。
    • NONE - セルに NoData が割り当てられます。
    • SIMPLE - NoData セルを取り囲むデータ セルの値を平均化して小さな隙間をなくします。
    • LINEAR - 無効な領域まで TIN 化し、その値にリニア内挿法を用いてセル値を決定します。これがデフォルトです。
    • NSTURAL_NEIGHBOR - Natural Neighbor 内挿法を使ってセル値を決定します。

TIN 化 - LAS データセットで TIN 化を意味するところから計測を内挿することによりセル値が得られます。この手法では、次のオプションが利用できます。

  • 内挿方法 - セル値を定義する内挿法
    • LINEAR - TIN 化した LAS データセット サーフェスにリニア内挿法を使用してセル値を決定します。
    • NSTURAL_NEIGHBOR - Natural Neighbor 内挿法を使ってセル値を決定します。
  • ポイント間引きタイプ - LAS データ ポイントが間引かれているかどうかを決定します。
    • NONE - LAS ポイントは間引かれません。これがデフォルトです。
    • WINDOW_SIZE - ウィンドウ サイズによって定義されたエリアの中にある、選択基準を満たすポイントを特定することにより、LAS ポイントは間引かれます。
  • ポイント選択方法 - WINDOW_SIZE による間引きの際に、LAS データ ポイントを間引くのに用いられる選択方法。
    • MAXIMUM - 各ウィンドウ サイズ内で最高値を持つポイントが維持されます。これがデフォルトです。
    • MINIMUM - 各ウィンドウ サイズ内で最小値を持つポイントが維持されます。
    • CLOSEST_TO_MEAN - ウィンドウ サイズ内で全ポイントの平均値に近い値をもつポイントが維持されます。
  • 解像度 - ポイントを間引くために使われるウィンドウ サイズの領域を定義する数値。
String
data_type
(オプション)

出力ラスタのデータ タイプは、以下のキーワードで定義できます。

  • FLOAT出力ラスタは 32 ビット浮動小数点を使用します。-3.402823466e+38 から 3.402823466e+38 の範囲の値がサポートされます。これがデフォルトです。
  • INT出力ラスタは適切な整数のビット深度を使用します。このオプションは Z 値を最も近い整数に丸め、各ラスタ セルの値に整数を書き込みます。
String
sampling_type
(オプション)

出力ラスタの解像度を定義するために、[サンプリング値] の解釈に使用する方法を指定します。

  • OBSERVATIONSLAS データセット範囲の最も長い辺を分割するセル数を定義します。
  • CELLSIZE出力ラスタのセル サイズを定義します。これがデフォルトです。
String
sampling_value
(オプション)

[サンプリング タイプ] と組み合わせて、出力ラスタの解像度を定義するために使用される値を指定します。

Double
z_factor
(オプション)

標高値に乗算する係数。一般的には、Z の距離単位を変換して、XY の距離単位に一致させるために使用されます。デフォルトは 1 です。この場合、標高値は変更されません。

Double

コードのサンプル

LasDatasetToRaster(LasDataset → ラスタ)の例 1(Python ウィンドウ)

次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。

import arcpy
from arcpy import env

arcpy.CheckOutExtension('3D')
env.workspace = 'C:/data'
arcpy.LasDatasetToRaster_3d('baltimore.lasd', 'baltimore.tif', 'INTENSITY', 
                          'TRIANGULATION LINEAR WINDOW_SIZE 10', 'FLOAT', 
                          'CELLSIZE', 10, 3.28)
LasDatasetToRaster(LasDataset → ラスタ)の例 2(スタンドアロン スクリプト)

次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。

'''*********************************************************************
Name: Export Elevation Raster from Ground LAS Measurements
Description: This script demonstrates how to export
             ground measurements from LAS files to a raster using a 
             LAS dataset. This sample is designed to be used as a script
             tool.
*********************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback

try:
    # Set Local Variables
    inLas = arcpy.GetParameterAsText(0)
    recursion = arcpy.GetParameterAsText(1)
    surfCons = arcpy.GetParameterAsText(2)
    classCode = arcpy.GetParameterAsText(3)
    returnValue = arcpy.GetParameterAsText(4)
    spatialRef = arcpy.GetParameterAsText(5)
    lasD = arcpy.GetParameterAsText(6)
    outRaster = arcpy.GetParameterAsText(7)
    cellSize = arcpy.GetParameter(8)
    zFactor = arcpy.GetParameter(9)
    if arcpy.ProductInfo == 'ArcView':
        arcpy.CheckOutExtension('3D')
    # Execute CreateLasDataset
    arcpy.management.CreateLasDataset(inLas, lasD, recursion, surfCons, sr)
    # Execute MakeLasDatasetLayer
    lasLyr = arcpy.CreateUniqueName('Baltimore')
    arcpy.management.MakeLasDatasetLayer(lasD, lasLyr, classCode, returnValue)
    # Execute LasDatasetToRaster
    arcpy.conversion.LasDatasetToRaster(lasLyr, outRaster, 'ELEVATION',
                              'TRIANGULATION LINEAR WINDOW_SIZE 10', 'FLOAT',
                              'CELLSIZE', cellSize, zFactor)
    arcpy.GetMessages()
    
except arcpy.ExecuteError:
    print arcpy.GetMessages()
    
except:
    # Get the traceback object
    tb = sys.exc_info()[2]
    tbinfo = traceback.format_tb(tb)[0]
    # Concatenate error information into message string
    pymsg = 'PYTHON ERRORS:\nTraceback info:\n{0}\nError Info:\n{1}'\
          .format(tbinfo, str(sys.exc_info()[1]))
    msgs = 'ArcPy ERRORS:\n {0}\n'.format(arcpy.GetMessages(2))
    # Return python error messages for script tool or Python Window
    arcpy.AddError(pymsg)
    arcpy.AddError(msgs)
    
finally:
    arcpy.management.Delete(lasLyr)

環境

関連トピック

ライセンス情報

ArcGIS for Desktop Basic: 次のものが必要 Spatial Analyst または 3D Analyst
ArcGIS for Desktop Standard: 次のものが必要 Spatial Analyst または 3D Analyst
ArcGIS for Desktop Advanced: ○
9/14/2013