
Regular talk in the form of a series of linked lightning talks. We would of course like some time for questions. Could eat up a one hour block with 5 min Q&A after each 5 min talk? (This would mesh better with RiverTV than having all the questions at the end? We’d love feedback and discussion: Much of this is work in progress.
* Jincwindowed Jinc clamped Elliptical Weighted Averaging: A superior alternative to Lanczos Sincwindowed Sinc filtering
Several improvements to Heckbert’s EWA method have produced a filter with the desirable features of the classical Lanczos filters. The method, suitable for demanddriven systems (GEGL, VIPS…) will be described, its strenghts and weaknesses stated, and comparative results involving image enlargement and reduction, computed with the ImageMagick implementation, will be shown. (Presenter: NR. Authors: NR, ATh, FW and CR.)
* High quality automated JPEG thumbnail and reduced image production with adaptive prefiltering
JPEG is still the format of choice for the electronic transmission of small and full size versions of natural images. At low quality levels, however, its block and ringing artifacts reduce its edge over JPEG2000 and dithered PNG8. These artifacts can be reduced by increasing the strength the lowpass filter used to reduce the size of the image. ImageMagick examples, illustrating these and other ways of maximizing bang for the buck, will be discussed. (Presenter: NR. Authors: NR and FW.)
* Nohalo subdivision with Locally Bounded Bicubic finish: A halo free upsampling method
LBBNohalo is a novel halofree resampling method which can be roughtly described as an adaptive blend of Hermite and CatmullRom interpolation. The method, suitable for demanddriven systems, will be described, its strenghts and weaknesses stated, and comparative results involving image enlargement, computed with the VIPS implementation, will be shown. (Presenter: NR. Authors: NR, CR, JC and ATu.)
* Jacobian adaptivity: How to smoothly blend a resampling method tuned for upsampling with one tuned for downsampling
Suppose that you have a favorite sampler tuned for upsampling, and a favorite sampler tuned for downsampling. How do you “”blend”” them so that the “”right”” one is used, yet without “”switching”” artifacts when warping goes from up to downsampling within an image (as can happen when performing a perspective transformation) or in different directions at a single point (like when resizing by making the width smaller but the hight larger)? Answer: Blend depending to the singular values of the Jacobian of the transformation at the point under consideration. Details will be provided, and GEGL results hopefully shown (still coding! the machinery is built into GEGL but no high quality sampler currently uses it). (Presenter: ATu. Authors: NR, ATu, CR and others.)
* The hacker’s guide to the computation of common resampling filters and related geometrical quantities
Several simple but little known formulaic simplifications for common filters (bilinear, CatmullRom, Blackman, …) leading to speedups will be presented. Most have already been implemented in ImageMagick and VIPS. In some cases, calling them directly is faster (and more accurate) than using Look Up Tables. Another example of simplification: Highly efficient trig.free computation of the smallest ellipse containing both the image of a disk by an linear tranformation and the disk itself, and computation of the containing parallelogram with horizontal top and bottom sides. (Presenters: NR and CR. Authors: NR, JC, ATh and CR.)
* Highly accurate polynomial approximation of windowedSinc and windowedJinc filter kernels
The Boost C++ minimax package can be used to produce fast and highly accurate polynomial approximations of nonpolynomial filter kernels. Examples involving both the Sine and Bessel versions of Lanczos 2 and Lanczos 3 will be given. Similar approximations are used by ImageMagick. (Presenter: CR. Authors: NR, CR and ATh.)
In the first segment of the talk, the method I featured was actually the ImageMagick “convert filter lanczossharp distort resize” method, not “convert filter lanczos distort resize”. Reason for the substitution: The full name of the method would overrun the slide width (and I did not want to change the slide format), the results (and frequency response) are visually identical, and this way I could skip explaining the difference between Jinc lanczos 3 and “optimized” Jinc lanczos 3 (a.k.a. lanczossharp in ImageMagick).
(Argh!)
TRUE full address of the pdf of the presentation slides:
http://web.cs.laurentian.ca/nrobidoux/talks/LibreGraphicsMetting2011/BetterAnd...
Or a shorter version.
http://j.mp/liqUf4
The Doom9 Forum thread http://forum.doom9.org/showthread.php?t=145358 contains links to the results of enlarging with the methods discussed in the seminar as well as several stateoftheart schemes including the excellent ICBI and NonRinging Lanczos4.
… and the fantastic NNEDI3.
A Jacobianadaptive blend of LBBNohalo (Nohalo subdivision with Locally Bounded Bicubic interpolation) and Clamped EWA (Elliptical Weighted Averaging) teepee filtering is in GEGL. You can see the code here: http://git.gnome.org/browse/gegl/tree/gegl/buffer/geglsamplerlohalo.c
The abstract above is missing the full names of my collaborators:
JC = John Cupitt
CR = Chantal Racette
ATh = Anthony Thyssen
ATu = Adam Turcotte
FW = Frederick (Fred) Weinhaus
OK Nicolas. We’ll correct that.
I was asked to kill time while notsoearlyrisers drifted into the conference room. The actual technical talk starts 4 minutes and 12 seconds into the video.