<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)">
<style><!--
/* Font Definitions */
@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:11.0pt;
        font-family:"Calibri",sans-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.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:11.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        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;}
--></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 style="mso-fareast-language:EN-US">Hi Allan,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US">g.extension fails in that case on Windows, yes, and modules are not conveniently available to end users.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US">However,
</span><span lang="EN-US">i.ann.maskrcnn does not require compilation since it is a Python tool. So, you could manually copy the Python scripts into your AddOn directory (not ad-hoc sure where the library parts of maskrcnn are supposed to go). That way they
 should be usable.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">There are more developer oriented notes for Windows here:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><a href="https://trac.osgeo.org/grass/wiki/CompileOnWindows">https://trac.osgeo.org/grass/wiki/CompileOnWindows</a><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Hope that helps a bit.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">You may get further responses and more support on the GRASS developers list:
<a href="mailto:grass-dev@lists.osgeo.org">grass-dev@lists.osgeo.org</a><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Cheers,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Stefan<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><b><span lang="EN-US">From:</span></b><span lang="EN-US"> Allan Sims <sims.allan@gmail.com>
<br>
<b>Sent:</b> onsdag 11. november 2020 10:07<br>
<b>To:</b> Stefan Blumentrath <Stefan.Blumentrath@nina.no><br>
<b>Cc:</b> GRASS-PSC <grass-psc@lists.osgeo.org><br>
<b>Subject:</b> Re: [GRASS-PSC] Contribution in AddOns<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal">Dear Stefan,<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">According to the manual: On MS-Windows systems, where compilation tools are typically not readily locally installed, g.extension downloads a precompiled executable from the GRASS GIS project server.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">So, end-user in Windows can't do anything if precompiled file contains errors?<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Regards,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">Allan<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Wed, 11 Nov 2020 at 09:58, Stefan Blumentrath <<a href="mailto:Stefan.Blumentrath@nina.no">Stefan.Blumentrath@nina.no</a>> wrote:<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-right:0cm">
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Hi Allan,<o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">There are definitely more developers on Linux/UNIX, but developing on windows should work and not be an issue, esp. when working with Python.</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">The reason that there are no precompiled versions (and manual) for i.ann.maskrcnn.detect is due to the import of skimage (see below). Using lazy importing for
 skimage should fix this…</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">Cheers,</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">Stefan</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">grass783/x86_64/addons/mswindows/osgeo4w/lib:/c/Users/landa/grass_packager/grass783/x86_64/addons/mswindows/osgeo4w:/c/windows32/system32:/c/windows:/c/windows32/system32:/c/windows"
 LC_ALL=C LANG=C LANGUAGE=C /c/Users/landa/grass_packager/grass784/x86_64/addons/i.ann.maskrcnn/scripts/<a href="https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fi.ann.maskrcnn.detect.py%2F&data=04%7C01%7CStefan.Blumentrath%40nina.no%7C03053a24b2b34d4dd96908d886213f22%7C6cef373021314901831055b3abf02c73%7C0%7C0%7C637406824638388645%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=SaEQFNwnchxpkEHucs%2BE7LcPNKR%2BrFDoluzA2546SbU%3D&reserved=0" target="_blank">i.ann.maskrcnn.detect.py</a>
 --html-description < /dev/null | grep -v '</body>\|</html>' > i.ann.maskrcnn.detect.tmp.html ; fi</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">Traceback (most recent call last):</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">  File "C:/Users/landa/grass_packager/grass784/x86_64/addons/i.ann.maskrcnn/scripts/<a href="https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fi.ann.maskrcnn.detect.py%2F&data=04%7C01%7CStefan.Blumentrath%40nina.no%7C03053a24b2b34d4dd96908d886213f22%7C6cef373021314901831055b3abf02c73%7C0%7C0%7C637406824638388645%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=SaEQFNwnchxpkEHucs%2BE7LcPNKR%2BrFDoluzA2546SbU%3D&reserved=0" target="_blank">i.ann.maskrcnn.detect.py</a>",
 line 87, in <module></span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">    from skimage.measure import find_contours</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">ModuleNotFoundError: No module named 'skimage'</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">make[1]: *** [/c/msys64/usr/src/grass784/include/Make/Html.make:14: i.ann.maskrcnn.detect.tmp.html] Error 1</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US">rm i.ann.maskrcnn.detect.tmp.html</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span lang="EN-US"> </span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b><span lang="EN-US">From:</span></b><span lang="EN-US"> grass-psc <<a href="mailto:grass-psc-bounces@lists.osgeo.org" target="_blank">grass-psc-bounces@lists.osgeo.org</a>>
<b>On Behalf Of </b>Allan Sims<br>
<b>Sent:</b> onsdag 11. november 2020 08:35<br>
<b>To:</b> Ondřej Pešek <<a href="mailto:pesej.ondrek@gmail.com" target="_blank">pesej.ondrek@gmail.com</a>><br>
<b>Cc:</b> GRASS-PSC <<a href="mailto:grass-psc@lists.osgeo.org" target="_blank">grass-psc@lists.osgeo.org</a>><br>
<b>Subject:</b> Re: [GRASS-PSC] Contribution in AddOns</span><o:p></o:p></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Hi,<o:p></o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">I'm using GRASS in Windows; however, I have some trouble to install addons via g.extension. And i.ann.maskrcnn is one of those I have trouble with. Precompile module in <a href="https://eur01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwingrass.fsv.cvut.cz%2Fgrass78%2Fx86_64%2Faddons%2Fgrass-7.8.4%2F&data=04%7C01%7CStefan.Blumentrath%40nina.no%7C03053a24b2b34d4dd96908d886213f22%7C6cef373021314901831055b3abf02c73%7C0%7C0%7C637406824638398641%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=0vmCibqbBs7zdFF4LCl8IgeiPRbGkKatSIWJgWxTYxE%3D&reserved=0" target="_blank">http://wingrass.fsv.cvut.cz/grass78/x86_64/addons/grass-7.8.4/</a>
 do not contain file "i.ann.maskrcnn.detect.html" and this interrupts the installation. Also g.extension expects a html file for every .py file in folder maskrcnnlib.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">How many GRASS developers use Windows? <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Regards,<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Allan<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">On Wed, 11 Nov 2020 at 08:59, Ondřej Pešek <<a href="mailto:pesej.ondrek@gmail.com" target="_blank">pesej.ondrek@gmail.com</a>> wrote:<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" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Hi Allan,<o:p></o:p></p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">po 9. 11. 2020 v 9:41 odesílatel Allan Sims <<a href="mailto:sims.allan@gmail.com" target="_blank">sims.allan@gmail.com</a>> napsal:<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>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">I need and therefore going to develop frontend for python modules "keras" and "tensorflow" to analyze raster images in GRASS. <o:p></o:p></p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Thus, I'd like to have write access for grass-addons repository and develop addons r.keras.*<o:p></o:p></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">This is just great! I'm very happy to hear that.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">As Stefan mentioned, there are the i.ann.maskrcnn.* AddOns. However, these are still written in TF 1.x and therefore anything more modern and flexible would be highly appreciated.
<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">As these modules were part of my work, feel free to contact me if having any question or willing to discuss something. I'm looking forward to seeing more ANN modules up there.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Regards,
<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Ondrej<o:p></o:p></p>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</body>
</html>