[GRASS-user] get the shifted minimum from a raster series

Frank David frank.david at geophom.fr
Thu Feb 7 05:16:47 PST 2019


I forgot one thing to well understand my wish. Each viewshed raster is a 
r.series (250-sum) of 250 r.viewshed with 2m target and 0 upto 250m 
terrain height. So each raster gives the hidden height of a building 
(250m max) anywhere on the region from a specific point of view. The 
purpose is to get the area of hidden wind turbine from roads for a 
specific wind turbine height.

Cheers,

Frank

Le 07/02/2019 à 12:48, Frank David a écrit :
>
> Hi,
>
> Thanks for your reply. I can have numerous raster (several hundreds). 
> I want to find a minimum but with a tolerance, it's why I want to be 
> able to shift the value. In fact I want to sort the value of my all 
> input raster for each x,y cell and get the second or third, or any 
> position in the sorted list, to build my output raster. My application 
> is to get the area not visible from a road (I did 1600 viewshed raster 
> from the roads every 250m). I want a tolerance in order that one point 
> of view (top of hill) does not reduce too much the hidden area. To do 
> so, a fixed number of my point of view (20%) does not reduce the 
> hidden area. The result is the area is hidden from 80% of the road.
>
> I already wrote a python script that read all rasters for each x,y 
> cell and make a array(), sort the array values, and build a raster. It 
> works on reasonable number of cell, but seems to fails with large 
> number of cells. I'm not a programmer !
>
> I wondered if this kind of treatment exists already in Grass.
>
> If somebody wants to hemps me to develop this, I could be nice. But I 
> think it could be an improvement of r.series function.
>
> Sorry for my bad english, I hope you have understand my wishes !
>
> Cheers
>
> Frank
>
> Le 07/02/2019 à 12:04, Veronica Andreo a écrit :
>> Hi Ken,
>>
>> There isn't any build-in function for that in grass, afaik. Depending 
>> on how long is your series, you could shift the map list you use in 
>> each run and then use r.univar on each output from r.series to get 
>> the minimum and by comparison, get the second minimum of the series 
>> of maps (a scalar).
>>
>> However, if what you need is a map of second minimums per pixel, I 
>> believe that might require some programming for a new function... Do 
>> you know any other software which has this function? Maybe, if 
>> there's such thing in Python for example, it could be recycled or 
>> used with grass maps in a script... Dunno, just thinking out loud
>>
>> best,
>> Vero
>>
>> El jue., 7 feb. 2019 07:16, Ken Mankoff <mankoff at gmail.com 
>> <mailto:mankoff at gmail.com>> escribió:
>>
>>     Hi Frank,
>>
>>     On 2019-02-07 at 08:27 +0100, Frank David <frank.david at geophom.fr
>>     <mailto:frank.david at geophom.fr>>
>>     wrote...
>>     > I try to find how to get the shifted minimum value of a series of
>>     > raster map. I want to shift by one, or more, the "minimum"
>>     value found
>>     > on each cell to get the "almost minimum" of the series. Is there an
>>     > available function/method to do that ?
>>
>>     I don't think I fully understand what you want. Are you working
>>     with strds? You mention "series". If I wanted to get the
>>     second-minimum of a single raster, I would use r.stats with the
>>     "-1" flag, sort, and search for the 2nd (or 2nd-to-last).
>>
>>       -k.
>>
>>     _______________________________________________
>>     grass-user mailing list
>>     grass-user at lists.osgeo.org <mailto:grass-user at lists.osgeo.org>
>>     https://lists.osgeo.org/mailman/listinfo/grass-user
>>
>
> _______________________________________________
> grass-user mailing list
> grass-user at lists.osgeo.org
> https://lists.osgeo.org/mailman/listinfo/grass-user
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <http://lists.osgeo.org/pipermail/grass-user/attachments/20190207/e45f4cf7/attachment.html>


More information about the grass-user mailing list