<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<!--[if !mso]><style>v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style><![endif]--><style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0cm;
        margin-right:0cm;
        margin-bottom:0cm;
        margin-left:36.0pt;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
p.msonormal0, li.msonormal0, div.msonormal0
        {mso-style-name:msonormal;
        mso-margin-top-alt:auto;
        margin-right:0cm;
        mso-margin-bottom-alt:auto;
        margin-left:0cm;
        font-size:12.0pt;
        font-family:"Times New Roman",serif;}
span.gmail-m5011395501731790359hoenzb
        {mso-style-name:gmail-m_5011395501731790359hoenzb;}
span.EmailStyle20
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:1034427410;
        mso-list-template-ids:1271835996;}
@list l0:level1
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:36.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:72.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:108.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:144.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:180.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:216.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:252.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:288.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:324.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l1
        {mso-list-id:1239753346;
        mso-list-type:hybrid;
        mso-list-template-ids:1792958376 564450702 68419587 68419589 68419585 68419587 68419589 68419585 68419587 68419589;}
@list l1:level1
        {mso-level-start-at:16;
        mso-level-number-format:bullet;
        mso-level-text:-;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Calibri",sans-serif;
        mso-fareast-font-family:Calibri;}
@list l1:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l1:level3
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
@list l1:level4
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Symbol;}
@list l1:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l1:level6
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
@list l1:level7
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Symbol;}
@list l1:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:"Courier New";}
@list l1:level9
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        font-family:Wingdings;}
@list l2
        {mso-list-id:1934899910;
        mso-list-template-ids:55068746;}
@list l2:level1
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:36.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l2:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:72.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:"Courier New";
        mso-bidi-font-family:"Times New Roman";}
@list l2:level3
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:108.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l2:level4
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:144.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l2:level5
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:180.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l2:level6
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:216.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l2:level7
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:252.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l2:level8
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:288.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l2:level9
        {mso-level-number-format:bullet;
        mso-level-text:;
        mso-level-tab-stop:324.0pt;
        mso-level-number-position:left;
        text-indent:-18.0pt;
        mso-ansi-font-size:10.0pt;
        font-family:Wingdings;}
@list l3
        {mso-list-id:2064135444;
        mso-list-type:hybrid;
        mso-list-template-ids:-1876762000 484452270 68419609 68419611 68419599 68419609 68419611 68419599 68419609 68419611;}
@list l3:level1
        {mso-level-number-format:alpha-lower;
        mso-level-text:"%1\)";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:54.0pt;
        text-indent:-18.0pt;}
@list l3:level2
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:90.0pt;
        text-indent:-18.0pt;}
@list l3:level3
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        margin-left:126.0pt;
        text-indent:-9.0pt;}
@list l3:level4
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:162.0pt;
        text-indent:-18.0pt;}
@list l3:level5
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:198.0pt;
        text-indent:-18.0pt;}
@list l3:level6
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        margin-left:234.0pt;
        text-indent:-9.0pt;}
@list l3:level7
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:270.0pt;
        text-indent:-18.0pt;}
@list l3:level8
        {mso-level-number-format:alpha-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:306.0pt;
        text-indent:-18.0pt;}
@list l3:level9
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        margin-left:342.0pt;
        text-indent:-9.0pt;}
ol
        {margin-bottom:0cm;}
