Sign up now! · Forgot password?
RSS/Atom feed identi.ca Twitter

Upgraded palette-sort.py plugin

This discussion is connected to the gimp-developer-list.gnome.org mailing list which is provided by the GIMP developers and not related to gimpusers.com.

This is a read-only list on gimpusers.com so this discussion thread is read-only, too.

4 of 4 messages available
Toggle history

Please log in to manage your subscriptions.

Upgraded palette-sort.py plugin David Gowers 03 Nov 12:33
  Upgraded palette-sort.py plugin Joao S. O. Bueno 04 Nov 03:47
   Upgraded palette-sort.py plugin David Gowers 04 Nov 12:01
    Upgraded palette-sort.py plugin David Gowers 06 Nov 05:20
David Gowers
2012-11-03 12:33:43 UTC (almost 6 years ago)

Upgraded palette-sort.py plugin

Hi,
I got tired of being unable to get any use out of the 'sort palette' plugin and made some major upgrades. I'm not quite ready to say this is 'done' yet -- it has some UI that I'm thinking about changing -- but it's fully functional and much more effective than the old plugin. Attached.

These improvements include:

* General cleanups (eg. don't use old python conventions like cmp functions)

* Support for sorting by luma aka Y, S of HSL, L of HSL

* If you have 'colormath' module installed, support for sorting by L of LAB/LCH, A of LAB, B of LAB, Chroma of LCH(ab), or Hue of LCH(ab). These are generally superior to their HSV/HSL/YIQ counterparts; I use them exclusively.

* Option to sort only a selected slice of the palette (for example a color ramp that has become disorganized)

* Option to quantize the sorting (so eg. you can sort into 6 distinct hue categories rather than 360.). Useful for subdividing the palette into sections.

* Option to automatically find and sort individual 'partitions' (blocks of 'constant' value in a given channel, after they are quantized.), in either the entire palette or a selected slice of it. Useful for sorting say 16 different categories of Hue by Lightness -- each partition's contents are individually sorted, so this is quite different from what you get if you sort first by Hue and then by Lightness (with no partitioning).

An example of usage: Starting from this palette:

http://i.imgur.com/CH7JF.png

I first sort the entire palette by LCH hue, so that the partitioning works best:

http://i.imgur.com/YNmt7.png

Then sort by LAB with LCH Hue partitioning(granularity 16):

http://i.imgur.com/DXgVW.png

The result is this palette, ordered along two dimensions:

http://i.imgur.com/tGPjV.png

I would have also posted this to the Plugin Registry, but I haven't figured out how!

Feedback is welcomed (I hope I'm still subscribed to gimp-developer ;)

Joao S. O. Bueno
2012-11-04 03:47:19 UTC (almost 6 years ago)

Upgraded palette-sort.py plugin

There is no need putting this in the plug-in registry - since the paltete sort is a plug-in in the
main GIMP tree.

Your changes are welcome improvements - and we shoudl manage to merge them in for GIMP 2.10 -
meanwhile you could attach both your version of the plug-in and a diff against what is
GIMP master (or gimp2.8 if you dn't have master - it had not changed) - in a gimp bugzilla issue.

(That way, people wanting to get the newer version before gimp 210 is out could just download it from there)

js -> wrote:

Hi,
I got tired of being unable to get any use out of the 'sort palette' plugin and made some major upgrades. I'm not quite ready to say this is 'done' yet -- it has some UI that I'm thinking about changing -- but it's fully functional and much more effective than the old plugin. Attached.

These improvements include:

* General cleanups (eg. don't use old python conventions like cmp functions)

* Support for sorting by luma aka Y, S of HSL, L of HSL

* If you have 'colormath' module installed, support for sorting by L of LAB/LCH, A of LAB, B of LAB, Chroma of LCH(ab), or Hue of LCH(ab). These are generally superior to their HSV/HSL/YIQ counterparts; I use them exclusively.

* Option to sort only a selected slice of the palette (for example a color ramp that has become disorganized)

* Option to quantize the sorting (so eg. you can sort into 6 distinct hue categories rather than 360.). Useful for subdividing the palette into sections.

* Option to automatically find and sort individual 'partitions' (blocks of 'constant' value in a given channel, after they are quantized.), in either the entire palette or a selected slice of it. Useful for sorting say 16 different categories of Hue by Lightness -- each partition's contents are individually sorted, so this is quite different from what you get if you sort first by Hue and then by Lightness (with no partitioning).

An example of usage: Starting from this palette:

http://i.imgur.com/CH7JF.png

I first sort the entire palette by LCH hue, so that the partitioning works best:

http://i.imgur.com/YNmt7.png

Then sort by LAB with LCH Hue partitioning(granularity 16):

http://i.imgur.com/DXgVW.png

The result is this palette, ordered along two dimensions:

http://i.imgur.com/tGPjV.png

I would have also posted this to the Plugin Registry, but I haven't figured out how!

Feedback is welcomed (I hope I'm still subscribed to gimp-developer ;)

_______________________________________________ gimp-developer-list mailing list
gimp-developer-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gimp-developer-list

David Gowers
2012-11-04 12:01:51 UTC (almost 6 years ago)

Upgraded palette-sort.py plugin

Done. I have a few more upgrades to make before it's finished, though -- sorting a slice of the palette could be much easier in the common case.

On Sun, Nov 4, 2012 at 2:17 PM, Joao S. O. Bueno wrote:

There is no need putting this in the plug-in registry - since the paltete sort is a plug-in in the
main GIMP tree.

Your changes are welcome improvements - and we shoudl manage to merge them in for GIMP 2.10 -
meanwhile you could attach both your version of the plug-in and a diff against what is
GIMP master (or gimp2.8 if you dn't have master - it had not changed) - in a gimp bugzilla issue.

(That way, people wanting to get the newer version before gimp 210 is out could just download it from there)

js -> wrote:

Hi,
I got tired of being unable to get any use out of the 'sort palette'

plugin

and made some major upgrades. I'm not quite ready to say this is 'done'

yet

-- it has some UI that I'm thinking about changing -- but it's fully functional and much more effective than the old plugin. Attached.

These improvements include:

* General cleanups (eg. don't use old python conventions like cmp

functions)

* Support for sorting by luma aka Y, S of HSL, L of HSL

* If you have 'colormath' module installed, support for sorting by L of LAB/LCH, A of LAB, B of LAB, Chroma of LCH(ab), or Hue of LCH(ab). These

are

generally superior to their HSV/HSL/YIQ counterparts; I use them exclusively.

* Option to sort only a selected slice of the palette (for example a

color

ramp that has become disorganized)

* Option to quantize the sorting (so eg. you can sort into 6 distinct hue categories rather than 360.). Useful for subdividing the palette into sections.

* Option to automatically find and sort individual 'partitions' (blocks

of

'constant' value in a given channel, after they are quantized.), in

either

the entire palette or a selected slice of it. Useful for sorting say 16 different categories of Hue by Lightness -- each partition's contents are individually sorted, so this is quite different from what you get if you sort first by Hue and then by Lightness (with no partitioning).

An example of usage: Starting from this palette:

http://i.imgur.com/CH7JF.png

I first sort the entire palette by LCH hue, so that the partitioning

works

best:

http://i.imgur.com/YNmt7.png

Then sort by LAB with LCH Hue partitioning(granularity 16):

http://i.imgur.com/DXgVW.png

The result is this palette, ordered along two dimensions:

http://i.imgur.com/tGPjV.png

I would have also posted this to the Plugin Registry, but I haven't

figured

out how!

Feedback is welcomed (I hope I'm still subscribed to gimp-developer ;)

_______________________________________________ gimp-developer-list mailing list
gimp-developer-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gimp-developer-list

David Gowers
2012-11-06 05:20:00 UTC (almost 6 years ago)

Upgraded palette-sort.py plugin

I've finished making updates and have attached the latest version to the bugreport https://bugzilla.gnome.org/show_bug.cgi?id=687552 . I'm happy with the current functionality.

A screencast explaining the new functionality is available (47 minutes, 4 parts):

(in order:)
http://youtu.be/_8e5Uvhn6vs
http://youtu.be/Nb4mNs-2ARo
http://youtu.be/_1UprDMsPlw
http://youtu.be/p_NlcsTzmfk

The only material not covered in the screencast is the Index and Random 'channels', which were added after making that screencast. They are pretty self-explanatory, but there's a short explanation of them in the description of part 4 of the screencast.

On Sun, Nov 4, 2012 at 10:31 PM, David Gowers wrote:

Done. I have a few more upgrades to make before it's finished, though -- sorting a slice of the palette could be much easier in the common case.

On Sun, Nov 4, 2012 at 2:17 PM, Joao S. O. Bueno wrote:

There is no need putting this in the plug-in registry - since the paltete sort is a plug-in in the
main GIMP tree.

Your changes are welcome improvements - and we shoudl manage to merge them in for GIMP 2.10 -
meanwhile you could attach both your version of the plug-in and a diff against what is
GIMP master (or gimp2.8 if you dn't have master - it had not changed) - in a gimp bugzilla issue.

(That way, people wanting to get the newer version before gimp 210 is out could just download it from there)

js -> wrote:

Hi,
I got tired of being unable to get any use out of the 'sort palette'

plugin

and made some major upgrades. I'm not quite ready to say this is 'done'

yet

-- it has some UI that I'm thinking about changing -- but it's fully functional and much more effective than the old plugin. Attached.

These improvements include:

* General cleanups (eg. don't use old python conventions like cmp

functions)

* Support for sorting by luma aka Y, S of HSL, L of HSL

* If you have 'colormath' module installed, support for sorting by L of LAB/LCH, A of LAB, B of LAB, Chroma of LCH(ab), or Hue of LCH(ab).

These are

generally superior to their HSV/HSL/YIQ counterparts; I use them exclusively.

* Option to sort only a selected slice of the palette (for example a

color

ramp that has become disorganized)

* Option to quantize the sorting (so eg. you can sort into 6 distinct

hue

categories rather than 360.). Useful for subdividing the palette into sections.

* Option to automatically find and sort individual 'partitions' (blocks

of

'constant' value in a given channel, after they are quantized.), in

either

the entire palette or a selected slice of it. Useful for sorting say 16 different categories of Hue by Lightness -- each partition's contents

are

individually sorted, so this is quite different from what you get if you sort first by Hue and then by Lightness (with no partitioning).

An example of usage: Starting from this palette:

http://i.imgur.com/CH7JF.png

I first sort the entire palette by LCH hue, so that the partitioning

works

best:

http://i.imgur.com/YNmt7.png

Then sort by LAB with LCH Hue partitioning(granularity 16):

http://i.imgur.com/DXgVW.png

The result is this palette, ordered along two dimensions:

http://i.imgur.com/tGPjV.png

I would have also posted this to the Plugin Registry, but I haven't

figured

out how!

Feedback is welcomed (I hope I'm still subscribed to gimp-developer ;)

_______________________________________________ gimp-developer-list mailing list
gimp-developer-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gimp-developer-list