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

Other questions
Post Reply
user29672
Posts: 4
Joined: Fri Jan 07, 2011 8:04 pm

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

Post 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
zedonet
Site Admin
Posts: 2156
Joined: Fri Oct 06, 2006 8:02 am

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

Post 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?
user29672
Posts: 4
Joined: Fri Jan 07, 2011 8:04 pm

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

Post 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 ------------
user29672
Posts: 4
Joined: Fri Jan 07, 2011 8:04 pm

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

Post 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 ------------
zedonet
Site Admin
Posts: 2156
Joined: Fri Oct 06, 2006 8:02 am

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

Post 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
user29672
Posts: 4
Joined: Fri Jan 07, 2011 8:04 pm

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

Post 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)?
zedonet
Site Admin
Posts: 2156
Joined: Fri Oct 06, 2006 8:02 am

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

Post 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).
Post Reply