What would be the recommended way to downsample a raster?
my region resolution is currently 100m, say I want to resample my
rasters at 300m.
Why would I want to do that? Well, currently the data is too rough,
but filtering may introduce some artifacts.
I know I'll loose some information with the downscaling, but that is
precisely what I want, because I deem the roughness to be just noise.
I am not sure if just filtering would do the same.
what would be the best way to achieve this?
thanks.
--
Paulo Marcondes = PU1/PU2PIX
-22.915 -42.224 = GG86jc
What would be the recommended way to downsample a raster?
my region resolution is currently 100m, say I want to resample my
rasters at 300m.
Why would I want to do that? Well, currently the data is too rough,
but filtering may introduce some artifacts.
I know I'll loose some information with the downscaling, but that is
precisely what I want, because I deem the roughness to be just noise.
I am not sure if just filtering would do the same.
On Wed, 2008-06-18 at 13:10 -0700, Dylan Beaudette wrote:
On Wednesday 18 June 2008, Paulo Marcondes wrote:
> Hi,
>
> What would be the recommended way to downsample a raster?
>
> my region resolution is currently 100m, say I want to resample my
> rasters at 300m.
>
> Why would I want to do that? Well, currently the data is too rough,
> but filtering may introduce some artifacts.
> I know I'll loose some information with the downscaling, but that is
> precisely what I want, because I deem the roughness to be just noise.
> I am not sure if just filtering would do the same.
>
> what would be the best way to achieve this?
>
> thanks.
r.resamp.stats (>=GRASS 6.3)
What about cubic upscaling and then back to your original resolution?
On Thursday 19 June 2008 12:06:03 Nikos Alexandris wrote:
On Wed, 2008-06-18 at 13:10 -0700, Dylan Beaudette wrote:
> r.resamp.stats (>=GRASS 6.3)
What about cubic upscaling and then back to your original resolution?
I would say that r.resamp.stats is a better way. What you are trying to do is
to degrade the resolution of your initial data, and you're trying to come up
with a value that is representative of the distribution of higher resolution
pixels. If you are using discrete data (land use classes or somesuch), then
the mode is possibly useful. For continuous fields, depending on the
distribution, you might want to use some other metric.
Your method just takes one value and assigns it to the lower resolution data,
without any regard to its significance.
What would be the recommended way to downsample a raster?
my region resolution is currently 100m, say I want to resample my
rasters at 300m.
Why would I want to do that? Well, currently the data is too rough,
but filtering may introduce some artifacts.
Ultimately, resampling is also filtering, and may also introduce
artifacts. Actually, downsampling without filtering (i.e. nearest
neighbour resampling) will probably produce worse results than the
typical filters.
I know I'll loose some information with the downscaling, but that is
precisely what I want, because I deem the roughness to be just noise.
I am not sure if just filtering would do the same.
what would be the best way to achieve this?
The "best" way is subjective, but the main options are
r.resamp.interp, r.resamp.stats, r.resamp.rst, r.mfilter.fp, or any
combination of those.
Another option is to use i.fft followed by i.ifft with a mask applied.
However, that requires that your raster contains no null cells (so you
may need to use e.g. r.fillnulls first), and it also requires that you
can fit the entire raster in memory (so it isn't suitable for very
high resolution data).