ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • 帮助
  • Sign Out
ArcGIS Desktop

ArcGIS Online

专为贵组织打造的制图平台

ArcGIS Desktop

全面的专业性 GIS

ArcGIS Enterprise

面向企业的 GIS

ArcGIS for Developers

用于构建位置感知应用程序的工具

ArcGIS Solutions

适用于行业的免费模板地图和应用程序

ArcGIS Marketplace

获取适用于组织的应用程序和数据

  • 文档
  • 支持
Esri
  • 登录
user
  • 我的个人资料
  • 登出

ArcMap

  • 主页
  • 入门
  • 地图
  • 分析
  • 管理数据
  • 工具
  • 扩展模块

分类 LAS 地面点

  • 摘要
  • 插图
  • 用法
  • 语法
  • 代码示例
  • 环境
  • 许可信息

摘要

分类航测激光雷达数据中的地面点。

插图

分类 LAS 地面点

用法

  • 仅考虑将类代码值为 0、1 或 2 的 LAS 点的最近返回结果重新分类为地面。如果您的 LAS 文件使用不同的类代码值来表示未分类或地面测量值,则考虑使用更改 LAS 类代码工具对其进行相应的重新分配。分类过程还将忽略分配有重叠或噪点分类标记的点。

  • 如果地面分类仅用于创建特定分辨率的地面栅格表面,可考虑使用含所需栅格分辨率的 DEM 分辨率参数,以创建插值表面所需的分类结果。

  • 当地面中区域的坡度剖面差异很大时,例如相对平坦的区域中含有坡度剖面陡峭的位置,可考虑再次运行地面分类器,并使用激进检测方法和启用重复使用地面选项。应用处理范围或指定面边界,以查看小区域 LAS 数据分类算法的结果。

  • 由于带有桥梁和高速公路入口匝道的位置可能会被错误分类为地面,所以应对这些位置进行检查。

  • LAS 格式支持根据美国摄影测量与遥感协会 (ASPRS) 制定的规范对每个点进行分类。ArcGIS 平台应用为 LAS 文件版本 1.4 指定的分类方案:

    类别值 分类类型

    0

    从不分类

    1

    未分配

    2

    地面

    3

    低植被

    4

    中等植被

    5

    高植被

    6

    建筑物

    7

    低噪音

    8

    模型关键点/保留

    9

    水体

    10

    铁路

    11

    路面

    12

    重叠/保留

    13

    钢丝护网

    14

    导线

    15

    输电塔

    16

    线 - 连接器

    17

    桥板

    18

    高噪音

    19 – 63

    为 ASPRS 定义保留(LAS 1.1 至 1.3 最高支持类代码 31)

    32 – 255

    可由用户定义(仅 LAS 1.0 和 1.4 的特定版本支持)

    注:

    尽管 LAS 1.4 新引入的大部分类代码分配先前已被指定为“保留”,但类代码 8 和 12 已从“模型关键和重叠”更改为“保留”。

语法

ClassifyLasGround_3d (in_las_dataset, method, {reuse_ground}, {dem_resolution}, {compute_stats}, {extent}, boundary, {process_entire_files})
参数说明数据类型
in_las_dataset

待处理的 LAS 数据集。仅评估类代码值为 0、1 或 2 的 LAS 点的最近返回结果。

LAS Dataset Layer
method

用于检测地面点的方法

  • STANDARD —该方法对坡度变化具有容差,因此可以捕获到使用保守的传统方法无法捕获到的地面地形上的平缓波动,但是该方法无法捕获到通过激进方法捕获到的坡度起伏较大的地貌波动。此方法为默认方法。
  • CONSERVATIVE — 与其他方法相比,该方法对地面坡度的变化施加了更为严格的限制,因此该方法可将地面与草地和灌木丛等低地植被区分开来。该方法最适合最小曲率的地形。
  • AGGRESSIVE —对 STANDARD 方法容易忽略的山脊和山顶等地貌起伏较大的地面区域,此方法可检测到这些内容。该方法最好在 reuse_ground 参数设置为 REUSE_GROUND 的情况下用于该工具的第二个过程。该方法不宜用于城市区域或地势平坦的乡村区域,因为可能会将地势较高的对象(例如,发电塔、植被和建筑物局部)错误分类为地面。
String
reuse_ground
(可选)

