Difference between min. and max. value was too high after Sen2Cor

Dear Snap-Users,

I’m working to detect Chlorophyll-a concentration by using Sentinel 2 (L1C) images in small lake. I want to use 2 kind of atmospheric correction processor. C2RCC was performed perfect. But the processing of Sen2Cor has some problem. I divided the band value by 10000 as you suggest in many posts.

But the result was almost same and seems to wrong. The minimium value is minus and the difference between min and max value is too high.

In C2RCC atmospheric correction processor, min=31 and max=78. What I have to do? I’m using empirical algorithm (regretion with in-situ data) for detecting Chl-a concentration after Sen2Cor processing. I couldn’t find my error. Please help me.

I’m looking forward to hear from you.

Best regards

Please have a look at my reply in the other thread

For me the sen2cor result looks good. B4 has reasonable values.
But then you divide the values by 10000. You don’t need to do this. SNAP is taking care of this.
You can see this when selecting a band and then opening the Information window
There you find the scaling factor and offset. These are already applied.
This scaling only needs to be applied if the data is not officially supported.

The values can get negative if the value in B4 is higher as in B5.
You can investigate this. You can create a mask by using the expression ‘NDCI < 0’ and then you can use this mask on B4 and B5 to compare the values.


Thank you for your reply.

I did it without dividing by 10000. But the result was almost same. the min. value was minus and max was about 200-300.

Do you mean that I should create the mask, like ‘NDCI < 0’ then NaN ? I mean I have to ignore the minus values of NDCI?

Is that looks right?

Yes, the values do not change much because the ratio is the same, independent from the scaled value.
If you want to exclude the negative values your expression should work.
I think it could be simplified to
if B4 < B5 then ((B5 -B4) / (B5 + B4)) else NaN

By the above mask I actually meant to create mask overlay it in the scene image.
This is shown in the image below. The red areas are those where B4 > B5. And this results in the negative values in your NDCI.

How you want to deal with them is up to you.