Resources and Support
 Pixel Joint Forum : The Lounge : Resources and Support
Message Icon Topic: A quick pixel art technique survey. Post Reply Post New Topic
Author Message
1ucas
Commander
Commander
Avatar

Joined: 27 June 2005
Location: Brazil
Online Status: Offline
Posts: 174
Quote 1ucas Replybullet Topic: A quick pixel art technique survey.
    Posted: 16 March 2010 at 7:09pm
Hey guys.

This may sound like a bizarre request, but it would help me greatly in my little experiment. :)

Could you guys create 2x and/or 3x scaled versions of this image, without adding any new color?



Please, try to preserve the perceptual curvatures and line thickness as much as you can.
I want to study everyone's techniques used for this kind of thing.

I'm working on a pixel art scaling algorithm, and I just need a few goal posts.

All the existing ones are quite naive, I'm trying something different.
I already have a rough draft of one, but it still has its quirks.

Well, thanks in advance!

Edited by 1ucas - 16 March 2010 at 9:12pm
IP IP Logged
jalonso
Admiral
Admiral
Avatar

Joined: 29 November 2022
Online Status: Offline
Posts: 13537
Quote jalonso Replybullet Posted: 16 March 2010 at 7:44pm
Interesting request. Sounds sooooooo easy, but is probably tougher than it looks. I'll post mine tomorrow,
IP IP Logged
1ucas
Commander
Commander
Avatar

Joined: 27 June 2005
Location: Brazil
Online Status: Offline
Posts: 174
Quote 1ucas Replybullet Posted: 16 March 2010 at 8:21pm
It is tougher than it looks, and it is even tougher for a computer to do it automatically.

That's why I'm trying to study just how we do it, so I can extract some useful information for the algorithm.

For example, you can't just duplicate the curves in size and add new pixels. You have to remove a few so the curvature looks right again, and the removal is uneven
depending on which side of the curve you're dealing with.

Here's an example:

(green pixels were added, red ones were removed)

Deciding which pixels to add and remove has been challenging, and getting a few examples would help me find the ideal technique.

Edited by 1ucas - 16 March 2010 at 8:24pm
IP IP Logged
greenraven
Commander
Commander
Avatar

Joined: 08 September 2016
Online Status: Offline
Posts: 2598
Quote greenraven Replybullet Posted: 16 March 2010 at 9:35pm
Actually since you said you wanted to do 2x or 3x that's exactly what I'd do. One pixel would be 2x2 or 3x3. Or maybe I misunderstood something? :\
"pwnage comes with patience, practice and planning." ~ Jalonso   
IP IP Logged
1ucas
Commander
Commander
Avatar

Joined: 27 June 2005
Location: Brazil
Online Status: Offline
Posts: 174
Quote 1ucas Replybullet Posted: 16 March 2010 at 9:42pm
I'm talking about adding and removing extra pixels after you do that, so the image looks larger but still smooth.

For example:


You start small, double the image, and fill in extra pixels between the doubled ones so the line looks sharp again.

It's a form of interpolation, but a more pixel art specific one.
IP IP Logged
greenraven
Commander
Commander
Avatar

Joined: 08 September 2016
Online Status: Offline
Posts: 2598
Quote greenraven Replybullet Posted: 17 March 2010 at 7:28am
Oh, well that kinda changes everything. I though you just wanted literally 2x or 3x. Nevermind. XD
"pwnage comes with patience, practice and planning." ~ Jalonso   
IP IP Logged
onek
Commander
Commander
Avatar

Joined: 19 May 2009
Online Status: Offline
Posts: 416
Quote onek Replybullet Posted: 18 March 2010 at 9:48am
more challenging than i thought at first, indeed.... heres my try on a 2x scaled version


(green - added/ red - removed)

