Résumé
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
-
Les options Apply Hard Limit (Appliquer la limite stricte) et Apply Comparison Filter (Appliquer le filtre de comparaison) peuvent être appliquées pour détecter des points aberrants. Si les deux options sont activées, la limite stricte est appliquée en premier.
L’option Apply Hard Limit (Apply Hard Limit) traite tous les points dont la valeur d’altitude est inférieure à Absolute Z Minimum (Coordonnées Z absolues minimales) et supérieure à Absolute Z Maximum (Coordonnées Z absolues maximales) comme point aberrant. Vous pouvez utiliser cette option lorsque la plage de valeurs correctes d’altitude pour la surface est connue.
Vous pouvez utiliser l’option Apply Comparison Filter (Appliquer le filtre de comparaison) pour localiser les points de données qui dépassent une différence de hauteur ou de pente par rapport aux mesures de leurs voisins. La différence de hauteur et de pente de chaque mesure de la surface est testée avec ses voisins naturels. L’option Exceed Tolerance Ratio (Taux de tolérance dépassé) permet de déterminer le nombre de mesures dans le voisinage du point de requête que la tolérance de pente ou de hauteur doit dépasser afin qu’un point soit considéré comme un point aberrant.
- Pour un point donné ayant un nombre X de nœuds connectés par les arêtes du triangle, si la pente de ce point à un point connecté est supérieure à la valeur Slope Tolerance (Tolérance des pentes) des points m (où m équivaut à n fois la valeur Exceed Tolerance Ratio (Taux de tolérance dépassé)), le point est considéré comme un point aberrant.
Le filtre de comparaison convient mieux aux données ponctuelles de terre nue. Il ne doit pas être exécuté sur un jeu de données comportant de la végétation et des bâtiments, car la comparaison aura tendance à considérer un grand nombre de ces entités comme des points aberrants. Si vous utilisez cette méthode de détection des points aberrants sur un jeu de données LAS, vous pouvez filtrer les points classés au sol. Vous pouvez également utiliser l’outil Classer le bruit LAS pour identifier les points de bruit dans les jeux de données LAS.
Les points en sortie seront attribués à un champ d'entier nommé REASON dont les valeurs identifient les critères d'identification des points aberrants ayant participé à la mesure des points.
- 0 : limite stricte
- 1 : limite stricte et filtre de comparaison
- 3 : filtre de comparaison
Pour éliminer les points aberrants d’un jeu de données de MNT, utilisez l’outil Supprimer des points de MNT en spécifiant les points aberrants dans le paramètre Area of Interest (Zone d’intérêt).
Syntaxe
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})
Paramètre | Explication | Type de données |
in_surface | Le jeu de données de MNT, TIN ou LAS qui sera analysé. | LAS Dataset Layer; Terrain Layer; TIN Layer |
out_feature_class | Classe d'entités qui va être produite par cet outil. | Feature Class |
apply_hard_limit (Facultatif) | Indique si le z minimal absolu et le z maximal absolu sont utilisés pour détecter les points aberrants.
| 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 se compose de trois paramètres pour déterminer des points aberrants : z_tolerance, slope_tolerance et exceed_tolerance_ratio.
| Boolean |
z_tolerance (Facultatif) | Comparez les valeurs z des points de voisinage, 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 ratio 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 de requête doivent dépasser les filtres de comparaison pour que le point de requête 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
L'exemple suivant illustre l'utilisation de cet outil dans la fenêtre Python.
arcpy.env.workspace = "C:/data"
arcpy.LocateOutliers_3d("tin", "outliers.shp", "NO_APPLY_HARD_LIMIT", 0, 0,
"APPLY_COMPARISON_FILTER", 0, 150, 0.5, 2500)
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
# 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)
Environnements
Informations de licence
- Basic: Requiert 3D Analyst
- Standard: Requiert 3D Analyst
- Advanced: Requiert 3D Analyst
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?