Re: i.atcorr with Sentinel2
Stefan Blumentrath <[email protected]>
| Newsgroups | gmane.comp.gis.grass.user |
|---|---|
| Message-ID | <[email protected]> |
Hi again, Now, there is a new patch attached to the ticket (#3482 that also covers the update of S2A curves). If those changes are applicable to 7.4(.1?) too, I can provide a diff for the release branch as well… In addition I opened a new ticket for updating the other sensors (https://trac.osgeo.org/grass/ticket/3483). I expect that I will update the curves for the sensors one by one (starting with worldview2/3), cause I don`t think I manage to do all at once … And thanks again for all the support we received! Cheers Stefan From: Stefan Blumentrath Sent: onsdag 24. januar 2018 14.55 To: Stefan Blumentrath <[email protected]>; Žofie Cimburová <[email protected]> Cc: GRASS user list <[email protected]> Subject: RE: [GRASS-user] i.atcorr with Sentinel2 So, now there are two updated patches attached to: https://trac.osgeo.org/grass/ticket/3482 One for changes in create_iwave.py and one to add S2B curves. Big thanks to all (and esp. Markus M) who put effort into checking, fixing, guiding and helping us with S-2 in i.atcorr! Very much appreciated! Hope the latest changes are OK, so I can update S2A too. Cheers Stefan From: grass-user [mailto:[email protected]] On Behalf Of Stefan Blumentrath Sent: onsdag 24. januar 2018 09.55 To: Žofie Cimburová <[email protected]<mailto:[email protected]>> Cc: GRASS user list <[email protected]<mailto:[email protected]>> Subject: Re: [GRASS-user] i.atcorr with Sentinel2 Hi Zofie, Markus M found some issues in my version of create_iwave.py. I am fixing them right now! Cheers Stefan From: Žofie Cimburová [mailto:[email protected]] Sent: onsdag 24. januar 2018 09.32 To: Stefan Blumentrath <[email protected]<mailto:[email protected]>> Cc: Markus Metz <[email protected]<mailto:[email protected]>>; GRASS user list <[email protected]<mailto:[email protected]>> Subject: Re: [GRASS-user] i.atcorr with Sentinel2 On Wed, Jan 24, 2018 at 12:35 AM, Stefan Blumentrath <[email protected]<mailto:[email protected]>> wrote: Hi again, So, I did not prioritize tests for the time being and added a first attempt for a diff to https://trac.osgeo.org/grass/ticket/3482 I would be happy if someone could review… i.atcorr compiles fine with the changes, works for S2B and gives non-NULL results. Zofie can you test with proper S2B data? Hi, I tested with one scene of S2B data and all bands, and the results look good. (Not sure how to test if they're 100 % correct, but they at least seem to make sense.) Best, Zofie Cheers Stefan From: Markus Metz [mailto:[email protected]<mailto:[email protected]>] Sent: tirsdag 23. januar 2018 15.31 To: Stefan Blumentrath <[email protected]<mailto:[email protected]>> Cc: Markus Neteler <[email protected]<mailto:[email protected]>>; GRASS user list <[email protected]<mailto:[email protected]>> Subject: Re: [GRASS-user] i.atcorr with Sentinel2 On Tue, Jan 23, 2018 at 3:24 PM, Stefan Blumentrath <[email protected]<mailto:[email protected]>> wrote: > > OK, sounds doable for me ;-). > Will look at it tonight. Most of the other changes for Sentinel-2B are already in place (I hope). Great! > Not sure if I manage to add python tests as well, looks like current tests are more manual? Apparently results differ between operating systems, therefore tests won't work well, unless you test if the output is all NULL, in which case a fatal error should be produced anyway. Markus M > > Cheers > Stefan > ________________________________________ > Von: Markus Metz [[email protected]<mailto:[email protected]>] > Gesendet: Dienstag, 23. Januar 2018 14:50 > An: Stefan Blumentrath > Cc: Markus Neteler; GRASS user list > Betreff: Re: [GRASS-user] i.atcorr with Sentinel2 > > On Tue, Jan 23, 2018 at 2:19 PM, Stefan Blumentrath <[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>> wrote: > > > > OK, will give it a try. > > > The first part is more important because it 1) fixes the interpolation to 2.5 nm steps, and 2) helps iwave.cpp to load the response values. > > > > For the second part I am not sure if I properly understood where min - max wavelength for each band should be printed to. > > > > Do you mean to replace > > > > # convert limits from nanometers to micrometers > > > > lowerlimit = wavelengths[0]/1000 > > > > upperlimit = wavelengths[-1]/1000 > > > > > > > > Or just as a screen output? > > Just a screen output to help update the manual > > > > You did not mean band value limits, right? > > No, e.g. in the manual is > > Sentinel2A Coastal blue band B1 (430nm - 457nm) > > and this range could be printed out to screen based on the actual response. This range can then be copied to the manual, making life a bit easier for the person updating the manual. > > > > Not sure I am of help/useful for fixing create_iwave.py, but I`ll do my best. > > Your help is welcome! > > Markus M > > > > > Cheers > > > > Stefan > > > > > > > > > > > > From: Markus Metz [mailto:[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>] > > Sent: tirsdag 23. januar 2018 13.02 > > To: Stefan Blumentrath <[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>> > > Cc: Markus Neteler <[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>>; GRASS user list <[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>> > > > > > > Subject: Re: [GRASS-user] i.atcorr with Sentinel2 > > > > > > > > > > > > On Tue, Jan 23, 2018 at 12:25 PM, Stefan Blumentrath <[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>> wrote: > > > > > > No problem. Any chance I can contribute to maintenance of create_iwave.py? > > > > > > What needs to be done? Take your latest changes into account? > > > > nodata handling should be changed. In read_input(), missing values should be set to zero. Then for each band, leading and trailing zeros would be set to -1. This helps interpolate_band() to get the correct subrange. > > > > For each band, create_iwave.py should print out the band name and the wavelength as min - max. Care must be taken when finding reasonable min and max wavelengths: find the max response, then go back while response > threshold to find the min wavelength. Go forward while response > threshold to find the max wavelength. As threshold I suggest 0.1 to eliminate noise in the response values. > > > > Markus M > > > > > > > > > > > > > > If you think it makes sense I will try to create a patch for adding S2B to i.atcorr (would be a nice exercise and does not seem too complex)? Will open a ticket and start working on it unless you tell me different. > > > > > > > > > > > > Cheers > > > > > > Stefan > > > > > > > > > > > > > > > > > > > > > > > > From: grass-user [mailto:[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>] On Behalf Of Markus Metz > > > Sent: tirsdag 23. januar 2018 12.03 > > > To: Markus Neteler <[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>> > > > Cc: GRASS user list <[email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>> > > > Subject: Re: [GRASS-user] i.atcorr with Sentinel2 > > > > > > > > > > > > > > > > > > On Tue, Jan 23, 2018 at 11:51 AM, Markus Neteler < > > > [email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>> wrote: > > > > > > > > > > > On Tue, Jan 23, 2018 at 11:09 AM, Žofie Cimburová > > > > < > > > [email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>>> wrote: > > > > > > > > Forgot to cc the list. > > > > > > > > > > The CSV and the cpp template: > > > > > > > > https://www.dropbox.com/sh/9cnhsl59kvmx4o1/AABwnEVHdxfW_PqrB5Xcpczda?dl=0 > > > > > > > > > > > Great! Would you mind to also convert the S2A table? AFAIK it got > > > > updated due to recalibration compared to what we currently have. > > > > > > please wait a bit with creating the cpp template, create_iwave.py needs some maintenance > > > > > > Markus M > > > > > > > > > > > > > > > > > markusN > > > > _______________________________________________ > > > > grass-user mailing list > > > > [email protected]<mailto:[email protected]><mailto:[email protected]<mailto:[email protected]>> > > > > https://lists.osgeo.org/mailman/listinfo/grass-user > _______________________________________________ grass-user mailing list [email protected]<mailto:[email protected]> https://lists.osgeo.org/mailman/listinfo/grass-user _______________________________________________ grass-user mailing list [email protected] https://lists.osgeo.org/mailman/listinfo/grass-user