[prev in list] [next in list] [prev in thread] [next in thread] 

List:       grass-user
Subject:    Re: [GRASS-user] Appropriate input/output range for i.atcorr WorldView2?
From:       Paige Byassee <byasseepaige () gmail ! com>
Date:       2020-04-08 18:33:48
Message-ID: CAPfQFmsHVX7GfszSrS=K4LV-GddOnLdjNQ5TaDJ2tRZ8atyV9Q () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


Thank you Nikos & Marcus,

Converting to TOA radiance (or reflectance) is not really the issue... I
have already been following "Absolute Radiometric Calibration, Prepared By:
Michele A. Kuester" using the formula for L (done in R, screenshot
attached). I do think it is necessary that this be done in FLOAT32 to
retain enough detail and per DigitalGlobe recommendations.

So, if I covert to TOA radiance as you've described, I am left with 32-bit
pixels. I then import the images using r.in.gdal and launch i.atcorr. *Would
the input range then be 0, 4294967295 (i.e. (2^32) - 1)? *

If so, I wonder what a good output range might be, as I presume using
r.out.gdal on a 32-bit image could take a long time.

Thank you for your help,
Paige

On Wed, Apr 8, 2020 at 6:31 AM <nik@nikosalexandris.net> wrote:

> On 2020-04-08 15:17, Markus Neteler wrote:
> ..
> > I believe that you need to apply the formula along with the respective
> > band calibration values ABSCALFACTOR and  EFFECTIVEBANDWIDTH (the same
> > is also stored in the IMD files) from the XML metadata files:
> > 
> > grep 'ABSCALFACTOR\|EFFECTIVEBANDWIDTH'
> > 058891334020_01_P001_MUL/18DEC03184338-M2AS-058891334020_01_P001.XML
> > <ABSCALFACTOR>9.295654000000000e-03</ABSCALFACTOR>
> > 
> > <EFFECTIVEBANDWIDTH>4.730000000000000e-02</EFFECTIVEBANDWIDTH>
> > <ABSCALFACTOR>9.748051000000001e-03</ABSCALFACTOR>
> > 
> > <EFFECTIVEBANDWIDTH>5.430000000000000e-02</EFFECTIVEBANDWIDTH>
> > <ABSCALFACTOR>7.541495000000000e-03</ABSCALFACTOR>
> > 
> > <EFFECTIVEBANDWIDTH>6.300000000000000e-02</EFFECTIVEBANDWIDTH>
> > <ABSCALFACTOR>5.101088000000000e-03</ABSCALFACTOR>
> > 
> > <EFFECTIVEBANDWIDTH>3.740000000000000e-02</EFFECTIVEBANDWIDTH>
> > <ABSCALFACTOR>1.103623000000000e-02</ABSCALFACTOR>
> > 
> > <EFFECTIVEBANDWIDTH>5.740000000000000e-02</EFFECTIVEBANDWIDTH>
> > <ABSCALFACTOR>4.539619000000000e-03</ABSCALFACTOR>
> > 
> > <EFFECTIVEBANDWIDTH>3.930000000000000e-02</EFFECTIVEBANDWIDTH>
> > <ABSCALFACTOR>1.224380000000000e-02</ABSCALFACTOR>
> > 
> > <EFFECTIVEBANDWIDTH>9.890000000000000e-02</EFFECTIVEBANDWIDTH>
> > <ABSCALFACTOR>9.042234000000000e-03</ABSCALFACTOR>
> > 
> > <EFFECTIVEBANDWIDTH>9.959999999999999e-02</EFFECTIVEBANDWIDTH>
> > 
> > Citing from "Absolute Radiometric Calibration, Prepared By: Michele A.
> > Kuester"
> > 
> https://dg-cms-uploads-production.s3.amazonaws.com/uploads/document/file/209/ABSRADCAL_FLEET_2016v0_Rel20170606.pdf
> 
> > 
> > "The top-of-atmosphere radiance, L, in units of Wμm-1m-2sr-1, is
> > then found from the DigitalGlobe
> > image product for each band by converting from digital numbers
> > (DN) using the equation,
> > 
> > L = Gain * DN * (abscalfactor/effective bandwidth) + Offset
> > 
> > The TDI specific "abscalfactor" and "effectiveBandwidth" are
> > delivered with the imagery in the metadata file.
> > The digital number, DN, is the pixel value found in the imagery.
> > The Gain and Offset are the absolute
> > radiometric calibration band dependent adjustment factors that are
> > given in Table 1. Note that these
> > are not necessarily stagnant values and they are revisited
> > annually.
> > "
> > 
> > (the "Table 1" is found in the same PDF file above. You may want to
> > check if a newer table version exists).
> > 
> > You can apply this formula with r.mapcalc, for each band to obtain TOA
> > data from DN.
> 
> See also https://gitlab.com/NikosAlexandris/i.worldview.toar or
> https://github.com/NikosAlexandris/i.worldview.toar.
> 
> Maybe useful (though ratehr badly programmed at the time).
> 
> Nikos
> 


