Rayleigh correction of satellite data other than MERIS and OLCI using SNAP


I was wondering how to do rayleigh correction of satellite images other than MERIS and OLCI using SNAP? I want to do rayleigh correction for MODIS, VIIRS, Sentinel 2, Landsat 5 & 8. Please let me know if it is possible.


Rayleigh correction is available for Sentinel-2. The current processor supports MERS, OLCI and S2.

For the others the is no processor available.

Are you working over water or over land?
Do you really need a Rayleigh correction or would an atmospheric correction also be suitable?
For all sensors you mentioned there is an AC in the C2RCC processor. But only over water.

Thanks Marpet!
I am working over inland water. I know about C2RCC processor and used it for AC. However, good to know that current processor supports S2 for rayleigh correction. It would be great if future version also include rayleigh correction of Landsat 8 and other NASA sensors.

Thank you for your help!

Hi Marpet,

I tried to do rayleigh correction of S2 as you suggested. However, I came across this error attached as screenshot. Please let me know how to fix this error.


It seem that the Rayleigh processor doesn’t like S2 products if they are resampled beforehand.
You can select the desired resolution in the processing parameters. The result will be resampled.
However, this is a bug. I’ve described the problem in our issue tracker.

Thanks! It worked without resampling. However, in this case, we have to process entire scene and it took 25 minutes to process one scene. We cannot do subset without re-sampling so that is another problem if we want to do rayleigh correction of subset scene, we won’t be able to do so. Any suggestion for rayleigh correction of subset scene?

You can do this.
Just don’t store the result of the rayleigh correction to disk. And do a subsetting on the in-memory product. Then only the region of your subset is processed.

Thanks! I followed your suggestion and it finished rayleigh correction within seconds. However, I am not sure if it did actually because when I tried to open the rayleigh corrected image, it’s taking forever and still not able to visualize it. I can try one more time though…

Right, something prevents that it works.
It takes almost the same time without subsetting, even though the target scene is smaller.
We will check this.

Any tips for processing Landsat 8 oli ? I need Rayleigh correction for landsat 8 oli. Already tried it with S2a L1 imagery and worked wonders, however, when working with landsat 8 oli it doesn’t seem to run. I tried installing Icor but seems to have a .temp error.

If you are using Landsat data and work over water then SeaDAS might be helpful for you.
For land application, I’m not aware of another solution, accept icor you already tried.
You can ask for help in the icor section.


Thank you. Going to try it.