Détecter les anomalies dans les images (Image Analyst)

Disponible avec une licence Image Analyst.

Synthèse

Traite une image multibande ou hyperspectrale et crée un raster de score d’anomalie. Un raster de score d’anomalie est un raster monobande dont les valeurs sont comprises entre 0 et 1.

Utilisation

  • Dans une image, une anomalie désigne les pixels qui sont significativement différents des valeurs d’arrière-plan. Il peut s’agir par exemple de bateaux sur l’océan, de véhicules sur une route ou de constructions humaines dans des zones naturelles.L’outil prend en charge les méthodes de détection des anomalies dans les images RXD (Reed-Xiaoli Detector), UTD (Uniform Target Detector) et KMEANS.

  • L’option RXD du paramètre Méthode de calcul des anomalies calcule la distance de Mahalanobis des pixels par rapport à l’arrière-plan qui est défini par la moyenne. En voici la formule :

    δRXD(r)=(r-µ)TK-1LxL(r-µ)

    Où r correspond aux spectres de pixels d’échantillonnage, µ, aux spectres moyens, K, à la covariance et L, au nombre de bandes.

  • L’option UTD du paramètre Anomaly Calculation Method (Méthode de calcul des anomalies) est similaire à l’option RXD, mais elle extrait un arrière-plan à l’aide d’un vecteur unitaire. En voici la formule :

    δUTD(r)=(1-µ)TK-1LxL(1-µ)

    L’anomalie est définie en remplaçant (r-u) dans la méthode RXD par (1-u).

  • L’option KMEANS du paramètre Méthode de calcul des anomalies identifie les pixels qui dévient de manière significative des agrégats établis dans les données à l’aide des algorithmes d’agrégation des K-moyennes.

  • La sortie est un raster de score d’anomalie avec des valeurs décimales comprises entre 0 et 1, où 0 est l’arrière-plan et où les valeurs élevées proches de 1 sont des anomalies potentielles. Les pixels d’anomalie peuvent être filtrés à l’aide de fonctions raster telles que Classification ou Masque. Le processus de détection des anomalies entier peut être réalisé à l’aide de l’assistant Détection d’anomalies.

  • Utilisez l’ajustement dynamique de la plage dans la symbologie de la couche en sortie pour mieux visualiser les pixels d’anomalie.

Paramètres

ÉtiquetteExplicationType de données
Raster en entrée

Image multibande ou hyperspectrale

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service
Raster en sortie

Raster monobande qui stocke les scores d’anomalie compris entre 0 et 1 en tant que nombre à virgule flottante. 0 est la valeur d’arrière-plan et les valeurs élevées proches de 1 sont des pixels d’anomalie potentiels. Utilisez l’extension de fichier pour préciser le format en sortie, notamment .tif (TIFF), .crf (CRF), .mrf (MRF) et .dat (ENVI DAT).

Raster Dataset
Méthode de calcul des anomalies
(Facultatif)

Indique la méthode de calcul des anomalies qui sera utilisée.

  • RXDLa méthode RXD sera utilisée pour extraire les pixels qui sont significativement différents des valeurs de pixel d’arrière-plan. Il s’agit de l’option par défaut.
  • UTDLa méthode UTD sera utilisée pour extraire les pixels d’arrière-plan de l’image en entrée.
  • KMEANSLa méthode KMEANS sera utilisée pour extraire les pixels qui dévient de manière significative des agrégats établis dans les données à l’aide des algorithmes d’agrégation des K-moyennes.
String
Nombre d’agrégats
(Facultatif)

Nombre d’agrégats qui seront utilisés lorsque le paramètre Méthode de calcul des anomalies est défini sur KMEANS. 

Long
Région d’arrière-plan
(Facultatif)

Classe d’entités surfaciques qui définira la région à utiliser pour calculer les statistiques d’arrière-plan lorsque le paramètre Méthode de calcul des anomalies est défini sur RXD ou UTD. 

Feature Set
Recalculer les statistiques
(Facultatif)

