Page 1 of 1

Custom RGB ICC profiles - C/M/Y/K/Gray separations

Posted: Fri Jan 07, 2011 9:45 pm
by user29672
Hello,

Ive downloaded TP and ordered a license in order to drive a Canon PIXMA MP980.

When printing with a custom ICC profile (RGB), I noticed in the Ink Consumption Monitor that predominantly CMY inks are used, while only a little bit of black ink is used and the gray ink cartridge isn't used at all, which I find rather inconvenient :-( [As expected, the same applies to Intent="No Correction" in conjunction with ColorMode="Color(RGB)" - i.e. when printing a RGB profiling target.]

On the other hand, when not using a custom ICC profile, but the default color correction built into the driver, then I see that all inks are utilized, and a much stronger UCR is applied, which I find much more appropriate.

Is there any way to obtain more appropriate C/M/Y/K/Gray separations and ink usage in conjunction with custom RGB ICC profiles [i.e. separations that are similar to those generated by the driver built-in color correction]?

Thanks,
Gerhard

Re: Custom RGB ICC profiles - C/M/Y/K/Gray separations

Posted: Tue Jan 11, 2011 10:24 am
by zedonet
Hello,

Of course grey ink should also be used with when printing with your ICC profile.

Which paper type of paper did you choose when adding the profile entry (plain paper / matte inkjet paper / glossy paper / ...) - this is listed as "Paper class" in the profiles dialog in TurboPrint Control?

Re: Custom RGB ICC profiles - C/M/Y/K/Gray separations

Posted: Tue Jan 11, 2011 4:28 pm
by user29672
It was matte inkjet paper.
Here is a cut-out from the print.log:
----------- Start of print job -----------
starting child process
tpprint 2.17-2 x32 (29-NOV-2010) - TurboPrint printer driver
Copyright (C)ZEDOnet GmbH, Irsee, Germany. All rights reserved.
11-Jan-2011 19:48
PPD file: /etc/cups/ppd/tp980.ppd
header file: /tmp/pstoturboprint6816.chunk
Searching PPD file and postscript header for options...
page size A4 overwritten by ---media=A4
duplex overwritten by ---Duplex=None
GPL Ghostscript 8.64 (2009-02-03)
Copyright (C) 2009 Artifex Software, Inc. All rights reserved.
This software comes with NO WARRANTY: see the file COPYING for details.
interpret_ps: no output file specified
::set_info_paths: setting preview file to /var/turboprint/fuer/zmf/139.zmf
Filetype=PBM Plusbits_per_pixel=32 bytes_per_line=19840 width=4960 height=7015
RGB Mode
tpfile::complete_pageinfo: overriding cartridge_id 0 with 0
Printer=Canon_PIXMA_MP980; Module=Canon; Id=MP980
Colormode=2; Cartridge=0=Photo; Quality=2=Super; Paper=1001=inkjet-Peach
Pagesize=3=A4; Paper Input=1=Top Feed; Paper Output=0=Front
Duplex=0=Off; Copies=1; Mirror=0; Dithering=0; Flip=0
Page x=4800 y=6826; AppDpi x=600 y=600; DitDpi x=600 y=600;
PrnDpi x=600 y=600; Overlay=0

