[geeks] silly graphics idea: how to scale an image

Joshua D Boyd jdboyd at cs.millersville.edu
Tue Jul 9 12:58:00 CDT 2002


> Almost all image scaling software I've played with (and read about)
> simply makes square pixels bigger, and then possibly smooths them out.
> This only works for relatively small amounts of scaling, but soon the
> pixelation (square blocky-ness) is unavoidable, even if you do several
> steps, smoothing between each (I think XV does this best, though you
> still have to save and reload between steps to get it to work best).

Actually, most good software (photoshop, gimp, others) use something
called bicubic interpolation.  Basically this is building a spline
curve using the existing pixels as control points, that drawing that
curve as colors along the new line.  Pictures blown up with this
method get blurry, but never pixelated.

A few programs (gliv for instance) use linear interpolation.  This
isn't as good, but it also never get pixelated.
 
> However When you optically blow up an image from film (or even a
> half-tone'd printed image), it gets grainy, not pixelated, and to my
> eyes at least this process much more accurately mimics what happens when
> you optically magnify the light coming right off a real object.
> 
> Why not make pixels into circles as you expand them, keeping their
> centers close enough to not have any spaces in between and "properly"
> mixing the overlap (whatever that means in terms of translucency or
> whatever)?
 
This isn't a pad idea.  Pointillism plugins are basically doing just
this.  Plugins for creating a grain effect usually are using some sort
of perlin noise rather than blown up circles to my understanding.  

You probably would want the circles to overlap and bleed together I'm thinking.

-- 
Joshua D. Boyd



More information about the geeks mailing list