<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>fakeread</title> <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"> <meta name="author" content="Graeme Gill"> </head> <body> <h2><b>spectro/fakeread</b></h2> <h3>Summary</h3> Simulate the measurement of a devices response, using an existing device profile, or measured test point data set. The device profile can be either an <a href="File_Formats.html#ICC">ICC</a> or <a href="File_Formats.html#MPP">MPP</a> profile, or the data set can be a <a href="File_Formats.html#.ti3">.ti3</a> file. A device link separation or color space conversion can be applied before the print/measure simulation, as well as device calibration or inverse calibration curves.<br> <br> <b>fakeread</b> can be useful for creating a data set from an existing profile to re-create a different style of profile (i.e. create a cLUT profile from a matrix profile), for creating synthetic data sets with known amounts of randomness for testing profile creation against a perfectly known ideal, or for creating verification test sets for checking colorimetric colorspace emulation against.<br> <br> The options below are in the order of color processing that fakeread performs.<br> <h3>Usage</h3> <small><span style="font-family: monospace;">fakeread [-options] </span></small><small><span style="font-family: monospace;"></span></small><small><span style="font-family: monospace;"></span><i style="font-family: monospace;">profile.</i><span style="font-family: monospace;">[icm|mpp|ti3] </span><i style="font-family: monospace;">inoutfile</i></small><small><span style="font-family: monospace;"><br> -v [n] Verbose mode [level]<br> -e flag Video encode device input to sepration as:<br> n normal 0..1 full range RGB levels (default)<br> t (16-235)/255 "TV" RGB levels<br> 6 Rec601 YCbCr SD (16-235,240)/255 "TV" levels<br> 7 Rec709 1125/60Hz YCbCr HD (16-235,240)/255 "TV" levels<br> 5 Rec709 1250/50Hz YCbCr HD (16-235,240)/255 "TV" levels<br> 2 Rec2020 YCbCr UHD (16-235,240)/255 "TV" levels<br> C Rec2020 Constant Luminance YCbCr UHD (16-235,240)/255 "TV" levels<br> -p <i>separation.icm</i> Use device link separation profile on input<br> -E flag Video decode separation device output. See -e above<br> -k <i>file.cal</i> Apply calibration (include in .ti3 output)<br> -i <i>file.cal</i> Include calibration in .ti3 output, but don't apply it<br> -K <i>file.cal</i> Apply inverse calibration<br> -r level Add average random deviation of <level>% to device values (after sep. & cal.)<br> -0 pow Apply power to device chanel 0-9<br> -b <i>output.icm</i> Apply BT.1886-like mapping with effective gamma 2.2<br> -b g.g:<i>output.icm</i> Apply BT.1886-like mapping with effective gamma g.g<br> -B <i>output.icm</i> Apply BT.1886 mapping with technical gamma 2.4<br> -B g.g:<i>output.icm</i> Apply BT.1886 mapping with technical gamma g.g<br> -I intent r = relative colorimetric, a = absolute (default)<br> -A L,a,b Scale black point to target Lab value<br> -l Output Lab rather than XYZ<br> -s Lookup </span></small><small><span style="font-family: monospace;"><small><a style="font-family: monospace;" href="file:///D:/src/argyll/doc/File_Formats.html#MPP">MPP</a></small> spectral values</span></small><br> <small><span style="font-family: monospace;"><small><span style="font-family: monospace;"> -R level Add average random deviation of <level>% to output PCS values<br> </span></small> -u Make random deviations have uniform distributions rather than normal<br> -S seed Set random seed<br> </span><span style="font-family: monospace;"> </span><i style="font-family: monospace;">profile.</i><span style="font-family: monospace;">[icm|mpp|ti3] </span><a style="font-family: monospace;" href="File_Formats.html#ICC">ICC</a><span style="font-family: monospace;">, </span><a style="font-family: monospace;" href="File_Formats.html#MPP">MPP</a><span style="font-family: monospace;"> or </span><a style="font-family: monospace;" href="File_Formats.html#.ti3">.ti3</a><span style="font-family: monospace;"> profile/file to use</span><br style="font-family: monospace;"> <span style="font-family: monospace;"></span><i style="font-family: monospace;">inoutfile</i><span style="font-family: monospace;"> Base name for input[</span><a style="font-family: monospace;" href="File_Formats.html#.ti1">.ti1</a><span style="font-family: monospace;">]/output[</span><a style="font-family: monospace;" href="File_Formats.html#.ti3">.ti3</a><span style="font-family: monospace;">] file</span></small><br> <b><br> Examples</b><br> <br> fakeread profile.icm testvalues<br> fakeread -p separation.icm profile.icm testvalues<br> <h3>Comments<br> </h3> <a name="v"></a>The <span style="font-weight: bold;">-v</span> flag reports extra information, e.g. on what BT.1886 option is doing. A level > 1 will be more verbose.<br> <br> <a name="e"></a>The <b>-e</b> <i>flag</i> applies a Video encoding to the input of the separation.<small><small><br> <br> n normal 0..1 full range RGB levels (default)<br> t (16-235)/255 "TV" RGB levels<br> 6 Rec601 YCbCr SD (16-235,240)/255 "TV" levels<br> 7 Rec709 1125/60Hz YCbCr HD (16-235,240)/255 "TV" levels<br> 5 Rec709 1250/50Hz YCbCr HD (16-235,240)/255 "TV" levels<br> 2 Rec2020 YCbCr UHD (16-235,240)/255 "TV" levels<br> C Rec2020 Constant Luminance YCbCr UHD (16-235,240)/255 "TV" lev</small></small><br> <br> <a name="p"></a>The <span style="font-weight: bold;">-p</span> <b><i>separation.icm</i></b> option enables a device to device value conversion before converting to expected PCS values. This might be an ink separation of a video calibration device link. The argument is the name of the ICC device link that defines the separation.<br> <br> <a name="E"></a>The <b>-E</b> <i>flag</i> applies a Video decoding to the output of the separation.<small><small> </small></small>See <a href="#e"><b>-e</b></a> for the list of decodings.<br> <br> <a name="k"></a>The <b>-k file.cal</b> parameter specifies a calibration file created by <a href="file:///D:/src/argyll/doc/printcal.html">printcal</a> or <a href="dispcal.html">dispcal</a>, and the supplied calibration curves will be applied to the chart device values after any separation and before the device profile. This allows emulating a system that uses per device channel calibration. The calibration curves will also be included in the resulting .ti3 file, so that they can be passed through to the ICC profile allowing accurate computation of ink limits.<br> <br> <a name="i"></a> The <b>-i file.cal</b> parameter specifies a printer calibration file created by <a href="file:///D:/src/argyll/doc/printcal.html">printcal</a> or <a href="file:///D:/src/argyll/doc/dispcal.html">dispcal</a>, and the calibration curves will be included in the included in the resulting .ti3 file, so that they can be passed through to the ICC profile, to allow accurate computation of ink limits. The calibration <span style="font-weight: bold;">is not applied</span> to tchart values. <span style="font-weight: bold;">Note</span> that if the supplied ICC profile contains VCGT calibration curves, that these will be included in the resulting .ti3 by default.<br> <br> <a name="K"></a>The <b>-K</b> <b>file.cal</b> parameter specifies a calibration file created by <a href="file:///D:/src/argyll/doc/printcal.html">printcal</a> or <a href="file:///D:/src/argyll/doc/dispcal.html">dispcal</a>, and the inverse of the supplied calibration curves will be applied to the chart device values after any separation and before the device profile. This allows for undoing calibration curves that may be part of a video calibration device link, so that the (calibrated device value) device profile will work as expected.<br> <br> <a name="r"></a>The <span style="font-weight: bold;">-r</span> parameter is a way of simulating instability in the behaviour of the simulated printing system. The parameter supplied to the flag will be used to scale a random offset added to the device values (after any separation and calibration is applied). The offset will be a normally distributed error with an average deviation of level%. A typically value supplied might be 1.0 to simulate 1% randomness.<br> <br> <a name="0"></a>The <span style="font-weight: bold;">-0, -1, -2 .. -9</span> parameters are a way of simulating changes in the behavior of the simulated printing system. The parameter supplied to the flag will be used to modify the device values (after any separation, calibration and device randomness is applied) by raising them to the power of the parameter. This applies a transfer curve to the simulated device response.<br> <br> <a name="b"></a>The <b>-b output.icm</b> flag applies extra input processing, applying <a href="http://www.itu.int/rec/R-REC-BT.1886-0-201103-I">BT.1886</a>-like video gamma mapping using an effective gamma of 2.2 by default, and overridable using <b>-b g.g:output.icm</b> where <b>g.g</b> is the gamma. <b>output.icm</b> is the display ICC profile that provides the black point that the BT.1886 curves will target. The gamma is an effective gamma, meaning that its effect on 50% input is the same as that of a pure power curve, in spite of any black offset added by BT.1886. This has the benefit of making the overall effect of brightness independent of the black level of the display. Setting an effective gamma other than 2.2 is one way of making the viewing condition adjustment for the different conditions of video encoding and decoding, or for modelling the source colorspace as a rendering on a video display. BT.1886 will only work with matrix type input profiles. Typically this will be used to create a verification test set for checking the operation of a device link or 3dLut created using <a href="collink.html">collink</a>, using the same BT.1886 parameters.<br> <br> <b><a name="B"></a></b>The <b>-B output.icm</b> flag applies extra input processing, applying <a href="http://www.itu.int/rec/R-REC-BT.1886-0-201103-I">BT.1886</a>-like video gamma mapping using a gamma of 2.4 by default, and overridable using <b>-B g.g:output.icm</b> where <b>g.g</b> is the gamma. <b>output.icm</b> is the display ICC profile that provides the black point that the BT.1886 curves will target. The gamma is the technical gamma, or power applied to the input image, and this means that its effect on 50% input will depend on the black level of the display, making the overall brightness somewhat unpredictable. For a more predictable effect, use <b>-b</b>.<br> <br> <a name="I"></a>The <span style="font-weight: bold;">-I</span> parameter allows changing the intent used in looking up the ICC profile colors to relative colorimetric. This would <span style="text-decoration: underline;">not</span> be used if you intend to make a profile from the resulting .ti3 file, since profiles are always made from absolute colorimetric measurement values. Note that this flag does nothing if the profile is an MPP or .ti3 file.<br> <span style="font-weight: bold;"></span><br> <a name="A"></a>The <span style="font-weight: bold;">-A</span> parameter is a way of simulating devices that have a different black point to the profile used. This only works if an ICC profile is used, and scales the black point to the parameter value. This will be done in XYZ space by default, and in L*a*b* space if the <a href="#l"><span style="font-weight: bold;">-l</span></a> flag is used.<br> <br> <a name="l"></a>The <span style="font-weight: bold;">-l</span> flag causes the CIE output values to be L*a*b* rather than the default XYZ values.<br> <br> <a name="s"></a>The <span style="font-weight: bold;">-s</span> flag works if a spectral MPP file is being used as a device profile, and causes the output to include spectral values.<br> <br> <a name="R"></a>The <span style="font-weight: bold;">-R</span> parameter is a way of simulating instability in the behavior of the simulated measuring system. The parameter supplied to the flag will be used to scale a random offset added to the PCS values. The offset will be a normally distributed error with an average deviation of level%. A typically value supplied might be 1.0 to simulate 1% randomness. <br> <br> <a name="u"></a>The <span style="font-weight: bold;">-u</span> flag changes the distribution of the random offsets applied using the <span style="font-weight: bold;">-r</span> or <span style="font-weight: bold;">-R</span> flags, from the default standard deviation, to a uniform deviation distribution. The level is still specified as an average deviation.<br> <br> <a name="S"></a>The <span style="font-weight: bold;">-S</span> parameter lets a particular random seed be used when generating random offsets, so that the randomness can be made repeatable. Normally a different seed will be used for each run. <br> <br> Fakeread is useful in creating artificial test value for testing <a href="colprof.html">colprof</a>, as well as providing one path for turning an MPP profile into an ICC profile. It can also be used to create a reference file for verifying against. If a <a href="File_Formats.html#.ti3">.ti3</a> file is specified instead of an <a href="File_Formats.html#ICC">ICC</a> or <a href="File_Formats.html#MPP">MPP</a> profile, then the closest matching measured points in the .<a href="File_Formats.html#.ti3">.ti3</a> are substituted for the test values in the <a href="File_Formats.html#.ti1">.ti1</a> file on output. If the <a href="File_Formats.html#.ti1">.ti1</a> file is a monochrome test file with a White device value, then an RGB <a href="File_Formats.html#ICC">ICC</a> profile, <a href="File_Formats.html#MPP">MPP</a> or <a href="File_Formats.html#.ti3">.ti3</a> may be used, and the White values will be translated to equal RGB values. If the <a href="File_Formats.html#.ti1">.ti1</a> file is a monochrome test file with a Black device value, then a CMYK <a href="File_Formats.html#ICC">ICC</a> profile, <a href="File_Formats.html#MPP">MPP</a> or <a href="File_Formats.html#.ti3">.ti3</a> may be used, and the Black values will be translated to equal CMY = 0, K = grey values. <span style="font-weight: bold;">Note</span> that any calibration within a supplied ICC profile is <span style="text-decoration: underline;">not</span> applied during the conversion, although it will be included in the .ti3 output (see <span style="font-weight: bold;">-k</span> and <span style="font-weight: bold;">-i</span> flags for how apply calibration curves during the conversion and/or include a specific calibration curves in the output).<br> <br> If a separation device profile is provided (e.g. from CMY -> CMYK, or perhaps CMYK->CMYK, to simulate a color correction step before "printing", or perhaps a Video RGB->RGB calibration link) then this will be applied to the .ti1 device values, before converting the the device values into .ti3 PCS values.<br> <br> <br> <br> <br> </body> </html>