Profile: /usr/share/turboprint/profiles/mp980-inkjet-Peach_1001.tpr
tpfile::load_colormatch_curves: reading linearization data from external zedonet profile
tpfile::load_colormatch_curves: reading profile info from external zedonet profile
tpfile::get_patchsample_table: paper=mp980-inkjet-Peach
table::get_patchsample_struct: default_bright_ink set to default 100
tpfile::get_patchsample_table: table.type=icc file=mp980-inkjet-Peach_1001
patches; linmode=density
table::build_gamma_table: i=0 color=4 gamma=100 max=100 saturation=80
gamma 100 max 100 saturation 80 for channel 0
correction=32767
table::build_gamma_table: i=1 color=5 gamma=100 max=100 saturation=80
gamma 100 max 100 saturation 80 for channel 1
correction=32767
table::build_gamma_table: i=2 color=6 gamma=100 max=100 saturation=80
gamma 100 max 100 saturation 80 for channel 2
correction=32767
table::build_gamma_table: i=3 color=7 gamma=100 max=100 saturation=80
gamma 100 max 100 saturation 80 for channel 3
correction=32767
table::build_gamma_table: i=4 color=12 gamma=100 max=100 saturation=80
gamma 100 max 100 saturation 80 for channel 4
correction=32767
shadow: 0 => gamma 100; grey: a=0 b=0; colorspace=SRGB; cmykspace=0; intent=percept-wide; daylight = 5000K
cmm::generate_memory_profile: multichannel_mode=TRUE (KCMYg)
multi_profile_switch=100 multi_c2_switch=100 multi_m2_switch=100
print_color_chart_mode=0
bright_cyan_fac=0 bright_magenta_fac=0
black_fac=100 cyan_fac=97 magenta_fac=93 yellow_fac=98
init_cmyk2multichannel: c2fac=0 m2fac=0 kfac=100 k2fac=0 k3fac=130 multi_max_ink=768
black l=00 a+00 b+00 => l=165 a+005 b-029: K97 C66 M66 Y66 c00 m00 k00 g00
black94 l=04 a+00 b+00 => l=197 a+006 b-027: K69 C75 M67 Y69 c00 m00 k00 g00
black87 l=12 a+00 b+00 => l=242 a+005 b-027: K25 C85 M71 Y71 c00 m00 k00 g03
black75 l=27 a+00 b+00 => l=346 a+005 b-034: K00 C57 M50 Y50 c00 m00 k00 g00
black62 l=40 a+00 b+00 => l=452 a+008 b-042: K00 C40 M35 Y35 c00 m00 k00 g00
black50 l=53 a+00 b+00 => l=558 a+010 b-049: K00 C29 M25 Y25 c00 m00 k00 g00
black37 l=65 a+00 b+00 => l=657 a+013 b-055: K00 C19 M16 Y17 c00 m00 k00 g00
black25 l=77 a+00 b+00 => l=755 a+015 b-060: K00 C10 M09 Y10 c00 m00 k00 g00
black12 l=89 a+00 b+00 => l=846 a+018 b-067: K00 C05 M03 Y04 c00 m00 k00 g00
white l=99 a+00 b+00 => l=925 a+018 b-063: K00 C00 M00 Y00 c00 m00 k00 g00
cyan l=91 a-50 b-14 => l=763 a-243 b-174: K00 C26 M00 Y06 c00 m00 k00 g00
magenta l=60 a+93 b-60 => l=533 a+484 b-262: K00 C09 M55 Y00 c00 m00 k00 g00
yellow l=98 a-15 b+93 => l=840 a+010 b+798: K00 C01 M00 Y75 c00 m00 k00 g00
red l=54 a+80 b+69 => l=475 a+606 b+451: K00 C00 M86 Y96 c00 m00 k00 g00
green l=88 a-79 b+80 => l=673 a-347 b+474: K00 C30 M00 Y68 c00 m00 k00 g00
blue l=30 a+68 b-112 => l=359 a+185 b-508: K00 C61 M50 Y00 c00 m00 k00 g00
canon::setup_printer_info: number of channels: 5
canon_info.model_level=4
canon::setup_printer_info: multi raster mode
canon::setup_printer_info: bits per pixel: 4
canon::setup_printer_info: multiraster package size=16
canon::setup_printer_info: MP980 mode
Canon init string: esc(c 30 a 4 esc(J 10
esc(t 80 80 1 esc(l 34 10
esc(p 2ab 0 1e0 0

Colormatch file=CLI521grey; Curves=9600dpi; Table=mp980-inkjet-Peach_1001
Report at end of pdrive_class::begin_page
Total memory usage=1738507
PREVIEW y_offset=70 org_height=7016 src_scanline=70 preview_scanline=6
calculate_dim: print left=0 top=0 width=4800 height=6826
calculate_dim: section left=80 top=70 width=4800 height=6826
check_add_logo returned 0
Printed section of picture:
left=80 top=70 width=4800 height=6826
Printer: resolution x_dpi=600 y_dpi=600 color_mode=2
Page - printable area in printer pixels:
left=80 top=70 width=4800 height=6826
Print size in printer pixels, relative to printable area:
left=0 top=0 width=4800 height=6826
Time for <Profile> = 310
Time for <Color> = 1440
Time for <Dither> = 2020
Time for <Print> = 120
Time for <Total> = 3750
Line counters: skip=0; bitmap=0; others=6826; 8bit=0; white=3765; b/w=0
Color 0 sum: 9
Color 1 sum: 79
Color 2 sum: 82
Color 3 sum: 81
Color 4 sum: 0
total sum: 251
pixmap_class::open: can't read magic header
print_page: end of input file
Report at end of pdrivecontrol_class::release_printer
Total memory usage=0
child process terminated
------------ End of print job - result = 0 ------------

Re: Custom RGB ICC profiles - C/M/Y/K/Gray separations

Posted: Tue Jan 11, 2011 7:01 pm
by user29672
For comparison, the log when using the built-in color correction for matte inkjet paper:
----------- Start of print job -----------
starting child process
tpprint 2.17-2 x32 (29-NOV-2010) - TurboPrint printer driver
Copyright (C)ZEDOnet GmbH, Irsee, Germany. All rights reserved.
11-Jan-2011 19:58
PPD file: /etc/cups/ppd/tp980.ppd
header file: /tmp/pstoturboprint7052.chunk
Searching PPD file and postscript header for options...
page size A4 overwritten by ---media=A4
duplex overwritten by ---Duplex=None
interpret_ps: no output file specified
GPL Ghostscript 8.64 (2009-02-03)
Copyright (C) 2009 Artifex Software, Inc. All rights reserved.
This software comes with NO WARRANTY: see the file COPYING for details.
::set_info_paths: setting preview file to /var/turboprint/fuer/zmf/140.zmf
Filetype=PBM Plusbits_per_pixel=32 bytes_per_line=19840 width=4960 height=7015
RGB Mode
Printer=Canon_PIXMA_MP980; Module=Canon; Id=MP980
Colormode=2; Cartridge=0=Photo; Quality=2=Super; Paper=1=Inkjet paper
Pagesize=3=A4; Paper Input=1=Top Feed; Paper Output=0=Front
Duplex=0=Off; Copies=1; Mirror=0; Dithering=0; Flip=0
Page x=4800 y=6826; AppDpi x=600 y=600; DitDpi x=600 y=600;
PrnDpi x=600 y=600; Overlay=0

tpfile::get_patchsample_table: paper=Canon High Resolution Paper HR 101N
table::get_patchsample_struct: default_bright_ink set to default 100
patches; linmode=density
table::build_gamma_table: i=0 color=4 gamma=100 max=100 saturation=80
gamma 100 max 100 saturation 80 for channel 0
correction=32767
table::build_gamma_table: i=1 color=5 gamma=100 max=100 saturation=80
gamma 100 max 100 saturation 80 for channel 1
correction=32767
table::build_gamma_table: i=2 color=6 gamma=100 max=100 saturation=80
gamma 100 max 100 saturation 80 for channel 2
correction=33006
table::build_gamma_table: i=3 color=7 gamma=100 max=100 saturation=80
gamma 100 max 100 saturation 80 for channel 3
correction=32767
table::build_gamma_table: i=4 color=12 gamma=100 max=100 saturation=80
gamma 100 max 100 saturation 80 for channel 4
correction=32767
cmm::generate_memory_profile: multi3c_k_grey=2 lin_mode set to density
shadow: 0 => gamma 100; grey: a=0 b=0; colorspace=SRGB; cmykspace=0; intent=percept-wide; daylight = 5000K
cmm::generate_memory_profile: multichannel_mode=TRUE (KCMYg)
cmm::generate_memory_profile: multi3c_mode=TRUE
multi_profile_switch=100 multi_c2_switch=100 multi_m2_switch=100
ucr_up=153; max_ink=638; ucr_add=64
polyfit mode=2 channels=3 terms=52 patches=216
polyfit mode=4 channels=3 terms=40 patches=512
bright_cyan_fac=0 bright_magenta_fac=0
black_fac=100 cyan_fac=98 magenta_fac=95 yellow_fac=100
init_cmyk2multichannel: c2fac=0 m2fac=0 kfac=100 k2fac=0 k3fac=128 multi_max_ink=640
printer white:l=938 a+000 b-020
printer white poly:l=938 a+000 b-020
printer black poly:l=200 a+004 b+006
printer darkest poly:l=200 a+004 b+006
black l=00 a+00 b+00 => l=200 a+004 b+006: K99 C25 M25 Y25 c00 m00 k00 g00
black94 l=04 a+00 b+00 => l=206 a+006 b-006: K96 C25 M25 Y20 c00 m00 k00 g00
black87 l=12 a+00 b+00 => l=238 a+004 b-021: K84 C33 M24 Y19 c00 m00 k00 g00
black75 l=27 a+00 b+00 => l=338 a+003 b-029: K50 C23 M14 Y16 c00 m00 k00 g19
black62 l=40 a+00 b+00 => l=447 a+002 b-030: K13 C14 M07 Y12 c00 m00 k00 g47
black50 l=53 a+00 b+00 => l=550 a+002 b-033: K00 C09 M04 Y09 c00 m00 k00 g44
black37 l=65 a+00 b+00 => l=650 a+001 b-034: K00 C06 M03 Y06 c00 m00 k00 g29
black25 l=77 a+00 b+00 => l=748 a+001 b-036: K00 C05 M03 Y04 c00 m00 k00 g15
black12 l=89 a+00 b+00 => l=844 a+001 b-036: K00 C03 M02 Y03 c00 m00 k00 g04
white l=99 a+00 b+00 => l=937 a-002 b-022: K00 C00 M00 Y00 c00 m00 k00 g00
cyan l=91 a-50 b-14 => l=776 a-189 b-264: K00 C26 M00 Y00 c00 m00 k00 g00
magenta l=60 a+93 b-60 => l=574 a+683 b-151: K00 C00 M73 Y00 c00 m00 k00 g00
yellow l=98 a-15 b+93 => l=898 a-041 b+850: K00 C00 M00 Y75 c00 m00 k00 g00
red l=54 a+80 b+69 => l=509 a+639 b+486: K00 C00 M94 Y99 c00 m00 k00 g00
green l=88 a-79 b+80 => l=718 a-291 b+617: K00 C23 M00 Y83 c00 m00 k00 g00
blue l=30 a+68 b-112 => l=376 a+150 b-538: K00 C74 M50 Y00 c00 m00 k00 g00
canon::setup_printer_info: number of channels: 5
canon_info.model_level=4
canon::setup_printer_info: multi raster mode
canon::setup_printer_info: bits per pixel: 4
canon::setup_printer_info: multiraster package size=16
canon::setup_printer_info: MP980 mode
Canon init string: esc(c 30 a 4 esc(J 10
esc(t 80 80 1 esc(l 34 10
esc(p 2ab 0 1e0 0

Colormatch file=CLI521grey; Curves=9600dpi; Table=canon_hr101
Report at end of pdrive_class::begin_page
Total memory usage=1756051
PREVIEW y_offset=70 org_height=7016 src_scanline=70 preview_scanline=6
calculate_dim: print left=0 top=0 width=4800 height=6826
calculate_dim: section left=80 top=70 width=4800 height=6826
check_add_logo returned 0
Printed section of picture:
left=80 top=70 width=4800 height=6826
Printer: resolution x_dpi=600 y_dpi=600 color_mode=2
Page - printable area in printer pixels:
left=80 top=70 width=4800 height=6826
Print size in printer pixels, relative to printable area:
left=0 top=0 width=4800 height=6826
Time for <Profile> = 1600
Time for <Color> = 1590
Time for <Dither> = 2520
Time for <Print> = 110
Time for <Total> = 4420
Line counters: skip=0; bitmap=0; others=6826; 8bit=0; white=3765; b/w=0
Color 0 sum: 50
Color 1 sum: 33
Color 2 sum: 39
Color 3 sum: 44
Color 4 sum: 33
total sum: 199
pixmap_class::open: can't read magic header
print_page: end of input file
Report at end of pdrivecontrol_class::release_printer
Total memory usage=0
child process terminated
------------ End of print job - result = 0 ------------

Re: Custom RGB ICC profiles - C/M/Y/K/Gray separations

Posted: Wed Jan 12, 2011 11:50 am
by zedonet
Thank you for the log files!

Actually the wrong UCR mode is used (the mode for printers without grey ink).

Can you please try the following:

- add a new profile

- open the file
/usr/share/turboprint/profiles/profiles.lst
the new profile entry should contain the line "Profile3C=2" - if not, change/add this line

- print a new color chart, create an ICC profile and import color data

- make a test print and compare colors in the log file

Re: Custom RGB ICC profiles - C/M/Y/K/Gray separations

Posted: Wed Jan 12, 2011 9:24 pm
by user29672
When I add a new profile then Profile3C=0 (the value is not 2).
So I guess this is a bug?
What about the .tpr file? Is it necessry to change Profile3C here as well (here it is 0 as well)?

Re: Custom RGB ICC profiles - C/M/Y/K/Gray separations

Posted: Thu Jan 13, 2011 10:39 am
by zedonet
This not correct and will be fixed in the next TurboPrint release.

The entry in the .tpr file must also be changed to "Profile3C=2" before printing the profile chart (good that you noticed that).