tried to keep curvatures and thickness as good as i could.... the curves could be done better but i tried to keep a certain regularity in my process....
i somewhat feeled there was pattern to what i did, but im not rly able to explain it :(



Edited by onek - 18 March 2010 at 9:49am
IP IP Logged
1ucas
Commander
Commander
Avatar

Joined: 27 June 2005
Location: Brazil
Online Status: Offline
Posts: 174
Quote 1ucas Replybullet Posted: 18 March 2010 at 1:07pm
Originally posted by onek

more challenging than i thought at first, indeed.... heres my try on a 2x scaled version


Awesome! That's exactly what I needed! Thanks for highlighting the pixels too. :)

Originally posted by onek

i somewhat feeled there was pattern to what i did, but im not rly able to explain it :(


Yeah, I know what you mean. This survey is my attempt at figuring out just how we do it, and put that into an algorithm.

Thank you a lot, onek!
IP IP Logged
onek
Commander
Commander
Avatar

Joined: 19 May 2009
Online Status: Offline
Posts: 416
Quote onek Replybullet Posted: 18 March 2010 at 1:57pm
ur welcome... im glad helping u ...i hope ull be successful with that algorithm.... though, i think it might be very difficult especially when it comes to multicolor stuff, like where is to be decided which colors gotta be kept and which removed etc.....
anyway i hope it will work out , since i also dont like that 2xsal/ hqnx etc. stuff very much...
IP IP Logged
AngelOTG
Commander
Commander
Avatar

Joined: 28 February 2009
Online Status: Offline
Posts: 258
Quote AngelOTG Replybullet Posted: 19 March 2010 at 4:23am
I see a pattern in Onek's edit. Notice how all the pixels removed (the red) have the exact same amount of pixels added (the green) above them, with one additional added.

So if he has taken away two pixels below, he adds three pixels above that. If he takes away one, he adds two to the flip side.

The only ones that do not conform to this pattern are the 45 degree angles.
IP IP Logged
Hatch
Admiral
Admiral
Avatar

Joined: 05 August 2015
Online Status: Offline
Posts: 1387
Quote Hatch Replybullet Posted: 19 March 2010 at 11:02am
Have you examined some of the existing pixel art scaling algorithms?
IP IP Logged
1ucas
Commander
Commander
Avatar

Joined: 27 June 2005
Location: Brazil
Online Status: Offline
Posts: 174
Quote 1ucas Replybullet Posted: 19 March 2010 at 11:55am
Originally posted by Hatch

Have you examined some of the existing pixel art scaling algorithms?


If you had read the original post, you'd have noticed I already mentioned these (even with the same link) and how they are too naive.

The current algorithms all work with a local matrix, so they don't preserve curves too well and shapes look generally blotchy.

I'm trying to create a smarter one, that takes curvature and visual color weight into account, perhaps even automatic palette reuse.

It's more of an interesting side project than a necessity, but I'm sure such an algorithm would prove itself useful. Either way, it should be fun to attempt something new.
IP IP Logged
Hatch
Admiral
Admiral
Avatar

Joined: 05 August 2015
Online Status: Offline
Posts: 1387
Quote Hatch Replybullet Posted: 19 March 2010 at 2:00pm
Oops! My bad. I quickly scanned this while at work and replied without reading fully. Apologies!

Anyhow, I wasn't suggesting that you should use them and not bother writing your own, but that they might be useful starting points for writing a new algorithm. I agree that they're fairly unsatisfying for a lot of things.

But you already knew about them, obviously, so my post was spectacularly pointless. I shall make amends by attempting to scale your image as requested.

EDIT: And here it is.



I found that when trying to precisely preserve line weight, I was off by half a pixel, which is why mine seems to sort of jump around.


Edited by Hatch - 19 March 2010 at 4:02pm
IP IP Logged
Manupix
Commander
Commander
Avatar

Joined: 05 November 2024
Online Status: Offline
Posts: 771
Quote Manupix Replybullet Posted: 21 March 2010 at 6:30am
Interesting experiment.
Thanks to Hatch's post, I discovered scaling algorithms. I too hadn't read your first post carefully.

Here's mine:



First try was by using photoshop resizing (tried all options other than nearest neighbor) then 'cleaning' by using levels, or other suitable settings. Much worse than I'd have thought.

Then handiwork. I also find that I tend to grow outward to preserve curve smoothness; I was surprised that you can't just add pixels to an iso 1/2 line (tried 3 options for the diamond); and had to move a few 1/1 lines by 1 px to preserve pointy angles.


IP IP Logged
Post Reply Post New Topic
Printable version Printable version

Forum Jump
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot delete your posts in this forum
You cannot edit your posts in this forum
You cannot create polls in this forum
You cannot vote in polls in this forum