![]() Registered Member ![]()
|
I tried gimp-cce maintained by elle stone, and it contains LCH color selector and LCH layer blend modes.
When I use LCH color slider, lightness, chroma, and hue can be changed without affecting each other. HS* color sliders cannot differentiate hue, saturation, and lightness/luma/intensity from each other. Although I can still see myself using HSY and HSI color selectors, HSY and HSI layer blend modes would produce radiometrically/physically wrong results. http://ninedegreesbelow.com/photography ... modes.html and http://ninedegreesbelow.com/photography ... nality.jpg demonstrate the awesomeness of LCH. LCH is not just intuitive but also accurate and correct. I think LCH brings a lot of benefits. It should have a high priority. |
![]() Registered Member ![]()
|
Bump.
Is any krita developer interested in LCH? |
![]() KDE Developer ![]()
|
I feel that bumping one's post in the hope of getting attention is rude. In any case, no, there are no plans, and we're way too busy to automatically code everything anyone proposes wherever, but fortunately, Krita is open source so you can do it yourself!
Check the code in gimp-cce, identify the commits that add the interesting features, try to port it to C++ and Qt and try to integrate it in Krita. |
![]() Registered Member ![]()
|
Sorry for being rude. I just wanted to know whether one of krita developers had any plan for LCH or an interest in it. Do you recognize the benefits of LCH(blend modes and color pickers) even though you don't have plan for it? |
![]() Registered Member ![]()
|
I'm quite sure the Boudewijn understands LCH - he's one of the smartest developers I've ever had the privilege of interacting with, and my apologies in advance for saying this, but the question of whether the head developer of Krita understands LCH also seems to me to be a bit rude, even though I'm sure that being rude wasn't the intention. I've watched Krita development since roughly 2008. In eight short years Krita has gone from a general purpose editing program that promised a lot (high bit depth RGB/XYZ/LAB/CMYK editing with masks and layers) but was rather overprone to crashing, to an amazing and stable painting program used by professionals all over the world. Developer time and resources are always in short supply. Take a look at the Krita forum posts about things users want help with. Also look at Krita bug reports, both fixed and open. Also look at the Krita development roadmap. Also look at the number of active developers vs the number of users. Unless you've actively participated in software development, it's hard to really appreciate the dedication and time put in by the core developers of the various free/libre softwares that we as end users are privileged to have access to. Boudewijn already outlined the process by which LCH layer blend modes and color pickers might (that's "might") be incorporated into Krita: Someone outside the core Krita team of developers will need to port the code over from GTK to QT and get it to work in Krita. As Boudewijn said:
Developers face a constant flood of user complaints, bug reports, and feature requests, and consequently developers have to set priorities. As much as I find LCH to be one of the more useful editing tools in GIMP, if I had any skills in writing C++ and Qt (which I don't), adding support for LCH blend modes is not even at the top of my own list of Krita bugs and features that I'd like to see fixed and added. |
![]() KDE Developer ![]()
|
Thanks, Elle, that's really nice of you
![]() The main thing that stops LCH support is that we would need to rewrite the composite ops code for handling LAB specific blendmodes like we have RGB specific blendmodes, let alone having one in the other(which sort of goes against our color management principle of 'you want this effect, go into a colorspace in which has those properties'). I also want to get our Luminosity/Color blending mode to get the colorants, but that's tricky as well, purely from a code perspective(I have the colorants, I have the blending modes, but that part of Krita is super complicated with C++ templates and everything so getting the colorants to the blending modes is really difficult). I'm the prime color management dev but mostly color related features get added based on whether I can figure out how to get that part of the code to do things for me. |
![]() Registered Member ![]()
|
To put the code changes that might be required to add LCH support to Krita into some kind of perspective, from the first patch to the final commit it took six *years* to get LCH blend modes into GIMP because the required "infrastructure" simply wasn't there. I *think* default GIMP will have LCH color pickers before 2.10 is released, but the colorants will still be hard-coded to sRGB, and this likely won't change until after the switch from GTK2 to GTK3. In other words, adding new features to software is often a very slow process. Don't get me wrong - I would love to see Krita have LCH blend modes. But new features that might sound simple in themselves often aren't at all simple from a coding point of view, and even in cases where the coding is simple, there's the sheer amount of other coding tasks awaiting attention.
Then there is user education - adding a new feature is not so useful if no-one uses the new feature. I know Wolthera has been working very hard to educate Krita users about things like the advantages of editing in linear gamma RGB color spaces and why CMYK isn't a good color space for general painting. But user education is a slow process as people are naturally loathe to stop doing what's worked in the past and try doing something completely new and different. Artists have used HS"X" to pick and blend colors since the beginning of digital painting - back in the 1990s when the HS"X" color spaces were invented, computers weren't fast enough and didn't have enough RAM to allow using LCH OR high bit depth image editing. I think if artists try using LCH to pick and blend colors, they might like it quite a lot. But there's always a learning curve. I wrote some tutorials on the topic for GIMP users (for example http://ninedegreesbelow.com/photography ... art-1.html and http://ninedegreesbelow.com/photography ... olor-paint). But writing a tutorial and persuading people to read and follow along to experiment for themselves, well, the first is easy, the second, not so much. |
![]() Registered Member ![]()
|
I thank everyone on this thread, including elle stone, for taking time to reply. It was educational.
I understood the situation. Thus, as a user, I may need to mix krita and gimp(-cce) in my workflow. I want krita's various features and its brush engine and gimp(-cce)'s advanced color operations including LCH. If I painted on a layer in HS* blend modes in krita, exported a painting to gimp, and changed the blend modes of HS* layers to LCH blend modes, would I be able to get the benefits of krita and gimp(-cce)? This way, I use krita to paint and gimp to finalize. I don't yet know if I can (afford to) do this. |
![]() Registered Member ![]()
|
Thanks Elle, it was interesting.
What about LAB mode? I heard good things about Lab. Actually I heard same advantages as you described about LCH. I already in Krita and works. But there is one problem. There is no "LAB Color" blending mode and other "Color" modes doesn't work with LAB. I can make picture lighter\darker and more saturate but I can't accurately change hue or saturation in Lab mode (without filters at least). |
![]() Registered Member ![]()
|
Unfortunately afaik GIMP can't open Krita KRA files and Krita can't open GIMP-2.9 XCF files. Apparently ".ora" files can be used as an intermediary (https://docs.krita.org/*.ora). But ".ora" doesn't provide all the blend modes that Krita or GIMP respectively supply, and also I'm guessing doesn't support 32-bit floating point precision. When I'm painting with Krita, I don't worry about getting colors exactly right as modifying them in GIMP-CCE using LCH is very straightforward. And besides, who really knows what "exactly the right color" really is until work has progressed fairly far? I use GIMP-2.9/CCE and Krita together quite a lot as each has features that the other lacks. For example Krita has an excellent lens blur and GIMP does not, but I like using GIMP's tonality modifying algorithms over Krita's. I switch back and forth by exporting a flattened 32-bit floating point tiff, opening it with the other program, making the edits, saving in the native file format, re-exporting as a new flattened tiff, etc. It's a bit cumbersome but it works. At the very top of my list of "wished for changes" in Krita *and* GIMP is the ability to treat each as a plug-in for the other, sort of like GIMP and darktable or GIMP and PhotoFlow. But I rather suspect this falls into the category of "easy to ask for/very difficult to program". |
![]() Registered Member ![]()
|
Hmm, I hadn't thought about it, but you are right, when working in LAB changing Hue and saturation (or rather "Chroma", which is the square root of the sum of the squares of A and B) is easy enough to do by manipulating the A and B channels. But you are pretty much reduced to "what you see is what you get" as the relationship between using Curves to alter the A and B channels and the resulting changes in Hue (counter-clockwise angle from the magenta side of the axis from cyan to magenta) and Chroma isn't exactly intuitive. LCH and LCH blend modes make it easy to modify and combine colors with a little more "precision" about exactly what color changes are being made, and so I think over time this helps to build up an understanding of colors that is independent of whatever RGB color space you are working in. Also as an added bonus LCH makes it a bit easier to try to apply the wealth of color and painting information on Bruce MacEvoy's website (http://handprint.com/HP/WCL/water.html and http://handprint.com/LS/CVS/color.html). LCH is actually just a polar transform of LAB. But I've never seen an image editor that provided LCH editing such that you could work directly on the C and H channels like you can work in LAB on the A and B channels (L is the same for LAB and LCH). Well, except in default GIMP-2.9 you can decompose to LAB (or LCH), but that's not at all the same as having true LAB editing because you don't get to see the results of your channel edits until you recombine the layers. I think trying to edit LCH channels by examining them in a UI wouldn't be very intuitive - better to operate "by the numbers", which allows for the kind of precise color changes that you don't get when editing the A and B channels. |
![]() Registered Member ![]()
|
what is LCH and LCH color blends ?
![]() ![]() |
![]() Registered Member ![]()
|
For color space, http://www.cambridgeincolour.com/tutori ... spaces.htm and http://ninedegreesbelow.com/photography ... olors.html For LCH, http://ninedegreesbelow.com/photography ... modes.html and http://ninedegreesbelow.com/photography ... art-1.html
So, it seems I at least have three options for interoperation.
|
![]() Registered Member ![]()
|
OK, I know this is an old post. But did you ever randomly think back to a conversation and realize you were rude to someone and wish you could apologize? This is an apology to tokigami. I used the word "rude" when I really didn't need to do that - I could have (and should have) just said (in the fifth comment in this thread) "I'm quite sure the Boudewijn understands LCH - he's one of the smartest developers I've ever had the privilege of interacting with" . . . and stopped right there. So tokigami, my apologies, and thanks! for being OK with my making a public apology.
In retrospect it seems to me that tokigami wasn't even particularly rude even when he "bumped" his initial post: As he initially posted in the middle of October 2016 and hadn't received any response as of January, 2017, it seems to me that he showed a lot of patience by waiting two and half months before trying to ask again whether Krita might eventually get support for LCh blend modes. But maybe "bumping" a post by actually adding new content is a more diplomatic way to put a thread back at the top of the heap (says Elle, who is terrible at diplomacy ![]() Which brings up another point. Reading through this post: viewtopic.php?f=288&t=153078&p=401285&hilit=lch#p401285 - perhaps there might be a misunderstanding about how GIMP LCh blend modes actually work, which misunderstanding might make it seem like implementing LCh is a lot more difficult than it actually is:
The thing is, in GIMP there is no LCh "mode" in which editing can be done, analogous to Krita's Lab mode. In GIMP the XCF stack as a whole never operates in LCh color space - it's always in an RGB color space. So the input to LCh blend modes is always two RGB colors, and the output is a third RGB color. So for example, the user might ask for the LCh hue of the top layer to be blended with the LCh Lightness and Chroma of the bottom layer. The blended color is a new RGB color that has the LCh hue of the top RGB color, and the LCh Lightness and Chroma of the bottom layer. The way this is done is by converting each color from whatever RGB to XYZ to Lab to LCh, taking the requested L/C/h from each color, and then combining these extracted components to make a new LCh, which is converted to Lab, then to XYZ, then back to RGB. LCh blend modes are very nice. But to be actually useful, one needs to be able to do two additional things, that also are in GIMP-2.10: 1. Modify a color by directly modifying the L, C, and h parameters. Again, the input and output are RGB colors: Convert the RGB color to LCh, modify one or more LCh values, and convert the result back to RGB. 2. Choose a color by using LCh sliders. Again, the chosen color is actually encoded as RGB. The user dials in the desired LCh values and out pops the resulting RGB color. Oh, I should mention, tokigami was referring to my "CCE" version of GIMP-2.9, which I'm no longer updating. All the LCh blend modes and operations have been in default GIMP-2.10 since (and actually somewhat before) the initial release of 2.10.0. |
![]() Registered Member ![]()
|
HCL is the most meaningful color picker for human under srgb profile
plz develope it |
Registered users: Bing [Bot], blue_bullet, Google [Bot], rockscient, Yahoo [Bot]