From 094535c010320967639e8e86f974d878e80baa72 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Frings-F=C3=BCrst?= Date: Fri, 1 May 2015 16:13:57 +0200 Subject: Imported Upstream version 1.7.0 --- doc/Scenarios.html | 617 +++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 459 insertions(+), 158 deletions(-) (limited to 'doc/Scenarios.html') diff --git a/doc/Scenarios.html b/doc/Scenarios.html index e82a8a4..7b5899f 100644 --- a/doc/Scenarios.html +++ b/doc/Scenarios.html @@ -75,6 +75,11 @@ handled when calibration is being used

Linking Profiles

+

    Image dependent gamut + mapping using device links
+

+

    Soft Proofing Link
+

Transforming colorspaces of raster files

Creating Video Calibration 3DLuts

@@ -152,6 +157,17 @@ + + + + + + + + + + + @@ -219,6 +235,17 @@ + + + + + + + + + + + @@ -590,6 +617,17 @@ + + + + + + + + + + + @@ -649,6 +687,17 @@ + + + + + + + + + + + @@ -806,6 +855,17 @@ + + + + + + + + + + + @@ -873,37 +933,6 @@ - - - - HCT :
-
- HutchColor HCT
-
-
- and Christophe - - - - - - - - - - - - - - - - - - - - @@ -917,6 +946,24 @@ href="http://www.christophe-metairie-photographie.com/eng%20digital%20target.htm + + HCT :
+
+ HutchColor HCT
+
+
+ and Christophe + Métairie's Digital TargeT 003 and Christophe + Métairie's Digital Target - 4 :
+
+ CMP_DT_003  CMP_Digital_Target-4
+
+ and the LaserSoft @@ -928,9 +975,6 @@ href="http://www.christophe-metairie-photographie.com/eng%20digital%20target.htm - - Métairie's Digital TargeT 003 and Christophe @@ -976,35 +1020,20 @@ href="http://www.christophe-metairie-photographie.com/eng%20digital%20target.htm - Métairie's Digital Target - 3 :
+ Imaging DCPro Target:

- CMP_DT_003  CMP_Digital_Target-3
+ LaserSoft DCPro
+      Target

- and the LaserSoft - - - - - - - - - - - - - - - - - - - - - - + The Datacolor SpyderCheckr:
+
+ Datacolor
+      SpyderCheckr
+
+ One of the QPcard's:
+ QPcard @@ -1027,21 +1056,6 @@ href="http://www.christophe-metairie-photographie.com/eng%20digital%20target.htm - - Imaging DCPro Target:
-
- LaserSoft DCPro
-      Target
-
- The Datacolor SpyderCheckr:
-
- Datacolor
-      SpyderCheckr
-
- One of the QPcard's:
- QPcard @@ -1069,6 +1083,9 @@ href="http://www.christophe-metairie-photographie.com/eng%20digital%20target.htm + + 201:            QPcard @@ -1080,9 +1097,6 @@ href="http://www.christophe-metairie-photographie.com/eng%20digital%20target.htm - - 201:            QPcard @@ -1234,6 +1248,17 @@ href="http://www.xrite.com/documents/apps/public/digital_colorchecker_sg_l_a_b.t + + + + + + + + + + + @@ -1289,8 +1314,8 @@ href="http://www.xrite.com/documents/apps/public/digital_colorchecker_sg_l_a_b.t file should be used, and the cie reference files come with the chart.

- For the Christophe Métairie's Digital Target-3 chart with 570 - patches, the ref/CMP_Digital_Target-3.cht + For the Christophe Métairie's Digital Target-4 chart with 570 + patches, the ref/CMP_Digital_Target-4.cht file should be used, and the cie reference files come with the chart.

@@ -1355,6 +1380,17 @@ href="http://www.xrite.com/documents/apps/public/digital_colorchecker_sg_l_a_b.t + + + + + + + + + + + @@ -1797,6 +1833,17 @@ href="http://www.xrite.com/documents/apps/public/digital_colorchecker_sg_l_a_b.t + + + + + + + + + + + @@ -1935,6 +1982,17 @@ then + + + + + + + + + + + @@ -1972,6 +2030,12 @@ then If you know what colorspace your originals are in, use that as the argument to -S.

