Ausreißer identifizieren (ArcGIS 3D Analyst)

Lizenzstufe:BasicStandardAdvanced

Zusammenfassung

Identifiziert abweichende Höhenmessungen aus Terrain-, TIN- oder LAS-Datasets, die einen definierten Bereich von Höhenwerten überschreiten oder Neigungseigenschaften aufweisen, die mit der umgebenden Oberfläche inkonsistent sind.

Verwendung

Syntax

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})
ParameterErläuterungDatentyp
in_surface

Das zu analysierende Terrain-, TIN- oder LAS-Dataset.

LAS Dataset Layer; Terrain Layer; TIN Layer
out_feature_class

Die Ausgabe-Feature-Class.

Feature Class
apply_hard_limit
(optional)

Legt die Verwendung eines absoluten Z-Minimums und -Maximums bei der Suche nach Ausreißern fest.

  • APPLY_HARD_LIMITVerwenden Sie das absolute Z-Minimum und Z-Maximum, um nach Ausreißern zu suchen.
  • NO_APPLY_HARD_LIMITVerwenden Sie nicht das absolute Z-Minimum und Z-Maximum, um nach Ausreißern zu suchen. Dies ist die Standardeinstellung.
Boolean
absolute_z_min
(optional)

Wenn harte Grenzen angewendet werden, wird jeder Punkt mit einer Höhe unter diesem Wert als Ausreißer angesehen. Die Standardeinstellung ist 0.

Double
absolute_z_max
(optional)

Wenn harte Grenzen angewendet werden, wird jeder Punkt mit einer Höhe über diesem Wert als Ausreißer angesehen. Die Standardeinstellung ist 0.

Double
apply_comparison_filter
(optional)

Der Vergleichsfilter besteht aus drei Parametern zum Bestimmen von Ausreißern (z_tolerance, slope_tolerance und exceed_tolerance_ratio).

  • APPLY_COMPARISON_FILTERNutzen Sie die drei Vergleichsparameter (Z-Toleranz, Neigungstoleranz und Toleranzverhältnis für die Überschreitung) bei der Bewertung von Punkten. Dies ist die Standardeinstellung.
  • NO_APPLY_COMPARISON_FILTERVerwenden Sie nicht die drei Vergleichsparameter (Z-Toleranz, Neigungstoleranz und Toleranzverhältnis für die Überschreitung) zum Bewerten der Punkte.
Boolean
z_tolerance
(optional)

Wird verwendet, um die Z-Werte benachbarter Punkte zu vergleichen, wenn der Vergleichsfilter angewendet wird. Die Standardeinstellung ist 0.

Double
slope_tolerance
(optional)

Der Schwellenwert der Neigungsvarianz zwischen aufeinander folgenden Punkten, mit dem Ausreißerpunkte identifiziert werden. Die Neigung wird in Prozent ausgedrückt. Der Standardwert ist 150.

Double
exceed_tolerance_ratio
(optional)

Definiert die Kriterien für die Festlegung der einzelnen Ausreißerpunkte als Funktion des Punktverhältnisses in der natürlichen Nachbarschaft, das die angegebenen Vergleichsfilter überschreiten muss. Der Standardwert 0,5 bedeutet beispielsweise, dass mindestens die Hälfte der Punkte, die den Abfragepunkt umgeben, die Vergleichsfilter für den als Ausreißer zu kennzeichnenden Abfragepunkt überschreiten müssen. Der Wert 0,7 bedeutet, dass mindestens 70 Prozent der benachbarten Punkte die Toleranzen überschreiten müssen.

Double
outlier_cap
(optional)

Die maximale Anzahl von Ausreißerpunkten, die in die Ausgabe geschrieben werden können. Sobald dieser Wert erreicht ist, werden keine weiteren Ausreißer gesucht. Die Standardeinstellung ist 2.500.

Long

Codebeispiel

LocateOutliers – Beispiel 1 (Python-Fenster)

Anhand des folgenden Beispiels wird die Verwendung dieses Werkzeugs im Python-Fenster veranschaulicht:

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 - Beispiel 2 (eigenständiges Skript)

Im folgenden Beispiel wird die Verwendung dieses Werkzeugs in einem eigenständigen Python-Skript veranschaulicht:

'''**********************************************************************
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)

Umgebung

Verwandte Themen

Lizenzierungsinformationen

ArcGIS for Desktop Basic: Erfordert 3D Analyst
ArcGIS for Desktop Standard: Erfordert 3D Analyst
ArcGIS for Desktop Advanced: Erfordert 3D Analyst
9/11/2013