ul
        {margin-bottom:0cm;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="NO-BOK" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">Ciao Roberta,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">Thanks, that was exactly what I had in mind!<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">When you find the time you could consider the following further improvements:<o:p></o:p></span></p>
<ul style="margin-top:0cm" type="disc">
<li class="MsoNormal" style="color:#1F497D;mso-list:l1 level1 lfo1"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;mso-fareast-language:EN-US">Scaling in the beginning: Currently input is scaled with a hard-coded factor, that is
 not necessarily generic. You could either:<o:p></o:p></span></li></ul>
<ol style="margin-top:0cm" start="1" type="a">
<li class="MsoNormal" style="color:#1F497D;margin-left:18.0pt;mso-list:l3 level1 lfo2">
<span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;mso-fareast-language:EN-US">Drop scaling completely and document in the manual how input should be scaled. Esp. if the input to your algorithm is output from i.atcorr, as i.atcorr has
 a scaling option for output.<o:p></o:p></span></li><li class="MsoNormal" style="color:#1F497D;margin-left:18.0pt;mso-list:l3 level1 lfo2">
<span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;mso-fareast-language:EN-US">Make scaling factor a parameter that users can provide (would be useful if atmospheric correction is performed with other tools than i.atcorr)<o:p></o:p></span></li></ol>
<ul style="margin-top:0cm" type="disc">
<li class="MsoNormal" style="color:#1F497D;mso-list:l1 level1 lfo1"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;mso-fareast-language:EN-US">Band statistics: It seems you are computing “zonal statistics” with just one zone which
 in practice will be a sort of global maximum per band. In that case you do not need a map and can use a constant in r.mapcalc.<br>
If you need to use global maximum reflectance per band, you could use:<o:p></o:p></span></li></ul>
<p class="MsoNormal" style="margin-left:36.0pt"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">gscript.parse_command(‘r.info’, flags=’g’, …) if the maximum for the entire map is needed.
 This would be the fastest option.<br>
If you need to use maximum within current computational region (or e.g. with a different mask applied) you could use:<br>
gscript.parse_command(‘r.univar’, flags=’g’, …); then statistics are computed<br>
From that you get “max” as a variable.<o:p></o:p></span></p>
<ul style="margin-top:0cm" type="disc">
<li class="MsoNormal" style="color:#1F497D;mso-list:l1 level1 lfo1"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;mso-fareast-language:EN-US">Also having an eye on coding style (pep8 in this case) from the beginning, can be very
 helpful, especially in the beginning (at least that is my experience). To start with you could check your code as described here:<br>
<a href="https://trac.osgeo.org/grass/wiki/Submitting/Python#Style">https://trac.osgeo.org/grass/wiki/Submitting/Python#Style</a> A more comprehensive tutorial can be found e.g. here:
<a href="https://www.datacamp.com/community/tutorials/pep8-tutorial-python-code">
https://www.datacamp.com/community/tutorials/pep8-tutorial-python-code</a><o:p></o:p></span></li></ul>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">Just for inspiration…<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">Kind regards,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US">Stefan<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif">From:</span></b><span lang="EN-US" style="font-size:11.0pt;font-family:"Calibri",sans-serif"> Roberta Fagandini <robifagandini@gmail.com>
<br>
<b>Sent:</b> onsdag 23. mai 2018 17.07<br>
<b>To:</b> GRASS developers list <grass-dev@lists.osgeo.org><br>
<b>Cc:</b> Stefan Blumentrath <Stefan.Blumentrath@nina.no>; Roberto Marzocchi <roberto.marzocchi@gmail.com>; Moritz Lennert <mlennert@club.worldonline.be>; soc@lists.osgeo.org<br>
<b>Subject:</b> Re: [GRASS-dev] ​GSoC 2018 report week 01 - GRASS GIS module for Sentinel-2 cloud and shadow detection<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-GB">Hi all!<o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-GB">I have just added a new version of the grass python script to my GitHub repository [0].<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB">I tried to clean up the code. <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB">As always, any feedback is welcome!<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB">Thanks in advance!<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB">Roberta<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB">[0] </span><a href="https://github.com/RobiFag/GRASS_clouds_and_shadows" target="_blank"><span lang="EN-GB" style="font-size:9.5pt;font-family:"Arial",sans-serif;color:#1155CC;background:white">https://github.com/RobiFag/GRASS_clouds_and_shadows</span></a><span lang="EN-GB"><o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
<div>
<p class="MsoNormal"><span lang="NO-NYN">2018-05-21 15:19 GMT+02:00 Roberta Fagandini <</span><a href="mailto:robifagandini@gmail.com" target="_blank"><span lang="NO-NYN">robifagandini@gmail.com</span></a><span lang="NO-NYN">>:<o:p></o:p></span></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt">
<div>
<p class="MsoNormal"><span lang="NO-NYN">Ciao Stefan!<o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span lang="NO-NYN"><o:p> </o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-GB">2018-05-20 21:44 GMT+02:00 Stefan Blumentrath <</span><a href="mailto:Stefan.Blumentrath@nina.no" target="_blank"><span lang="EN-GB">Stefan.Blumentrath@nina.no</span></a><span lang="EN-GB">>:<o:p></o:p></span></p>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt">
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Arial",sans-serif;color:black">Ciao Roberta,
<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Arial",sans-serif;color:black">Thanks for the comprehensive report!
<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Arial",sans-serif;color:black">One general hint: Even if the drawback is complex expression(s) I would suggest merging r.mapcalc calls. That can improve
 performance quite a bit (less data read and written) and reduces the need to manage temporary data.
<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Arial",sans-serif;color:black">See also:
</span><a href="https://grass.osgeo.org/grass74/manuals/r.mapcalc.html#multiple-computations" target="_blank"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Arial",sans-serif">https://grass.osgeo.org/</span></a><a href="https://grass.osgeo.org/grass74/manuals/r.mapcalc.html#multiple-computations" target="_blank"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Arial",sans-serif">grass74</span></a><a href="https://grass.osgeo.org/grass74/manuals/r.mapcalc.html#multiple-computations" target="_blank"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Arial",sans-serif">/manuals/r.mapcalc.html#multiple-computations</span></a><span style="font-size:11.0pt;font-family:"Arial",sans-serif;color:black">
<span lang="EN-GB"><o:p></o:p></span></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Arial",sans-serif;color:black">If you don't need the first_... To fifth_... files later, I would even say everything in 3rd_procedure.py until r.to.vect could be solved in a single
 mapcalc operation...<o:p></o:p></span></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB">Thank you so much for your hints! I'm trying to clean up the code without creating a too complex expression..I hope to share the new version by this evening or tomorrow at the latest.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB"> <o:p></o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt">
<div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Arial",sans-serif;color:black"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Arial",sans-serif;color:black">Kind regards and again thank for your GSoC work,
<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Arial",sans-serif;color:black">Stefan
<o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Arial",sans-serif;color:black"><o:p> </o:p></span></p>
</div>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Thanks again!!<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><span style="color:#888888">Roberta<o:p></o:p></span></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt">
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Arial",sans-serif;color:black"><o:p> </o:p></span></p>
</div>
<div class="MsoNormal" align="center" style="text-align:center">
<hr size="3" width="98%" align="center">
</div>
<div id="gmail-m_5011395501731790359m_1970257380134176614m_1168129798035116451divRplyFwdMsg">
<p class="MsoNormal"><b><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:black">From:</span></b><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:black"> grass-dev <</span><a href="mailto:grass-dev-bounces@lists.osgeo.org" target="_blank"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif">grass-dev-bounces@lists.osgeo.org</span></a><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:black">>
 on behalf of Roberta Fagandini <</span><a href="mailto:robifagandini@gmail.com" target="_blank"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif">robifagandini@gmail.com</span></a><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:black">><br>
<b>Sent:</b> Sunday, May 20, 2018 4:33:57 PM<br>
<b>To:</b> </span><a href="mailto:soc@lists.osgeo.org" target="_blank"><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif">soc@lists.osgeo.org</span></a><span lang="EN-GB" style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:black">;
 GRASS developers list<br>
<b>Subject:</b> [GRASS-dev] ​GSoC 2018 report week 01 - GRASS GIS module for Sentinel-2 cloud and shadow detection</span><span lang="EN-GB">
<o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-GB"> <o:p></o:p></span></p>
</div>
</div>
<div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:9.5pt;font-family:"Arial",sans-serif;color:#222222;background:white">Hi all!</span><span lang="EN-GB"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:9.5pt;font-family:"Arial",sans-serif;color:#222222;background:white">I'm Roberta Fagandini and I'm working on my GSoC project, a </span><span lang="EN-GB" style="font-size:9.5pt;font-family:"Arial",sans-serif">GRASS
 GIS module for Sentinel-2 cloud and shadow detection.</span><span lang="EN-GB"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:9.5pt;font-family:"Arial",sans-serif;color:#222222;background:white">This is my report for the first week of coding.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-family:"Arial",sans-serif;color:black;background:white">Since my progress has been a bit faster than expected I have already discussed with my mentors about further additions to the project. Therefore I have
 already updated my wiki page [0] changing the timeline. In this way, I will be able to release a more complete module.</span><span lang="EN-GB" style="font-size:9.5pt;font-family:"Arial",sans-serif;color:#222222;background:white"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:9.5pt;font-family:"Arial",sans-serif;color:#222222;background:white"><o:p> </o:p></span></p>
</div>
<p class="MsoNormal"><b><span lang="EN-GB" style="font-size:9.5pt;font-family:"Arial",sans-serif;color:#222222;background:white">1) What did I complete this week?</span></b><span lang="EN-GB">
<o:p></o:p></span></p>
<div>
<ul type="disc">
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo3">
<span lang="EN-GB">Checked the prototype version of the algorithm for cloud and shadow detection<o:p></o:p></span></li><li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo3">
Tested it <o:p></o:p></li><li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo3">
<span lang="EN-GB" style="font-family:"Arial",sans-serif;color:#222222;background:white">I better studied the documentation of the GRASS Python Scripting Library and s</span><span lang="EN-GB">tarted coding the GRASS python script following the workflow schema
 prepared during the bonding period [1]<o:p></o:p></span></li><li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo3">
Coded the 'data preparation' phase<o:p></o:p></li><li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo3">
Coded the clouds detection procedure<o:p></o:p></li><li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo3">
<span lang="EN-GB">Added this first part of python script to my GitHub repository [2]<o:p></o:p></span></li><li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo3">
<span lang="EN-GB">Discussed with my mentors about further additions<o:p></o:p></span></li><li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo3">
<span lang="EN-GB">Discussed with the community about testing phase. I received some feedback and some developers stepped forward to help me in testing the algorithm <o:p></o:p></span></li><li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l0 level1 lfo3">
Shared progress with the community<o:p></o:p></li></ul>
<div>
<p class="MsoNormal"><span lang="EN-GB">Unfortunately, I wasn't able to code on Thursday because of a PhD meeting with my supervisor.<o:p></o:p></span></p>
</div>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-size:9.5pt;font-family:"Arial",sans-serif;color:#222222"><br>
<b><span style="background:white">2) What am I going to achieve for next week?</span></b></span><span lang="EN-GB"><o:p></o:p></span></p>
</div>
<div>
<ul type="disc">
<li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l2 level1 lfo4">
<span lang="EN-GB">Finish the translation of the algorithm in a basic python script adding the shadows detection procedure and the steps for checking and cleaning the final outputs (see [1] for details)<o:p></o:p></span></li><li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l2 level1 lfo4">
<span lang="EN-GB">Improve the python script so as to have a "light" working python script (manage temporary file, clean up the code, etc.)<o:p></o:p></span></li><li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l2 level1 lfo4">
Test it and fix bugs<o:p></o:p></li><li class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l2 level1 lfo4">
Start implementing the GUI<o:p></o:p></li></ul>
</div>
<div>
<p class="MsoNormal"><b><span lang="EN-GB" style="font-size:9.5pt;font-family:"Arial",sans-serif;color:#222222;background:white">3) Is there any blocking issue?</span></b><span lang="EN-GB">
<o:p></o:p></span></p>
<div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-family:"Arial",sans-serif;color:black;background:white">No at the moment. <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-family:"Arial",sans-serif;color:black;background:white"><o:p> </o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-family:"Arial",sans-serif;color:black;background:white">Best wishes,<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-family:"Arial",sans-serif;color:black;background:white">Roberta<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-family:"Arial",sans-serif;color:black;background:white"><o:p> </o:p></span></p>
</div>
<div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-family:"Arial",sans-serif;color:black;background:white">[0]
</span><a href="https://trac.osgeo.org/grass/wiki/GSoC/2018/CloudsAndShadowsDetection" target="_blank"><span lang="EN-GB" style="font-family:"Arial",sans-serif;background:white">https://trac.osgeo.org/grass/wiki/GSoC/2018/CloudsAndShadowsDetection</span></a><span lang="EN-GB" style="font-family:"Arial",sans-serif;color:black;background:white"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-family:"Arial",sans-serif;color:black;background:white">[1] </span><a href="https://drive.google.com/file/d/1KYEKvNBurBFHw1xUTLjM0PW80Z-7br81/view?usp=sharing" target="_blank"><span lang="EN-GB" style="font-family:"Arial",sans-serif;background:white">https://drive.google.com/file/d/1KYEKvNBurBFHw1xUTLjM0PW80Z-7br81/view?usp=sharing</span></a><span lang="EN-GB" style="font-family:"Arial",sans-serif;color:black;background:white"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-GB" style="font-family:"Arial",sans-serif;color:black;background:white">[2]
</span><a href="https://github.com/RobiFag/GRASS_clouds_and_shadows" target="_blank"><span lang="EN-GB" style="font-family:"Arial",sans-serif;background:white">https://github.com/RobiFag/GRASS_clouds_and_shadows</span></a><span lang="EN-GB" style="font-family:"Arial",sans-serif;color:black;background:white"><o:p></o:p></span></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
<p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
</div>
</div>
</div>
</div>
</body>
</html>