+ If your viewing environment for the display and print doesn't match + the ones implied by the
-cmt and -dpp options, leave them out, and + evaluate what, if any appearance transformation is appropriate for + your environment at a later stage.
+
Make sure you check the delta E report at the end of the profile creation, to see if the sample data and profile is behaving reasonably. Depending on the type of device, and the consistency of @@ -2050,6 +2114,17 @@ then + + + + + + + + + + + @@ -2504,6 +2579,17 @@ chart, + + + + + + + + + + + @@ -2559,6 +2645,17 @@ an + + + + + + + + + + + @@ -2606,6 +2703,17 @@ an + + + + + + + + + + + @@ -2661,6 +2769,17 @@ a + + + + + + + + + + + @@ -2721,16 +2840,22 @@ a
To apply color management and calibration to a raster image:

-     cctiff Source2Destination.icm PrinterA_c.cal infile.tif - outfile.tif
+     cctiff + Source.icm PrinterA.icm PrinterA_c.cal + infile.tif outfile.tif
+
or
-     cctiff Source2Destination.icm PrinterA_c.cal infile.jpg - outfile.jpg

+     cctiff + Source.icm PrinterA_c.icm + infile.tif outfile.tif
+
+ [ Note that cctiff will also process JPEG raster images. ]

Another useful tool is synthcal, that allows creating linear or synthetic calibration files for disabling @@ -2738,6 +2863,11 @@ a Similarly, fakeread also supports applying calibration curves and embedding them in the resulting .ti3 file
+
+ If you want to create a pre-conditioning profile for use with targen -c, then use the PrinterA.icm + profile, NOT PrinterA_c.icm that has calibration curves + applied.

How profile ink limits are handled when calibration is being used.

Even though the profiling process is carried out on top of the @@ -2808,6 +2938,11 @@ a DestinationProfile.icm Source2Destination.icm

