[GRASSLIST:9484] Re: SRTM shifted 0.5 the res in X and Y axis from the r.mapcalc output

William Kyngesburye woklist at kyngchaos.com
Wed Dec 14 15:50:27 EST 2005


I don't think there is a problem.  I worried about and checked this  
when I started converting and filling SRTM data.

Since the cell centers of a SRTM tile range from degree to the next  
degree (so there is a 1 cell overlap between all tiles), the GRASS  
region will appear to be off by 1.5 seconds - it won't line up on  
even degrees.

The problem, in your example at least may be that you used d.zoom  
before r.mapcalc.  d.zoom doesn't restrain itself to cell boundaries  
(as you can see from the region after zooming), and r.mapcalc will  
create the test raster at whatever region is set.  Then, of course  
they will not align.


On Dec 14, 2005, at 1:28 PM, Maciek Sieczka wrote:

> This might be connected with my [GRASSLIST:9409].
>
> SRTM tiles imported with r.in.srtm are shifted 0.5 the resolution in X
> and Y axis from the native Grass rasters cretaed with r.mapcalc in the
> same location.
>
> See the attached picture and notes below. I'm not doing anything
> unusuall. Why are these two rasters shifted? I don't think they should
> be. I guess that when importing data like SRTM (BIL), where the
> coordinates are of the cell centre, into Grass, where coordinates  
> are of
> the cell ll corner, shuch data should shifted to conform to Grass  
> grid.
> Correct me please if this is rubbish what I suppose, but I'm puzzled
> that I have two rasters of the same res in Grass and they don't fit  
> each
> other.
>
>
>
> # 1. import a 3" SRTM tile
> r.in.srtm input=/home/maciek/gis/dane/srtm2/N49E023.hgt.zip
> output=N49E023
>
> g.region rast=N49E023 -p projection: 3 (Latitude-Longitude)
> zone:       0
> datum:      wgs84
> ellipsoid:  wgs84
> north:      50:00:01.5N
> south:      48:59:58.5N
> west:       22:59:58.5E
> east:       24:00:01.5E
> nsres:      0:00:03
> ewres:      0:00:03
> rows:       1201
> cols:       1201
>
> # colour it and zoom to the top-right corner of the tile to see single
> # cells
> r.colors N49E023 col=grey.eq
> d.rast N49E023
> d.zoom
>
> # create a GRASS raster there, in the same resolution
> r.mapcalc 'test=rand(0,1000)'
>
> # increase the resolution so that any small shift is visible
> g.region res=0:0:0.1 -p
> projection: 3 (Latitude-Longitude)
> zone:       0
> datum:      wgs84
> ellipsoid:  wgs84
> north:      50:00:09N
> south:      49:59:48N
> west:       23:59:54E
> east:       24:00:12E
> nsres:      0:00:00.1
> ewres:      0:00:00.1
> rows:       210
> cols:       180
>
> # display the Grass raster and overlay an SRTM
> d.erase; d.rast test; d.rast N49E023 -o
>
> # here's the shift
>
> See the attachment - grey is the SRTM, r.mapcalc ouput in random  
> colors.
>

-----
William Kyngesburye <kyngchaos at kyngchaos.com>
http://www.kyngchaos.com/

"This is a question about the past, is it? ... How can I tell that  
the past isn't a fiction designed to account for the discrepancy  
between my immediate physical sensations and my state of mind?"

- The Ruler of the Universe




More information about the grass-user mailing list