Annonce : Tous les projets non commerciaux enregistrés pour utiliser Earth Engine avant le
15 avril 2025 devront
vérifier leur éligibilité non commerciale pour conserver leur accès. Si vous ne validez pas votre statut avant le 26 septembre 2025, votre accès pourra être suspendu.
ee.Algorithms.Image.Segmentation.SNIC
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Regroupement de superpixels basé sur SNIC (Simple Non-Iterative Clustering). Génère une bande d'ID de cluster et les moyennes par cluster pour chacune des bandes d'entrée. Si l'image "seeds" n'est pas fournie en entrée, la sortie inclura une bande "seeds" contenant les emplacements des graines générées. Voir : Achanta, Radhakrishna et Susstrunk, Sabine, "Superpixels and Polygons using Simple Non-Iterative Clustering", CVPR, 2017.
| Utilisation | Renvoie |
|---|
ee.Algorithms.Image.Segmentation.SNIC(image, size, compactness, connectivity, neighborhoodSize, seeds) | Image |
| Argument | Type | Détails |
|---|
image | Image | Image d'entrée pour le clustering. |
size | Entier, par défaut : 5 | Espacement de l'emplacement de départ du superpixel, en pixels. Si une image de départ est fournie, aucune grille n'est générée. |
compactness | Float, valeur par défaut : 1 | Facteur de compacité. Des valeurs plus élevées rendent les clusters plus compacts (carrés). Si vous définissez cette valeur sur 0, la pondération de la distance spatiale est désactivée. |
connectivity | Entier, valeur par défaut : 8 | Connectivité. 4 ou 8. |
neighborhoodSize | Entier, valeur par défaut : null | Taille du voisinage des tuiles (pour éviter les artefacts de limite des tuiles). La valeur par défaut est 2 * size. |
seeds | Image, valeur par défaut : null | Si des pixels de valeur non nulle sont fournis, ils sont utilisés comme emplacements de départ. Les pixels qui se touchent (comme spécifié par la connectivité) sont considérés comme appartenant au même cluster. |
Exemples
Éditeur de code (JavaScript)
// Note that the compactness and size parameters can have a significant impact
// on the result. They must be adjusted to meet image-specific characteristics
// and patterns, typically through trial. Pixel scale (map zoom level) is also
// important to consider. When exploring interactively through map tile
// visualization, the segmentation result it dependent on zoom level. If you
// need to evaluate the result at a specific scale, call .reproject() on the
// result, but do so with caution because it overrides the default scaling
// behavior that makes tile computation fast and efficient.
// Load a NAIP image for a neighborhood in Las Vegas.
var naip = ee.Image('USDA/NAIP/DOQQ/m_3611554_sw_11_1_20170613');
// Apply the SNIC algorithm to the image.
var snic = ee.Algorithms.Image.Segmentation.SNIC({
image: naip,
size: 30,
compactness: 0.1,
connectivity: 8,
});
// Display the original NAIP image as RGB.
// Lock map zoom to maintain the desired scale of the segmentation computation.
Map.setLocked(false, 18, 18);
Map.setCenter(-115.32053, 36.182016, 18);
Map.addLayer(naip, null, 'NAIP RGB');
// Display the clusters.
Map.addLayer(snic.randomVisualizer(), null, 'Clusters');
// Display the RGB cluster means.
var visParams = {
bands: ['R_mean', 'G_mean', 'B_mean'],
min: 0,
max: 255
};
Map.addLayer(snic, visParams, 'RGB cluster means');
Configuration de Python
Consultez la page
Environnement Python pour en savoir plus sur l'API Python et sur l'utilisation de geemap pour le développement interactif.
import ee
import geemap.core as geemap
Colab (Python)
# Note that the compactness and size parameters can have a significant impact
# on the result. They must be adjusted to meet image-specific characteristics
# and patterns, typically through trial. Pixel scale (map zoom level) is also
# important to consider. When exploring interactively through map tile
# visualization, the segmentation result it dependent on zoom level. If you
# need to evaluate the result at a specific scale, call .reproject() on the
# result, but do so with caution because it overrides the default scaling
# behavior that makes tile computation fast and efficient.
# Load a NAIP image for a neighborhood in Las Vegas.
naip = ee.Image('USDA/NAIP/DOQQ/m_3611554_sw_11_1_20170613')
# Apply the SNIC algorithm to the image.
snic = ee.Algorithms.Image.Segmentation.SNIC(
image=naip, size=30, compactness=0.1, connectivity=8
)
# Display the original NAIP image as RGB.
m = geemap.Map()
m.set_center(-115.32053, 36.182016, 18)
m.add_layer(naip, None, 'NAIP RGB')
# Display the clusters.
m.add_layer(snic.randomVisualizer(), None, 'Clusters')
# Display the RGB cluster means.
vis_params = {'bands': ['R_mean', 'G_mean', 'B_mean'], 'min': 0, 'max': 255}
m.add_layer(snic, vis_params, 'RGB cluster means')
m
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/26 (UTC).
[null,null,["Dernière mise à jour le 2025/07/26 (UTC)."],[],["SNIC clustering segments an image into superpixels, outputting cluster IDs and per-cluster averages for each input band. Key parameters include `size` (seed spacing), `compactness` (cluster shape), and `connectivity`. A user can provide `seeds` to define seed locations; otherwise, they are generated. The output `Image` includes cluster IDs, band averages, and optionally generated seed locations. Adjusting `size` and `compactness` is crucial for optimal results, which are also affected by pixel scale.\n"]]