[gdal-dev] downsampling geotiff with a low-pass filter
Kay F. Jahnke
_kfj at yahoo.com
Fri Nov 16 02:35:33 PST 2018
On 16.11.18 10:07, Even Rouault wrote:
>> Upsampling is well
>> covered: cubicspline and lanczos are reasonably sophisticated upsampling
>> filters,
>
> Did you actually try them for downsampling ? They are for sure widely used in
> that case already, for example when using gdaladdo to create overviews. For
> example cubicspline has a filter radius of 2. If you downsample by a factor of
> X, the effective radius will be 2 X.
I did try them, and the result looks 'okay', but I have reservations. I
come from a DSP background. If my understanding of the mathematics
involved is correct, evaluating a spline over a data set will produce
values which are appropriate at a given resolution. If you use these
values at a lower resolution, you may get aliasing if the initial signal
has high frequency content. Aliasing always happens if there is high
frequency content and you resample with a lower sampling rate. You can
only avoid it by using a low-pass filter before resampling. So I'm
trying to find out if this does happen here.
If I understand this correctly, the effective radius signifies the
number of spline coefficients contributing to the interpolated value, it
does not imply a low-pass filter. If the spline (and I suspect it's a
B-spline) is created by first prefiltering the data and then evaluating
the spline at the desired target locations, the interpolation criterion
is fulfilled and there is no smoothing.
Omitting the prefiltering and using the original data as spline
coefficients does some smoothing, but from a cubic spline the effect is
small and does not vary with the scale of the downsampling, so it would
not work equally well for different scale changes.
Maybe you can point me to the place in the source code where the
relevant math happens? I had a look but it's very complex and I did not
find my way in easily.
> They are for sure widely used
This doesn't automatically make them correct. If my suspicions are
founded, then there may be room for improvement.
Kay
More information about the gdal-dev
mailing list