1

How can I obtain images as clear as the default Earth Engine map satellite view for analysis of a given area?

I am implementing a project to monitor a transmission line corridor using earth engine and AI. I have tried viewing the corridor in Earth Engine's satellite view and there is a clear enough resolution. I took this image from Google Earth PRO

Sample image with the transmission line marked red.

The above image is dated 2015

I want to build an application that receives recent images which are about 1 or 2 months old to monitor the transmission line corridor and a specified buffer around it. I have already got the tower locations in a KMZ file.

The problem occurs when I used datasets from Sentinel 2 or Landsat 8 the image or layer appears pixelated or blurry. How can I obtain pictures as clear as (or clearer than) the default map satellite view for analysis of a given area in an application?

I do not know if this is also due to my location (Africa, Ghana, Accra). Sometimes some of the examples seem clearer over the USA.

Some of the recent images also had clouds obscuring the view so for test purposes I tried one of the default examples, doing a cloud mask over an area of Accra and received pixelated images. Result of the Sentinel 2 cloud mask example over the University of Ghana

Result of the Sentinel 2 cloud mask example over the University of Ghana.

The code that produced this layer (taken from the default examples)

// This example uses the Sentinel-2 QA band to cloud mask
// the collection.the collection is also pre-filtered by the
// CLOUDY_PIXEL_PERCENTAGE flag, to use only relatively
// cloud-free granule.
// Function to mask clouds using the Sentinel-2 QA band.
function maskS2clouds(image) {
  var qa = image.select('QA60')
  // Bits 10 and 11 are clouds and cirrus, respectively.
  var cloudBitMask = 1 << 10;
  var cirrusBitMask = 1 << 11;
  var mask = qa.bitwiseAnd(cloudBitMask).eq(0).and(
         qa.bitwiseAnd(cirrusBitMask).eq(0))
  // Return the masked and scaled data, without the QA bands.
  return image.updateMask(mask).divide(10000)
  .select("B.*")
  .copyProperties(image, ["system:time_start"])
}
// Map the function over one year of data and take the median.
// Load Sentinel-2 TOA reflectance data.
var collection = ee.ImageCollection('COPERNICUS/S2')
.filterDate('2016-01-01', '2016-12-31')
// Pre-filter to get less cloudy granules.
.filter(ee.Filter.lt('CLOUDY_PIXEL_PERCENTAGE', 20))
.map(maskS2clouds)

var composite = collection.median()

// Display the results.
Map.addLayer(composite, {bands: ['B4', 'B3', 'B2'], min: 0,             max: 0.3}, 'RGB Clouds')

TLDR: How can I obtain a recent image/ image collection with a resolution as clear as the default map satellite view?


Am I doing this right?

0

1 Answer 1

1

Export.image.toDrive({ image: composite, description: 'add_your_image_tittle_without_spaces', scale: 30, region: the one you asked for });

try this or try to change the palette for clearer images.

1
  • Thanks for answering. However I realised the image resolution was still poor, sometimes gray or even black or pixelated when zoomed in(landsat8 and Sentinel 2). So I guess I have to fix the poor resolution problem first. If you know a way to get suitable resolution closd to the satellite view you can suggest that here too. (Even if it's outside earth engine) Jul 11, 2021 at 23:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.