Re: [GRASS-user] Elevation above a river
Would you be able to give me an example of this please? This software is really really good. I absolutely love it. Keep up the great work!! Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* On Sat, Sep 22, 2018 at 3:25 PM, johannesradinger < johannesradin...@gmail.com> wrote: > You could also try larger size parameters depending on the degree of > filtering you want to achieve > > > > Sent from my Samsung Galaxy smartphone. > > Original message > From: Shane Carey > Date: 22/09/2018 15:47 (GMT+01:00) > To: johannesradinger > Cc: Markus Neteler , GRASS user list < > grass-user@lists.osgeo.org> > Subject: Re: [GRASS-user] Elevation above a river > > No worries, I'm not seeing any differences in the original and the > filtered cells. I've tried mode and max methods > > Thanks > > Le gach dea ghui, > *Shane Carey* > *GIS and Data Solutions Consultant* > > On Sat, Sep 22, 2018 at 2:39 PM, johannesradinger < > johannesradin...@gmail.com> wrote: > >> Sorry I ment method=mode or median as stated by Markus N. >> >> >> >> Sent from my Samsung Galaxy smartphone. >> >> Original message >> From: Shane Carey >> Date: 22/09/2018 15:05 (GMT+01:00) >> To: Johannes Radinger >> Cc: Markus Neteler , GRASS user list < >> grass-user@lists.osgeo.org> >> Subject: Re: [GRASS-user] Elevation above a river >> >> This works a treat - super stuff - thanks Johannes. >> >> Could you point me in the direction of an algorithim with Grass that can >> do the following: >> >> # Clean some of the spurious cells etc. (using some kind of neighbourhood >> filtering) >> >> Thanks very much >> >> Le gach dea ghui, >> *Shane Carey* >> *GIS and Data Solutions Consultant* >> >> On Sun, Sep 16, 2018 at 8:46 PM, Johannes Radinger < >> johannesradin...@gmail.com> wrote: >> >>> That is were the third step should follow, i.e. using r.mapcalc to >>> identify all the cells that are 1m higher than the grown river >>> (irrespective in which distance from the river these cells are located). >>> The rasterized area could then be translated into a vector format using >>> r.to.vect. >>> >>> Here a small example of how the working flow could be using the North >>> Caroline example dataset: >>> ## >>> # Set region >>> g.region raster=elevation@PERMANENT >>> >>> # Extract elevation of the streams >>> r.mapcalc --o expression="streams_elevation = if( >>> streams_derived@PERMANENT, elevation@PERMANENT,null())" >>> >>> # Grow stream_elevation map by a some hundred meters >>> r.grow -m --overwrite input=streams_elevation >>> output=streams_elevation_grow radius=500 >>> >>> # Calculate difference between original elevatoin and stream channel >>> elevation >>> r.mapcalc expression="stream_elevation_diff = elevation@PERMANENT - >>> streams_elevation_grow" --overwrite >>> >>> # Extract areas that are than x meters higher than stream channel >>> elevation >>> r.mapcalc expression="stream_elevation_diff_smaller1 = if( >>> stream_elevation_diff < 1,1,null())" --overwrite >>> >>> # Maybe here it needs some cleaning of spurious cells etc. (using some >>> kind of neighbourhood filtering) >>> >>> # Raster areas to a vector area (with smoothed corners; s-flag) >>> r.to.vect -s --overwrite input=stream_elevation_diff_smaller1 >>> output=stream_elevation_diff_smaller1_area type=area >>> ## >>> >>> HTH >>> /Johannes >>> >>> On Sun, Sep 16, 2018 at 8:53 PM Shane Carey wrote: >>> >>>> Hey Johannes, >>>> >>>> Thanks for your reply. How does r.grow work if let's say the height >>>> above the river reaches 1m at 3meters away from the river. And in an other >>>> area it reaches the 1meter height at 2meters away from the river. Is it >>>> able to follow that line? >>>> >>>> Thanks >>>> >>>> On Domh 16 MFómh 2018 at 17:21, Johannes Radinger < >>>> johannesradin...@gmail.com> wrote: >>>> >>>>> To me this looks like a flooding-related question, i.e. to extract the >>>>> shore lines of a river if it's water level is raised by 1m or 3m? >>>>> Maybe (1) extract the raster cells of the elevation map that &g
Re: [GRASS-user] Elevation above a river
You could also try larger size parameters depending on the degree of filtering you want to achieve Sent from my Samsung Galaxy smartphone. Original message From: Shane Carey Date: 22/09/2018 15:47 (GMT+01:00) To: johannesradinger Cc: Markus Neteler , GRASS user list Subject: Re: [GRASS-user] Elevation above a river No worries, I'm not seeing any differences in the original and the filtered cells. I've tried mode and max methods Thanks Le gach dea ghui, Shane CareyGIS and Data Solutions Consultant On Sat, Sep 22, 2018 at 2:39 PM, johannesradinger wrote: Sorry I ment method=mode or median as stated by Markus N. Sent from my Samsung Galaxy smartphone. Original message From: Shane Carey Date: 22/09/2018 15:05 (GMT+01:00) To: Johannes Radinger Cc: Markus Neteler , GRASS user list Subject: Re: [GRASS-user] Elevation above a river This works a treat - super stuff - thanks Johannes. Could you point me in the direction of an algorithim with Grass that can do the following: # Clean some of the spurious cells etc. (using some kind of neighbourhood filtering) Thanks very much Le gach dea ghui, Shane CareyGIS and Data Solutions Consultant On Sun, Sep 16, 2018 at 8:46 PM, Johannes Radinger wrote: That is were the third step should follow, i.e. using r.mapcalc to identify all the cells that are 1m higher than the grown river (irrespective in which distance from the river these cells are located). The rasterized area could then be translated into a vector format using r.to.vect. Here a small example of how the working flow could be using the North Caroline example dataset:### Set regiong.region raster=elevation@PERMANENT # Extract elevation of the streamsr.mapcalc --o expression="streams_elevation = if( streams_derived@PERMANENT, elevation@PERMANENT,null())" # Grow stream_elevation map by a some hundred metersr.grow -m --overwrite input=streams_elevation output=streams_elevation_grow radius=500 # Calculate difference between original elevatoin and stream channel elevationr.mapcalc expression="stream_elevation_diff = elevation@PERMANENT - streams_elevation_grow" --overwrite # Extract areas that are than x meters higher than stream channel elevationr.mapcalc expression="stream_elevation_diff_smaller1 = if( stream_elevation_diff < 1,1,null())" --overwrite # Maybe here it needs some cleaning of spurious cells etc. (using some kind of neighbourhood filtering) # Raster areas to a vector area (with smoothed corners; s-flag)r.to.vect -s --overwrite input=stream_elevation_diff_smaller1 output=stream_elevation_diff_smaller1_area type=area## HTH/Johannes On Sun, Sep 16, 2018 at 8:53 PM Shane Carey wrote: Hey Johannes, Thanks for your reply. How does r.grow work if let's say the height above the river reaches 1m at 3meters away from the river. And in an other area it reaches the 1meter height at 2meters away from the river. Is it able to follow that line? Thanks On Domh 16 MFómh 2018 at 17:21, Johannes Radinger wrote: To me this looks like a flooding-related question, i.e. to extract the shore lines of a river if it's water level is raised by 1m or 3m?Maybe (1) extract the raster cells of the elevation map that represents the river channel, (2) then apply r.grow and (3) then r.mapcalc to subtract the grown river channel from the original elevation map. /Johannes On Sun, Sep 16, 2018 at 5:16 PM Markus Neteler wrote: Hi, Shane Carey schrieb am Fr., 14. Sep. 2018, 23:02: Hi All, Does anyone know is it possible to calculate the elevation above a river channel (actual river network that was digitised as opposed to being extracted from a DTM) from a DTM and create a polygon from it. I need to calculate heights of 1m and 3m above a river channel on both sides of the channel and create a polygon from it. This isn't clear to me. Could you elaborate? BestMarkus Thanks all. Le gach dea ghui, Shane CareyGIS and Data Solutions Consultant ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user -- Le gach dea ghui, Shane CareyGIS and Data Solutions Consultant ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] Elevation above a river
No worries, I'm not seeing any differences in the original and the filtered cells. I've tried mode and max methods Thanks Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* On Sat, Sep 22, 2018 at 2:39 PM, johannesradinger < johannesradin...@gmail.com> wrote: > Sorry I ment method=mode or median as stated by Markus N. > > > > Sent from my Samsung Galaxy smartphone. > > Original message > From: Shane Carey > Date: 22/09/2018 15:05 (GMT+01:00) > To: Johannes Radinger > Cc: Markus Neteler , GRASS user list < > grass-user@lists.osgeo.org> > Subject: Re: [GRASS-user] Elevation above a river > > This works a treat - super stuff - thanks Johannes. > > Could you point me in the direction of an algorithim with Grass that can > do the following: > > # Clean some of the spurious cells etc. (using some kind of neighbourhood > filtering) > > Thanks very much > > Le gach dea ghui, > *Shane Carey* > *GIS and Data Solutions Consultant* > > On Sun, Sep 16, 2018 at 8:46 PM, Johannes Radinger < > johannesradin...@gmail.com> wrote: > >> That is were the third step should follow, i.e. using r.mapcalc to >> identify all the cells that are 1m higher than the grown river >> (irrespective in which distance from the river these cells are located). >> The rasterized area could then be translated into a vector format using >> r.to.vect. >> >> Here a small example of how the working flow could be using the North >> Caroline example dataset: >> ## >> # Set region >> g.region raster=elevation@PERMANENT >> >> # Extract elevation of the streams >> r.mapcalc --o expression="streams_elevation = if( >> streams_derived@PERMANENT, elevation@PERMANENT,null())" >> >> # Grow stream_elevation map by a some hundred meters >> r.grow -m --overwrite input=streams_elevation >> output=streams_elevation_grow radius=500 >> >> # Calculate difference between original elevatoin and stream channel >> elevation >> r.mapcalc expression="stream_elevation_diff = elevation@PERMANENT - >> streams_elevation_grow" --overwrite >> >> # Extract areas that are than x meters higher than stream channel >> elevation >> r.mapcalc expression="stream_elevation_diff_smaller1 = if( >> stream_elevation_diff < 1,1,null())" --overwrite >> >> # Maybe here it needs some cleaning of spurious cells etc. (using some >> kind of neighbourhood filtering) >> >> # Raster areas to a vector area (with smoothed corners; s-flag) >> r.to.vect -s --overwrite input=stream_elevation_diff_smaller1 >> output=stream_elevation_diff_smaller1_area type=area >> ## >> >> HTH >> /Johannes >> >> On Sun, Sep 16, 2018 at 8:53 PM Shane Carey wrote: >> >>> Hey Johannes, >>> >>> Thanks for your reply. How does r.grow work if let's say the height >>> above the river reaches 1m at 3meters away from the river. And in an other >>> area it reaches the 1meter height at 2meters away from the river. Is it >>> able to follow that line? >>> >>> Thanks >>> >>> On Domh 16 MFómh 2018 at 17:21, Johannes Radinger < >>> johannesradin...@gmail.com> wrote: >>> >>>> To me this looks like a flooding-related question, i.e. to extract the >>>> shore lines of a river if it's water level is raised by 1m or 3m? >>>> Maybe (1) extract the raster cells of the elevation map that represents >>>> the river channel, (2) then apply r.grow and (3) then r.mapcalc to subtract >>>> the grown river channel from the original elevation map. >>>> /Johannes >>>> >>>> On Sun, Sep 16, 2018 at 5:16 PM Markus Neteler >>>> wrote: >>>> >>>>> Hi, >>>>> >>>>> Shane Carey schrieb am Fr., 14. Sep. 2018, >>>>> 23:02: >>>>> >>>>>> Hi All, >>>>>> >>>>>> Does anyone know is it possible to calculate the elevation above a >>>>>> river channel (actual river network that was digitised as opposed to >>>>>> being >>>>>> extracted from a DTM) from a DTM and create a polygon from it. >>>>>> >>>>>> I need to calculate heights of 1m and 3m above a river channel on >>>>>> both sides of the channel and create a polygon from it. >>>>>> >>>>> >>>>> This isn't clear to me. Could you elaborate? >>>>> >>>>> Best >>>>> Markus >>>>> >>>>> >>>>> Thanks all. >>>>>> >>>>>> Le gach dea ghui, >>>>>> *Shane Carey* >>>>>> *GIS and Data Solutions Consultant* >>>>>> ___ >>>>>> grass-user mailing list >>>>>> grass-user@lists.osgeo.org >>>>>> https://lists.osgeo.org/mailman/listinfo/grass-user >>>>> >>>>> ___ >>>>> grass-user mailing list >>>>> grass-user@lists.osgeo.org >>>>> https://lists.osgeo.org/mailman/listinfo/grass-user >>>> >>>> -- >>> Le gach dea ghui, >>> *Shane Carey* >>> *GIS and Data Solutions Consultant* >>> >> > ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] Elevation above a river
Sorry I ment method=mode or median as stated by Markus N. Sent from my Samsung Galaxy smartphone. Original message From: Shane Carey Date: 22/09/2018 15:05 (GMT+01:00) To: Johannes Radinger Cc: Markus Neteler , GRASS user list Subject: Re: [GRASS-user] Elevation above a river This works a treat - super stuff - thanks Johannes. Could you point me in the direction of an algorithim with Grass that can do the following: # Clean some of the spurious cells etc. (using some kind of neighbourhood filtering) Thanks very much Le gach dea ghui, Shane CareyGIS and Data Solutions Consultant On Sun, Sep 16, 2018 at 8:46 PM, Johannes Radinger wrote: That is were the third step should follow, i.e. using r.mapcalc to identify all the cells that are 1m higher than the grown river (irrespective in which distance from the river these cells are located). The rasterized area could then be translated into a vector format using r.to.vect. Here a small example of how the working flow could be using the North Caroline example dataset:### Set regiong.region raster=elevation@PERMANENT # Extract elevation of the streamsr.mapcalc --o expression="streams_elevation = if( streams_derived@PERMANENT, elevation@PERMANENT,null())" # Grow stream_elevation map by a some hundred metersr.grow -m --overwrite input=streams_elevation output=streams_elevation_grow radius=500 # Calculate difference between original elevatoin and stream channel elevationr.mapcalc expression="stream_elevation_diff = elevation@PERMANENT - streams_elevation_grow" --overwrite # Extract areas that are than x meters higher than stream channel elevationr.mapcalc expression="stream_elevation_diff_smaller1 = if( stream_elevation_diff < 1,1,null())" --overwrite # Maybe here it needs some cleaning of spurious cells etc. (using some kind of neighbourhood filtering) # Raster areas to a vector area (with smoothed corners; s-flag)r.to.vect -s --overwrite input=stream_elevation_diff_smaller1 output=stream_elevation_diff_smaller1_area type=area## HTH/Johannes On Sun, Sep 16, 2018 at 8:53 PM Shane Carey wrote: Hey Johannes, Thanks for your reply. How does r.grow work if let's say the height above the river reaches 1m at 3meters away from the river. And in an other area it reaches the 1meter height at 2meters away from the river. Is it able to follow that line? Thanks On Domh 16 MFómh 2018 at 17:21, Johannes Radinger wrote: To me this looks like a flooding-related question, i.e. to extract the shore lines of a river if it's water level is raised by 1m or 3m?Maybe (1) extract the raster cells of the elevation map that represents the river channel, (2) then apply r.grow and (3) then r.mapcalc to subtract the grown river channel from the original elevation map. /Johannes On Sun, Sep 16, 2018 at 5:16 PM Markus Neteler wrote: Hi, Shane Carey schrieb am Fr., 14. Sep. 2018, 23:02: Hi All, Does anyone know is it possible to calculate the elevation above a river channel (actual river network that was digitised as opposed to being extracted from a DTM) from a DTM and create a polygon from it. I need to calculate heights of 1m and 3m above a river channel on both sides of the channel and create a polygon from it. This isn't clear to me. Could you elaborate? BestMarkus Thanks all. Le gach dea ghui, Shane CareyGIS and Data Solutions Consultant ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user -- Le gach dea ghui, Shane CareyGIS and Data Solutions Consultant ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] Elevation above a river
You could have a look at r.neighbors (https://grass.osgeo.org/grass74/manuals/r.neighbors.html) with method=maximum. /Johannes Sent from my Samsung Galaxy smartphone. Original message From: Shane Carey Date: 22/09/2018 15:05 (GMT+01:00) To: Johannes Radinger Cc: Markus Neteler , GRASS user list Subject: Re: [GRASS-user] Elevation above a river This works a treat - super stuff - thanks Johannes. Could you point me in the direction of an algorithim with Grass that can do the following: # Clean some of the spurious cells etc. (using some kind of neighbourhood filtering) Thanks very much Le gach dea ghui, Shane CareyGIS and Data Solutions Consultant On Sun, Sep 16, 2018 at 8:46 PM, Johannes Radinger wrote: That is were the third step should follow, i.e. using r.mapcalc to identify all the cells that are 1m higher than the grown river (irrespective in which distance from the river these cells are located). The rasterized area could then be translated into a vector format using r.to.vect. Here a small example of how the working flow could be using the North Caroline example dataset:### Set regiong.region raster=elevation@PERMANENT # Extract elevation of the streamsr.mapcalc --o expression="streams_elevation = if( streams_derived@PERMANENT, elevation@PERMANENT,null())" # Grow stream_elevation map by a some hundred metersr.grow -m --overwrite input=streams_elevation output=streams_elevation_grow radius=500 # Calculate difference between original elevatoin and stream channel elevationr.mapcalc expression="stream_elevation_diff = elevation@PERMANENT - streams_elevation_grow" --overwrite # Extract areas that are than x meters higher than stream channel elevationr.mapcalc expression="stream_elevation_diff_smaller1 = if( stream_elevation_diff < 1,1,null())" --overwrite # Maybe here it needs some cleaning of spurious cells etc. (using some kind of neighbourhood filtering) # Raster areas to a vector area (with smoothed corners; s-flag)r.to.vect -s --overwrite input=stream_elevation_diff_smaller1 output=stream_elevation_diff_smaller1_area type=area## HTH/Johannes On Sun, Sep 16, 2018 at 8:53 PM Shane Carey wrote: Hey Johannes, Thanks for your reply. How does r.grow work if let's say the height above the river reaches 1m at 3meters away from the river. And in an other area it reaches the 1meter height at 2meters away from the river. Is it able to follow that line? Thanks On Domh 16 MFómh 2018 at 17:21, Johannes Radinger wrote: To me this looks like a flooding-related question, i.e. to extract the shore lines of a river if it's water level is raised by 1m or 3m?Maybe (1) extract the raster cells of the elevation map that represents the river channel, (2) then apply r.grow and (3) then r.mapcalc to subtract the grown river channel from the original elevation map. /Johannes On Sun, Sep 16, 2018 at 5:16 PM Markus Neteler wrote: Hi, Shane Carey schrieb am Fr., 14. Sep. 2018, 23:02: Hi All, Does anyone know is it possible to calculate the elevation above a river channel (actual river network that was digitised as opposed to being extracted from a DTM) from a DTM and create a polygon from it. I need to calculate heights of 1m and 3m above a river channel on both sides of the channel and create a polygon from it. This isn't clear to me. Could you elaborate? BestMarkus Thanks all. Le gach dea ghui, Shane CareyGIS and Data Solutions Consultant ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user -- Le gach dea ghui, Shane CareyGIS and Data Solutions Consultant ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] Elevation above a river
Shane Carey schrieb am Sa., 22. Sep. 2018, 15:05: > This works a treat - super stuff - thanks Johannes. > > Could you point me in the direction of an algorithim with Grass that can > do the following: > > # Clean some of the spurious cells etc. (using some kind of neighbourhood > filtering) > You can do that for example with r.neighbors and 'mode' method. Best markusN ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] Elevation above a river
This works a treat - super stuff - thanks Johannes. Could you point me in the direction of an algorithim with Grass that can do the following: # Clean some of the spurious cells etc. (using some kind of neighbourhood filtering) Thanks very much Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* On Sun, Sep 16, 2018 at 8:46 PM, Johannes Radinger < johannesradin...@gmail.com> wrote: > That is were the third step should follow, i.e. using r.mapcalc to > identify all the cells that are 1m higher than the grown river > (irrespective in which distance from the river these cells are located). > The rasterized area could then be translated into a vector format using > r.to.vect. > > Here a small example of how the working flow could be using the North > Caroline example dataset: > ## > # Set region > g.region raster=elevation@PERMANENT > > # Extract elevation of the streams > r.mapcalc --o expression="streams_elevation = if( streams_derived@PERMANENT, > elevation@PERMANENT,null())" > > # Grow stream_elevation map by a some hundred meters > r.grow -m --overwrite input=streams_elevation > output=streams_elevation_grow radius=500 > > # Calculate difference between original elevatoin and stream channel > elevation > r.mapcalc expression="stream_elevation_diff = elevation@PERMANENT - > streams_elevation_grow" --overwrite > > # Extract areas that are than x meters higher than stream channel elevation > r.mapcalc expression="stream_elevation_diff_smaller1 = if( > stream_elevation_diff < 1,1,null())" --overwrite > > # Maybe here it needs some cleaning of spurious cells etc. (using some > kind of neighbourhood filtering) > > # Raster areas to a vector area (with smoothed corners; s-flag) > r.to.vect -s --overwrite input=stream_elevation_diff_smaller1 > output=stream_elevation_diff_smaller1_area type=area > ## > > HTH > /Johannes > > On Sun, Sep 16, 2018 at 8:53 PM Shane Carey wrote: > >> Hey Johannes, >> >> Thanks for your reply. How does r.grow work if let's say the height above >> the river reaches 1m at 3meters away from the river. And in an other area >> it reaches the 1meter height at 2meters away from the river. Is it able to >> follow that line? >> >> Thanks >> >> On Domh 16 MFómh 2018 at 17:21, Johannes Radinger < >> johannesradin...@gmail.com> wrote: >> >>> To me this looks like a flooding-related question, i.e. to extract the >>> shore lines of a river if it's water level is raised by 1m or 3m? >>> Maybe (1) extract the raster cells of the elevation map that represents >>> the river channel, (2) then apply r.grow and (3) then r.mapcalc to subtract >>> the grown river channel from the original elevation map. >>> /Johannes >>> >>> On Sun, Sep 16, 2018 at 5:16 PM Markus Neteler >>> wrote: >>> Hi, Shane Carey schrieb am Fr., 14. Sep. 2018, 23:02: > Hi All, > > Does anyone know is it possible to calculate the elevation above a > river channel (actual river network that was digitised as opposed to being > extracted from a DTM) from a DTM and create a polygon from it. > > I need to calculate heights of 1m and 3m above a river channel on both > sides of the channel and create a polygon from it. > This isn't clear to me. Could you elaborate? Best Markus Thanks all. > > Le gach dea ghui, > *Shane Carey* > *GIS and Data Solutions Consultant* > ___ > grass-user mailing list > grass-user@lists.osgeo.org > https://lists.osgeo.org/mailman/listinfo/grass-user ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user >>> >>> -- >> Le gach dea ghui, >> *Shane Carey* >> *GIS and Data Solutions Consultant* >> > ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] Elevation above a river
Ok great - thanks. I think I will use r.carve to carve the streams into the DTM first and then use this procedure you have described. Do you with the seed raster (for r.lake) if I convert the stream to raster, will ever cell be a seed point (i.e. Water will be placed into every cell at a height of x?)? If so, this is exactly what I need. Thanks On Luan 17 MFómh 2018 at 04:22, Vaclav Petras wrote: > Hi Shane, > > On Fri, Sep 14, 2018 at 5:03 PM Shane Carey wrote: > >> >> Does anyone know is it possible to calculate the elevation above a river >> channel (actual river network that was digitised as opposed to being >> extracted from a DTM) from a DTM and create a polygon from it. >> >> I need to calculate heights of 1m and 3m above a river channel on both >> sides of the channel and create a polygon from it. >> > > Maybe Height Above Nearest Drainage (HAND) is what you are looking for. It > is basically done using: > > r.stream.distance stream_rast=streams direction=drainage > elevation=elevation method=downstream difference=above_stream > > See full workflow here: > > > https://grasswiki.osgeo.org/wiki/From_GRASS_GIS_novice_to_power_user_(workshop_at_FOSS4G_Boston_2017)#Hydrology:_Estimating_inundation_extent_using_HAND_methodology > > You will need to do some post processing with r.lake or r.mapcalc and > r.to.vect to get the polygons. > > Since you already have the streams and you want to use them, you need to > convert them to raster and then also get stream direction for > r.stream.distance by reclassifying, e.g. with r.mapcalc, output from > something like this: > > v.to.rast in=streams output=streams_dir use=dir > > which you can see in context here (different hydrology tool): > > > http://ncsu-geoforall-lab.github.io/geospatial-modeling-course/grass/simwe.html > > However, I would be careful about how the streams fit with the terrain you > are using to be sure results make sense. > > Vaclav > > -- Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] Elevation above a river
Hi Shane, On Fri, Sep 14, 2018 at 5:03 PM Shane Carey wrote: > > Does anyone know is it possible to calculate the elevation above a river > channel (actual river network that was digitised as opposed to being > extracted from a DTM) from a DTM and create a polygon from it. > > I need to calculate heights of 1m and 3m above a river channel on both > sides of the channel and create a polygon from it. > Maybe Height Above Nearest Drainage (HAND) is what you are looking for. It is basically done using: r.stream.distance stream_rast=streams direction=drainage elevation=elevation method=downstream difference=above_stream See full workflow here: https://grasswiki.osgeo.org/wiki/From_GRASS_GIS_novice_to_power_user_(workshop_at_FOSS4G_Boston_2017)#Hydrology:_Estimating_inundation_extent_using_HAND_methodology You will need to do some post processing with r.lake or r.mapcalc and r.to.vect to get the polygons. Since you already have the streams and you want to use them, you need to convert them to raster and then also get stream direction for r.stream.distance by reclassifying, e.g. with r.mapcalc, output from something like this: v.to.rast in=streams output=streams_dir use=dir which you can see in context here (different hydrology tool): http://ncsu-geoforall-lab.github.io/geospatial-modeling-course/grass/simwe.html However, I would be careful about how the streams fit with the terrain you are using to be sure results make sense. Vaclav ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] Elevation above a river
That is were the third step should follow, i.e. using r.mapcalc to identify all the cells that are 1m higher than the grown river (irrespective in which distance from the river these cells are located). The rasterized area could then be translated into a vector format using r.to.vect. Here a small example of how the working flow could be using the North Caroline example dataset: ## # Set region g.region raster=elevation@PERMANENT # Extract elevation of the streams r.mapcalc --o expression="streams_elevation = if( streams_derived@PERMANENT, elevation@PERMANENT,null())" # Grow stream_elevation map by a some hundred meters r.grow -m --overwrite input=streams_elevation output=streams_elevation_grow radius=500 # Calculate difference between original elevatoin and stream channel elevation r.mapcalc expression="stream_elevation_diff = elevation@PERMANENT - streams_elevation_grow" --overwrite # Extract areas that are than x meters higher than stream channel elevation r.mapcalc expression="stream_elevation_diff_smaller1 = if( stream_elevation_diff < 1,1,null())" --overwrite # Maybe here it needs some cleaning of spurious cells etc. (using some kind of neighbourhood filtering) # Raster areas to a vector area (with smoothed corners; s-flag) r.to.vect -s --overwrite input=stream_elevation_diff_smaller1 output=stream_elevation_diff_smaller1_area type=area ## HTH /Johannes On Sun, Sep 16, 2018 at 8:53 PM Shane Carey wrote: > Hey Johannes, > > Thanks for your reply. How does r.grow work if let's say the height above > the river reaches 1m at 3meters away from the river. And in an other area > it reaches the 1meter height at 2meters away from the river. Is it able to > follow that line? > > Thanks > > On Domh 16 MFómh 2018 at 17:21, Johannes Radinger < > johannesradin...@gmail.com> wrote: > >> To me this looks like a flooding-related question, i.e. to extract the >> shore lines of a river if it's water level is raised by 1m or 3m? >> Maybe (1) extract the raster cells of the elevation map that represents >> the river channel, (2) then apply r.grow and (3) then r.mapcalc to subtract >> the grown river channel from the original elevation map. >> /Johannes >> >> On Sun, Sep 16, 2018 at 5:16 PM Markus Neteler wrote: >> >>> Hi, >>> >>> Shane Carey schrieb am Fr., 14. Sep. 2018, 23:02: >>> Hi All, Does anyone know is it possible to calculate the elevation above a river channel (actual river network that was digitised as opposed to being extracted from a DTM) from a DTM and create a polygon from it. I need to calculate heights of 1m and 3m above a river channel on both sides of the channel and create a polygon from it. >>> >>> This isn't clear to me. Could you elaborate? >>> >>> Best >>> Markus >>> >>> >>> Thanks all. Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user >>> >>> ___ >>> grass-user mailing list >>> grass-user@lists.osgeo.org >>> https://lists.osgeo.org/mailman/listinfo/grass-user >> >> -- > Le gach dea ghui, > *Shane Carey* > *GIS and Data Solutions Consultant* > ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] Elevation above a river
Hey Johannes, Thanks for your reply. How does r.grow work if let's say the height above the river reaches 1m at 3meters away from the river. And in an other area it reaches the 1meter height at 2meters away from the river. Is it able to follow that line? Thanks On Domh 16 MFómh 2018 at 17:21, Johannes Radinger < johannesradin...@gmail.com> wrote: > To me this looks like a flooding-related question, i.e. to extract the > shore lines of a river if it's water level is raised by 1m or 3m? > Maybe (1) extract the raster cells of the elevation map that represents > the river channel, (2) then apply r.grow and (3) then r.mapcalc to subtract > the grown river channel from the original elevation map. > /Johannes > > On Sun, Sep 16, 2018 at 5:16 PM Markus Neteler wrote: > >> Hi, >> >> Shane Carey schrieb am Fr., 14. Sep. 2018, 23:02: >> >>> Hi All, >>> >>> Does anyone know is it possible to calculate the elevation above a river >>> channel (actual river network that was digitised as opposed to being >>> extracted from a DTM) from a DTM and create a polygon from it. >>> >>> I need to calculate heights of 1m and 3m above a river channel on both >>> sides of the channel and create a polygon from it. >>> >> >> This isn't clear to me. Could you elaborate? >> >> Best >> Markus >> >> >> Thanks all. >>> >>> Le gach dea ghui, >>> *Shane Carey* >>> *GIS and Data Solutions Consultant* >>> ___ >>> grass-user mailing list >>> grass-user@lists.osgeo.org >>> https://lists.osgeo.org/mailman/listinfo/grass-user >> >> ___ >> grass-user mailing list >> grass-user@lists.osgeo.org >> https://lists.osgeo.org/mailman/listinfo/grass-user > > -- Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] Elevation above a river
Cool thanks. I think this might work. Cheers for this - really great idea and help!! On Domh 16 MFómh 2018 at 17:21, Johannes Radinger < johannesradin...@gmail.com> wrote: > To me this looks like a flooding-related question, i.e. to extract the > shore lines of a river if it's water level is raised by 1m or 3m? > Maybe (1) extract the raster cells of the elevation map that represents > the river channel, (2) then apply r.grow and (3) then r.mapcalc to subtract > the grown river channel from the original elevation map. > /Johannes > > On Sun, Sep 16, 2018 at 5:16 PM Markus Neteler wrote: > >> Hi, >> >> Shane Carey schrieb am Fr., 14. Sep. 2018, 23:02: >> >>> Hi All, >>> >>> Does anyone know is it possible to calculate the elevation above a river >>> channel (actual river network that was digitised as opposed to being >>> extracted from a DTM) from a DTM and create a polygon from it. >>> >>> I need to calculate heights of 1m and 3m above a river channel on both >>> sides of the channel and create a polygon from it. >>> >> >> This isn't clear to me. Could you elaborate? >> >> Best >> Markus >> >> >> Thanks all. >>> >>> Le gach dea ghui, >>> *Shane Carey* >>> *GIS and Data Solutions Consultant* >>> ___ >>> grass-user mailing list >>> grass-user@lists.osgeo.org >>> https://lists.osgeo.org/mailman/listinfo/grass-user >> >> ___ >> grass-user mailing list >> grass-user@lists.osgeo.org >> https://lists.osgeo.org/mailman/listinfo/grass-user > > -- Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] Elevation above a river
Hi, I'm not sure I made myself clear. I have a "real" river vector dataset of an area. It includes artificial channels also. This dataset was digitised manually and does not match the extracted river dataset from DTM algorithms in grass (r.stream.extraxt) I need to use the real river vector dataset - hence maybe alter the DTM so that it picks up these "real" rivers (perhaps by using r.carve?) as opposed to what would be created by r.stream.extract. And then when that step is complete, obtain elevation height above the river. Hope this makes sense and I am clear in my explanation. Many thanks all. On Domh 16 MFómh 2018 at 17:21, Johannes Radinger < johannesradin...@gmail.com> wrote: > To me this looks like a flooding-related question, i.e. to extract the > shore lines of a river if it's water level is raised by 1m or 3m? > Maybe (1) extract the raster cells of the elevation map that represents > the river channel, (2) then apply r.grow and (3) then r.mapcalc to subtract > the grown river channel from the original elevation map. > /Johannes > > On Sun, Sep 16, 2018 at 5:16 PM Markus Neteler wrote: > >> Hi, >> >> Shane Carey schrieb am Fr., 14. Sep. 2018, 23:02: >> >>> Hi All, >>> >>> Does anyone know is it possible to calculate the elevation above a river >>> channel (actual river network that was digitised as opposed to being >>> extracted from a DTM) from a DTM and create a polygon from it. >>> >>> I need to calculate heights of 1m and 3m above a river channel on both >>> sides of the channel and create a polygon from it. >>> >> >> This isn't clear to me. Could you elaborate? >> >> Best >> Markus >> >> >> Thanks all. >>> >>> Le gach dea ghui, >>> *Shane Carey* >>> *GIS and Data Solutions Consultant* >>> ___ >>> grass-user mailing list >>> grass-user@lists.osgeo.org >>> https://lists.osgeo.org/mailman/listinfo/grass-user >> >> ___ >> grass-user mailing list >> grass-user@lists.osgeo.org >> https://lists.osgeo.org/mailman/listinfo/grass-user > > -- Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] Elevation above a river
To me this looks like a flooding-related question, i.e. to extract the shore lines of a river if it's water level is raised by 1m or 3m? Maybe (1) extract the raster cells of the elevation map that represents the river channel, (2) then apply r.grow and (3) then r.mapcalc to subtract the grown river channel from the original elevation map. /Johannes On Sun, Sep 16, 2018 at 5:16 PM Markus Neteler wrote: > Hi, > > Shane Carey schrieb am Fr., 14. Sep. 2018, 23:02: > >> Hi All, >> >> Does anyone know is it possible to calculate the elevation above a river >> channel (actual river network that was digitised as opposed to being >> extracted from a DTM) from a DTM and create a polygon from it. >> >> I need to calculate heights of 1m and 3m above a river channel on both >> sides of the channel and create a polygon from it. >> > > This isn't clear to me. Could you elaborate? > > Best > Markus > > > Thanks all. >> >> Le gach dea ghui, >> *Shane Carey* >> *GIS and Data Solutions Consultant* >> ___ >> grass-user mailing list >> grass-user@lists.osgeo.org >> https://lists.osgeo.org/mailman/listinfo/grass-user > > ___ > grass-user mailing list > grass-user@lists.osgeo.org > https://lists.osgeo.org/mailman/listinfo/grass-user ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
Re: [GRASS-user] Elevation above a river
Hi, Shane Carey schrieb am Fr., 14. Sep. 2018, 23:02: > Hi All, > > Does anyone know is it possible to calculate the elevation above a river > channel (actual river network that was digitised as opposed to being > extracted from a DTM) from a DTM and create a polygon from it. > > I need to calculate heights of 1m and 3m above a river channel on both > sides of the channel and create a polygon from it. > This isn't clear to me. Could you elaborate? Best Markus Thanks all. > > Le gach dea ghui, > *Shane Carey* > *GIS and Data Solutions Consultant* > ___ > grass-user mailing list > grass-user@lists.osgeo.org > https://lists.osgeo.org/mailman/listinfo/grass-user ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user
[GRASS-user] Elevation above a river
Hi All, Does anyone know is it possible to calculate the elevation above a river channel (actual river network that was digitised as opposed to being extracted from a DTM) from a DTM and create a polygon from it. I need to calculate heights of 1m and 3m above a river channel on both sides of the channel and create a polygon from it. Thanks all. Le gach dea ghui, *Shane Carey* *GIS and Data Solutions Consultant* ___ grass-user mailing list grass-user@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/grass-user