GIS and Remote Sensing
// Define the region of interest (roi) and add it to the map
Map.addLayer(roi);
var l8_composite = ee.ImageCollection('LANDSAT/LC08/C02/T1_RT_TOA')
.filterDate('2023-04-01', '2023-05-30')
.filterBounds(roi)
.filter(ee.Filter.lt('CLOUD_COVER', 5))
.median()
.clip(roi);
// add the layer to the map
var vis_params = {
bands: ['B5', 'B4', 'B3'],
min: 0,
max: 3000,
gamma: 1.2,
};
Map.addLayer(l8_composite, vis_params, 'L8 Composite');
// Merge the training points for all classes
var trainingPoint = Water.merge(Builtup).merge(Vegetation).merge(Agricultural).merge(Barren);
var trainingSample = trainingPoint.map(function(point){
return point.buffer(30);
});
// Select bands for classification
var label = 'Class';
var bands = ['B1','B2','B3','B4','B5','B6','B7','B8','B9','B10','B11'];
// Here, you should be selecting bands from the image, not from roi
var input = l8_composite.select(bands);
// Sample regions to create training data
var trainImage = input.sampleRegions({
collection: trainingSample,
properties: [label],
scale: 30
});
// Create training and test datasets
var trainingData = trainImage.randomColumn();
var trainSet = trainingData.filter(ee.Filter.lessThan('random', 0.8));
var testSet = trainingData.filter(ee.Filter.greaterThanOrEquals('random', 0.8));
// Classification with Random Forest
var classifier = ee.Classifier.smileRandomForest(64).train(trainSet, label, bands);
// Calculate classification accuracy/assessment
var confusionMatrix = ee.ConfusionMatrix(testSet.classify(classifier).errorMatrix({actual: 'Class', predicted: 'classification'}));
print('Confusion Matrix', confusionMatrix);
print('Overall Accuracy', confusionMatrix.accuracy());
// Kappa validation
var kappa = confusionMatrix.kappa();
print('Kappa', kappa);
// Apply classification to the image
var classified = input.classify(classifier);
// Show the classification result
Map.addLayer(classified, {
palette: ['blue', 'red', 'yellow', 'green', 'orange'],
min: 1,
max: 5
}, 'Land Cover', true, 0.5);
// Export the classified image to Google Drive
Export.image.toDrive({
image: classified,
description: 'LULC',
folder: 'GEE',
scale: 30,
region: roi
});
🌍 Top Free GEOSPATIAL DATA SOURCES for Environmental Analysis - Global Raster and Vector Datasets - part 4 🔻
1️⃣ Esri Open Data Hub - A platform that provides access in the public domain, allowing users to freely use, modify, and disseminate the data - https://lnkd.in/dvVWU33V
2️⃣ NASA’s Socioeconomic Data and Applications Center (SEDAC) - Offers global data related to population, environment, and sustainability - https://lnkd.in/d_ehx3NA
3️⃣ Open Topography - A resource for high-resolution topographic data, particularly useful for studying landforms, terrain, and elevation - https://lnkd.in/d5ftgmdS
4️⃣ UNEP Environmental Data Explorer - Provides environmental data on topics such as climate change, biodiversity, and pollution - https://lnkd.in/dMptNF5n
5️⃣ NASA Earth Observations (NEO) - A comprehensive collection of Earth science data, including climate factors like aerosols, temperature, and carbon - https://neo.gsfc.nasa.gov/