Pages: 1 2 [3]   Go Down

Author Topic: Raw converter that supports CIELab?  (Read 20761 times)

bjanes

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 3387
Re: Raw converter that supports CIELab?
« Reply #40 on: January 06, 2014, 03:03:45 pm »

Bill,

I've been ignoring the asterisks and the single quotes, but I'm afraid I'm going to have to get into that to answer your question. If this turns out to be TMI, I apologize.

The plot that you posted is not actually CIEL*u*v*, usually abbreviated CIELuv or just Luv (pronounced "love"). It looks to me to be L in the vertical axis, and u' and v' in the horizontal axis. u'v' is a chromaticity space like xy. It's derived from xy as follows:

u' = 4x/(-2x+12y+3)

v' = 9y/(-2x+12y+3)

u'v' is more perceptually uniform than xy, which, among other things, gives undue prominence to the greens.

In the Lu'v' space, to see if the triplet is visible, ignore the L value and just look at u' and v'. If that pair is inside the horseshoe, the triplet is a visible color. If it's not, it's not. Pretty simple, huh?

In CIEL*u*v*, the chromaticity components are reduced by those of the white point, multiplied by a constant, and multiplied further by L*, the same luminance component as in CIELab. This has the effect of making the 3D L*u*v* visible color gamut roughly conical, with the only possible u* value for a color with an L* of zero being zero, and likewise for v*.

That makes it a little harder to look as a L*u*v* 3D plot and see the limits of visible colors. If the tool you're using doesn't provide the option of plotting the spectral locus (and it looks like the Lu'v' plot did have that option, the best thing to do is include a bunch of points that define the locus. If you want, I can whip up an Excel spreadsheet with that data; you'll also be able to see the calculations. PM me if you want that.

In my own work, I used Excel or Smalltalk to generate the data and commercial 3D graphing tools (Mathematica works fine) to plot the graphs. Now, when I have to, which is not often, I do the whole thing in Matlab.
'
Now that I've said all that, I think there's something wrong with your Lu'v' plots, if that's what they are. Before I possibly waste my time, is that what they are?

Jim

Jim,

I'm not sure what type of Luv plot I am obtaining using ColorthinkPro 3.03 on my Windows 8 machine. In reading the Colorthink documentation, I do see that they do not recommend using Luv for 3D plots:

"In general we recommend the Yxy or Luv coordinates for 2D graphing only. Lab has been found to be easier to visualize, understand, and compare when creating 3D graphs."

Here are 2D plots of the same image as used my previous posts showing the gamut of the image in color dots and that of my printer in monochrome. The image contains some blues out of the Luv gamut (human vision). The reds and greens appear slightly out of the Luv gamut. Your plots did show that ProPhotoRGB is slightly wider in gamut than Luv in these colors.



As I understand it, 2D plots may not be optimal since they show the gamut only for one luminance value, often L* of 50, and out of gamut colors at other luminances may be missed.

Bill
Logged

Jim Kasson

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 2370
    • The Last Word
Re: Raw converter that supports CIELab?
« Reply #41 on: January 07, 2014, 04:28:50 pm »

I'm not sure what type of Luv plot I am obtaining using ColorthinkPro 3.03 on my Windows 8 machine. In reading the Colorthink documentation, I do see that they do not recommend using Luv for 3D plots:

"In general we recommend the Yxy or Luv coordinates for 2D graphing only. Lab has been found to be easier to visualize, understand, and compare when creating 3D graphs."

Bill, I downloaded the demo version of ColorthinkPro 3.03 and looked at the sRGB gamut in what they call "Luv". It must be Lu'v', because the bottom (low L) part of the gamut extends straight down from the primaries in what is in the u'v' plane, a constant sized triangle. This is not very useful, and is certainly not CIEL*u*v*. When you plot the same gamut in what they call "Lab", after some luminance, the gamut gets smaller as L goes down, culminating in a point on the bottom. That is what you'd expect for CIEL*a*b*.

Here are 2D plots of the same image as used my previous posts showing the gamut of the image in color dots and that of my printer in monochrome. The image contains some blues out of the Luv gamut (human vision). The reds and greens appear slightly out of the Luv gamut. Your plots did show that ProPhotoRGB is slightly wider in gamut than Luv in these colors.

Slightly for the green primary, wildly for the blue one. It looks like your image runs into the boundaries of the PPRGB gamut in many places, making me think that's it's been tweaked in that space.


As I understand it, 2D plots may not be optimal since they show the gamut only for one luminance value, often L* of 50, and out of gamut colors at other luminances may be missed.

Usually the 2D plots plot all the points of the 3D plots, but flatten them all onto one luminance  coordinate. 2D plots thus throw away one dimension of each point. While they have their uses, 2D plots are limited, because color is inherently a three-dimensional concept.

The folks at Chromix obviously know all the color science to properly implement CIEL*u*v*. I don't know why they didn't.

Jim

bjanes

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 3387
Re: Raw converter that supports CIELab?
« Reply #42 on: January 07, 2014, 05:22:35 pm »

Bill, I downloaded the demo version of ColorthinkPro 3.03 and looked at the sRGB gamut in what they call "Luv". It must be Lu'v', because the bottom (low L) part of the gamut extends straight down from the primaries in what is in the u'v' plane, a constant sized triangle. This is not very useful, and is certainly not CIEL*u*v*. When you plot the same gamut in what they call "Lab", after some luminance, the gamut gets smaller as L goes down, culminating in a point on the bottom. That is what you'd expect for CIEL*a*b*.

Jim,

Thanks for your detective work. Colorthink advertizes itself as the premier gamut graphing product, and one would expect a more useful implementation. The program is getting long in the tooth and is due for a major upgrade IMHO. It also is glacially slow and often freezes while performing its calculations and does not allow one to run other programs. ? poor multithreading, if multithreading at all.

Slightly for the green primary, wildly for the blue one. It looks like your image runs into the boundaries of the PPRGB gamut in many places, making me think that's it's been tweaked in that space.

Yes, the image was tweaked in Topaz Clarity. With a straight rendering the blues (which are not an important element of the image) are more reasonable. The image prints reasonably well with the Epson 3880 even though many colors are far out of gamut, they do not block up.

Usually the 2D plots plot all the points of the 3D plots, but flatten them all onto one luminance  coordinate. 2D plots thus throw away one dimension of each point. While they have their uses, 2D plots are limited, because color is inherently a three-dimensional concept.

The folks at Chromix obviously know all the color science to properly implement CIEL*u*v*. I don't know why they didn't.

Yes. And I don't understand why they do not recommend 3D graphing with Luv. Is that because of limitations of the implementation or what they perceive to be difficulties in the interpretation of a proper implementation.

Regards,

Bill
Logged

Jim Kasson

  • Sr. Member
  • ****
  • Offline Offline
  • Posts: 2370
    • The Last Word
Re: Raw converter that supports CIELab?
« Reply #43 on: January 07, 2014, 07:33:02 pm »

...I don't understand why they do not recommend 3D graphing with Luv. Is that because of limitations of the implementation or what they perceive to be difficulties in the interpretation of a proper implementation.

If I'd implemented Lu'v' instead of CIEL*u*v* as they apparently did, I'd also recommend that you don't use it. The darker parts of images or gamuts look huge in Lu'v', where in a CIEL*u*v* implementation, like CIEL*a*b*, they'd be much smaller because of the scaling of the chromaticity components by the luminance component. This scaling is important, because it mimics a psychological effect: colors appear less chromatic as they get darker.

Jim
Pages: 1 2 [3]   Go Up