What OLCI channels should we use for most realistic images?


Ernst Lobsiger
 

Hi All,

Hugo came up with this stunning "Cloud free image of A68-A and family ...":

https://www.flickr.com/photos/137270544@N02/50775162471/in/datetaken-public/

After some misunderstanding on my side (taking it for a GOES16 image) Hugo
clarified that it is "Sentinel-3 ( channel 09, 17 and 21 == Natural colors)".
This calmed me down, I was now able to reproduce the image with PyTroll/SatPy.

But after some thinking: What the heck, OLCI channels Oa21, Oa17 and Oa09 ??!!
Hugo might explain us the idea behind using these channels for "Natural colors".

My short history of EUMETCast OLCI channel usage for RGB composites is this:

I had used Envisat's MERIS channel 8, 5, 2 with my GNU/Linux DDS receivers.
Unfortunately Envisat died 6 months after I had my station up and running.

When we finally got access to Sentinel-3 OLCI EFR on EUMETCast I chose the
corresponding channels to what I had used for Envisat: OLCI Oa10, Oa06, Oa03.
I made a cmd script for SNAP 4.0 convert that used these channels and did some
additional post processing with IM using flags like -normalize and -equalize.

Simon came up with an early version of a Python script using Oa08, Oa05, Oa03.
Thorsten and later David adapted Simon's Python script using Oa09, Oa06, Oa04
also with some IM post processing. Instructions are still found on David's page.

Other EUMETCast OLCI users will most probably run variants of the scripts above.

PyTroll/SatPy comes with really sophisticated RGB processing AFAIK some also
found in Hugo's EUMETCastView. This makes IM post processing obsolete or harmful.
PyTroll/SatPy out of the box provided OLCI composites all use Oa08, Oa06, Oa03.
They normally come [effective_solar_pathlength_corrected, raleigh_corrected]
where Raleigh (reflectance) correction is using Oa08 to produce a clearer view.
There are additional enhancements called natural_color, true_color, ocean_color.

With these possibilities I added OLCI composites with the following naming:

ernst100603n     is using OCLI channels Oa10, Oa06 and Oa03 + 'natural_color'
ernst100603o     is using OCLI channels Oa10, Oa06 and Oa03 + 'ocean_color'
ernst100603t     is using OCLI channels Oa10, Oa06 and Oa03 + 'true_color'

hugo211709n      is using OCLI channels Oa21, Oa17 and Oa09 + 'natural_color'
hugo211709o      is using OCLI channels Oa21, Oa17 and Oa09 + 'ocean_color'
hugo211709t      is using OCLI channels Oa21, Oa17 and Oa09 + 'true_color'

etc. ...

All [effective_solar_pathlength_corrected, raleigh_corrected (with OLCI Oa08)].
I attach a text file with Sentinel-3 OLCI channel characteristics and "usage".

TBH I cannot see any difference between my choice, the Thorsten/David choice and
the PyTroll/SatPy coice of OaX channels. Either this is due to the human eye or
I made a silly mistake again. Adding composites in PyTroll/SatPy isn't that easy.

I have put all results for the image "A68-A and family ... " on my receiver Io:

http://5.153.116.236:81/OLCI

The question remains: What OLCI channels should we use for most realistic images?


Cheers,
Ernst

P.S. And what intends Hugo to finally use in in his famous EUMETCastView :-) ?


Hugo
 

Hi,

>But after some thinking: What the heck, OLCI channels Oa21, Oa17 and Oa09 ??!!
>Hugo might explain us the idea behind using these channels for "Natural colors".

When making Severi images of Meteosat the Natural Colours RGB are composed of the VIS0.6, VIS0.8 and the NIR1.6
channel data. For OLCI the band nearest to IR_016 was Band Oa21. So we have 
Blue -- band 09  -- 0.674 µm
Green -- band 17 --  0.865 µm
Red -- band 21 -- 1.020 µm
The red band of Meteosat is 1.64 µm (NIR1.6) so there is a big difference , but the ice has a nice blue color in the A68-A images of Sentinel-3 ....
The bands for "true color" I use for Sentinel-3 are O03(0.443), O06(0.560) and O10(0.681).  

grts,

Hugo


On Wed, Dec 30, 2020 at 09:27 AM, Ernst Lobsiger wrote:
Hi All,

Hugo came up with this stunning "Cloud free image of A68-A and family ...":

https://www.flickr.com/photos/137270544@N02/50775162471/in/datetaken-public/

After some misunderstanding on my side (taking it for a GOES16 image) Hugo
clarified that it is "Sentinel-3 ( channel 09, 17 and 21 == Natural colors)".
This calmed me down, I was now able to reproduce the image with PyTroll/SatPy.

But after some thinking: What the heck, OLCI channels Oa21, Oa17 and Oa09 ??!!
Hugo might explain us the idea behind using these channels for "Natural colors".

My short history of EUMETCast OLCI channel usage for RGB composites is this:

I had used Envisat's MERIS channel 8, 5, 2 with my GNU/Linux DDS receivers.
Unfortunately Envisat died 6 months after I had my station up and running.

When we finally got access to Sentinel-3 OLCI EFR on EUMETCast I chose the
corresponding channels to what I had used for Envisat: OLCI Oa10, Oa06, Oa03.
I made a cmd script for SNAP 4.0 convert that used these channels and did some
additional post processing with IM using flags like -normalize and -equalize.

Simon came up with an early version of a Python script using Oa08, Oa05, Oa03.
Thorsten and later David adapted Simon's Python script using Oa09, Oa06, Oa04
also with some IM post processing. Instructions are still found on David's page.

Other EUMETCast OLCI users will most probably run variants of the scripts above.

PyTroll/SatPy comes with really sophisticated RGB processing AFAIK some also
found in Hugo's EUMETCastView. This makes IM post processing obsolete or harmful.
PyTroll/SatPy out of the box provided OLCI composites all use Oa08, Oa06, Oa03.
They normally come [effective_solar_pathlength_corrected, raleigh_corrected]
where Raleigh (reflectance) correction is using Oa08 to produce a clearer view.
There are additional enhancements called natural_color, true_color, ocean_color.

With these possibilities I added OLCI composites with the following naming:

ernst100603n     is using OCLI channels Oa10, Oa06 and Oa03 + 'natural_color'
ernst100603o     is using OCLI channels Oa10, Oa06 and Oa03 + 'ocean_color'
ernst100603t     is using OCLI channels Oa10, Oa06 and Oa03 + 'true_color'

hugo211709n      is using OCLI channels Oa21, Oa17 and Oa09 + 'natural_color'
hugo211709o      is using OCLI channels Oa21, Oa17 and Oa09 + 'ocean_color'
hugo211709t      is using OCLI channels Oa21, Oa17 and Oa09 + 'true_color'

etc. ...

All [effective_solar_pathlength_corrected, raleigh_corrected (with OLCI Oa08)].
I attach a text file with Sentinel-3 OLCI channel characteristics and "usage".

TBH I cannot see any difference between my choice, the Thorsten/David choice and
the PyTroll/SatPy coice of OaX channels. Either this is due to the human eye or
I made a silly mistake again. Adding composites in PyTroll/SatPy isn't that easy.

I have put all results for the image "A68-A and family ... " on my receiver Io:

http://5.153.116.236:81/OLCI

The question remains: What OLCI channels should we use for most realistic images?


Cheers,
Ernst

P.S. And what intends Hugo to finally use in in his famous EUMETCastView :-) ?

 On Wed, Dec 30, 2020 at 09:27 AM, Ernst Lobsiger wrote:
But after some thinking: What the heck, OLCI channels Oa21, Oa17 and Oa09 ??!!
Hugo might explain us the idea behind using these channels for "Natural colors".