Indique si les statistiques seront recalculées pour le raster en entrée lorsque le paramètre Méthode de calcul des anomalies est défini sur RXD ou UTD.  Les options RXD et UTD requièrent des statistiques précises dans lesquelles le pas d’échantillonnage doit être égal à 1 lors du calcul des statistiques.

  • Activé : les statistiques seront recalculées pour le raster en entrée. Il s’agit de l’option par défaut.
  • Désactivé : les statistiques ne seront pas recalculées pour le raster en entrée.
Boolean

DetectImageAnomalies(in_raster, out_raster, {method}, {num_cluster}, {background_region}, {recompute_stats})
NomExplicationType de données
in_raster

Image multibande ou hyperspectrale

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service
out_raster

Raster monobande qui stocke les scores d’anomalie compris entre 0 et 1 en tant que nombre à virgule flottante. 0 est la valeur d’arrière-plan et les valeurs élevées proches de 1 sont des pixels d’anomalie potentiels. Utilisez l’extension de fichier pour préciser le format en sortie, notamment .tif (TIFF), .crf (CRF), .mrf (MRF) et .dat (ENVI DAT).

Raster Dataset
method
(Facultatif)

Indique la méthode de calcul des anomalies qui sera utilisée.

  • RXDLa méthode RXD sera utilisée pour extraire les pixels qui sont significativement différents des valeurs de pixel d’arrière-plan. Il s’agit de l’option par défaut.
  • UTDLa méthode UTD sera utilisée pour extraire les pixels d’arrière-plan de l’image en entrée.
  • KMEANSLa méthode KMEANS sera utilisée pour extraire les pixels qui dévient de manière significative des agrégats établis dans les données à l’aide des algorithmes d’agrégation des K-moyennes.
String
num_cluster
(Facultatif)

Nombre d’agrégats qui seront utilisés lorsque le paramètre method est défini sur KMEANS. 

Long
background_region
(Facultatif)

Classe d’entités surfaciques qui définira la région à utiliser pour calculer les statistiques d’arrière-plan lorsque le paramètre method est défini sur RXD ou UTD. 

Feature Set
recompute_stats
(Facultatif)

Indique si les statistiques seront recalculées pour le raster de score en sortie lorsque le paramètre method est défini sur RXD ou UTD.  Les options RXD et UTD requièrent des statistiques précises dans lesquelles le pas d’échantillonnage doit être égal à 1.

  • RECOMPUTE_STATSLes statistiques seront recalculées pour le raster de score en sortie. Il s’agit de l’option par défaut.
  • NOT_RECOMPUTE_STATSLes statistiques ne seront pas recalculées pour le raster de score en sortie.
Boolean

Exemple de code

Exemple 1 d’utilisation de la fonction DetectImageAnomalies (fenêtre Python)

Cet exemple traite une image hyperspectrale à l’aide de l’option RXD et crée un raster de score d’anomalie.

# Import system modules
import arcpy
from arcpy.ia import *

# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")

tempanomaly = arcpy.ia.GenerateMultidimensionalAnomaly(
	"c:/data/climateData.nc", "temperature", "DIFFERENCE_FROM_MEAN", 
	"ALL", "DATA", None)
	
tempanomaly.save("c:/data/TempAnomaly.crf")
Exemple 2 d’utilisation de la fonction DetectImageAnomalies (script autonome)

Cet exemple traite une image hyperspectrale à l’aide de l’option KMEANS et crée un raster de score d’anomalie.

# Import system modules
from arcpy.ia import *

# Check out the ArcGIS Image Analyst extension license 
arcpy.CheckOutExtension("ImageAnalyst") 

#Define variables 
input_image = r"c:\data\hsi_image.tif"
num_of_cluster = 1 

anomaly_raster = arcpy.ia.DetectImageAnomalies(
    in_raster=input_image, 
    method="KMEANS", 
    num_cluster=num_of_cluster,  
    recompute_stats="RECOMPUTE_STATS"
)
anomaly_raster.save(r"c:/test/anomaly_score_raster.tif")

Informations de licence

  • Basic: Nécessite Image Analyst
  • Standard: Nécessite Image Analyst
  • Advanced: Nécessite Image Analyst

Rubriques connexes