Warp” Sharpening

Text and images Copyright (C) 2002 Eric R. Jeschke and may not be used without permission of the author.

Intention

Thanks to Branko Collin for bringing to my attention Simon Budig’s “warp sharp” script. This is a Script-Fu script that you can put in your GIMP folder and run straight from GIMP. This is a very impressive script and a nice tool to have in your GIMP toolbox.

I haven’t yet had a chance to experiment with it too much beyond the default settings, but I have tried it on a couple of the images used in my full smart sharpening tutorial. Here are the results:

First image

example1-original-zoomed100.jpg

1. Original image, zoomed 100%.

example1-unsharpmask-zoomed100.jpg

2. Standard unsharp mask filter, all RGB channels.
(Radius=1, Amount=1.0, Threshold=0) Yuk. This is why you want to smart sharpen.

example1-warpsharp-zoomed100.jpg

3. Warp sharp script, all RGB channels.
(default parameters: Edge detection=7.0, Blur radius=3.0, Bump depth=2, Displace intensity=2.5)

example1-warpsharp-luminosityonly-zoomed100.jpg

4. Warp sharp script, luminosity channel only.
(default parameters: Edge detection=7.0, Blur radius=3.0, Bump depth=2, Displace intensity=2.5)

I don’t see much difference between this and #3. I wouldn’t really expect to, since the warp sharp script appears to operate on edges only. I did find that the edges are not as “squeezed” here—they are slightly ragged, more like the other, non-warp sharpening techniques. See the discussion below for more on this.

example1-smartsharp-zoomed100.jpg

5. Smart sharpened (edges, luminosity channel only).
The full technique from the tutorial. I think this one still has less noise, or at least the noise is more “smoothed out” and less objectionable than in #4.

example1-warpsharp-luminosityonly.jpg

Warp sharp script, luminosity channel only (same as #4—unzoomed).
Here the difference is more visible and striking. Compare to below.

example1-smartsharp.jpg

Smart sharpened (edges, luminosity channel only; same as #5—unzoomed).
To my eye this one is definitely better. Notice the arm, the face and the white wall in the upper left and compare to above.

Tutorial image

Here’s the main test image from the tutorial:

image-compare-original.jpg

1. Original image.
Examine the seam between the driver’s window frame and the rear window frame.

image-compare-warpsharp.jpg

2. Warp sharpened.
(default parameters: Edge detection=7.0, Blur radius=3.0, Bump depth=2, Displace intensity=2.5) Compare the seam to the above image. Very similar.

image-compare-smartsharp.jpg

3. Smart sharpened (edges, luminosity channel only).
Note how the seam contrast is exaggerated, along with every nick and cut along the seam.

image-compare-warpsharp-zoomed100.jpg

Warp sharpened, zoomed to 100%.
Examine the catchlight in the eyes, the edge of the iris, and the edge of the cheek/chin on the left.

image-compare-smartsharp-zoomed100.jpg

Smart sharpened, zoomed to 100%.
Compare the catchlights and the iris/chin/cheek edges.

Discussion

Obviously this is a very preliminary and cursory examination, and further experimentation with the warp sharp script parameters is necessary before making any substantive judgements about the quality of warp sharping. What follows are my first impressions only.

In the noisy image, the smart sharpened image appears noticeably better to my eye than the warp sharpened image, at least viewed on screen and zoomed out. Noise is noticeably less visible.

On the less noisy image the results are not so clear cut. The two things that stand out to me in comparing the warp sharpened version to the smart sharpened version are that

  1. the warp sharpening appears not to increase the contrast as much (e.g. in the window seam). Since I am not sure what constitutes a comparable “amount” of sharpening in the warp sharpen parameters, the contrast could be simply due to the fact that I cranked the smart sharpened amount parameter up to 2.0, and that this is much greater than the default level of “amount” in the warp sharpen (I did in fact compare with an amount of 1.0 also and found that the contrast was still greater than in the warp sharpened version). In any case, in this image the seam between the windows is more pleasing in the warp sharpened version.
  2. the warp sharpening appears to have a pronounced effect in “squeezing” the edges (as in fact it is advertised to do), which results in less “ragged” edges (e.g. in the cheek/iris edges). I’m not sure what to think about this. My initial reaction is that the edges do not look quite as natural. For example, the iris outline is just not naturally that smooth of an edge. It seems like the sharpening process should increase contrast between edges, but that shrinking the edges is not necessarily a desirable byproduct. However, the zoomed warp sharpened image looks sharper than the zoomed smart sharpened image because of the less ragged edges throughout. Zoomed out it is not as apparent.

Conclusion

More experimentation is necessary! For now, I am convinced that the warp sharpen script is a useful addition to the GIMP toolbox. Certainly as a convenience sharpening option it is unmatched: just run the script.

Getting the warp-sharp script

Here is a link to the script authors site. Download the script and put it into your .gimp-2.2/scripts folder. Restart GIMP and you should see warp sharpen as an option off of the “Alchemy” script-fu menu.

The original tutorial used to appear on gimpguru.