Nicolas Robidoux wrote:
> There are already two fast nonlinear resamplers implemented in GEGL:
> YAFR (gegl-sampler-yafr.c)
> and
> Nohalo-sharp (gegl-sampler-sharp.c). 

I'm not familiar with those two resamplers.  Of course, that's not saying
much, because it's not my area of expertise.  I should mention, however,
that I consider NEDI and ICBI interpolators of a different kind than most.  

First of all, they are very slow compared to bicubic.  Speed is not the

Secondly, they don't provide a value for any point in between given pixels. 
Rather, their purpose is to enlarge the image in question by a factor of 2
(roughly.  Actually it's   size*2-1).  After scaling, the image can be
resampled to any size desired using other methods.  Both algorithms copy
known (given) pixel values into a 2x enlarged grid and then fill in the gaps
between pixels using certain assumptions about the statistical values of the

The main benefit of both algorithms is the performance around edges.  ICBI
is an improvement on NEDI.  Edges are much smoother and more natural than

Basically, these would be useful for creating high-quality scaled versions
of images where you can leave them to work for a while.  For instance, I
tried to run ICBI (in an inefficient matlab implementation) on a 3072x2304
image, and I ended up stopping it after about 30 mins.  

I would expect a C implementation to be much faster (especially because it
wouldn't thrash the HD as much, since it would be designed with the purpose
in mind instead of using general purpose functions).  

I explain all this to try to decide if the goal of ICBI is different than
nohalo, and if there would be a reason to try to code it.  Is there a paper
I can read on nohalo?  Or examples of results that I could compare to ICBI?


View this message in context:
Sent from the Gimp Developer mailing list archive at

Gimp-developer mailing list

Reply via email to