Monitoraggio Geodetico e Telerilevamento EarthEngine exercizes Exercize 10 revised Carla Braitenberg Dip. Matematica e Geoscienze Universita’ di Trieste berg@units.it Tel. 339 8290713 Tel. Assistente Dr. Nagy: 040 5582257
Script 10 sediment identification Example from Caribbean Sea. The problem is to identify the sediment input from the River and detect the seasonal changes of the size and form of the sediment cloud. This is done from multispectral Landsat images. var landsat8 = ee.ImageCollection("LANDSAT/LC8_L1T_TOA"), landsat7 = ee.ImageCollection("LANDSAT/LE7_L1T_TOA"); var rgb_viz = {min:0, max:0.3, bands:['R','G','B']}; var rgb_viz1 = {min:0, max:0.3, bands:['B','G','N']}; var images = landsat8.select(['B2','B3','B5','B4'], ['B','G','N','R']); var images7 = landsat7.select(['B1','B2','B4','B3'], ['B','G','N','R']); var geometry = /* color: 0000ff */ee.Geometry.Point([-75, 11]); images = images.filterDate('2015-04-01', '2015-04-06'); images = images.filterBounds(geometry); images7 = images7.filterDate('2000-04-01', '2000-12-30'); images7 = images7.filterBounds(geometry); Map.addLayer(images, rgb_viz, 'True Color L8'); Map.addLayer(images, rgb_viz1, 'False Color L8'); Map.addLayer(images7, rgb_viz, 'True Color L7'); Map.addLayer(images7, rgb_viz1, 'False Color L7'); .......
False color image compared to true image Landsat 8 (april 2015
Landsat 7 April 2000
sediment identification by histogram analysis The histograms were generated in Earth Engine for the Caribbean Sea. The near infrared level is similar, the B,G,R levels are higher where sediments are suspended in water. B G N R Water with sediments Water without sediments
Distinction of water covered areas from land areas Modifying the bands used for the false images we can distinguish water covered areas better from land areas. This can be accomplished by using the bands N and either one of B,G,R.
Calculate the difference between the two dates Operations: select Landsat 7 and landsat 8 as in previous excersize, apply a reducer to obtain two single images, then calculate the difference between the two images. At last map the difference image, taking cae of the much smaller values, so you must adjust the color-scale accordingly.
var landsat8 = ee.ImageCollection("LANDSAT/LC8_L1T_TOA"); landsat7 = ee.ImageCollection("LANDSAT/LE7_L1T_TOA"); var rgb_viz = {min:0, max:0.3, bands:['R','G','B']}; var rgb_viz1 = {min:0, max:0.3, bands:['B','G','N']}; var images = landsat8.select(['B2','B3','B5','B4'], ['B','G','N','R']); var images7 = landsat7.select(['B1','B2','B4','B3'], ['B','G','N','R']); var geometry = /* color: 0000ff */ee.Geometry.Point([-75, 11]); images = images.filterDate('2015-04-01', '2015-04-06'); images = images.filterBounds(geometry); images7 = images7.filterDate('2000-04-01', '2000-12-30'); images7 = images7.filterBounds(geometry); var imagesmin = images.min(); var images7min = images7.min(); // calculate normalized difference index between blue and near infrared. Image collection must be reduced before. var ndvi = imagesmin.normalizedDifference(['B', 'N']); var ndwi_viz = {min:-0.2, max:0.2, palette:'black,green'}; // calculate difference between situation in 2015 and 2000. You must reduce image collection before. var diff = imagesmin.subtract(images7min); Map.setCenter(-75,11, 10); Map.addLayer(diff, {bands: ['B', 'G', 'N'], min: -0.05, max: 0.05}, 'difference'); Map.addLayer(ndvi, ndwi_viz, 'ndvi'); Map.addLayer(images, rgb_viz, 'True Color L8','false'); Map.addLayer(images, rgb_viz1, 'False Color L8','false'); Map.addLayer(images7, rgb_viz, 'True Color L7','false'); Map.addLayer(images7, rgb_viz1, 'False Color L7','false');