Определить местоположение выбросов (3D Analyst)

Уровень лицензии:BasicStandardAdvanced

Резюме

Выявляет аномальные результаты измерения высоты в terrain, TIN или наборах данных LAS, выходящие за пределы установленного диапазона значений высот или имеющие характеристики уклонов, идущие вразрез с окружающей поверхностью.

Использование

Синтаксис

LocateOutliers_3d (in_surface, out_feature_class, {apply_hard_limit}, {absolute_z_min}, {absolute_z_max}, {apply_comparison_filter}, {z_tolerance}, {slope_tolerance}, {exceed_tolerance_ratio}, {outlier_cap})
ПараметрОбъяснениеТип данных
in_surface

Terrain, TIN или набор данных LAS, которые будут проанализированы.

LAS Dataset Layer; Terrain Layer; TIN Layer
out_feature_class

Выходной класс объектов.

Feature Class
apply_hard_limit
(дополнительно)

Определяет использование абсолютных минимума и максимума Z для поиска выбросов.

  • APPLY_HARD_LIMITИспользовать абсолютные минимум и максимум Z для поиска выбросов.
  • NO_APPLY_HARD_LIMITНе использовать абсолютный минимум и максимум Z для поиска выбросов. Это значение используется по умолчанию.
Boolean
absolute_z_min
(дополнительно)

Если используется жесткое ограничение, любая точка с высотой ниже этого значения, рассматривается как выброс. Значение по умолчанию равно 0.

Double
absolute_z_max
(дополнительно)

Если используется жесткое ограничение, любая точка с высотой выше этого значения рассматривается как выброс. Значение по умолчанию равно 0.

Double
apply_comparison_filter
(дополнительно)

Фильтр сравнения состоит из трех параметров для определения выбросов (z_tolerance, slope_tolerance и exceed_tolerance_ratio).

  • APPLY_COMPARISON_FILTERИспользовать три параметра сравнения (Z допуск, допуск уклона и превышение допустимого отношения) при доступе к точкам. Это значение используется по умолчанию.
  • NO_APPLY_COMPARISON_FILTERНе использовать три параметра сравнения (Z допуск, допуск уклона и превышение допустимого отношения) при доступе к точкам.
Boolean
z_tolerance
(дополнительно)

Используется для сравнения Z значений соседних точек, если включен фильтр. Значение по умолчанию равно 0.

Double
slope_tolerance
(дополнительно)

Пороговое значение колебания уклона между идущими друг за другом точками, которое будет использоваться для определения точек выбросов. Уклон выражается в процентах, значением по умолчанию является 150.

Double
exceed_tolerance_ratio
(дополнительно)

Задает критерии определения каждой точки выброса как функцию соотношения точек в естественной окрестности, значения которых должны превышать заданные фильтры сравнения. Например, число 0.5, используемое по умолчанию, означает, что по крайней мере половина точек, окружающих запрашиваемую точку, должна иметь значения, превышающие фильтры сравнения, только тогда запрашиваемая точка будет помечена как выброс. Число 0.7 означает, что 70 процентов точек должно превышать допуски.

Double
outlier_cap
(дополнительно)

Максимальное количество точек выбросов, которые могут быть записаны в выходные данные. При достижении этого значения поиск других выбросов прекращается. Значение по умолчанию равно 2,500.

Long

Пример кода

Пример LocateOutliers 1 (окно Python)

В следующем примере показано использование этого инструмента в окне Python:

import arcpy
from arcpy import env

arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.LocateOutliers_3d("tin", "outliers.shp", "NO_APPLY_HARD_LIMIT", 0, 0, 
                        "APPLY_COMPARISON_FILTER", 0, 150, 0.5, 2500)
Пример LocateOutliers 2 (отдельный скрипт)

В следующем примере показано использование этого инструмента в автономном скрипте Python:

'''**********************************************************************
Name: Delete Terrain Outliers
Description: Uses Locate Outliers to identify outlier points in 
             a terrain dataset, and eliminates the outliers from the 
             terrain with Delete Terrain Points.
**********************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
from arcpy import env

try:
    arcpy.CheckOutExtension('3D')
    # Set Local Variables
    env.workspace = 'C:/data'
    terrain = 'test.gdb/featuredataset/sample_terrain'
    terrainPt = 'elevation_pts' # name of terrain point data source
    outliers = 'in_memory/outliers'
    # Execute LocateOutliers
    arcpy.ddd.LocateOutliers(terrain, outliers, 'APPLY_HARD_LIMIT', -10, 
                             350, 'APPLY_COMPARISON_FILTER', 1.2, 120, 
                             0.8, 8000)
    # Execute Delete Terrain Points
    arcpy.ddd.DeleteTerrainPoints(terrain, terrainPt, outliers)
    arcpy.CheckInExtension('3D')
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)

Параметры среды

Связанные темы

Информация о лицензировании

ArcGIS for Desktop Basic: Требует 3D Analyst
ArcGIS for Desktop Standard: Требует 3D Analyst
ArcGIS for Desktop Advanced: Требует 3D Analyst
9/10/2013