Better Image Resizing

kind of related, but do you ever notice how hollywood goes nuts with image resizing, mostly from security cameras? they’ll take a crappy image, and tell the IT guy “hey, can you sharpen that up?” then in 5 seconds it’s a crystal clear image of their suspect.

i think the only movie i’ve seen get this right is “revenge” with kevin costner. in this movie, it took them days to enhance/reconstruct an image.

the worst one was probably “enemy of the state” with gene hackman and will smith where they magically create a 3d model of a handbag to see a large bulge in the side that isn’t even facing the camera.

lord trousers:

Yes, upscaling for printing may be necessary, but today many consumer cameras have enough resolution to print on an A4 sheet with good resolution. And still most people only print 4" x 6" pictures. At that size, you only need to upscale if you take pictures with less than 2 megapixels.

So the average person won’t ever need to upscale an image. I have never had to do that, and I have worked for a few years with computer graphics, and as an amateur photographer. I only see the point if you are working with really large images, but if you do you probably have a professional camera with REALLY sharp lenses, and won’t need much more resolution either.

I think we can agree that we would prefer to downscale instead of upscale given the option. However, there are times when a large image is not available and upscaling is the only choice. You’ll never know when you’ll need that one image that just happens to be larger than the largest that’s available.

Availability is the big question. I’ve traded emails with a guy from a commercial research group working on better upscaling for DVD - HDTV conversion. Your typical consumer doesn’t have the luxury of working from the original in this case.

The font is damn blurry here…

If you’re interested in quality, lord trausers is right… you’re looking in entirely the right place. Try the open source tool ImageMagick ( http://www.imagemagick.org/script/index.php ) which supports Gaussian and Lanczos, among a zillion others.

There’s a lot of information theory (specifically sampling theory) which goes into this, and I’m highly skeptical that fractals buy you anything. I know a little about fractals for image compression (generally, they just mean some variation on wavelets) and, seeing as Lanczos comes straight out of information theory, I find it hard to believe that fractals would do any better.

Come to think of it, the Genuine Fractals image looks no better-- and in some ways worse-- than the video scaling built into Mac OS X. The fractal one seems to be doing erronious line/edge detection. Note how the hair to the right of her face doesn’t curve smoothly; the “watercolor effect” Jeff describes.

Hi Jeff. Another contender in the image resizing arena is Alien Skin’s BlowUp, just as the previous commenter mentioned. It’s here:

http://www.alienskin.com/blowup/index.html

My testing shows it to be marginally better or at least as good as Genuine Fractals, though it’s relatively a newcomer and thus not as popular.

I helped make a resizing program called Blow Up. In my opinion it’s always more attractive than bicubic or bilinear. In some cases it does better than Genuine Fractals, such as the Mario example. In other cases it’s about as good at Genuine Fractals. Here are examples from this article.
http://www.flickr.com/photos/jeffrocks/sets/72157600749812246/

We use a polygonal mesh approach rather than fractal compression.

I didn’t want to post this because I don’t want to seem like I’m using Coding Horror for advertising. But Jeff Atwood encouraged me to post, so here you go.

What I’d like to know is, it’s possible to upscale like we see on TV series?
Everytime I see a low res image of video/camera upscaled by 10 times. And It looks almost perfect. :slight_smile:

I realize this is nitpicking, but why refer to “Genuine Fractals” as an algorithm? Theirs is a product, the exact algorithm behind which they’re probably trying to patent (if it isn’t already patented-- I seem to recall from a data compression class many years ago that fractal image compression is patented). The two methods you highlight, one could conceivably research and implement; with GF you can only buy their product.

There’s an even newer contender out there. It’s free to use for desktop resolutions. See for yourself: http://reshade.com.

It seams to work better than any of the other commercial products for resizes of up to 300%.

Thank you, very interesint information. We use CXImage library in one of our products - http://www.softorbits.com/batch_picture_resize/ it supports 8 types of picture resizing algorithms including BSpline, lanzcos, hermite, bicubic (soft and hard). We will try to implement fractal algorithm for more qualitative resizing.

Thank you for your information.
We have a very cheap product called Image Resize
which use the so used Bilinear, Bicubic (sharp and smooth), but we have
also implemented the Biquadratic method (sharp and smooth).
The latest is fastest than bicubic with no deterioration.
But the best to conserve the details is real the Bicubic sharp.

http://www.imresize.com

Is a PC the fastest way to resize images? Is there a FPGA, GPGPU or other specialized hardware that could beat a SOTA x86 PC?
Anyone know of any comparisons such?

Open source Clone of Topaz Moment.

Hello People. You all seem very knowledgeable here about about upsizing ang resampling and I wondered if you could give me a few pointers. I have deciced to make the move to an open source O/S (kubuntu), however an recent favourite program of mine Topaz Moment is Windowz only. I know of Wine and virtualisation, but since I’m a software developer I want to try and create an open source clone of Topaz Moment to give something back. The info about it says it obtains its fabulous results by sampling adjacent frames to one you intend to grab. I wonder if some of you guys could give me a few pointers about this technique and links to any possible algorithm implementations

Thanks in advance T

Thank you for the great article. I found a great tool for resizing and processing of image .This tool provides image resizing maintaining quality. It is very easy to use and you can test it online using their free online resizer. I wish people would talk more about it because it can solve a lot of problems concerning resizing and quality of the picture. I hope it will be useful for you too as it was for me.You can find it at http:reshade.com

Jo jo: I’m not sure what you want to ask, but an FPGA can always be faster for this kind of specific algorithm.

I find the best Method in Photoshop is to Change your mode to 32 bit, then downscale with bilinear. This also prevents the Gamma Error http://www.4p8.com/eric.brasseur/gamma.html?

Once you’re done resizing down - change your mode to what you had it last, be it 16 bit or 8 bit.