Image Resizer (specially for upscaling Pixel Art)

Started by RyanBram, Wed 03/04/2013 18:15:38

Previous topic - Next topic

RyanBram

I started this topic for supporting another thread that I made in AGS Engine Development.

1. Description
Image resizer is a free software designed for resizing image especially for upscaling low res pixel art image multiple times. This software contains many pixel art scaling algorithm that only can be found in video game emulators as image filter.

Screenshot:
Spoiler
[close]

2. Usage
The user interface is very straightforward, you just:
- Choose an image that you want to upscale;
- Choose scaling method that you desire (I recommended use xBR 3x <NoBlend>, but another method is also worth to be tried);
- Set another parameter if necessary;
- Save as your image.

3. Limitations
The limitation of these pixel art algorithm are they only capable for magnifying picture in predefined size, such as 2x, 3x, or 4x and cannot be used to shrink images. The solution when you want to resize you picture with custom size is to magnify the picture with the pixel art scaling algorithms first, then shrink it with lanczos or another filter to the desired size. For example, a pixel art image with dimension 2x2 pixel want to be scaled until 7x7 pixel (almost 4 times of its original size). So the solution is by using - let's say - Hq4x filter to magnify it until 8x8 pixel, then shrink it with lanczos filter to 7x7 pixel. The image will looks perfectly with this method.

4. Comparison
- This image is scaled four times:
Spoiler


[close]
- This image is scaled four times:
Spoiler


[close]
- Guybrush Threepwood sprite from  Monkey Island 2: LeChuck's Revenge  is scaled 12 times:
Spoiler


NEAREST NEIGHBOUR


xBR 3x <NoBlend>
[close]

5. Download
You can obtain the program at its main site, just make sure .Net Framework 4 is installed in your computer.


Best regards,

RyanBram

Eric

The results look similar to the Illustrator LiveTrace function. Interesting.

RyanBram

#2
Quote from: Eric on Wed 03/04/2013 20:21:35
The results look similar to the Illustrator LiveTrace function. Interesting.

Yeah, it is interesting. Thanks, Eric. But there is something more interesting. You can trace the original pictures above with Illustrator LiveTrace and see that ImageResizer will give better results than Illustrator LiveTrace  :wink:, because  it wasn't designed for tracing such a small picture. And the most interesting is ImageResizer is free and opensource. :smiley:

Or you can see below comparison :
1. Image Resizer
Spoiler
[close]
2. Illustrator LiveTrace
Spoiler
[close]

Retro Wolf

I've been experimenting with LiveTrace recently, I find that I have to tidy up the vectors to get a satisfying result. With this program, I don't need to!

Eric

I've re-read my initial post, and want to clarify that I wasn't implying that anything untoward was going on, but simply that this reminded me of what vectorization of raster images looks like. I genuinely thought it was interesting. I'll give this a try when I get home tonight!

selmiak

Well, I guess then you would have to resize the background without the sprites and objects first and then draw the sprites and objects resized with this filter in top of it otherwise these nice outline might be blended in with the bg. As much as I like crisp pixel art I'd surely give it a try. Maybe even optimise pixelart to this filter if it was ever implemented in the engine.

RyanBram

#6
Quote from: Oldschool_Wolf on Wed 03/04/2013 21:48:43
I've been experimenting with LiveTrace recently, I find that I have to tidy up the vectors to get a satisfying result. With this program, I don't need to!

Yeah, thanks to authors who spend their time creating these algorithm and release it to public without price just like Chris Jones who create AGS.

Quote from: selmiak on Thu 04/04/2013 15:03:54
Well, I guess then you would have to resize the background without the sprites and objects first and then draw the sprites and objects resized with this filter in top of it otherwise these nice outline might be blended in with the bg. As much as I like crisp pixel art I'd surely give it a try. Maybe even optimise pixelart to this filter if it was ever implemented in the engine.

That doesn't necessary, because new filter called xBR have feature for not blending the image that we resize which mean there aren't additional colors in the result image. So the number of unique colors from original and the result remain same and pixel art will stay as pixel art but with smoother appearance as illustrated in following screenshot:
Spoiler




[close]

Scavenger

I'm not convinced. I've always been wary of filters myself, they seem to just butcher the spirit of the sprite in question. I thought that I wasn't going to have much luck with resizing some tiny sprites (since they have less data to work with), so I tried out some hi res sprites:

Spoiler

[close]

And I was like, eh.

Then I tried it out on my own game's art:
Spoiler




[close]

And it actually didn't look that bad. It gets confused often, especially with shallow curves and diagonal lines. It works best with large, non-dithered, shaded sprites (and the background really doesn't lose much, apart from gaining the zig zag dither lines). I still wouldn't play an entire game with it, since the result is kind of crude, but it could serve as a good jumping off point for redrawing sprites at a higher resolution.

dbuske

https://www.dropbox.com/s/aczc2l8411nwwj9/ImageResizer-r133.exe?dl=0
this is where you can download 2dimagefilter r133. This is the latest version of the program.
It was not easy to find.
What if your blessings come through raindrops
What if your healing comes through tears...

SMF spam blocked by CleanTalk