NPAC FM Color Halftoning for the Indigo Press: Challenges and Solutions∗
Total Page:16
File Type:pdf, Size:1020Kb
https://doi.org/10.2352/ISSN.2470-1173.2019.14.COLOR-102 © 2019, Society for Imaging Science and Technology NPAC FM color halftoning for the Indigo press: challenges and solutions∗ Jiayin Liu 1, Tal Frank 2, Yotam Ben-Shoshan 2, Robert Ulichney 3, and Jan Allebach 1; 1Purdue University (United States), 2HP Inc. (Israel), and 3HP Labs, HP Inc. (United States) Abstract There are three basic architectures for halftoning algorithms: FM halftoning is increasingly popular with traditional ana- screening, error diffusion, and search-based methods. Search- log offset lithographic printing processes. There is a desire to based methods usually are iterative and find the best halftone im- offer this capability with digital presses based on electrophoto- age by minimizing the perceived error between the continuous- graphic printing (EP) technologies. However, the inherent insta- tone and halftone images. The direct binary search (DBS) algo- bility of the EP process challenges the achievement of satisfactory rithm [1] [2] [3] [4] first computes the mean-squared error (MSE) print quality with dispersed-dot, aperiodic halftoning. The di- between the filtered continuous-tone image and the filtered ini- rect binary search (DBS) algorithm is widely considered to repre- tial halftone image. Then, by scanning pixel by pixel through the sent the gold standard of dispersed-dot, aperiodic halftone image halftone image and applying toggling and swapping to minimize quality. In this paper, we continue our previous efforts to adapt the MSE, the algorithm stops when the MSE cannot be further DBS to use with the Indigo liquid EP printing technology. We de- reduced. scribe a complete color management pipeline for halftoning with HP Indigo’s Enhanced Productivity Mode (EPM) can pro- a PARAWACS matrix designed using DBS. For the first time, we vide faster throughput and obtain productivity boost by elimi- show actual printed patches obtained using our process. nating black ink from the production process: using only three Our gamut mapping is performed in the YyCxCz color space, colorants rather than four colorants, Cyan (C), Magenta (M) and and is image-dependent. It incorporates several stages of align- Yellow (Y). This mode yields total of 8 colors in the printing pro- ment between the input and output spaces, as well as several cess, including White (W), Cyan (C), Magenta (M) and Yellow stages of compression. After the gamut mapping, we tessellate (Y), Cyan and Magenta (CM), Magenta and Yellow (MY), Cyan the output color space into six global tetrahedra that each share and Yellow (CY) and Cyan, Magenta and Yellow (CMY), which the neutral axis, as an edge. Then, we determine the Neugebauer is Black (K). Primary Area Coverage (NPAC) for each pixel in the image to be Therefore, in this paper, we propose a new color manage- printed by tetrahedral interpolation from the four nearest neigh- ment pipeline for the HP Indigo press using FM halftoning based bors in the inverse printer mapping table. These four nearest on EP technologies. This work is a continues work that was re- neighbors are chosen so that only four Neugebauer primaries are ported in [5] [6]. used to render each pixel. Image-dependent gamut mapping Introduction Due to the color gamut mismatch between display and print, Halftoning is the process of rendering a pattern with a lim- gamut mapping is needed to display and print with a satisfactory ited number of tone levels. Because the human visual system level of visual quality. The case we focus on is that some input (HVS) acts like a low-pass filter, the halftone image looks like colors are not realizable with our Indigo 7000 series printing sys- a continuous-tone image at an appropriate viewing distance. tem. Our gamut mapping method is based on [6] [7] [8]. Halftoning algorithms can be classified according to For a given source image that we want to print, first we whether they produce dispersed-dot textures or clustered-dot tex- need to de-gamma the image, transfer the image from sRGB to tures. Dispersed-dot textures are comprised of isolated printer- CIEXYZ, and then from CIEXYZ to YyCxCz with our measured addressable dots and clustered-dot textures are comprised of clus- D50 white point. A flowchart of our method is shown at the end tered printer-addressable dots. Halftoning algorithms also can be of this paper. classified as Frequency modulation (FM) or Amplitude modula- tion (AM). Frequency modulation changes the density of dots: Part One: Soft compress source lightness aperiodic dot spacing but dot size is fixed. Amplitude modulation For a source image, we would like to soft compress lightness generates a regular grid of dots: dot size varies but periodic dot in every pixel because if we do compression in both lightness and spacing is fixed. chroma at the same time, it could result in some image pixels Presently, there are two dominant printing technologies, one still being outside of Indigo printer gamut. Compressing lightness is the electrophotographic (EP) process with a laser writing sys- first will eliminate this problem. Our goal is to soft compress the Source Source Dest tem and the other is inkjet (IJ). Clustered-dot textures have been source lightness YyMax and YyMin to match with YyMax and Dest used widely in electrophotographic printers and dispersed-dot tex- YyMin . Here in (1), the source gamut means the source image tures have been used widely in inkjet printers. gamut and the destination gamut means the Indigo press printer gamut. ∗ Research supported by the HP Indigo Division, Rehovot, ISRAEL. Figure 1 is the plot of equation (1). Here we compress source IS&T International Symposium on Electronic Imaging 2019 Color Imaging XXIV: Displaying, Processing, Hardcopy, and Applications 102-1 lightness to match with the destination gamut lightness with con- 2 trol parameter l which is 3 in our case [7]. YyDest = 8 Dest YyMax Source Source Source Dest <(1 − l) Source Yy + lYy ; if 0 ≤ Yy < YyMax : YyMax Dest YyMax Source Dest Dest Source Source :(1 − l) Source Yy + lYyMax ; if YyMax ≤ Yy < YyMax : YyMax (1) Figure 1: Compression of lightness. Figure 2: Bounding cylinder top view (up); and side view (down). For the rest, we followed the method in [8] for compression. center compression to compress source gamut into the destination Part Two: Shift and rotate gamut for every slice. All pixels are mapped into the destination We want to shift and rotate the source gamut and the desti- gamut by compressing the saturation and the lightness at the same nation gamut to align with the Yy axis so that compression can be time so that the pixels are compressed toward the center where the made. We move both source and destination gamut’s CMY pixel cusp occurs. The result is shown in Figure 6. values to the origin and rotate them to align with the Yy axis [9] [10]. Part Five: Rotate and shift back to Indigo press gamut Part Three: Compress into bounding cylinder We rotate the source gamut so that the source neutral axis For destination gamut, we use MATLAB built-in function YySource is aligned with the destination neutral axis. We then shift Source Dest convex hull to define the boundaries of the destination gamut the source gamut so that YyCMY is moved to YyCMY . If we trans- based on 8 NPs (Neugebauer Primaries: W, Y, C, CY, M, MY, fer every pixel back to sRGB from YyCxCz, the source image after CM, and CMY). Then, we partition the destination gamut into a gamut mapping can be viewed, as shown in Figure 7. This may specified number of divisions in h*. Each h* cell is a sector of be compared with the original image shown in Figure 3. the destination gamut with some angular extent Dh. We chose to have 72 sectors and each hue sector angle is 5 degrees, as a top Characterization and development of forward view and a side view both shown in Figure 2. The largest chroma and inverse mappings based on Indigo 7000 value c* within each sector will be the boundary of the gamut, series prints which means 72 sectors form the smallest cylinder that contains To develop our color management framework, we first want the destination gamut [8]. to generate a forward mapping that defines the Indigo press (des- For the source image, shown in Figure 3, we partition the tination) gamut, and given a CMY (Cyan, Magenta and Yellow) corresponding source gamut into 72 sectors. Figure 4 shows a printing combination, find its associated NPAC (Neugebauer Pri- sector slice view of both the source and the destination gamut, we mary Area Coverage) [11] [12] value and YyCxCz value. Based map the source gamut (in purple dots) to fit within the bounding on this result, we then develop an inverse mapping that given a cylinder (shown as the blue line) using the horizontal compression YyCxCz value, will yield its NPAC value that when printed will method from [8]. The compression result is shown in Figure 5. yield the desired YyCxCz value. In the Indigo press, the NPAC is We repeat this gamut mapping process for each hue sector. an 8-tuple entry that indicates how much of each NP in percentage should be printed to yield the desired YyCxCz value. Part Four: Compress into gamut To achieve this goal, our strategy is to form a uniformly sam- By now, the source gamut is inside the bounding cylinder, but pled 9 × 9 × 9 grid of points in CMY space that can represent the not necessarily inside the destination gamut. We divide the desti- Indigo press gamut. We print these patches on test pages where nation gamut into 180 angular slices for each hue sector and use each patch has a certain NPAC value.