Question on aerosol retrieval -Sen2core

I get L2A product using Command line application Sen2Core, however, the quality_aot looks wrong.

is it right? what should i do if it is wrong?

any one can help me?please :worried:

Which value is contained in the raster?
Use Pixel Info, the histogram or the statistics tool to get information how the raster looks like.

The calculation of Aerosol Optical Thickenss is reported to fail when no DDV (Dark Dense Vegetation) areas are found in the scene by the algorithm.[L2A-SUM]%20S2-PDGS-MPC-L2A-SUM%20[2.3.0].pdf (Chapter 2.2.3) (Outcome and credits)

this is the histogram of quality_aot

this is the image of band 5

and there is water in the upper right corner of the image

so you probably need to adjust the GIPP file according to your study area. (slide 5)[L2A-SUM]%20S2-PDGS-MPC-L2A-SUM%20[2.3.0].pdf (chapter (chapter

there is above problem problem using the default parameter according to the instruction manual then i adjust the GIPP file like the red box of this picture ,but i got the same problem.

What parameters do I need to modify based on the study area?Aerosol_Type、Mid_Latitude、Ozone_Content?Is there any other?Visibility and Altitude need to adjust?

could you tell me what is the mean of 0.112 in the AOT?

sorry, I’m neither experienced with the fine-tuning of sen2cor, nor can I tell which parameters would be the best in your study area.

thank you for your reply

Hi Nerissa,
an AOT of 0.112 corresponds to a low content of aerosol and a rather clean atmosphere.
Above an AOT of 0.4, atmospheric correction becomes difficult.


Hi Olivier,
thank you for replying my question.however, there is another question , All pixel values of aerosol data are 0.112, is it right? thank you again

I hope Sen2cor experts will answer that, on my side, I don’t know

OK , thank you so much

Hallo nerissa,

all AOT valus equal 0.112 can be right, if you are not using a digital elevation model (DEM). Sen2Cor estimates aerosol optical thickness (AOT) on basis of dense dark vegeatation (DDV) pixels. If there are no DDV pixels in the image, then AOT can not be estimated and Sen2Cor is using the AOT corresponding to the input visibility set in the GIPP-file. AOT for default visibility of 40 km is about 0.2. Your value is little reduced due to the altitude of 0.1 km you specified in the GIPP-file and more reduced probably due to the occurance of negative reflectance values over the water in your image.

I recommend you:

  1. Use a DEM, because your image looks like a mountain region. Simply replace NONE in line 10 of the GIPP file by ‘DEM’ or any other value which will be the directory name in your cfg-folder for saving your DEMs.
  2. Set back aerosol type to rural (it is the better choice for your area than maritime)
  3. Run Sen2Cor and check the log-file. There is a line giving ‘Percentage of (dark) reference pixels’ and there should be also a message if the algorithm is using a constant Visibility instead of variable visibility.
  4. If you have AOT informtion for your image acquisition (time and location), then you can set the visibility in your GIPP-file to the corresponding value. I can help you transforming AOT to VIS.
1 Like

thank you very much for your answer! i will try as you say!

Hello, I would like to add to the present discussion a little issue coming from my recent experience with the Sen2Cor processing.

As I can access AOD data coming from a ground-based photometer, I was trying to match these observations with the corresponding Sentinel-2 AOT (same time and area).
Now, the satellite values given by Sen2Cor with standard configurations in the GIPP file are often overestimating quite a bit the photometer AOD.
To be clear, on my standard configuration I switch on the Cirrus and BRDF corrections, and let Sen2Cor download the corresponding SRTM DEM for my area. Besides, I set aerosol type to RURAL.

I tried to play a bit with Visibility, VIS_Update_Mode, Ozone Content, but at least for the limited tests that I’ve made up until now, Sen2Cor AOT output remains unchanged.

Could it be some kind of issue, or could it be on the other hand a sort of proof of retrieval stability?
I find this question somehow tricky!

I would also like to ask if there could be other settings that I could try to apply on the GIPP to change the AOT output in some way.


Hallo vmarinelli,

you touched the correct parameters to influence the AOT and I am surprised that nothing changed. Could you please provide me some more information how do you changed these parameters (which parameter, which values set, …). Setting VIS_update_mode to 0 and the the visibility corresponding to your measured AOT should process your product with the given AOT. Ozone content has only a minor influence on AOT-retrieval. There are no other parameters you can use influencing AOT-retrieval. Cirrus and BRDF-corrections are relevant only for TOA to BOA conversion.

Please use cirrus correction option with caution. There are unresolved issues with the present sen2cor version.


1 Like

Thanks for your reply, bdpg. Here’s some more detail on my tests.

I re-processed a single L1C data product with a dozen different configurations, changing on each run the Visibility value between the accessible range (e.g. 5, 10, 20, …, 120 km). As I partially wrote in my first post, during all tests I kept VIS_Update_Mode=0, BRDF_Correction=1 and Cirrus Correction=1 (and DEM_Directory was dem/srtm, of course). I left untouched the other parameters from the default GIPP configuration.

During most of the tests I kept Ozone_Content=0, but I tried also other values (f,g,k), obtaining again no changes in the AOT retrieval throghout the entire image tile.

As of today, sincerely I haven’t tried yet to switch off the cirrus correction, but I will make tests as soon as I can, within the next days, and come back reporting the results.