-- 
*Paige Byassee*
Appalachian State University '19
B.S., Ecology|Certificate in GIS
(704)488-0872
byasseepaige@gmail.com


[Attachment #5 (text/html)]

<div dir="ltr">Thank you Nikos &amp; Marcus,<div><br></div><div>Converting to TOA \
radiance (or reflectance) is not really the issue... I have already been following \
&quot;Absolute Radiometric Calibration, Prepared By: Michele A. Kuester&quot; using \
the formula for L (done in R, screenshot attached). I do think it is necessary that \
this be done in FLOAT32 to retain enough detail and per DigitalGlobe \
recommendations.</div><div><br></div><div>So, if I covert to TOA radiance as \
you&#39;ve described, I am left with 32-bit pixels. I then import the images using \
r.in.gdal and launch i.atcorr. <b>Would the input range then be 0, 4294967295 (i.e. \
(2^32) - 1)?  </b></div><div><b><br></b></div><div>If so, I wonder what a good output \
range might be, as I presume using r.out.gdal on a 32-bit image could take a long \
time.</div><div><br></div><div>Thank you for your \
help,</div><div>Paige</div></div><br><div class="gmail_quote"><div dir="ltr" \
class="gmail_attr">On Wed, Apr 8, 2020 at 6:31 AM &lt;<a \
href="mailto:nik@nikosalexandris.net">nik@nikosalexandris.net</a>&gt; \
wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px \
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 2020-04-08 15:17, \
                Markus Neteler wrote:<br>
..<br>
&gt; I believe that you need to apply the formula along with the respective<br>
&gt; band calibration values ABSCALFACTOR and   EFFECTIVEBANDWIDTH (the same<br>
&gt; is also stored in the IMD files) from the XML metadata files:<br>
&gt; <br>
&gt; grep &#39;ABSCALFACTOR\|EFFECTIVEBANDWIDTH&#39;<br>
&gt; 058891334020_01_P001_MUL/18DEC03184338-M2AS-058891334020_01_P001.XML<br>
&gt;                    \
&lt;ABSCALFACTOR&gt;9.295654000000000e-03&lt;/ABSCALFACTOR&gt;<br> &gt;               \
<br> &gt; &lt;EFFECTIVEBANDWIDTH&gt;4.730000000000000e-02&lt;/EFFECTIVEBANDWIDTH&gt;<br>
 &gt;                    \
&lt;ABSCALFACTOR&gt;9.748051000000001e-03&lt;/ABSCALFACTOR&gt;<br> &gt;               \
<br> &gt; &lt;EFFECTIVEBANDWIDTH&gt;5.430000000000000e-02&lt;/EFFECTIVEBANDWIDTH&gt;<br>
 &gt;                    \
&lt;ABSCALFACTOR&gt;7.541495000000000e-03&lt;/ABSCALFACTOR&gt;<br> &gt;               \
<br> &gt; &lt;EFFECTIVEBANDWIDTH&gt;6.300000000000000e-02&lt;/EFFECTIVEBANDWIDTH&gt;<br>
 &gt;                    \
&lt;ABSCALFACTOR&gt;5.101088000000000e-03&lt;/ABSCALFACTOR&gt;<br> &gt;               \
<br> &gt; &lt;EFFECTIVEBANDWIDTH&gt;3.740000000000000e-02&lt;/EFFECTIVEBANDWIDTH&gt;<br>
 &gt;                    \
&lt;ABSCALFACTOR&gt;1.103623000000000e-02&lt;/ABSCALFACTOR&gt;<br> &gt;               \
<br> &gt; &lt;EFFECTIVEBANDWIDTH&gt;5.740000000000000e-02&lt;/EFFECTIVEBANDWIDTH&gt;<br>
 &gt;                    \
&lt;ABSCALFACTOR&gt;4.539619000000000e-03&lt;/ABSCALFACTOR&gt;<br> &gt;               \
<br> &gt; &lt;EFFECTIVEBANDWIDTH&gt;3.930000000000000e-02&lt;/EFFECTIVEBANDWIDTH&gt;<br>
 &gt;                    \
&lt;ABSCALFACTOR&gt;1.224380000000000e-02&lt;/ABSCALFACTOR&gt;<br> &gt;               \
<br> &gt; &lt;EFFECTIVEBANDWIDTH&gt;9.890000000000000e-02&lt;/EFFECTIVEBANDWIDTH&gt;<br>
 &gt;                    \
&lt;ABSCALFACTOR&gt;9.042234000000000e-03&lt;/ABSCALFACTOR&gt;<br> &gt;               \
<br> &gt; &lt;EFFECTIVEBANDWIDTH&gt;9.959999999999999e-02&lt;/EFFECTIVEBANDWIDTH&gt;<br>
 &gt; <br>
&gt; Citing from &quot;Absolute Radiometric Calibration, Prepared By: Michele A. <br>
&gt; Kuester&quot;<br>
&gt; <a href="https://dg-cms-uploads-production.s3.amazonaws.com/uploads/document/file/209/ABSRADCAL_FLEET_2016v0_Rel20170606.pdf" \
rel="noreferrer" target="_blank">https://dg-cms-uploads-production.s3.amazonaws.com/uploads/document/file/209/ABSRADCAL_FLEET_2016v0_Rel20170606.pdf</a><br>
 &gt; <br>
&gt;     &quot;The top-of-atmosphere radiance, L, in units of Wμm-1m-2sr-1, is<br>
&gt; then found from the DigitalGlobe<br>
&gt;        image product for each band by converting from digital numbers<br>
&gt; (DN) using the equation,<br>
&gt; <br>
&gt;        L = Gain * DN * (abscalfactor/effective bandwidth) + Offset<br>
&gt; <br>
&gt;        The TDI specific &quot;abscalfactor&quot; and \
&quot;effectiveBandwidth&quot; are<br> &gt; delivered with the imagery in the \
metadata file.<br> &gt;        The digital number, DN, is the pixel value found in \
the imagery.<br> &gt; The Gain and Offset are the absolute<br>
&gt;        radiometric calibration band dependent adjustment factors that are<br>
&gt; given in Table 1. Note that these<br>
&gt;        are not necessarily stagnant values and they are revisited <br>
&gt; annually.<br>
&gt;   &quot;<br>
&gt; <br>
&gt; (the &quot;Table 1&quot; is found in the same PDF file above. You may want \
to<br> &gt; check if a newer table version exists).<br>
&gt; <br>
&gt; You can apply this formula with r.mapcalc, for each band to obtain TOA<br>
&gt; data from DN.<br>
<br>
See also <a href="https://gitlab.com/NikosAlexandris/i.worldview.toar" \
rel="noreferrer" target="_blank">https://gitlab.com/NikosAlexandris/i.worldview.toar</a> \
or <br> <a href="https://github.com/NikosAlexandris/i.worldview.toar" \
rel="noreferrer" target="_blank">https://github.com/NikosAlexandris/i.worldview.toar</a>.<br>
 <br>
Maybe useful (though ratehr badly programmed at the time).<br>
<br>
Nikos<br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" \
class="gmail_signature"><div dir="ltr"><b><font face="monospace, monospace">Paige \
Byassee</font></b><div><font face="monospace, monospace">Appalachian State University \
&#39;19</font></div><div><font face="monospace, monospace">B.S., Ecology|Certificate \
in GIS</font></div><div><font face="monospace, \
monospace">(704)488-0872</font></div><div><font face="monospace, monospace"><a \
href="mailto:byasseepaige@gmail.com" \
target="_blank">byasseepaige@gmail.com</a></font></div></div></div>


["RadCode.PNG" (image/png)]
[Attachment #7 (text/plain)]

_______________________________________________
grass-user mailing list
grass-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/grass-user

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic