标注 | 说明 | 数据类型 |
输入 LAS 数据集 | 将要处理的 LAS 数据集。 | LAS Dataset Layer |
输出栅格 | 输出栅格的位置和名称。 将栅格数据集存储到地理数据库或者诸如 Esri Grid 等的文件夹中时,请勿向栅格数据集的名称添加文件扩展名。 在将栅格存储到文件夹中时,可提供文件扩展名以定义栅格的格式,例如 .tif(生成 GeoTIFF)或 .img(生成 ERDAS IMAGINE 格式文件)。 如果栅格存储为 .tif 文件或存储在地理数据库中,则可以使用地理处理环境设置指定栅格压缩类型和质量。 | Raster Dataset |
值字段 (可选) | 指定将用于生成栅格输出的激光雷达数据。
| String |
插值类型 (可选) | 插值类型将用于确定输出栅格的像元值。 可以选择分箱或三角剖分作为插值类型。 每种类型都有其独特的像元值分配选项。 当将插值类型设置为图格化时,将逐个像元地评估点云。 包含点的像元值由像元内的点决定,而不含点的像元可以插值或标记为 NoData。 图格化类型的可用选项包括:
当插值类型设置为三角测量时,像元值是通过从 LAS 数据集的点和表面约束构建内存中的 TIN 表面来推导的。 内存中的 TIN 用于为输出栅格插值像元值。 三角测量类型的可用选项包括:
当点稀疏化类型设置为窗口大小时,点在插值输出栅格之前会通过将数据划分为方形格网进行子采样。 格网的大小基于提供的分辨率值。 该值的单位将基于 LAS 数据集的横坐标系统的线性单位。 分辨率值是将用于在点稀疏化类型设置为窗口大小时细分数据的二维格网的每一边的长度。 此值的单位基于数据坐标系的线性单位。 | Interpolate |
输出数据类型 (可选) | 指定将存储在输出栅格中的数值的类型。
| String |
采样类型 (可选) | 指定将如何解释采样值参数以定义输出栅格的像元大小。
| String |
采样值 (可选) | 与采样类型参数结合使用以定义输出栅格像元大小的值。 | Double |
Z 因子 (可选) | Z 值将乘上的系数。 此值通常用于转换 z 线性单位来匹配 x,y 线性单位。 默认值为 1,此时高程值保持不变。 如果输入表面的空间参考具有已指定线性单位的 z 基准,则此参数不可用。 | Double |
摘要
使用存储在 LAS 数据集所引用的激光雷达点中的高程、强度或 RGB 值创建栅格。
插图
使用情况
您可通过在图层过滤器设置中选择分类代码、分类标记和返回值的任意组合来使 LAS 数据集图层对所显示和处理的 LAS 点进行限制。 过滤器的定义可在图层属性对话框中或在创建 LAS 数据集图层工具中实现。
-
LAS 数据集图层还可用于控制表面约束要素的强化,而该要素可由 LAS 数据集引用。 当将 LAS 数据集作为三角化网格面显示或处理时,将强制执行约束。
-
当导出较大的栅格时,如果可以通过整型数据表示 z 值的精度要求,则可以将输出数据类型参数值指定为整型以节省磁盘空间。
建议在输入 LAS 数据集定义中包括作为裁剪限制的研究区域边界。 其一是为了防止在测量的真实数据范围外出现插值。 另外,如果数据区域未正确定义,使用自然邻域选项可能会显著影响性能。
注:
选择分箱作为插值类型时,仅支持剪裁、擦除和替换约束; 不支持隔断线和锚点。 而三角剖分插值类型则支持所有约束,但运行时间较长。
参数
arcpy.conversion.LasDatasetToRaster(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 等的文件夹中时,请勿向栅格数据集的名称添加文件扩展名。 在将栅格存储到文件夹中时,可提供文件扩展名以定义栅格的格式,例如 .tif(生成 GeoTIFF)或 .img(生成 ERDAS IMAGINE 格式文件)。 如果栅格存储为 .tif 文件或存储在地理数据库中,则可以使用地理处理环境设置指定栅格压缩类型和质量。 | Raster Dataset |
value_field (可选) |
指定将用于生成栅格输出的激光雷达数据。
| String |
interpolation_type "BINNING {cell_assignment_type} {void_fill_method}" or "TRIANGULATION {interpolation_method} {point_thinning_type} {point_selection_method} {resolution}" (可选) | 插值类型将用于确定输出栅格的像元值。 可以选择分箱或三角剖分作为插值类型。 每种类型都有其独特的像元值分配选项。 当将插值类型设置为图格化时,将逐个像元地评估点云。 包含点的像元值由像元内的点决定,而不含点的像元可以插值或标记为 NoData。 图格化类型的可用选项包括:
当插值类型设置为三角测量时,像元值是通过从 LAS 数据集的点和表面约束构建内存中的 TIN 表面来推导的。 内存中的 TIN 用于为输出栅格插值像元值。 三角测量类型的可用选项包括:
当点稀疏化类型设置为窗口大小时,点在插值输出栅格之前会通过将数据划分为方形格网进行子采样。 格网的大小基于提供的分辨率值。 该值的单位将基于 LAS 数据集的横坐标系统的线性单位。 分辨率值是将用于在点稀疏化类型设置为窗口大小时细分数据的二维格网的每一边的长度。 此值的单位基于数据坐标系的线性单位。 | Interpolate |
data_type (可选) | 指定将存储在输出栅格中的数值的类型。
| String |
sampling_type (可选) | 指定将如何解释采样值参数以定义输出栅格的像元大小。
| String |
sampling_value (可选) | 与采样类型参数结合使用以定义输出栅格像元大小的值。 | Double |
z_factor (可选) | Z 值将乘上的系数。 此值通常用于转换 z 线性单位来匹配 x,y 线性单位。 默认值为 1,此时高程值保持不变。 如果输入表面的空间参考具有已指定线性单位的 z 基准,则此参数不可用。 | Double |
代码示例
下面的示例演示了如何在 Python 窗口中使用此工具。
arcpy.env.workspace = 'C:/data'
arcpy.ddd.LasDatasetToRaster('baltimore.lasd', 'baltimore.tif', 'INTENSITY',
'TRIANGULATION LINEAR WINDOW_SIZE 10', 'FLOAT',
'CELLSIZE', 10, 3.28)
下面的示例演示了如何在独立 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
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)
# 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)
print(arcpy.GetMessages())
except arcpy.ExecuteError:
print(arcpy.GetMessages())
except Exception as err:
print(err.args[0])
finally:
arcpy.management.Delete(lasLyr)
许可信息
- Basic: 需要 Spatial Analyst 或 3D Analyst
- Standard: 是
- Advanced: 是