Estoy usando Google Earth Engine para ejecutar una clasificación supervisada y quiero visualizar, para cada clase en mi clasificación, la distribución de DN o Reflectancia en cada banda de una imagen Landsat.
La manera en que visualizo el resultado es la siguiente: Me gustaría tener un histograma como el que se muestra a continuación para cada clase en mi imagen clasificada
¿Cómo selecciono una propiedad de una capa (en este caso, el tipo de cobertura de la tierra) para crear un histograma de esos píxeles?
usando ejemplos de GEE:
// Ampliar la clasificación de cobertura de tierra MODIS (250m) a Landsat
// resolución (30m) usando un clasificador supervisado.
var geometry = /* color: #ffc82d */ee.FeatureCollection(
[ee.Feature(
ee.Geometry.Polygon(
[[[29.9761962890625, 31.592573630393357],
[29.981689453125, 30.111869849235248],
[32.574462890625, 30.116621582819374],
[32.530517578125, 31.620643692450585]]]),
{
"system:index": "0"
})]);
// Utilizar la clasificación de cobertura de tierra MCD12 como datos de entrenamiento.
var modisLandcover = ee.Image('MODIS/051/MCD12Q1/2001_01_01')
.select('Land_Cover_Type_1');
// Una paleta para visualizar imágenes de cobertura de tierra.
var landcoverPalette = [
'aec3d4', // agua
'152106', '225129', '369b47', '30eb5b', '387242', // bosque
'6a2325', 'c3aa69', 'b76031', 'd9903d', '91af40', // arbusto, pasto, sabana
'111149', // humedales
'8dc33b', // tierras de cultivo
'cc0013', // urbano
'6ca80d', // mosaico de cultivos
'd7cdcc', // nieve y hielo
'f7e084', // estéril
'6f6f6f' // tundra
];
// Un conjunto de parámetros de visualización utilizando la paleta de cobertura de tierra.
var landcoverVisualization = {palette: landcoverPalette, min: 0, max: 17, format: 'png'};
// Centrar sobre nuestra región de interés.
Map.centerObject(geometry, 11);
// Dibujar la imagen de cobertura de tierra MODIS.
Map.addLayer(modisLandcover, landcoverVisualization, 'Cobertura de tierra MODIS');
// Cargar y filtrar datos Landsat.
var l7 = ee.ImageCollection('LANDSAT/LE07/C01/T1')
.filterBounds(geometry)
.filterDate('2000-01-01', '2001-01-01');
// Dibujar el composite Landsat, visualizando bandas de color verdadero.
var landsatComposite = ee.Algorithms.Landsat.simpleComposite({
collection: l7,
asFloat: true
});
Map.addLayer(landsatComposite, {min: 0, max: 0.3, bands: ['B3','B2','B1']}, 'Composite Landsat');
// Crear un conjunto de entrenamiento muestreando las imágenes apiladas.
var training = modisLandcover.addBands(landsatComposite).sample({
region: geometry,
scale: 30,
numPixels: 1000
});
// Entrenar un clasificador utilizando los datos de entrenamiento.
var classifier = ee.Classifier.cart().train({
features: training,
classProperty: 'Land_Cover_Type_1',
});
// Aplicar el clasificador al composite original.
var upsampled = landsatComposite.classify(classifier);
// Dibujar la imagen de cobertura de tierra ampliada.
Map.addLayer(upsampled, landcoverVisualization, 'Cobertura de tierra ampliada');
// Mostrar el área de entrenamiento.
Map.addLayer(ee.Image().paint(geometry, 1, 2), null, 'Región de entrenamiento');