0

I am a beginner in Google Earth Engine code and am trying to apply the that filters the sentinel 2 image collection, but when applying this filter the image becomes very clear and there is a lot of confusion, the computer confuses area (soil_1) with urban area, 'I didn't select the points of the urban area because of this reason, a lot of confusion'.Is my code incorrect or did I not properly apply it to the images?

//Seleciona as imagens de satélite Sentinel 2

var Sentinel2_1 = ee.ImageCollection("COPERNICUS/S2")
.filterMetadata('MGRS_TILE', 'equals', '24MYS')
.filterMetadata('CLOUDY_PIXEL_PERCENTAGE','less_than', 1) 
.filterDate('2016-01-01','2016-05-31')
.median();

//Visualização

var Sentinel2_2 = Sentinel2_1.clip(table2);
//Map.addLayer(table, {color: 'blue'},'BHRS');
//Map.addLayer(Sentinel2_2, {bands: ['B4', 'B3', 'B2'], min: 0, max: 2000}, 'S2-true-color');

I think the error I'm not able to solve is in filtragem "var boxcar".

//Filtragem

var boxcar = ee.Kernel.square({
radius: 0.5, units: 'pixels', normalize: true
});
var imagem_sem_nuvem = Sentinel2_2.convolve(boxcar);
Map.addLayer(imagem_sem_nuvem, {bands: ['B4', 'B3', 'B2'], min: 495, max: 1534}, 'semnuvem');

//Classificação

var features = arborea_densa.merge(sub_arborea_densa).merge(agua)
.merge(solo_1).merge(solo_2).merge(solo_3);

//print('Amostras',features);

var bands = ['B4', 'B3', 'B2'];

var training = imagem_sem_nuvem.select(bands).sampleRegions({
collection: features,
properties:['classe'],
scale: 10
});

//print (training);//áreas de treinamento

//Aplicando os algorítmos de classificação

var CART = ee.Classifier.smileCart().train({
features: training,
classProperty: 'classe',
inputProperties: bands
});

var MMD = ee.Classifier.minimumDistance('euclidean').train({
features: training,
classProperty: 'classe',
inputProperties: bands
});

var RF = ee.Classifier.smileRandomForest(500, null, 1, 0.5, null, 0).train({
features: training,
classProperty: 'classe',
inputProperties: bands
});

var N_Bayes = ee.Classifier.smileNaiveBayes().train({
features: training,
classProperty: 'classe',
inputProperties: bands
});

var LIBSVM = ee.Classifier.libsvm().train({
features: training,
classProperty: 'classe',
inputProperties: bands
});

var CART_class = imagem_sem_nuvem.select(bands).classify(CART);
var MMD_class = imagem_sem_nuvem.select(bands).classify(MMD);
var RF_class = imagem_sem_nuvem.select(bands).classify(RF);
var BAYES_class = imagem_sem_nuvem.select(bands).classify(N_Bayes);
var LIBSVM_class = imagem_sem_nuvem.select(bands).classify(LIBSVM);

Map.addLayer(CART_class, {min: 1, max: 6, palette: ['#057800', '#2dff00', '#000eff', 
'#fbf900', '#d44340','#b47f13']}, 'CART');
//Map.addLayer(MMD_class, {min: 1, max: 6, palette: ['#057800', '#2dff00', '#000eff', 
'#fbf900', '#d44340','#b47f13']}, 'MMD');
//Map.addLayer(RF_class, {min: 1, max: 6, palette: ['#057800', '#2dff00', '#000eff', 
'#fbf900', '#d44340','#b47f13']}, 'RF');
//Map.addLayer(BAYES_class, {min: 1, max: 6, palette: ['#057800', '#2dff00', '#000eff', 
'#fbf900', '#d44340','#b47f13']}, 'BAYES');
//Map.addLayer(LIBSVM_class, {min: 1, max: 6, palette: ['#057800', '#2dff00', '#000eff', 
'#fbf900', '#d44340','#b47f13']}, 'LIBSVM');

//Avaliação da qualidade das classificações CART

print('Matriz de Confusão CART',  CART.confusionMatrix().array());
print('Acurácia Geral CART', CART.confusionMatrix().accuracy());
print('Índice Kappa CART', CART.confusionMatrix().kappa());
print('Precisão Usuário CART', CART.confusionMatrix().consumersAccuracy());
print('Precisão Produtor CART', CART.confusionMatrix().producersAccuracy());

//Avaliação da qualidade das classificações RF

print('Matriz de Confusão RF', RF.confusionMatrix().array());
print('Acurácia Geral RF', RF.confusionMatrix().accuracy());
print('Índice Kappa RF', RF.confusionMatrix().kappa());
print('Precisão Usuário RF', RF.confusionMatrix().consumersAccuracy());
print('Precisão Produtor RF', RF.confusionMatrix().producersAccuracy());

//Avaliação da qualidade das classificações LIBSVM

print('Matriz de Confusão LIBSVM', LIBSVM.confusionMatrix().array());
print('Acurácia Geral LIBSVM', LIBSVM.confusionMatrix().accuracy());
print('Índice Kappa LIBSVM', LIBSVM.confusionMatrix().kappa());
print('Precisão Usuário LIBSVM', LIBSVM.confusionMatrix().consumersAccuracy());
print('Precisão Produtor LIBSVM', LIBSVM.confusionMatrix().producersAccuracy());

//Avaliação da qualidade das classificações N_Bayes

print('Matriz de Confusão N_Bayes', N_Bayes.confusionMatrix().array());
print('Acurácia Geral N_Bayes', N_Bayes.confusionMatrix().accuracy());
print('Índice Kappa N_Bayes', N_Bayes.confusionMatrix().kappa());
print('Precisão Usuário N_Bayes', N_Bayes.confusionMatrix().consumersAccuracy());
print('Precisão Produtor N_Bayes', N_Bayes.confusionMatrix().producersAccuracy());

//Avaliação da qualidade das classificações MMD

print('Matriz de Confusão MMD', MMD.confusionMatrix().array());
print('Acurácia Geral MMD', MMD.confusionMatrix().accuracy());
print('Índice Kappa MMD', MMD.confusionMatrix().kappa());
print('Precisão Usuário MMD', MMD.confusionMatrix().consumersAccuracy());
print('Precisão Produtor MMD', MMD.confusionMatrix().producersAccuracy());

enter image description here

//Unindo a classificação

var classificado_final = ee.Image(CART_class).select(['classification'],['b1']);
var CART_class_juncao = ee.ImageCollection([classificado_final]).sum();

//Map.addLayer(CART_class_juncao,{},'Área');

Last question, because when I export the image(Exportar os resultados) the file format is GEO_TIFF?

//Exportar os resultados

Export.image.toDrive({
image: imagem_sem_nuvem,
description: 'imagem_filtrada_SENTINEL2_inverno_2021',
scale: 10,
region: table2,
folder: 'GEE',
maxPixels:1e13,
crs:'EPSG:3857'
});
Ryan M
  • 18,333
  • 31
  • 67
  • 74
  • Please focus your question. Where do you get an error, and how would you like your final output to look like? – CrossLord Oct 19 '21 at 14:57
  • Good afternoon. So, this script is showing me an error that I don't know how to solve so far, it's confusing one area with another, but I've done this step again and I couldn't find the error. Note the error in the image, and another thing, because when I'm exporting the image, the geotiff format appears? – Hugo Simplicio Oct 27 '21 at 15:26
  • corrupted pixel – Hugo Simplicio Nov 07 '21 at 19:50

0 Answers0