I need to have access only to metadata (e.g., Cloud cover percentage) of Sentinel-2 for the entire Canada since the date of satellite launch, WITHOUT downloading the actual datasets.
I think this is not easily doable.
The L1C data does not contain this information you would need the L2A data. But I think not all data has been processed to this level till now. So I think you will not have a good coverage.
However, if it is possible to download only the metadata file (MTD_MSIL2A.xml) you can analyse the XML.
It has a section like this one:
but now I see again the entire dataset are being downloaded.
Oliver, let me try your script. For Canada Level-1c is only available. We just need to get the cloud coverage in time series data since SEntinel 2 was launched.
Do you think it is doable Only download the metadata for the entire Level-1c dataset of Canada? We are only interested in cloud coverage percentage.Thanks again
By the way, do I need to download the entire dataset or I can just have access to metadata for the cloud coverage? We are trying to avoid the data download itself.
Thanks.
I don’t know. I don’t know the scripts and the capabilities of scihub. But the metadata of L1C will not help you. It doesn’t contain cloud statistics. Only the L2A do.
for the testing, I have downloaded a tile in Canada , and it shows "NominalCloudCoverPercentage. Is this sth different? This is 1st time I am using Sentinel2 for Canada. Thanks
"
Consider getting a Google Earth Engine account and then run this:
var s2 = ee.ImageCollection(‘COPERNICUS/S2’)
var aoi = ee.FeatureCollection(“USDOS/LSIB/2013”).filterMetadata(‘cc’, ‘equals’, ‘CA’);
// Make date selection to keep list reasonably short
var s2_CA = s2.filterBounds(aoi).filterDate(‘2017-06-01’, ‘2017-06-02’)
// Prepare a table with image ID and cloudy_pixel_percentage. Last argument = false drops the geometry
// Change to true if you want image footprint geometry
var list = ee.FeatureCollection(s2_CA).select([‘system:index’, ‘CLOUDY_PIXEL_PERCENTAGE’], null, false)
// Print a sample (first 10 records)
print(list.limit(10))
I’m not aware that this is somewhere stored in the metadata. At least I can’t find it in the metadata.
Maybe there is something written in the documents: https://sentinel.esa.int/web/sentinel/user-guides/sentinel-2-msi
It could also be that the application (Arcmap?) you are using is adding this information on the fly.
Hi SARuser,
this is not the tool I advised (mine is sentinel_download.py (the link is above)). It seems you used sentinelsat, which is probably great, but that I do not know.
If you need a subset of product metadata use the scihub osearch rest API, its fast, queryable by time, footprint etc. and returns sufficient metadata in json encoding including also cloudcoverage, e.g.
{“name”:“cloudcoverpercentage”,“content”:“79.8487”}
hello thanks for information
for me i downlaod sentinel 2 LEVEL 1C in 2015 with 6G VOLUME AND Grouped tiles but i want to know just clood coverage pourcent about specific tile so how i do that and how i open MTD_MSIL2A.xml
For each granule, you have one folder within the Granule directory.
There you find a file named like S2A_OPER_MTD_L1C_TL_MPS__20160528T125136_A004866_T34SGB.xml. In newer versions of S2 L1C data, this file is named MTD_TL.xml
This file can be read by a text editor or can be parsed by software. Within this file, you will find a section like the following.
The file MTD_MSIL2A.xml does not exist in L1C data. The equivalent of it in 2015 L1C data looks like S2A_OPER_MTD_SAFL1C_PDMC_20160528T200856_R007_V20160528T090826_20160528T090826.xml.
thanks marbet for information
if you can explain to me this message when im using sen2COR ON A SPECIFIC TILE dated in 2915 EXTRAXTED from folder image tat containes several tiles