+ [ If your viewing environment for the display and print doesn't + match the ones implied by the -cmt and + -dpp options, leave them out, and + evaluate what, if any appearance transformation is appropriate for + your environment at a later stage. ]

In inverse output table gamut mapping mode, the pre-computed intent mappings inside the profiles are not used, @@ -2848,6 +2983,53 @@ a for the type of device the profile represents, and the conditions under which it will be viewed.

+

Image dependent gamut mapping using device + links
+

+ When images are stored in large gamut colorspaces (such as. L*a*b* + or ProPhoto, etc.), then using the colorspace gamut as the source + gamut for gamut mapping is generally a bad idea, as it leads to + overly compressed and dull images. The correct approach is to use a + source gamut that represents the gamut of the images themselves. + This can be created using tiffgamut, and an example workflow is as + follows:
+
+ tiffgamut -f80 -pj -cmt ProPhoto.icm + image.tif
+
+ collink -v + -qh -G image.gam -ip + -cmt -dpp + ProPhoto.icm RGBDestinationProfile.icm + Source2Destination.icm
+
+ cctiff Source2Destination.icm + image.tif printfile.tif
+
+ The printfile.tif is then send to the printer without color + management, (i.e. in the same way the printer characterization test + chart was printed), since it is in the printers native colorspace.
+
+ You can adjust how conservatively the image gamut is preserved using + the tiffgamut -f parameter. Omitting it or using a larger value (up + to 100) preserves the color gradations of even the lesser used + colors, at the cost of compressing the gamut more.
+ Using a smaller value will preserve the saturation of the most + popular colors, at the cost of not preserving the color gradations + of less popular colors.
+
+ You can create a gamut that covers a set of source images by + providing more than one image file name to tiffgamut. This may be + more efficient for a group of related images, and ensures that + colors are transformed in exactly the same way for all of the + images.
+
+ The arguments to collink should be appropriate for the output device + type - see the collink examples in the above section.

Soft Proofing Link

Often it is desirable to get an idea what a particular devices output will look like using a different device. Typically this might @@ -2872,6 +3054,11 @@ a the viewing conditions and assumes adaptation to the differences in the luminence range, but otherwise not attempting to compress or change the gamut.
+
+ If your viewing environment for the display and print doesn't match + the ones implied by the -cpp and -dmt options, then either leave them out + or substitute values that do match your environment.
 

Transforming colorspaces of raster files

@@ -2938,16 +3125,31 @@ a Argyll's normal test patch display will be used by default, as long as any video encoding range considerations are dealt with (see - Signal encoding below). An alternative when working with MadVR V - 0.86.9 or latter, is to use the madTPG to display the patches in - which case the MadVR video encoding range setting will operate. This - can give some quality benefits due to MadVR's use of dithering. To - display patches using MadVR rather than Argyll, start madTPG and - then use the option "-d madvr" in dispcal, dispread and dispwin. - Leave the MadTPG "VideoLUT" and "3dluts" buttons in their - default  (enabled) state, as the various tools will - automatically take care of disabling the 3dLut and/or calibration - curves as needed.
+ Signal encoding below).
+
+ An alternative when working with MadVR V 0.86.9 or latter, is to use + the madTPG to display the patches in which case the MadVR video + encoding range setting will operate. This can give some quality + benefits due to MadVR's use of dithering. To display patches using + MadVR rather than Argyll, start madTPG and then use the option "-d + + + + madvr" in dispcal, dispread and dispwin. Leave the MadTPG + "VideoLUT" and "3dluts" buttons in their default  (enabled) + state, as the various tools will automatically take care of + disabling the 3dLut and/or calibration curves as needed.
+
+ Another option is to use a ChromeCast + using the option "-dcc" in dispcal, dispread and dispwin. + Note that the ChromeCast as a test patch source is probably the + least accurate of your choices, since it up-samples the test + patch and transforms from RGB to YCC and back, but should be + accurate within ± 1 bit. You may have to modify any firewall to + permit port 8081 to be accessed on your machine if it falls back to + the Default receiver (see installation + instructions for your platform).
2) White point calibration & neutral axis calibration.
A Device Link is capable of embodying all aspects of the calibration, including correcting the white point and neutral axis @@ -2982,6 +3184,17 @@ a package could be used, or ArgyllCMS dispcal's + + + + + + + + + + + interactive adjustment mode can be used to set the white point. Note that while adjusting the neutral axis for neutrality may @@ -3004,7 +3217,18 @@ a and 3dLut will set the final response. If this approach is taken, then the resulting calibration file should be provided to dispread as the -k parameter or -K parameter.  See also below Choice + href="dispcal.html#K">-K parameter.  See also below Choice + + + + + + + + + + + of where to apply display per channel calibration curves.
  • Choose one of the Absolute Colorimetric intents in collink (ie. -i aw). This greatly reduces flexibility, and may not be @@ -3087,8 +3311,12 @@ a scale full range RGB values to Video levels for the TV. If the latter is not possible, then use the -E options on dispcal and dispread. (See Signal encoding bellow for more details on - this). Don't use the -E options on dispcal and dispread if you are - using MadVR to display test patches using the "-d madvr" option.
    + this). It may also improve the accuracy of the display profile if + you use the dispread -Z option to + quantize the test values to the precision of the display + system.  Don't use the -E options on dispcal and dispread, nor + the -Z option on dispread if you are using MadVR to display test + patches using the "-d madvr" option.

    Once the profile has been created, it is possible to then use the resulting Device Link/3DLut with signal encoding other than full @@ -3206,9 +3434,9 @@ a near black will get clipped to the display black point, loosing shadow detail. To avoid this, some sort of black point mapping is usually desirable. There are two mechanisms available in collink: - a) BT.1886 black point mapping, or b) using one of the smart gamut - mapping intents that does black point mapping (e.g. la, p, pa, ms - or s).
    + a) Custom EOTF with input and/or output black point mapping, or b) + using one of the smart gamut mapping intents that does black point + mapping (e.g. la, p, pa, ms or s).

    8) Viewing conditions adjustment and gamut mapping

    @@ -3223,30 +3451,56 @@ a practice that much video material is adjusted to look as intended when displayed on a reference monitor having a display gamma of somewhere between 2.2 and 2.4, viewed in a dim viewing - environment. The modern standard covering the display transfer - curve is BT.1886, - which defines a pure power 2.4 curve with a black point offset. So - another means of making the viewing adjustment is to apply the - BT.1886-like response to Rec709 encoded material. Collink supports - this using the -I b, and allows some - control over the degree of viewing conditions adjustment by - overriding the BT.1886 gamma  using the -I b:g.g parameter. This is the recommended - approach to start with, since it gives good results with a single - parameter.
    + which defines a pure power 2.4 curve with an input offset and + scale applied to account for the black point offset while + retaining dark shadow tonality. So another means of making the + viewing adjustment is to use the BT.1886-like EOTF for Rec709 + encoded material. Collink supports this using the -I b, and allows some control over the + degree of viewing conditions adjustment by overriding the BT.1886 + gamma  using the -I b:g.g + parameter. This is the recommended approach to start with, + since it gives good results with a single parameter.

    +

    The addition of a second optional parameter -I b:p.p:g.g + allows control over the degree of black point offset accounted for + as an output offset, as opposed to input offset Once the effective + gamma value has been chosen to suite the viewing conditions and + set the overall contrast for mid greys, increasing the proportion + of black offset accounted for in the output of the curve is a way + of reducing the deep shadow detail, if it is being overly + emphasized.

    An alternate approach to making this adjustment is to take advantage of the viewing conditions adjustment using the CIECAM02 model available in collink. Some control over the degree of viewing conditions adjustment is possible by varying the viewing condition parameters.

    A third alternative is to combine the two approaches. The source - is defined as Rec709 rendered to a model BT.1886 display in dim - viewing conditions, and then CIECAM02 is used to adjust for the - actual display viewing conditions. Once again, control over the - degree of viewing conditions adjustment is possible by varying the - viewing condition parameters.

    + is defined as Rec709 primaries with a BT.1886-like EOTF display in + dim viewing conditions, and then CIECAM02 is used to adjust for + the actual display viewing conditions. Once again, control over + the degree of viewing conditions adjustment is possible by varying + the viewing condition parameters
    +

    +


    +

    +

    9) Correcting for any black point inaccuracy in the display + profile
    +

    +

    Some video display devices have particularly good black points, + and any slight raising of the black due to innacuracies in the + display profile near black can be objectionable. As well as using + the targen -V flag to improve + accuracy near black during profiling, if the display is known to + be well behaved (ie. that it's darkest black is actually at RGB + value 0,0,0), then the collink -b + flag can be used, to force the source RGB 0,0,0 to map to the + display 0,0,0.
    +

    Putting it all together:
    In this example we choose to create a display calibration first using dispcal, and create a simple matrix profile as well:
    @@ -3282,7 +3536,7 @@ a
    The display can then be measured:

    -   dispread -v -k TV.cal TV
    +   dispread -v -k -Z8 TV.cal TV

    or using madTPG:

    @@ -3312,14 +3566,14 @@ a BT.1886 black point and viewing conditions adjustment, say one of the following:

    -   collink -v -Ib:2.4 -G -ir Rec709.icm TV.icm +   collink -v -Ib:2.4 -b -G -ir Rec709.icm TV.icm HD.icm   # dark conditions
    -
      collink -v -Ib     -G -ir +   collink -v -Ib     -b -G -ir Rec709.icm TV.icm HD.icm   # dim conditions - good default
    -
      collink -v -Ib:2.1 -G -ir Rec709.icm TV.icm +   collink -v -Ib:2.1 -b -G -ir Rec709.icm TV.icm HD.icm   # mid to dim conditions
    -
      collink -v -Ib:2.0 -G -ir Rec709.icm TV.icm +   collink -v -Ib:2.0 -b -G -ir Rec709.icm TV.icm HD.icm   # mid to light conditions

    or you could do it using pure CIECAM02 adjustment and a black point @@ -3400,7 +3654,7 @@ a
    For PC use, where the encoding is full range RGB:

    -   collink -v -3e -Ib -G -ir -a TV.cal Rec709.icm TV.icm +   collink -v -3e -Ib -b -G -ir -a TV.cal Rec709.icm TV.icm HD.icm

    For correct operation both the 3DLut HD.txt and the per channel @@ -3416,8 +3670,8 @@ a will probably be processing TV RGB levels, or YCbCr encoded signals that it converts to/from RGB internally, so

    -   collink -v -3e -et -Et -Ib -G -ir -a TV.cal Rec709.icm - TV.icm HD.icm
    +   collink -v -3e -et -Et -Ib -b -G -ir -a TV.cal + Rec709.icm TV.icm HD.icm

    in this case just the HD.txt file needs installing on the eeColor, but make sure that the original linear "first1*.txt files are @@ -3441,10 +3695,21 @@ a normal desktop and MadVR, then it is recommended that you install the display ICC profile and use the -H option:

    -     collink -v -3m -et -Et -Ib -G -ir -H TV.cal - Rec709.icm TV.icm HD.icm
    +     collink -v -3m -et -Et -Ib -b -G -ir -H + TV.cal Rec709.icm TV.icm HD.icm

    -
        collink -v -3m -et -Et -Ib -G -ir -H +     collink -v -3m -et -Et -Ib -b -G -ir -H + + + + + + + + + + + @@ -3458,7 +3723,18 @@ a TV.cal EBU3213_PAL.icm TV.icm SD_PAL.icm

    -
        collink -v -3m -et -Et -Ib -G -ir -H +     collink -v -3m -et -Et -Ib -b -G -ir -H + + + + + + + + + + + @@ -3476,10 +3752,21 @@ a curves using dithering, and allow it to set the graphics card to linear by using the -a option:

    -     collink -v -3m -et -Et -Ib -G -ir -a TV.cal - Rec709.icm TV.icm HD.icm
    +     collink -v -3m -et -Et -Ib -b -G -ir -a + TV.cal Rec709.icm TV.icm HD.icm

    -
        collink -v -3m -et -Et -Ib -G -ir -a +     collink -v -3m -et -Et -Ib -b -G -ir -a + + + + + + + + + + + @@ -3493,7 +3780,18 @@ a TV.cal EBU3213_PAL.icm TV.icm SD_PAL.icm

    -
        collink -v -3m -et -Et -Ib -G -ir -a +     collink -v -3m -et -Et -Ib -b -G -ir -a + + + + + + + + + + + @@ -3544,11 +3842,12 @@ a

      targen -v -d3 -e1 -m6 -f0 -W verify

    We make sure there is at least one white patch usin g -e1, a 20% - increment grid using -m6, no full spread patches, and create a - VRML 3d visualization of the point set using the -W flag. It is - good to take a look at the verifyd.wrl file using a VRML viewer. - You may want to create several test sets that look at particular - aspects, ie. neutral axis response, pure colorant responses, etc.
    + increment grid using -m6, no full spread patches, and create an + X3DOM 3d visualization of the point set using the -W flag. It is + good to take a look at the verifyd.x3d.html file using a Web + browser. You may want to create several test sets that look at + particular aspects, ie. neutral axis response, pure colorant + responses, etc.

    Next we create a reference file by simulating the expected response of the perfect video display system. Assuming the collink @@ -3556,12 +3855,12 @@ a would:

      copy verify.ti1 ref.ti1
    -   fakeread -v -b TV.icm Rec709.icm ref
    +   fakeread -v -b -Z8 TV.icm Rec709.icm ref

    You should adjust the parameters as necessary, so that the reference matches the link options. For instance, if your link - options included "-I b:2.15" then the equivalent fakeread option - "-b 2.15:TV.icm" should be used, etc.
    + options included "-I b:0.2:2.15" then the equivalent fakeread + option "-b 0.2:2.15:TV.icm" should be used, etc.


    A sanity check we can make at this point is to see what the @@ -3569,12 +3868,13 @@ a simulating the reproduction of this test set:

      copy verify.ti1 checkA.ti1
    -   fakeread -v -et -p HD.icm -Et TV.icm checkA
    +   fakeread -v -et -Z8 -p HD.icm -Et TV.icm checkA

    If you used collink -a, then the calibration incorporated in the device link needs to be undone to match what the display profile expects:

    -

      fakeread -v -et -p HD.icm -Et -K TV.cal TV.icm checkA

    +

      fakeread -v -et -Z8 -p HD.icm -Et -K TV.cal TV.icm + checkA

    and then you can verify:

      colverify -v -n -w -x ref.ti3 checkA.ti3
    @@ -3590,10 +3890,10 @@ a

      verify -v -N -w -x ref.ti3 checkA.ti3

    This will give a numerical report of the delta E's, and also - generate a VRML plot of the errors in L*a*b* space. The important - thing is to take a look at the checkA.wrl file, to see if gamut - clipping is occurring - this is the case if the large error - vectors are on the sides or top of the gamut. Note that the + generate an X3DOM plot of the errors in L*a*b* space. The + important thing is to take a look at the checkA.x3d.html file, to + see if gamut clipping is occurring - this is the case if the large + error vectors are on the sides or top of the gamut. Note that the perfect cube device space values become a rather distorted cube like shape in the perceptual L*a*b* space. If the vectors are small in the bulk of the space, then this indicates that the link @@ -3612,22 +3912,23 @@ a

      iccgamut -ff -ia Rec709
      iccgamut -ff -ia TV.icm
    -
      viewgam -i Rec709.gam TV.gam gamuts.wrl
    +
      viewgam -i Rec709.gam TV.gam gamuts

    -

    and look at the gamuts.wrl file, as well as taking notice of % of - the video volume that the display intersects. The VRML solid +

    and look at the gamuts.x3d.html file, as well as taking notice of + % of the video volume that the display intersects. The X3DOM solid volume will be the video gamut, while the wire frame is the display gamut. If you are not targetting D65 with your display, you should use iccgamut -ir instead of -ia, so as to align the white points.


    -

    The main check is to actually measure the display response and - compare it against the reference. Make sure the display is setup - as you would for video playback and then use dispread:
    +

    The main verification check is to actually measure the display + response and compare it against the reference. Make sure the + display is setup as you would for video playback and then use + dispread:

      copy verify.ti1 checkB.ti1
    -
      dispread -v checkB
    +
      dispread -v -Z8 checkB

    You would add any other options needed (such as -y etc.) to set your instrument up properly. If you are using madTPG, then -- cgit v1.2.3