Note: this post contains images, if you don't see them (reason is unknown) then qoute this post and hit Preview there to be able to see them.
This is the most misunderstood part (and not just regarding to calibration), otherwise the whole calibration process is pretty straightforward thanks to our beloved developers! So I decided to write a post about it that can be linked later on for newbies like me
Please feel free to correct me at any point.
Actually it's pretty well documented (maybe too well, I've read them about 15 times in the last month but I'm still hesitating what they read
) in DisplayCAL (although it belongs to the calibration section, certain paragraphs still apply to the 3DLut creation) and Argyll documentation, but they're not for beginners.
As it turned out you can easily get a grasp of it but you have to experiment a little. All we need to have is 1 more program and that is HCFR: it's simply amazing for this!
So we will talk about tone curve settings in DisplayCAL (3DLUT tab), HCFR (Advanced menu -> Preferences -> References) and Argyll command line switch for collink.exe ( http://www.argyllcms.com/doc/collink.html#Ib
), they all do the same, but their settings can be confusing. These are the settings for Rec. 1886 with the 3 different programs:
- collink.exe switch: "-IB:0.0:2.4"
It's confusing a little bit, isn't it?
We will understand them in B.3.
There are 2 main parts of this post: basics (B.) and a complete walkthrough with a given setup (C.).
At the end of this post you'll be able to make a pretty good educated guess which settings you want to apply for your 3DLUT generation after your first try.
B. Tone curve / gamma basics
1. Aim for a given gamma curve(s) that suit(s) your taste!
Yes, that's right. Read this amazing commentary about the different opinions of this topic (~10 minutes reading) : http://referencehometheater.com/2014...gamma-correct/
Let me quote the last 2 lines of it: "There is no incorrect choice for what gamma one should use when calibrating a display ... need to be aware of the reasoning behind a gamma choice, and the pros and cons of it."
There are lot of articles about gamma curve standard called Rec. 1886 and how they're happy about it. But still you can read that others prefer something different. It will turn out why in B.4.
Personally (I don't like to darken my viewing environment, I prefer the way as it it during the whole day), I agree with Vincent Teoh's opinion, I want to get a:
- for evening/night usage (with just a dim environment light on): 2.4 like gamma with slightly elevated shadows at the lower end of greyscale
- for day usage: 2.2 like gamma with slightly elevated shadows at the lower end of greyscale
2. Choosing a different tone curve will change your colors!
It's not obvious at first (at least it wasn't for me). There's an animated gif in the middle of the above linked article that can show you this or you can easily test it:
- open up a previous project in HCFR (or just quickly create a new project and measure all the given colors (54 patches))
- select the color checker view
- modify the gamma value by selecting an another one on the "References" page (don't forget to hit apply)
- you'll see the measurements errors changing!
That's why you can read about a lot of debate of choosing the correct gamma curve, since all we want to do is displaying the correct colors as it was intended.
But, since we don't know anything about how the current content was mastered, or even if we knew, our display setup will modify it anyway (see below)
3. Applying the same tone curve settings in both 3 programs
As we saw all the 3 refer to these settings differently. Documentation of Argyll command line switch for collink.exe ( http://www.argyllcms.com/doc/collink.html#Ib
) will help you understand these (you can look back at the pictures above).
DisplayCAL calls technical as absolute and effective as relative, and it allows us to set the output offset not the input offset as HCFR does (0% output offset in DisplayCAL equals to 100% input offset in HCFR (100-0=100)) . Also we only need to select ITU-R BT.1186 in HCFR (it's even more confusing, see it later).
Rec. 1886 (full (100%) input offset (BT.1886 like) with technical gamma of 2.4) in:
- Argyll: -IB:0.0:2.4 ("B" means technical = absolute)
- DisplayCAL: 2.4 gamma, Absolute, 0% output offset
- HCFR: 0 Effective (=Absolute), 100% input offset
2.2 gamma like (you'll see at B.4. why the 'like' word is here):
- Argyll: -Ib:1.0:2.2 ("b" means effective = relative)
- DisplayCAL: 2.2 gamma, Relative, 100% output offset
- HCFR: 2.2 for Effective, 0% input offset
2.4 gamma like:
- Argyll: -Ib:1.0:2.4 ("b" means effective = relative)
- DisplayCAL: 2.4 gamma, Relative, 100% output offset
- HCFR: 2.4 for Effective, 0% input offset
if we would want to go for a 90% output offset with relative gamma of 2.37:
- Argyll: -Ib:0.9:2.37 ("b" means effective = relative)
- DisplayCAL: 2.37 gamma, Relative, 90% output offset
- HCFR: 2.37 Effective, 10% input offset
It can be strange at first, but you'll get use to it when you try out different combinations. From now on I'll refer to the various gamma settings in the Argyll way (much easier to write them down) and you have to apply it to a certain program.
4. Black level of the display will change the selected tone curve!
That's right! I didn't know it either. And modifying it can be one of the key components with which you can modify your final tone curve.
You can see your current black level in:
- DisplayCAL: when you fire up a calibration and measure the "i" at info section (in cd/m2)
- HCFR: e.g. at the Y row of 0 column of the gray scale view (with the xyY values)
And this black level can be changed depending on your needs: e.g. when you raise the brightness/backlight control on your display for day usage.
From the excellent Argyll documentation
: "Almost all LCD displays lack a real contrast control. For this reason it is usually best to set an LCD's contrast control at its neutral setting ... If your LCD display has a backlight control as well as a brightness control, then the brightness control is also probably being faked, and you are probably better off setting it to it's neutral setting, and using the backlight control
So let's take a look how the 3 usually used curves (gamma 2.2 like (-Ib:1.0:2.2), gamma 2.4 like (-Ib:1.0:2.4), Rec. 1886 (-IB:0.0:2.4)) would have been looked like with different back levels.
If you want to try this out, you need HCFR again:
- create an empty project (even with the simulated meter)
- select gray scale view, select xyY values, enable the "editable data" beside of the view dropdown and enter the following black and white values (can be a setting for a LED TV during the day), the order is x,y,Y:
-- white (column 100): 0.312700 , 0.329000 , 120.00
-- black (column 0): 0.312700 , 0.329000 , 0.027
- then go take a look at the Gamma graph (Luminance graph can be also useful)
- change the gamma to different values in References (see A.2) then take a look again at the graphs
- raise or lower the black level (Y value of column 0 of gray scale view) and change the gamma then look at the graphs
If we would have perfect black (Y=0 cd/m2) the 3 curves would look like this:
-Ib:1.0:2.2 | -Ib:1.0:2.4 | -IB:0.0:2.4
These are called as pure power curves, they are linear.
Note that when we have a 0 black level then Rec. 1886 equals to 2.4 gamma pure power curve!
if we would have 0.027 cd/m2 black level (WLED panel):
-Ib:1.0:2.2 (gamma 2.2 like) | -Ib:1.0:2.4 (gamma 2.4 like) | -IB:0.0:2.4 (Rec. 1886)
And this is what happens in real life with gamma curves: black level will change the curve itself. We get lower gamma values at the lower part of the greyscale. Take a look how Rec. 1886 behaves, it provides a completely different curve from the rest: you'll get higher values at the higher end and lower gamma values at the lower end of greyscale.
About the first 2 image from Argyll documentation: "This is what many people think of as a "pure" power curve, even though this is not possible unless the display has a perfect zero black level." So we can call them as scaled 2.2/2.4 gamma curves.
if we would have 0.14 cd/m2 black level (CCFL IPS panel) - and it's a huge change in the black level - the change would be more drastic:
-Ib:1.0:2.2 (gamma 2.2 like) | -Ib:1.0:2.4 (gamma 2.4 like) | -IB:0.0:2.4 (Rec. 1886)
The lower end of the greyscale on the first 2 image is much lower then it was in the previous example!
And take a look at the Rec. 1886 curve! (the picture includes values between 2.3 and 1.9 !) You'll get an average gamma around 2.10 and very low values in the lower end and it won't go above 2.25! All because of the high black level of the display device! That curve maybe can be used during a sunny day in this case but definitely not during night! So that's why you can't say that this is the definite gamma curve, because differences in black level changes the resulting curve drastically. And there are lot of different displays out there.
5. Modifying the curve:
There are 3 options for this and we can mixed them together by setting them to:
- absolute or relative
- giving certain black output offset
- manually specifying (shifting) the black level itself
Let's assume that our black level is 0.027 cd/m2.
In the previous example (4.b.) we got curves really close to 2.2 and 2.4. Let's see what will happen if we lower the output offset with 10%. That means 90% output offset with an effective gamma 2.2 and 2.4 (we can't talk about Rec. 1886 anymore since we changed the output offset from 0 !):
-Ib:1.0:2.2 (original) | -Ib:0.9:2.2 | -Ib:1.0:2.4 (original) | -Ib:0.9:2.4
With this setting we are lowering the values in the lower end of the grayscale without modifying much the higher end. So this setting is good for elevating shadow in the lower part of grayscale.
If you would apply the same 90% output but with a technical (absolute) gamma then the whole curve would move down resulting a little bit brighter overall image. (It seems I can't set this in HCFR.)
What would happen if we override the given black level of the display by specifying e.g. 0.034 cd/m2 instead? (I have to say that I don't know where to specify this in DisplayCAL only for the generated 3DLUT.)
-Ib:1.0:2.2 (original) | -Ib:1.0:2.2 with black 0.034 override
-Ib:1.0:2.4 (original) | -Ib:1.0:2.4 with black 0.034 override
-IB:0.0:2.4 (Rec. 1886 original) | -IB:0.0:2.4 with black 0.034 override
We see that we still lower gently the lower end of greyscale but not as much as above (and the same applies even if we would have given 99% output offset in the previous example). And this also applies to the Rec. 1886 curve and it's effect can be greater depending on the black level.
C. Hands on SDR tone curve / gamma
: creating 3DLUT for night usage
1. since I know about the above information, I want to have a 2.4 gamma like curve then I'll check the result with my favorite scenes with lot of contrast then I'll generate an another 3DLUT with a new tone curve settings.
2. I'll make a usual measurement but modifying the tone curve settings on the 3DLUT tab:
- gamma 2.4 , relative , 100% output offset (that would mean the "-Ib:1.0:2.4" switch for collink)
3. when it's done I test it with my favorite scenes looking for defects. In this case all looks good except for the little dark shadow details at the lower end of greyscale.
4. run HCFR, don't forget to apply your meter correction, and don't forget to set the applied tone curve in References tab by setting: ITU-R BT 1886 , 2.4 Effective, 0%
5. run a full measurement (54 patches)
6. go to the gamma graph and see how your curve looks like. In my case I want to lower the lower end.
7. open up References again and try out different values in it: I set 2%, hit apply, then take a look at the graph in the background. I don't like it, so I set 5%. If it looks pleasing then we done here so far. (Save the project for any future use
8. so, I want to generate a new 3DLUT in DisplayCAL:
- uncheck "Create 3DLUT after profiling"
- and set the 5% value from HCFR: I have to enter 95% in DisplayCAL (that would mean the "-Ib:0.95:2.4" switch for collink)
9. when it's done I test it with my favorite scenes looking for defects:
- if it's still not good then go back to step 6. in HCFR and try out different values