Introduction and few examples.
This plugin is an alternative to existing Selective Gaussian Blur but with more sophisticated (and processing time intensive) algorithm.
This plugin uses my own approach (algorithm) for blurring pixels, primarily the color information in image. When referring to color I mean combination of hue + saturation, though effectively the plugin doesn't calculate these two numbers, but works in 3D 'relative' RGB colorspace instead.
So f.e. pixel with values [100,150,250] is changed to [-0.4, 0.05, 0.3, 0.6]. First three values are relative RGB values and the last one is a brightness. This way the plugin is able to separately test a color distance and brightness difference.
Here are screenshots of two latest versions (0.5.0 and 0.6.0) - plugin dialog windows:
(The layout and content of plugin window changes quite frequently)
Basic parameters to adjust is radius and iterations. The plugin works in iterations, so the image is blurred multiple times, every time with given radius. So approximately:
overall radius = radius * iterations.
The main advantage of blurring in steps is that it blurs 'around a corner'.
Main controls are two thresholds:
Directions of blurring
The plugin test 8 directions from an actual pixel and each direction either meets or doesnt meet the requirements (tresholds). If number of compliant directions is n or more, the central pixel is updated by values from these directions.
In older versions n was 3, but starting with 0.6.0 you can modify this value with strictness slider.
The exemption to the 'n good directions at least' rule is forced blurring where the plugin (in case there are not n 'good' directions) search for n (at least) most closest directions and uses those for blurring.
As a result, the plugin is very cpu intensive. Anybody willing to help me with profiling and optimizing it? :)
The plugin has 4 output modes
FILTERS -> BLUR -> COLOR SELECTIVE BLUR
Here is an example how I saturated an image. I must admit that original image was not so poor as to demonstrate usefulnesses of the plugin :) Also I have to note that final saturation is one of 3 predefined options in plugin and I did not tweak it afterwards - so it might be bit overdone.
There are two scenarios, this can be useful - poorly saturated images that needs to be saturated. This should prevent occurrence of artifacts. Then it is alternative to decompose image to HSV colorspace and blurring H (though my approach is I dare to say better :) )
And second scenario is cartoonization of image and/or creation of lines.
Another example - here I got very colorful image (after some saturation), this is how I like it :)
Here I added lines to color-blurred image. The lines are generated on separate layer (providing you are not converting current layer to lines) and the new layer have to be switched to "Darken only" mode. Alternatively you can blur the lines beforehand to soften too 'raw' shape of lines as generated by Color Blur plugin.
The plugin allows tuning amount of lines that are created. It is names "Lines Sensitivity" in GUI. Here is example - I must say that image is not suitable for cartoonization so algorithm struggled to generate lines. I used "Forced Smoothing" mode to get cleaner lines.
This is corner case, might be not badly useful but I believe this is not easy to achieve with any other tools delivered with gimp. Here I smoothed noisy image, the radius is 1, iterations 100 (big number is needed).
Due to the nature of the algorithm, it can produce small unblurred areas/ even pixels. So to get rid of such residuals / small-scale details you can use "Forced Smoothening" checkbox. This is quite experimental function (introduced in 0.3.6), here is an example:
Is available since 0.3.5, you can process images in batches, and also without GUI. See Readme-NON-INT.txt inclosed in tarbal for more details.
Latest version can be downloaded here in "Download" section, or just with this direct link: http://selective-color-blur.googlecode.com/files/colorblur-0.6.2.tgz
Read enclosed README.txt for installation info.
Just note, that this is source. Not a binary, especially not a windows binary:). However it is trivial to compile and install under linux.
And here is a link where you can find windows versions of plugin: http://gimpchat.com/viewtopic.php?f=7&t=6426 (search for newest one)
Arch Linux user can use this PKGBUILD
If you have comments, ideas for enhancement or whatever contact me at: tiborb95 at gmail dot com (preferred method), or you can use Issues section here (might take long until I notice new issue) or use this thread http://registry.gimp.org/node/25801.
This plugin is distributed for free and under GPL license. I dont expect earning big money from it, but if the tool is useful and/or fun to use for you, you can consider paying a voluntary price for the time I spent developing and maintaining it.
You can also visit homepages (with introduction and examples) of other gimp plugins I made: