Landsat 8 processing: Atmospherically correction and LAI calculations


I am trying to calculate LAI for 2019 Landsat 8 data in Terminal using gpt. First I use the c2rcc.landsat8 to atmospherically correct the data and it gives me the error of “Invalid source product, band ‘coastal_aerosol’ required”. However I am sure that the band #1 is there and I can visualize it using snap toolbox.
Then I try to calculate LAI for the raw data, before correction to see if it works or not and again error: “Error: Missing band at 560.0 nm”. again I have band number 3 (560 nm) in my source file.
Can anyone help me with this?

The C2RCC does atmospheric correction only over water. So, it wouldn’t help your scenario. However, it should actually work. That also LAI complains about the source product indicates that the Landsat8 is from an unsupported source or in a data format which is not expected.

The Landsat-8 product should be displayed in the Product Explorer similar as in the image below.
The Information window should show the LandsatReader.
How is your data displayed?

Atmospheric correction for Landsat-8 can be done with
iCOR, atmospheric image correction made accessible (

1 Like

Thank you for your reply Marpet. I was able to open the Landsat file on snap and it looks exactly same as the one you have in the picture. I have two issues now:
First of all, I am going to calculate LAI after applying c2rcc but it seems bands are missing. it gives me the error that 1610 nm is missing. Here is the picture after applying c2rcc:

My second issue is that I am going to run gpt for stacking all the Landsat bands together, resample them, apply c2rcc and calculates LAI. I have the band info in .tif extend and all the metadata in .txt format. I do not know how to do that? In snap, I open the .txt filed resample it and the rest will have all the bands together. In gpt I don’t know how to do that to not lose metadata.

Thanks again

The result of C2RCC will not help you for computing LAI.
C2RCC gives you only values over water, the land is masked out.
The swir band is not used by C2RCC. That’s why it is not in the output.
Here it is explained why:

So, it is better to use the above suggested icor atmospheric correction.

Your final goal is to have one product containing a time series of LAI?
Then you should first do the icor processing (it needs the original inputs) afterwards you can resample and compute LAI. In a last step you can collocate all LAI products.

For doing the batch processing with gpt there exists a little guide which explains how to do it.
Bulk Processing with GPT - SNAP - SNAP Wiki (

1 Like

I see. Thank you for explaining details and the link.
I will try to try it. I might come back with more questions :slight_smile:

Hi Marpet,
Do you know if there is icon for iOS? In their website they only have windows and Linux version.


No, sorry. I don’t know.
@icor can you tell if there is a mac version available?

Yes, indeed there is no iCOR version for Mac available

Landsat-8 can be successfully used to generate LAI from Landsat Collection 2 datasets.
Have a look at this post with further information and graphs to execute the ‘Biophysical Processor LANDSAT8’ operator:


1 Like