Localiser les points aberrants (3D Analyst)

Niveau de licence :BasicStandardAdvanced

Récapitulatif

Identifie les mesures d'altitude anormales de jeux de données de MNT, TIN ou LAS dépassant une plage définie de valeurs d'altitude ou dont les pentes sont incohérentes avec la surface environnante.

Utilisation

Syntaxe

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})
ParamètreExplicationType de données
in_surface

Jeu de données de MNT, TIN ou LAS analysé.

LAS Dataset Layer; Terrain Layer; TIN Layer
out_feature_class

Classe d'entités en sortie.

Feature Class
apply_hard_limit
(Facultatif)

Détermine s'il faut utiliser le Z minimal absolu et le Z maximal absolu pour détecter les points aberrants.

  • APPLY_HARD_LIMITLe Z minimal absolu et le Z maximal absolu sont utilisés pour détecter les points aberrants.
  • NO_APPLY_HARD_LIMITLe Z minimal absolu et le Z maximal absolu ne sont pas utilisés pour détecter les points aberrants. Il s'agit de l'option par défaut.
Boolean
absolute_z_min
(Facultatif)

Si les limites strictes sont appliquées, les points ayant une altitude inférieure à cette valeur sont considérés comme des points aberrants. La valeur par défaut est 0.

Double
absolute_z_max
(Facultatif)

Si les limites strictes sont appliquées, les points ayant une altitude supérieure à cette valeur sont considérés comme des points aberrants. La valeur par défaut est 0.

Double
apply_comparison_filter
(Facultatif)

Le filtre de comparaison présente trois paramètres pour déterminer des points aberrants (z_tolerance, slope_tolerance et exceed_tolerance_ratio).

  • APPLY_COMPARISON_FILTERUtilisez les trois paramètres de comparaison (Tolérance Z, Tolérance des pentes et Taux de tolérance dépassé) pour l'évaluation des points. Il s'agit de l'option par défaut.
  • NO_APPLY_COMPARISON_FILTERLes trois paramètres de comparaison (Tolérance Z, Tolérance des pentes et Taux de tolérance dépassé) ne sont pas utilisés pour l'évaluation des points.
Boolean
z_tolerance
(Facultatif)

Permet de comparer les valeurs Z des points voisins, si le filtre de comparaison est appliqué. La valeur par défaut est 0.

Double
slope_tolerance
(Facultatif)

Seuil de variance de pente entre des points consécutifs qui permet d'identifier des points aberrants. La pente est exprimée en pourcentage, la valeur par défaut étant 150 %.

Double
exceed_tolerance_ratio
(Facultatif)

Définit les critères permettant de déterminer chaque point aberrant en tant que fonction du quotient des points dans son voisinage naturel devant dépasser les filtres de comparaison spécifiés. Par exemple, la valeur par défaut 0,5 signifie qu'au moins la moitié des points environnant le point désigné doivent dépasser les filtres de comparaison pour que le point désigné soit considéré comme un point aberrant. La valeur 0,7 signifie qu'au moins 70 pour cent des points voisins doivent dépasser les tolérances.

Double
outlier_cap
(Facultatif)

Nombre maximal de points aberrants pouvant être écrits dans la sortie. Une fois cette valeur atteinte, aucun autre point aberrant n'est recherché. La valeur par défaut est 2,500.

Long

Exemple de code

1er exemple d'utilisation de l'outil LocateOutliers (fenêtre Python)

L'exemple suivant illustre l'utilisation de cet outil dans la fenêtre 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)
2e exemple d'utilisation de l'outil LocateOutliers (script autonome)

L'exemple suivant illustre l'utilisation de cet outil dans un script Python autonome :

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

Environnements

Thèmes connexes

Informations de licence

ArcGIS for Desktop Basic: Requis 3D Analyst
ArcGIS for Desktop Standard: Requis 3D Analyst
ArcGIS for Desktop Advanced: Requis 3D Analyst
6/5/2014