Beschriftung | Erläuterung | Datentyp |
Eingabeoberfläche | Das zu analysierende Terrain-, TIN- oder LAS-Dataset. | LAS Dataset Layer; Terrain Layer; TIN Layer |
Ausgabe-Feature-Class | Die Feature-Class, die erstellt wird. | Feature Class |
Harte Grenzen anwenden (optional) | Legt die Verwendung eines absoluten Z-Minimums und -Maximums bei der Suche nach Ausreißern fest.
| Boolean |
Absolutes Z-Minimum (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 |
Absolutes Z-Maximum (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 |
Vergleichsfilter anwenden (optional) | Der Vergleichsfilter besteht aus drei Parametern zum Bestimmen von Ausreißern: Z-Toleranz, Neigungstoleranz und Toleranzverhältnis für die Überschreitung.
| Boolean |
Z-Toleranz (optional) | Vergleicht Z-Werte benachbarter Punkte, wenn der Vergleichsfilter angewendet wird. Die Standardeinstellung ist 0. | Double |
Neigungstoleranz (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 |
Toleranzverhältnis für die Überschreitung (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 betrachtenden Abfragepunkt überschreiten müssen. Der Wert 0,7 bedeutet, dass mindestens 70 Prozent der benachbarten Punkte die Toleranzen überschreiten müssen. | Double |
Ausreißerobergrenze (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 |
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
-
Die beiden Optionen Harte Grenzen anwenden und Vergleichsfilter anwenden können für die Ausreißererkennung angewendet werden. Wenn beide Optionen aktiviert sind, wird der feste Grenzwert zuerst angewendet.
Die Option Harte Grenzen anwenden behandelt jeden Punkt mit einem Höhenwert unter dem Wert für Absolutes Z-Minimum und über dem Wert für Absolutes Z-Maximum als Ausreißer. Verwenden Sie die Option, wenn der Bereich gültiger Höhenwerte für die von der Oberfläche dargestellte Region bekannt ist.
Verwenden Sie die Option Vergleichsfilter anwenden, um die Datenpunkte zu ermitteln, die einen Höhen- oder Neigungsunterschied relativ zu benachbarten Messungen überschreiten. Jeder Messwert auf der Oberfläche wird von seinen natürlichen Nachbarn auf Abweichungen in Höhe und Neigung geprüft. Die Option Toleranzverhältnis für die Überschreitung wird verwendet, um die Anzahl der angrenzenden Messwerte aus der Nachbarschaft des Abfragepunktes zu bestimmen, die von der Neigungs- und Höhentoleranz überschritten werden müssen, damit der Punkt als Ausreißer betrachtet wird.
- Wenn bei einem bestimmten Punkt mit X Knoten, die mit Dreieckskanten verbunden sind, die Neigung vom Punkt zu einem verbundenen Punkt größer als die Neigungstoleranz in m Punkten ist (m ist gleich n mal das Toleranzverhältnis für die Überschreitung), dann wird der Punkt als Ausreißer betrachtet.
Der Vergleichsfilter eignet sich am besten für Punktdaten von unbebauten Erdoberflächen. Er sollte nicht unter Verwendung von Vegetation und Gebäuden für ein Dataset ausgeführt werden, da beim Vergleich meist viele dieser Features als Ausreißer behandelt werden. Wenn Sie diese Methode zur Erkennung von Ausreißern bei einem LAS-Dataset verwenden, filtern Sie nach klassifizierten Bodenpunkten. Alternativ können Sie das Werkzeug Rauschen aus LAS klassifizieren verwenden, um in LAS-Datasets Rauschpunkte zu identifizieren.
Die Ausgabepunkte werden mit einem Ganzzahlfeld mit der Bezeichnung "REASON" zugeordnet, dessen Werte die aus der Einbeziehung der Punktmessung resultierenden Kriterien für die Ausreißeridentifizierung ermitteln.
- 0 – Harte Grenze
- 1 – Harte Grenze und Vergleichsfilter
- 2 – Vergleichsfilter
Um die Ausreißerpunkte aus einem Terrain-Dataset zu entfernen, können Sie das Werkzeug Terrain-Punkte löschen mit den im Parameter Interessenbereich angegebenen Ausreißerpunkten verwenden.
Parameter
arcpy.ddd.LocateOutliers(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})
Name | Erläuterung | Datentyp |
in_surface | Das zu analysierende Terrain-, TIN- oder LAS-Dataset. | LAS Dataset Layer; Terrain Layer; TIN Layer |
out_feature_class | Die Feature-Class, die erstellt wird. | Feature Class |
apply_hard_limit (optional) | Legt die Verwendung eines absoluten Z-Minimums und -Maximums bei der Suche nach Ausreißern fest.
| 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.
| Boolean |
z_tolerance (optional) | Vergleicht Z-Werte benachbarter Punkte, 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 betrachtenden 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
Im folgenden Beispiel wird die Verwendung dieses Werkzeugs im Python-Fenster veranschaulicht.
arcpy.env.workspace = "C:/data"
arcpy.ddd.LocateOutliers("tin", "outliers.shp", "NO_APPLY_HARD_LIMIT", 0, 0,
"APPLY_COMPARISON_FILTER", 0, 150, 0.5, 2500)
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
# Set Local Variables
arcpy.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)