指定现有地面点是否应重新分类或重新使用。

  • RECLASSIFY_GROUND — 现有地面点将会重新分类。将会为不属于地面的点重新分配类代码值 1,表示未分类的点。这是默认设置。
  • REUSE_GROUND — 现有地面点不经详查即可接受,且可帮助确定未分类的点。
Boolean
dem_resolution
(可选)

指定距离后,将仅评估分类为地面的点子集,这加快了分类的过程。需要更迅速地生成 DEM 表面时可考虑使用该方法。最小距离为 0.3 米,但指定距离必须至少为激光雷达数据平均点间距的 1.5 倍,否则该过程将无法生效。

Linear Unit
compute_stats
(可选)

指定是否应计算 LAS 数据集引用的 LAS 文件的统计数据。统计数据的存在允许 LAS 数据集图层使用过滤和符号系统选项,以便仅显示 LAS 文件中存在的 LAS 属性值。

  • COMPUTE_STATS —将计算统计数据。
  • NO_COMPUTE_STATS —不计算统计数据。这是默认设置。
Boolean
extent
(可选)

指定将由此工具进行评估的数据范围。

Extent
boundary

定义将由此工具进行处理的感兴趣区的面要素。

Feature Layer
process_entire_files
(可选)

指定处理范围的应用方式。

  • PROCESS_EXTENT —仅处理与感兴趣区相交的 LAS 点。这是默认设置。
  • PROCESS_ENTIRE_FILES —如果 LAS 文件的任何部分与感兴趣区相交,则该 LAS 文件中的所有点(包括感兴趣区以外的点)都会得到处理。
Boolean

派生输出

名称说明数据类型
out_las_dataset

已修改的 LAS 数据集。

LAS 数据集图层

代码示例

ClassifyLasGround 示例 1(Python 窗口)

下面的示例演示了如何在 Python 窗口中使用此工具。

arcpy.env.workspace = 'C:/data'
arcpy.ClassifyLasGround_3d('metro.lasd', 'CONSERVATIVE', 
                           boundary='study_area.shp', 
                           process_entire_files='PROCESS_ENTIRE_FILES')
ClassifyLasGround 示例 2(独立脚本)

下面的示例演示了如何在独立 Python 脚本中使用此工具。

'''****************************************************************************
Name:        Classify Ground & Vegetation in Forest Environment
Description: Classify points representing vegetation with LAS class code values
             of 3, 4, and 5. The code is designed for use as a script tool.
****************************************************************************'''
# Import system modules
import arcpy

# Set Local Variables
inLas = arcpy.GetParameterAsText(0)
recursion = arcpy.GetParameterAsText(1)
lasd = arcpy.GetParameterAsText(2)

try:
    arcpy.CheckOutExtension('3D')
    # Execute CreateLasDataset
    arcpy.management.CreateLasDataset(inLas, lasd, folder_recursion=recursion)
    # Make an initial pass of ground classifier
    arcpy.ddd.ClassifyLasGround(lasd, method="Conservative")
    # Make a secondary pass to capture ridges
    arcpy.ddd.ClassifyLasGround(lasd, method="Aggressive", 
                                reuse_ground="REUSE_GROUND")
    # Classify vegetation
    arcpy.ddd.ClassifyLasByHeight(lasd, ground_source='GROUND', 
                                  height_classification=[[3, 5], 
                                                         [4, 17], 
                                                         [5, 120]], 
                                  noise='HIGH_NOISE', compute_stats="COMPUTE_STATS")
    arcpy.CheckInExtension('3D')

except arcpy.ExecuteError:
    print(arcpy.GetMessages())

环境

  • 当前工作空间
  • 临时工作空间
  • 范围

许可信息

  • ArcGIS Desktop Basic: 需要 3D Analyst
  • ArcGIS Desktop Standard: 需要 3D Analyst
  • ArcGIS Desktop Advanced: 需要 3D Analyst

相关主题

  • 数据管理工具集概述
  • 有关表面的基础知识
  • 表面格式

ArcGIS Desktop

  • 主页
  • 文档
  • 支持

ArcGIS 平台

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

  • 关于我们
  • 招贤纳士
  • Esri 博客
  • 用户大会
  • 开发者峰会
Esri
分享您的想法。
Copyright © 2019 Esri. | 隐私政策 | 法律声明