Page 1 of 1

L2 Flags being produced instead of selected bands

Posted: Tue Jun 15, 2021 10:12 am America/New_York
by catevans
Hello,

I've had some issues using the multilevel processor (MLP) to do l2gen and am unsure how to fix this particular issue. I am trying to process Level 1 GOCI data. When running the MLP in the GUI, it will successfully take in a list of ifiles, but only lists some of the bands I want to be processing. Below is what is showing in the window before I instruct the program to run:

[main]
ifile=/Users/catherineevans/Desktop/Seadas/IO_OCSSW_PARAMS/ifile_list
odir=/Users/catherineevans/Desktop/Seadas/IO_OCSSW_PARAMS/Output
overwrite=1
keepfiles=1

[l2gen]
east=127
l2prod=Lt
north=37
south=33
west=124
keepfiles=1


And here is what is in the my_rayleigh_par file that I am loading in as a parameter says:

[main]
ifile=/Users/catherineevans/Desktop/Seadas/IO_OCSSW_PARAMS/ifile_list
odir=/Users/catherineevans/Desktop/Seadas/IO_OCSSW_PARAMS/Output
use_nrt_anc=1
overwrite=1
keepfiles=1

[l2gen]
l2prod=Lt Lt_nnn Lr Lr_nnn rhos rhos_nnn solz
east=127
north=37
south=33
west=124
maskcloud=1
keepfiles=1


As you can see, the program is not reading in all of the L2 products that I want. Furthermore, when I try to run it, even when manually selecting what bands I want to be produced, no bands are available and instead SeaDAS will only show L2 flags, lat and lon, and none of the specified inputs.

It says it is running successfully, and takes about an hour to go through all the images but the L2 products it makes does not work.

When trying to run it through my terminal, it says that the multilevel_processor (or multilevel_processor.py depending on what forum instructions I have tried) file or directory does not exist, even when it is listed in my working directory at that time.

If anyone has any idea where I am going wrong please let me know.

Thank you.

Re: L2 Flags being produced instead of selected bands

Posted: Tue Jun 15, 2021 2:23 pm America/New_York
by catevans
Update - while still not working with a parameter file, the multiprocessor would run if selecting everything manually in the l2gen panel of the multiprocessor GUI. However, when trying to open the files it generated ("G2011249001539.L2_LAC_OC" as an example of outputted file / format), I get the error: "No appropriate product reader found".

Re: L2 Flags being produced instead of selected bands

Posted: Wed Jun 16, 2021 9:14 am America/New_York
by OB.DAAC - SeanBailey
Providing l2gen a parameter list that includes spectral products without the wavelength specifier (e.g. Lt vs Lt_412 or Lt_nnn) indicates to the program that you want a three dimensional output array for the product (pixel, line, wavelength). The currently distributed version of l2bin does not recognize these 3D products, nor does the SeaDAS L2 product reader. That said, it should have recognized the 2D variants you included in your l2prod list.

Can you post (as an attachment) the output of ncdump -h <l2file> (where <l2file> is the name of the L2 file you generated)?

BTW, since you are not asking for products that require atmospheric correction, you can speed up l2gen by setting atmocor=0

Sean

Re: L2 Flags being produced instead of selected bands

Posted: Wed Jun 16, 2021 12:49 pm America/New_York
by catevans
Good to know RE: atmco, thanks for the tip!

Attached is the output for the L2 file. I've got it in pdf but can change the format if you'd like it in something else.

And as for the wavelength clarification: does that mean if I just specify what wavelengths out of Lt, rhos, etc I want rather than the x_nnn specification, it would work?

Thanks.

Re: L2 Flags being produced instead of selected bands

Posted: Wed Jun 16, 2021 4:46 pm America/New_York
by OB.DAAC - SeanBailey
Nothing jumps out as a problem in the ncdump, so maybe the reader is just getting confused by the 3D products. Specifying <product>_nnn will work as the "_nnn" (or _vvv) gets expanded to the wavelength list. NOT specifying one (i.e. just 'Lt' or 'Rrs') generates a 3D dataset.

You could try using File->Import->NetCDF to load the file or regenerate it without the 3D datasets.

Sean

Re: L2 Flags being produced instead of selected bands

Posted: Thu Jun 17, 2021 7:35 am America/New_York
by catevans
I think you're right, and have found the issue. Attached are two screenshots to demonstrate what I am talking about.

For some reason, while specifying variables manually, there are no options to select wavelengths for Lt, Lr or rhos. You can see this in the L2.png I've attached. I think this may be why it's automatically creating a 3D product. When I try to mitigate that by writing in the variables I want like "Lt_nnn Lr_nnn rhos_nnn solz" in a parameter file, only a "Lt" (Even if I've put in "Lt_nnn") is specified when the parameter file is loaded.

As a result, the product that's created cannot be loaded as any kind of cdf in the import option you outlined. Generic, BEAM and CF options don't recognize the .L2_LAC_OC filetype.

Re: L2 Flags being produced instead of selected bands

Posted: Thu Jun 17, 2021 3:04 pm America/New_York
by OB SeaDAS - xuanyang02
We have seen the l2gen product tab acting up. See the following posts:
viewtopic.php?f=7&t=2348&sid=6ef5b057b4 ... 06d29a244c

The work around for you is to run multilevel_processor (not multilevel_processor.py in your case) on command line, making sure
"l2prod=Lt_nnn, Lr_nnn, rhos_nnn, solz" in your parfile