Thanks Jérôme, I will look into your code. Having other filter might be useful 
for my case.

While looking for code, I've also found this (pure python) implementation:
http://stackoverflow.com/questions/12729228/simple-efficient-bilinear-interpolation-of-images-in-numpy-and-python


Nicolas


> On 14 Dec 2014, at 09:03, Jerome Kieffer <jerome.kief...@esrf.fr> wrote:
> 
> On Sat, 13 Dec 2014 16:53:06 +0100
> "Nicolas P. Rougier" <nicolas.roug...@inria.fr> wrote:
> 
>> 
>> Hi all,
>> 
>> Does anyone has a simple 2D linear interpolation for resizing an image 
>> (without scipy) ?
>> 
>> Ideally, something like ```def zoom(Z, ratio): ...``` where Z is a 2D scalar 
>> array and ratio the scaling factor.
>> (I'm currently using ```scipy.ndimage.interpolation.zoom``` but I would like 
>> to avoid the scipy dependency)
> 
> Hi Nicolas,
> 
> I have a self-contained cython class for that:
> https://github.com/kif/pyFAI/blob/master/src/bilinear.pyx
> 
> The formula for bilinear interpolation in implemented there but it
> needs some additionnal work for what you want to do.
> 
> Beside this I implemented an antialiased downscaler using Lanczos (order 1, 2 
> or 3)
> https://github.com/kif/imagizer/blob/qt/src/down_sampler.pyx.
> 
> Create a downscaler:
> ds = down_sampler.DownScaler()
> scaled_img = ds.scale(img, 4.5)
> 
> In this case the interpolation will be done on a vinicy of (2*4.5*3+1) pixel 
> in the input image (and 2*3+1 in the output image) as it is doing Lanczos 3 
> by default.
> This implementation is 2x faster than the Antialiased downscaler in PIL.
> 
> Cheers,
> 
> -- 
> Jérôme Kieffer
> Data analysis unit - ESRF
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion@scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion

_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion

Reply via email to