contains an add-on (the gzipped tar gimptests.tgz) to the "kingfisher" test

and the "shefoxes" test

Here is a copy of the README file which is found at the top level of the tar 


This is an add-on to


from which the t*.png and 133*.png pictures were taken.


Four proposed plug-ins are included. 

EANBQH.c (Exact Area Natural Biquadratic Histosplines)

EANBQHgamma.c (same with gamma correction)

IBFNBQH.c (Interpolatory Box Filtered Natural BiQuadratic Histosplines)

IBFNBQHgamma.c (same with gamma correction)

Install with the usual 

gimptool -install EANBQH.c 

The plug-ins install themselves in the "Image" menu of the image
window. The plug-ins can also be used in batch mode (passing arguments
at the command line instead of using the GUI).

These plug-ins have been extensively tested but nonetheless these are
PRELIMINARY VERSIONS: The plug-ins are currently being substantially
rewritten for speed. (Our C programming skills have improved since
these plug-ins were originally written...)

Note that these plug-ins are already fast: on a current intel laptop,
they enlarge very large images a little faster than the built-in gimp

I would be delighted to see one or more of the four integrated into
the GIMP core.


I suggested that it may be easier to integrate one of the above into
the gimp than fixing some (still?) present problems found in the gimp
lanczos code.

The "gamma" versions have to do with the following suggested added
feature: Most linear (convolution-like) image operations should
ideally be performed on images with gamma=1 (linear mode). However,
most images are gamma corrected (gamma is usually not 1). 

My suggested feature is as follows: When performing such an operation
the user has an option to specifying the gamma value of the "input"
(to be resized) image, as well as the gamma correction of the "output"
image. If this feature was to be fully
implemented, an additional pair of chained (by default) windows for
the input and output gammas would be added to the GUI.

EANBQHgamma.c and IBFNBQHgamma.c (in the current preliminary versions)
perform the resizing as if the input image is known to have a
gamma=2.2 (gamma value which approximates sRGB) and the output image
is to have the same gamma correction.  Note that I suspect that this
gamma value of 2.2 is incorrect for at least one of the two test



The "IBF" plug-ins use the "corner" image size convention, the "EA"
plug-ins use the "center" image size convention (the same as the
gimp's image resize as currently configured, as well as imagemagick's,
for example). I could, however, produce versions of "IBF" which uses
the "center" convention, and versions of "EA" which uses the corner
convention. The current conventions are the most natural for each


Personal opinion:

Besides the difference in image size convention (which, as I
mentioned, can be changed) the "IBF" methods produces images which are
slightly smoother than the "EA" ones, without noticeably worse
blurring, and with slightly less haloing and aliasing. In my opinion,
the "EA" methods probably should not be used with very noisy images,
and one could argue that the "IBF" methods are better across the
board, with the possible exception of images which are text-like.


How the new images were produced:

After installing the plug-ins, the t8.png and t9.png images were
loaded into the gimp.

t9.png was enlarged to 369x247 and right cropped to 320x247 (to mimic
the cropping of the scaletest images).

t8.png was converted to RGB mode (the original is indexed) and
enlarged to I did not take the time to figure out exactly how these
were cropped, so I did not crop my enlargements.


Comments welcome.

If there is interest in integrating one of the methods into mainstream
gimp, I will endeavour to get it done within a two months or so.


Note that I am working on more sophisticated enlargement
methods---co-convex methods---and novel downsizing methods based on a
novel sharpening method. These, however, will not be ready before a
few months, at the earliest.

I am also in the process of producing 16 bit greyscale C filter
versions of the various methods (for pseudo-pgm images).

Nicolas Robidoux
Department of Mathematics and Computer Science/Departement de mathematiques et 
Laurentian University/Universite Laurentienne
Gimp-developer mailing list

Reply via email to