Krita: A worthy image retouching and compositing editor?


License: CC BY-NC-SA 4.0


In a reply in an earlier Krita related post I created (Krita: Luminosity masks […]) I mentioned having done some elaborate/stylized retouching experiments and that I would try to merge these experiments into one and post it. Well, here it is…

This end-result isn’t picture-perfect, this started as a private test/experiment project and although I did spend many hours on it as is, I initially did not spend the time to make this perfect 'cause an end result wasn’t one of the goals, proving the concept and gathering Krita experience was. I should also mention that this is a after-the-fact merger of 3 different projects.

Why am I mentioning this? If you go looking for little mishaps, mistakes and some sloppiness you are going to find them. The hair part probably being the most obvious. Doing this correctly takes many, many hours of meticulous work.

All this was done with Krita versions 4.4.2 and 4.4.3 (an update came available at the end of these tests).

The things I set out to do/test in these projects and that where actually used to create the above edit:

  • Restore part of Mairi’s missing left arm,
  • Replace background with a scaled/composited one,
  • Fix tone/texture/DOF background,
  • Shadows/Lighting on background,
  • Skin retouching (frequency separation + local D&B),
  • Emphasize eyes and lips,
  • Fix slight redness on skin,
  • Shadow/Lighting on cardigan,
  • Extensive hair work (removing, inpaiting, cloning),
  • Shadow/Lighting on hair.

Here’s a comparison between very early stages and the one exported from Krita:

Some stuff worth mentioning:

  • Krita’s non-destructiveness:

Do I need to say anything about this? Some steps are destructive in nature but just about anything else can be done non-destructively.

  • Skin retouching:

A low frequency and a high frequency layer, created using a combination of a Gaussian blur, grain extract blend mode and a grain merge blend mode. I used Krita’s smart patch tool to work on the low frequency layer. Although this tool is simple, it is powerful and precise enough for this work. For work on the high frequency layer I created a low flow, hard edged clone tool, with the pressure settings disabled. It does the job perfectly.

I also gave Krita’s native Wavelet Decompose option a go: Works as expected. It defaults to 5 layers (+ residual) and you can go up to 10 layers if wanted/needed.

  • Brushes:

I find Krita’s brush edit/creation tools easy to work with. Creating 2 hair specific brushes, one dynamic and one working on a very small pixel scale, was a easier than expected. Creating a new brush group that holds favourites, changed and created brushes was also a piece of cake. The amount of options are a bit overwhelming though…

There’s a 2 hour video by David Revoy were he goes through all the brushes that came with Krita 4.0.0 showing how and when to use them.

  • Transform Tool:

I only used this tool in this project while doing work on Mairi’s left arm, but I did do another quick test to find out what this one can do. Especially worth mentioning is the Mesh functionality within this tool. Very powerful and you can create just about any shape, smoothly, with it (Video from the Krita team [YouTube]).

  • Clone layers and File layers:

Two interesting and, at times, very useful layer types. Both are what I would call dynamic in nature.

File layers make it possible to link an outside document to the project you are working on. Changes made, with another program to the outside document are picked up by the Krita project.

I tested this one with the background image. The resizing and transformation was done before and after it became a File layer in the main project. Fixing the tone, texture etc was done from within the main project.

Clone layers is an up-to-date copy of another layer in the project. Handy if a group needs to be based on an up-to-date version of a layer done earlier.

There are many more layer types to that can be used.

  • Using a tablet:

I use a Wacom Intuos S and it was immediately recognized and easy to configure to my needs/wishes, this can be done on an individual brush basis as well. This tablet is a rather simple one, so I don’t have any personal experience with, for example, the many tilt related options.

  • RAW images:

Krita is, natively, able to import RAWs if you wish to do so. It uses libraw and gives you the possibility, although somewhat limited, to tune/change some settings.

  • The future:

This is on the horizon: Krita 5.0


I am rather happy with what I’m already able to do with Krita with the somewhat limited knowledge about it that I have at the moment. It definitely did hold up during these tests/experiments of mine.

I really like its non-destructiveness. I did make mistakes while experimenting, some of them where major, and those where rather easily corrected. Moving around layers and whole groups isn’t a problem at all and copy pasting layers and/or layer groups from one project into another also works nicely.

I’m definitely going to invest more time and effort in Krita.

In the end the weak link turns out to be me, not Krita :sweat_smile:

OK, that’s it for this post. I hope people start to see that Krita isn’t just for animation, comics, illustrations and concept art but can also be used to edit photos.

Some Krita resources




Tip: You can also use Flat Light Blending Mode and Gaussian High Pass filter. For 8-Bit Integer, I really like the Fog Modes with clone brush.

I knew about the High Pass + Soft/Hard light Blending mode, this combo is new to me. A quick test seems to show that this isn’t as prone to ugliness as the afore mentioned one. Nice, thanks.

Not entirely sure how/when to use this combo.

Krita has an enormous amount of blend modes, its gonna take a while to figure all of them out…

I’ve been playing with the Penumbra modes (especially A and C). Gives a nice result when using it with a Gaussian Blur and a Colour and/or Level adjustment layer. You end up with a nice softened image and the colours have a bit more punch. The originally recipe uses overlay/softlight for this, but I find penumbra more pleasing. This one is not necessarily good to use with portraits though, more for landscapes.

Awesome. It reminds me of the Rendera software. He’s very good at that.

I never heard about Rendera before, I though it would be some rendering related program…

So, assuming you are talking about this sourceforge / GitHub:

It looks like Krita (or GIMP for that matter) is a fair amount more versatile if not powerful. Rendera might be good at what it was intended for (photo restoration), but it does seem to be a specialized tool.

Interesting one to play with/try out when time permits though.

It’s a really cool edit.

Thanks. I had a lot of fun doing this test project and learned a few things along the way.

It still amazes how a lot of small changes add up to a much nicer (different if you like :wink:) result. At first glance there seems to be not that much of a difference between the last two of the three comparison images I posted. switching between them shows the real difference.

It also shows how I botched up the lighting on the nose. Should have been more subtle.

Last time i tried Krita for image retouching, it was so slow, it wasn’t usable on my computer. I had to use gimp instead.

Last time is a bit vague… Is that last week using 4.4.3 or a few years ago, maybe version 3.x.y :smirk: And the way it is used might also be of influence.

These are my observations using Krita (I started November 2020 with version 4.4.1):

The above image started out as a 5000x5000, RGBA 16 bit float canvas and I did not experience any annoying slowness/delays while working on it.

Admittedly it does take some time, noticeably longer than GIMP, to load the initial project file after starting Krita and if you keep copying the original, full sized 16 bit TIFF file over and over again within the project it will slow down Krita (as it does GIMP).

The changes to the latest versions (4.4.2 and 4.4.3) have improved the overall processing speed and fixed some bugs that slowed Krita to a crawl. One that I ran into when using 4.4.1, and which is now fixed, was applying a Gradient Map (not to be confused with a normal gradient). This took 35 to 40 seconds on my box. What made this bug utterly unworkable was the fact that the complete pipeline is recalculated after every change you make…

One other thing that seems to be fixed: In 4.4.1 Krita spontaniously crashed on me every so often, not so with 4.4.3 (haven’t used 4.4.2 long enough to say anything about that one).

I don’t do full edits in Krita, though. The RAW conversion is done using RawTherapee, which leaves the finishing touches (retouching, colour toning/grading. stuff like that).

1 Like