Hi Paulo,

to use it with python just copy the mahalanobis function definitions,
import all necessary libraries and use it as in line 597 (the
covariance matrix and the mean are computed just before this line). I
am sorry that the code is not documented yet. I am not sure if this
will solve the large raster layers problem but you can try it. As you
can see in the script, I did not write the parallel mahalanobis
functions (Sturla Molden in CC did it) and it works perfectly for me,
so I agree that it would be great to implement it also in GRASS (maybe
as an add on?). However, I am not so experienced with that. The
ehab.py script also does a lot data preprocessing to allow batch runs
using heterogeneous data sources and finally performs some patch
analysis and metrics out of the resulting similarity maps using the
ndimage library (scipy). Any help on how to implement it in GRASS
would be more than welcome! Cheers, Javier

On Sun, Feb 15, 2015 at 10:21 PM, Paulo van Breugel
<[email protected]> wrote:
> Hi Javier,
>
> This looks really useful, thanks! My python skills are very limited, so I
> will have to look at it better to see what I can understand. But to start,
> the parallel function, does that also solve the handling of potentially very
> large raster layers?
>
> Btw, this does look like a very useful set of functions, any plan to develop
> this into a GRASS addon or function?
>
> Paulo
>
>
> On Sun, Feb 15, 2015 at 9:22 PM, Javier Martínez-López
> <[email protected]> wrote:
>>
>> Hi Paulo,
>>
>> you can see an implementation of the mahalanobis distance computed in
>> parallel (using all computer processors) for a single image here:
>>
>> https://github.com/javimarlop/eHabpy/blob/master/ehab.py
>>
>> see lines 32-86 and 597. I hope it helps! Cheers, Javier
>>
>> On Sat, Feb 14, 2015 at 7:29 PM, Vaclav Petras <[email protected]>
>> wrote:
>> >
>> > On Sat, Feb 14, 2015 at 11:47 AM, Paulo van Breugel
>> > <[email protected]>
>> > wrote:
>> >>
>> >>
>> >> For a quick solution, what about using r.tile to split the input data
>> >> in
>> >> tiles and compute the mahalanobis distance per tile.
>> >
>> >
>> > See PyGRASS GridModule class which will do tiling (and a lot of other
>> > things) for you.
>> >
>> >
>> > http://grass.osgeo.org/grass70/manuals/libpython/pygrass.modules.grid.html
>> >
>> > _______________________________________________
>> > grass-dev mailing list
>> > [email protected]
>> > http://lists.osgeo.org/mailman/listinfo/grass-dev
>
>
_______________________________________________
grass-dev mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/grass-dev

Reply via email to