Color mapping encapsulation and data packet
By introducing hierarchical encapsulation and data packet structure into the printing system, the problem of limited data storage space for color mapping is solved, achieving efficient and flexible color conversion and adaptability, suitable for multiple printer platforms.
Patent Information
- Application Number
- CN202511327027.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2020-10-29
- Publication Date
- 2025-12-19
AI Technical Summary
In existing printing systems, the storage space for color mapping data is limited, resulting in low efficiency after color mapping compression, which fails to effectively utilize the limited storage space, and there are problems with insufficient accuracy and flexibility in the color conversion process.
By employing a hierarchical encapsulation and data packet structure, DCT type color mapping data is stored on the cartridge memory. Metadata and recipes are used to quickly locate and construct color maps. Color conversion is performed in conjunction with a reference table on the printer side, achieving efficient data compression and flexible use.
It improves the efficiency, accuracy, and flexibility of the color conversion system, supports conversion across different dimensions and color spaces, adapts to changes in printing materials and platforms, reduces storage space requirements, and supports continuous updates and compatibility with multiple printer platforms.
Smart Images

Figure CN121165415A_ABST
Abstract
Description
[0001] This application is a divisional of the application with the application number 202080106708.9, the filing date of 29 October 2020, and the title “Color mapping encapsulation and data packet”. BACKGROUND
[0002] 2D and 3D printing systems comprise one or more replaceable print apparatus components, or cartridges, such as inkjet cartridges, toner cartridges, organic photoconductor (OPC) drums, (2D or 3D) ink consumables, 3D print agent consumables, build material consumables, etc. Some of these components can be commonly referred to as cartridges. Cartridges can contain print material. Print material has a certain color, such as cyan, magenta, yellow, black, white, etc. Different print systems can be designed to use different print material types, which have different colorant properties, such as chemical composition, particle / pigment weight, etc., in addition to color. An example of a component that does not contain print material is a fuser unit.
[0003] Printing systems convert from one color space to another, such as from screen color space to printer color space. An example of a color conversion between color spaces is from RGB to CMYK, which is common in many printing systems, or from RGB to monochrome. Color conversion can be performed by a printer using a CLUT (color lookup table), which is also referred to as a color mapping or color table. Color mapping tables can be configured depending on print material color, print material type, print media type, printer model, etc.
[0004] Recently, in certain printing platforms, color mappings are stored on a memory attached to replaceable print components. When a cartridge is installed, the color mapping can be downloaded from the cartridge’s memory. Typically, EEPROMs with limited space are used for these memories, while more space would increase the unit cost. For this reason, color mappings are compressed. Color mappings of certain cartridges are referred to as channel mappings, as they are actually part of the color mapping associated with a particular color of print material in the replaceable component, or color mapping for a single color channel. BRIEF DESCRIPTION OF DRAWINGS
[0005] Non-limiting examples will now be described with reference to the accompanying drawings, in which:
[0006] Figure 1 is an example schematic of a memory structure of an integrated circuit;
[0007] Figure 2 is an example schematic of an integrated circuit;
[0008] Figure 3 is an example schematic of a memory structure;
[0009] Figure 4 is an example schematic diagram of a printer; and
[0010] Figure 5 is an example flowchart of a printing method. DETAILED DESCRIPTION
[0011] The contents of other applications and patents cited in this disclosure are incorporated by reference.
[0012] In this disclosure, a color mapping for a single color channel can also be referred to as a channel mapping or partial color mapping. A channel mapping or partial color mapping can be used for a single color cartridge. A printer controller can combine channel mappings on different installed cartridges to build a multi-dimensional color mapping for color conversion between color spaces. A channel mapping for black, or "shaping table", can form a single-dimensional color mapping by itself. In other examples, certain compressed partial color (i.e. channel) table portions, or "difference" tables, can be stored on a cartridge memory, whereby a base table or reference table can be stored on a printer side memory, whereby the difference table and reference table will be combined to obtain a full color table. Reference is made to International Patent Application Publication Nos. WO2018 / 009226A1, WO2018 / 009235A1, WO2018 / 009234A1, and WO2018 / 009238A1, whereby incorporated by reference. Thus, a partial color table can involve a channel mapping for a multi-dimensional color table, a difference table, a cartridge side channel or color mapping for further combination with a printer side base reference table, or all of these or any combination of these. Unless specifically defined, a color mapping can include any of these channel mappings, partial color mappings, or any one-dimensional or multi-dimensional color mappings in compressed or uncompressed format.
[0013] Examples of transform packages are discussed in International Patent Application Publication No. WO2016 / 028272A1. These transform packages locate a color mapping or color mapping component that stores original data in a cartridge memory. A transform package contains metadata so that, when a new cartridge is installed, a printer controller can quickly locate a channel mapping at runtime using at least one of a tag, an attribute, and a condition. One embodiment of this disclosure involves a compressed, full, channel mapping that includes a high resolution neutral axis, a seed node, and a delta table. Another embodiment of this disclosure involves a recipe for a printer controller to decode such a compressed color mapping. A similar compressed color mapping is discussed in more detail in U.S. Patent Publication No. 9621764. For these color mappings, a pyramid-based compression scheme is used.
[0014] Other color mapping and color conversion techniques, referred to as DCT (discrete cosine transform) type color mapping and color conversion, are disclosed in the above-identified international patent application publications WO2018 / 009226 Al, WO2018 / 009235 Al, WO2018 / 009234 Al, and WO2018 / 009238 Al. In certain embodiments these color mappings have reference tables stored on the printer side, whereby the difference tables are stored on the cartridge side. In the present disclosure these compressed DCT type difference color tables can be referred to as DCT color mappings or DCT type color mappings. DCT color mappings can include quantized DCT coefficients, residual nodes, and delta scalar multipliers. For monochrome printing cartridges, CBATs (coefficient bit allocation tables) can be included on the cartridge side.
[0015] The present disclosure relates to alternative (transformed) packages and data packets to construct DCT type (discrete cosine transform) color mappings, or at least difference tables. The architecture and structure are designed to store and locate DCT type color mappings on cartridge memory expediently, whereby the color mappings can be quickly located and constructed by the printer controller at run time, using the novel layered package-formula-and-data packet structure.
[0016] Figure 1 A memory structure 1 is shown, which can be part of an IC (integrated circuit) attached to or otherwise integrated with a replaceable printing assembly. The memory structure 1 stores color mapping data including packages 5, 9A, 9B and raw data including data packets 11A, 11B. The packages can be transform packages, but can simply be referred to herein as "packages". The color mapping data can be (but need not be) related to a printing material contained by the printing assembly, or otherwise related to the printing assembly and the memory structure 1. For example, a color mapping data packet can be related to cyan, and the printing material can be cyan. Note that certain color mapping data can be stored on a memory structure 1 whose associated color is different from the color of the printing material. For example, a cyan-related color mapping data packet can be stored on a black cartridge memory structure.
[0017] The encapsulation includes a higher level component defined herein as a first level encapsulation 5 (e.g., color mapping encapsulation) to locate lower level components defined herein as second level encapsulations 9A, 9B (e.g., DCT encapsulation, residual encapsulation) using locators 15 in a recipe 3. The encapsulations 5, 9A, 9B and recipe 3 are to locate corresponding data packets 11A, 11B, where the data packets 11A, 11B include components for building a color map. The locators 15 are provided in the recipe 3. The data packets 11A, 11B form raw data, e.g., encoded as DCT tables and residual tables (as shown) and / or compressed. Examples of data packets 11A, 11B include DCT data packets, residual data packets, delta scalar data packets, and CBAT data packets. The data packets 11A, 11B can be considered as pertaining to a third, lower level.
[0018] The printer controller will use the combination of data packets 11A, 11B pertaining to the selected color map to build the color map as defined by the recipe 3. The first level encapsulation 5 facilitates selection of data packets for the color map and locating corresponding second level encapsulations 9A, 9B and data packets 11A, 11B. The second level encapsulations 9A, 9B encapsulate corresponding color map data packets 11A, 11B for decoding and combining / processing to build the color map. The second level encapsulations 9A, 9B can be considered as metadata of the included encapsulated data packets 11A, 11B to facilitate locating the data packets 11A, 11B. The data size of the second level encapsulations 9A, 9B is larger than the first level encapsulation 5 due to the raw data being inserted into the second level encapsulations 9A, 9B. The recipe 3 facilitates locating the second level encapsulations 9A, 9B and data packets 11A, 11B based on their locators 15. The recipe 3 can have at least two functions, including identifying the building blocks (i.e., data packets) of a color map for building the color map, and locating these building blocks. In some examples, the second level encapsulation 9A or 9B and data packet 11A or 11B can be shared by multiple first level encapsulations 5. In this example, the contents of the encapsulations 5, 9A, 9B are defined as metadata to locate the data packets 11A, 11B. Non-metadata such as raw data or color map building instructions can be included in the encapsulations 5, 9A, 9B and / or recipe 3.
[0019] The locators 15 are metadata. Examples of locators 15 are color channels, tags, attributes, and data packet types, referring to similar tags, etc. in the lower level encapsulations 9A, 9B. The tags can identify media, axes, themes, print modes, quality, table types, consumable series IDs, and / or print platform IDs for corresponding color maps. The metadata in the encapsulations facilitates processing of the color map components at printer runtime. In some examples, the encapsulations consist only of metadata. The data packets 11A, 11B are stored in raw data.
[0020] The data packets 11A, 11B can be considered raw data 13 in that they form the basic building blocks used to construct the color map, while the metadata is used to describe other data components, such as the raw data. In the present disclosure, metadata can be used to locate raw data, such as data packets. Metadata at a higher level, such as the first level of encapsulation 5, can be used to locate metadata at a lower level, such as the second level of encapsulation 9A, 9B.
[0021] The data packets 11A, 11B are of different types, such as DCT data packets and residual data packets. Multiple color maps (and color map encapsulations 5) can be associated with an equal number of multiple data packets of each type 11A and 11B. Thus, a subset of data packets of a first type 11A and a different second type 11B will be combined to obtain a single selected color map based on the recipe 3. In other examples, there are three or four different types of data packets 11A, 11B.
[0022] The hierarchical level of encapsulation and data packet structure facilitates the data packets to be downloaded at any time and then stored locally on the printer by its printer controller, for example, on a flash memory, and thus the color map components can be processed at runtime by the printer controller, with relatively little added latency to print jobs or the printing system, if any, for example, when the printer is powered on or a new print cartridge is installed. After a new cartridge is installed, printing can continue with updated color maps for the newly installed cartridge, obtaining potentially better or at least updated color control. The disclosed encapsulation structure provides for layer upon layer of flexibility and control by encapsulating color table components (e.g., PFD records) in "data packet" objects, describing the data packets with metadata (such as tags and attributes), and using recipes that are processed at runtime to reference the data packets in the multiple level components (encapsulations). Due to the novel structure, the color map data, including the encapsulations and raw data, can be compressed into a single data block, which in turn can allow for greater data space savings compared to compressing individual data packets.
[0023] As will be discussed further below, DCT type color mapping data packets can be used to facilitate conversions between different dimensions and properties of color spaces, such as 1D to 1D for monochrome or grayscale color conversion, examples of which can be referred to as "shaping tables"; 3D to 1D for channel mapping, such as from RGB to K, RGB to C, RGB to M, RGB to Y, RGB to R, RGB to G, or RGB to B; 3D to 3D for color mapping, such as from RGB to RGB; and 3D to 4D for color mapping, such as from RGB to CMYK. The conversions between different dimensions (1D, 3D, 4D) and color spaces (RGB, CMYK) and channels (R, G, B, C, M, Y, K) can be referred to as "dimensions" in this disclosure. Examples of hierarchical DCT color mapping packaging methods in this disclosure can improve the efficiency, accuracy, flexibility, and / or modularity of color conversion systems.
[0024] Figure 2 An example of an integrated circuit 217 for a replaceable print component is shown. The replaceable print component can include a reservoir containing print material of a predetermined color, such as C, Y, M, or K. The print material can include toner, ink, and / or any 2D or 3D printing agent. The integrated circuit 217 includes a memory 201 to store data including color mapping data including first and second level packages 205, 209A, 209B including metadata, and different corresponding data packets 211A, 211B in raw data 213. The packages 205, 209A, 209B and data packets 211A, 211B can be compressed together. Each data packet 211A, 211B can have been individually encoded or compressed by breaking the difference table into a table of quantized DCT coefficients (DCT data packet), residual nodes for selective addition to the DCT table beyond an error threshold (residual data packet 211B), and in some examples, an incremental scalar multiplier (incremental scalar data packet, see Figure 3 ) in some examples. For printing, each data packet 211A, 211B will be individually decoded prior to building the color mapping.
[0025] The integrated circuit 217 can include interface contacts 219 to transmit data related to the component, such as color mapping data, to a printer controller in response to a request from the printer controller when installed. The contacts 219 can be provided on the exterior of the integrated circuit 217 and / or print component for contacting an interface bus of the printer controller, such as an I2C serial interface bus.
[0026] The integrated circuit memory 201 can store print data 225 other than color mapping data, such as print component characteristics, including color of print material, and / or product ID and / or serial number of replaceable component. The print data 225 can include a remaining amount of print material in the component, which can be updated by the printer controller from drop count, page count, sensor information, and / or other (e.g., periodic) information such as a period of a drum of a toner transfer component. The print data can include wear information. The print data can include service information such as frequency or history of ink pre-treatment events, or historical usage information. The print data can include date of manufacture, date of first installation, etc. The print data can include printer information about the printer, printer fleet, or printer platform, or number of different printers (in which the cartridge is and / or was previously installed). The print data can include product and / or cartridge ID, OEM brand information, digital signature, etc. In one example, at least a portion of the print data can be digitally signed. The integrated circuit 217 can be a microcontroller, such as a secure microcontroller, including CPU 225, authentication hardware 220, and firmware 223 for cryptographic authentication of communications between the printer controller and the integrated circuit 217, and / or other security authentication functions. An authentication session can be initiated when the replaceable print component is installed in the printer. After a positive authentication, the printer controller 1 can authorize the printer to print. After authentication, the integrated circuit 217 can transfer its data, including color mapping data, to internal memory of the printer in response to an authenticated request.
[0027] Different color mappings have been designed for different media, quality, print mode, dimension, etc. By combining the decoded data packets 211A, 211B, which are encapsulated in the second level encapsulation 209A, 209B, a corresponding plurality of color mappings can be constructed from a plurality of different color mapping encapsulations 205. The color mapping encapsulation 205 includes a label 227 representing one or more characteristics of the desired color mapping. An example of a label 227 or characteristic is media (e.g., glossy or regular), as different color mappings can be used for different media types. Print quality, axis, table type, print mode, and theme are other example labels 227. The printer controller can select a color mapping based on one or more labels 227 and / or other characteristics. The color mapping encapsulation is a first level encapsulation, whose label 227 can be referred to as a first level label 227. The second level encapsulation 209A and 209B can be provided with their own second level labels 233A, 233B. In the illustrated example, the second level encapsulations include a DCT encapsulation 209A and a residual encapsulation 209B, each encapsulating a corresponding DCT data packet 211A and residual data packet 211B.
[0028] Each color mapping package 205 can include a color mapping recipe 203 to instruct the component to build a color mapping using the recipe. In this example, the recipe 203 identifies the second level packages 209A, 209B by locators 221A, 221B. The locators 221A, 221B can identify the second level tags 233A of the second level packages 209A, 209B. The locators 221A, 221B can identify the first level tag 227 and / or the second level tags 233A, 233B, for example by referencing the first or second level tags or by including them. For example, the recipe 203 can identify at least one of the second level packages 209A or 209B by repeating the first level tag 227 or providing a reference to its first level tag 227, so that the printer controller can identify the second level packages 209A, 209B having the same second level tags 233A, 233B as the first level tag 227. An example of a locator 221A, 221B that includes a reference to the first level tag 227 can be encoded as "parent_tag". This facilitates the printer controller reading the locators 221A, 221B that reference the first level tag 227 and then locating the same second level tags 233A, 233B as the first level tag 227 to find the corresponding data packets 211A, 211B. For example, the color mapping package 205 is related to "matte" media, and the second level packages 209A, 209B linked by the recipe 203 are also related to matte media. Then the first and second level packages 205, 209A, 209B can each have the same first and second level tags 227, 233A, 233B. It is worth mentioning that in order for the metadata to work properly, the packages 205, 209A, 209B can have overlapping tags, attributes, and other characteristics. This aspect of certain examples of the package structure can facilitate that it can be very efficient for the packages and data packets to be compressed into a single compressed data container: "redundant" data can result in higher compression rates.
[0029] In another example, the locators 221A, 221B (or just one locator 221) can include second level tags 233A, 233B that are different from the first level tags 237A, 237B of the same color mapping package 205, e.g., where the located package 209A, 209B / data packet 211A, 211B is shared with another color mapping package and color mapping. For example, the color mapping can be for glossy media, whereby the characteristics of the color mapping package 205 are also related to glossy media. By including (e.g., partially or completely replicating) the second level tags 233A, 233B of other color mappings for other media as locators 221A, 221B in its recipe 203, the recipe 203 can select to locate second level packages 209A, 209B that are related to another color mapping for other media (e.g., regular). In such an example, the first level tags can be related to glossy, while the second level tags are related to regular media. In this way, the individual second level packages 209A or 209B and data packets 211A, 211B, or the combination of second level packages 209A and 209B and data packets 211A, 211B, can be shared by multiple recipes 203 and color mapping packages 205. This can also help to only store fewer data packets on the memory 201.
[0030] The second level packages 209A, 209B include a plurality of DCT packages 209A, each DCT package 209A including a second level tag 233A that is representative of characteristics of an associated DCT data packet 211A. The associated DCT data packet 211A can be encapsulated by the DCT package 209A. The DCT package 209A and associated data packet 211A can be configured to build a color mapping corresponding to the color mapping package 205 that identifies the DCT package 209A in its recipe 203. The second level tag 233A can be identified by the locator 221A of the first level recipe 203. The DCT package 211A encapsulates the data packet 211A to enable a printer controller to directly access the data packet 211A by following the package. Similarly, the second level packages include a plurality of residual packages 209B, each residual package 209B including a second level tag 233B and encapsulating an associated residual data packet 211B. The original data stores a plurality of encoded DCT data packets 211A and residual data packets 211B that can be located by the DCT packages 209A and residual packages 209B. The higher level recipe 203 links the DCT data packet 211A to its associated residual data packet 211B via the corresponding second level packages 209A, 209B.
[0031] To generate a color map selected by the printer controller, for example, based on a selected media or other selected characteristics, the printer controller locates the corresponding color map package 205 based on the tag 227 and / or other characteristics after downloading and decompressing the data from memory 201. The associated DCT data package 21 IA and residual data package 21 IB are then located through the package structure, and each data package 21 IA, 21 IB is decoded. The nodes of the decoded residual data package are added to the selective nodes of the decoded DCT data package, and the table constructed thereby is added to the nodes of the reference table stored on the host printer, thereby obtaining the color map. The disclosed package structure provides for fast location during run time and processing of the color table components by the printer controller, while facilitating adaptation and combination at the individual data package level. The disclosed package structure facilitates the use of a wide and relatively wide variety of color table dimensions and print materials. The disclosed package structure also facilitates the ready adaptation of the addition of continually updated color maps to the print components, for example, in response to changes in print materials, changes in printer platform hardware, customer requirements, changes in software, upgrades, and the like. Upgrades of color maps can involve the addition of new media types, new color conversion dimensions or color spaces, new print material combinations or colors, new print heads, new toner transfer components, new replaceable print components, and the like. The presently disclosed examples can facilitate the convenient updating of color maps even where the SKU (stock keeping unit) of the printer or replaceable component remains the same. The color map data package and conversion package of the present disclosure facilitate the use of the same DCT compression, data package structure, and printer firmware on a relatively wide variety of different printer and printer consumable platforms, such as print platforms based on both toner and ink, which can be unprecedented in the printing industry.
[0032] In certain cases, the DCT type of color map and the novel "data package" scheme facilitates more flexibility in loss, precision, and flexibility than other compression types, such as the color maps using the pyramid-based compression scheme (with neutral axis, seed nodes, and delta table) mentioned earlier. For example, DCT-based compression can be relatively precise, with little or no loss of color precision in the conversion process if desired, and with an acceptable data size. Moreover, the data size of the DCT color map can be smaller than other color map types, which can be convenient for the relatively small flash or EEPROM type of memory used by the microcontroller for storing them. One reason for the smaller size can be because the reference table is stored on the printer side, while the cartridge only stores the difference table to be combined with the reference table.
[0033] The packaging structure of different examples of the present disclosure facilitates that all components can be compressed together, including individually encoded data packets, as the packaging allows the components to be located after decompression. Compressing all data packets together can provide higher compression rates than individually compressing (e.g., without converting the packaging color mapping components), as the redundancy between data packets can be more efficiently compressed. The inherent redundancy across different packaging (labels, attributes, or other characteristics) can make the packaging not add too much to the data size of the single compression container. Further, a single (e.g., zlib) compression dictionary can be created for the entire packaging and packet of data packets, rather than a dictionary for each compression record. In turn, the reduced data size can result in at least one of: storing more color mappings, using cheaper memory structures, and / or more space available for other data characteristics. The reduced data size provides more flexibility for which IC or memory storage hardware to use for cartridges, such as cartridges from different vendors or OEMs (Original Equipment Manufacturers).
[0034] Figure 3 Another example of a memory structure 301 for storing print data including color mapping data is shown. The memory structure includes first and second level packaging 305, 309A-D, the first level packaging 305 including a recipe 303 to identify the second level data packet packaging 309A-D containing data packets 311A-D for building a color mapping. The packaging is composed of metadata to facilitate fast location of the required data packets 311A-D, each of which can be located by a corresponding second level packaging 309A-D. The combined packaging 205, 309A-D and data packets 311A-D can be stored as one compressed file, which can be decompressed together using a single decompression dictionary.
[0035] The first level color mapping packaging 305 can include attributes and / or first level labels 327. These attributes can be specific to the type of color mapping. For example, the attributes identify at least one of a dimension 329 and a color channel 328 of the respective color mapping. The dimension 329 can refer to the input and output color space dimensions for the conversion, examples of which are given above. Further, one example of the dimension 329 is a color mapping from 3D to 1D, such as from RGB to C, Y, M, or K. Another example of the dimension 329 is from 1D to 1D, such as for monochrome printing using black (K) print material. The color mapping related to the monochrome print material can be a channel mapping for further combination with channel mappings of the other three print materials to establish a full multi-color mapping for conversion to a CYMK output color space (thus 3D to 1D dimension). The color channel 328 attribute can specify the color related to the respective color mapping, such as C, Y, M, or K.
[0036] The first and / or second level tags 327, 333A, 333B can be defined by respective color mappings or certain characteristics of the data packets 311A-D that help locate and process the color mapping components. Examples of first and / or second level tags 327, 333A-D are: print media, theme, axis, print system platform, print component (e.g., ink cartridge or consumable) family, table type, media type, and print quality. Examples of print media are gloss, regular, matte, and coated (e.g., paper). Examples of print quality are best, regular, and draft. Examples of axis are process neutral and black neutral, referring to the color separation of neutral axis in a color space. Process neutral can mean that the neutral color is composed of CMYK. Black neutral can mean that the neutral color uses only K colorant. Table type can refer to a class of color mapping, such as a "media mapping" class (e.g., a back-end mapping), a "gamut mapping" class (e.g., for a front-end mapping), or a fusing data table (or "fusing data block") for a color mapping on a memory of a replaceable electrophotographic fusing unit. For example, a theme tag can be used for a color mapping customized for a particular theme, such as "RGB office" or "RGB vibrant" or "RGB adobe," etc. A theme tag can be used in conjunction with a gamut mapping table type.
[0037] The recipe 303 identifies different second level packages 309A-D to locate the data packets 311A-D to build the color mapping. The recipe 303 includes locators including tag locators 321A-D (or simply tags). The tag locators 321A-D include or reference the first level tags 327A-D, or include the second level tags 333A-D, to locate the second level packages based on their second level tags 333A-D, as described above. The recipe 303 further identifies each second level package 309A-D by a data packet type 337A-D and / or a color channel 339A-D. The color channels 339A-D in the recipe 303 can refer to attributes of the second level packages 309A-D. The color channels 339A-D of the recipe 303 can, but need not, correspond to the color channel attributes 328 of the color mapping package 305, depending on the data packets to be located. The color channels 339A-D of the recipe 303 can refer to color channel attributes of the respective data packets 311A-D and corresponding color mappings. The second level packages 309A-D are provided with attributes (not shown) that can include color channels (which can again be used to locate the second level packages using the color channels 339A-D in the recipe 303). These attributes can be included in the second level packages with the second level tags 331A-D and the data packets 311A-D.
[0038] The illustrated example package structure includes four data packet types 337A-D, namely DCT data packets 311A, residual data packets 313B, delta scalar data packets 311C, and CBAT data packets 311D, which are identified and located by the data packet types 337A-D in the recipe 303, respectively. Package structures for a single color channel, such as a black print color, can contain all four package and data packet types 337A-D. Other color mapping data for other dimensions or color channels can have three package and data packet types 337A through 337C, whereby CBAT package 309D and data packet 311B can be stored on the host printer, rather than on the replaceable assembly’s memory structure 301.
[0039] Different types of second level packages 309A-D can include the second level tags 333A-D. The second level packages 309A-D can package around the associated data packets 311A-D.
[0040] The second level packages include at least one delta scalar package 309C, which packages around a delta scalar data packet 311C. A delta scalar multiplier, which can be referred to simply as a delta scalar, is a value used to change the range of decoded / decompressed DCT data. The delta scalar can in effect include a compression rate to change the quantization step size and compression error resulting from the DCT calculation. The selection of the delta scalar multiplier affects the individual color mapping and compression of the assembly. The delta scalar multiplier is used to put the unpacked (i.e., decoded) DCT values back into the proper range so that an inverse DCT operation can be performed to create a difference table, and subsequently a color table. For example, the delta scalar includes or is the step size mentioned in earlier international patent application publication numbers WO2018 / 009226A1, WO2018 / 009235A1, WO2018 / 009234A1, and WO2018 / 009238A1. The delta scalar multiplier is used by the print controller to modify the decoded DCT and / or residual data packets to which it is linked by the associated recipe.
[0041] Each delta scalar package 309C is identified by the recipe 303, such as by a respective tag locator 321C and delta scalar data packet type 337C and / or attribute. The or each delta scalar package 309C includes a second level tag 327C and a delta scalar data packet 311C. The delta scalar package 309C can include an attribute. In one example, the delta scalar package 309C and / or the delta scalar data packet 311C is shared by different color mapping packages 305. For example, these different color mapping packages 305 can have different attributes, but have the same delta scalar locator 321C in the recipe 303. For example, the same delta scalar can be used to establish different color mappings with different characteristics.
[0042] In another example, the print material of the component to which the memory structure is attached or will be attached is black and / or suitable for monochrome printing. The second level package 309A-D can include a plurality of CBAT packages 309D. Again, each CBAT package is identified by an associated recipe 303, such as by a tag locator 321D and CBAT type 337D, and / or attributes. Each CBAT package 309D can include a second level tag 333D and the package encloses a corresponding CBAT data packet 311D. The raw data includes a plurality of CBAT data packets 311D associated with a plurality of delta scalar packages 309D. The contents of each CBAT data packet 311D can be configured to be decoded by the printer controller to read / decode / parse / process the DCT data packet 311A linked to the CBAT data packet 311D by the associated recipe 303.
[0043] The data packets 311A-D stored in the memory structure 301 are to be located, decoded, and combined by the printer controller for reconstructing a color map by the printer controller. The instructions that cause the printer controller to construct a color map using the extracted data packets 311A-D defined by the recipe 303 can be referred to as build instructions. In one example, the build instructions are stored on the printer side. The same build instructions can correspond to a plurality of different recipes 303, or different build instructions can be stored by the printer controller and used to reconstruct different color maps. In one example, the recipe 303 includes a build operator 326 that references build instructions corresponding to the recipe 303 and the data packets 311A-D identified by the recipe 303 that are stored in the memory of a connectable host printer, which, when read by the printer controller, facilitates the printer controller locating the build instructions corresponding to the recipe 303 in the printer firmware. The build operator 326 is associated with the data packets 311A-D located in the recipe 303.
[0044] In another example, also in Figure 3As shown in FIG. 3, different second level packages related to the same data packet type 337C are grouped and each group is identified by a group header. For example, upon decompression, the package structure can include a string of DCT packages 309A, a string of residual packages, and a string of delta scalars, each string forming a separate group of second level packages related to a single type. Each group contains data packets 311A, B, C, or D of a single type encapsulated by the second level packages 309A, B, C, or D of each group. Cartridge memory for single color printing, such as a black print material cartridge, can further include a string of CBAT packages and data packets forming a separate group of second level packages. Each string can include uninterrupted continuous data. These strings or groups are configured as groups upon decompression. Each group can span multiple color maps and a color map can be composed of data packets of different groups (i.e., data packet types). In a decompressed state, each group can be headed by a single group header or can include a tag indicating the data packet type to which the second level packages 309A-D and data packets 311A-D relate. Examples of data packet types are DCT, residual, delta scalar, and / or CBAT. In one example, the data packet types 337A-D of the recipe 303 facilitate the printer controller locating the second level packages 309A-D by group because the groups can be tagged by data packet type or data packet types. In some examples, a group includes only one delta scalar package and / or only one CBAT package.
[0045] For the sake of clarity only, Figure 4 A printer side interface and logic that interfaces with the package and data packet structure of the present disclosure is shown. The printer 451 can include a printer controller 453 and firmware build instructions 455 and memory 457. Printer interface contacts 459 can be provided to connect / interface with the integrated circuit of the replaceable component. The memory 457 can include CBATs 409 for decoding data packets and reference tables 461 to be added to a difference table to reconstruct a final color table. The difference table is constructed using the aforementioned DCT, residual, and delta scalar data packets. The CBATs can be stored on the memory of the integrated circuit of the replaceable component, the CBATs initially stored on the memory can be used to reconstruct the color table. Further, a dictionary 465 can be stored on the printer for the printer controller 453 to decompress the compressed data containers of the packages and data packets.
[0046] The build instructions 455 for reconstructing a color map can include at least one of (i) instructions for locating color map packages for a selected / desired color map, (ii) instructions for locating data packets based on the packages, (iii) instructions for decoding the located data packets, e.g., using CBATs, and (iv) instructions for reconstructing the color map using the decoded data packets, using delta scalars, and using reference tables.
[0047] Figure 5 A printing method with updated color conversion according to certain embodiments of the present disclosure is shown. At block 500, a replaceable component is installed. The replaceable component can be provided with the integrated circuit and / or memory structure of embodiments of the present disclosure. At block 510, compressed metadata (packets) and raw data are transferred from the memory to the printer, e.g., based on a read request by the printer controller, in compliance with the I2C protocol. The data set can be stored in the internal memory of the printer, e.g., in a flash memory that is readily accessible by the printer controller.
[0048] The entire color mapping data set can include a plurality of compressed packets and data, and can be decompressed by the printer controller using a single dictionary (block 515). The packets and data can be stored on the printer memory in decompressed format.
[0049] At block 520, the printer (e.g., based on a pre-selected, auto-selected or default mode) and / or user (e.g., in the case of a manual selection) can identify print color characteristics, such as print mode (e.g., grayscale vs. color, draft vs. best mode, etc.), color space, print medium, theme, axis, table type, etc. These characteristics can determine which color mapping to select. The characteristics can correspond to certain tags or attributes of the packets, on the basis of which the color mapping can be selected and processed. Thus, at block 530, the printer controller can use the first and second level packets and recipes to locate the data packets corresponding to the characteristics, without having to go through the entire data set. At block 540, the located data packets can be decoded using the corresponding CBAT and delta scalar multiplier. The color mapping reconstruction process can be initiated. At block 550, residual nodes can be added to the selective nodes of the decoded CBAT mapping to create a difference table, and the difference table can be added to the reference table on the printer side memory to obtain a (re)constructed color mapping. At block 560, the print controller can convert source digital image data to physical image color data based on the constructed color mapping, and instruct the image transfer components (toner transfer components, print head, etc.) to print the image onto the medium based on the physical image color data.
[0050] The disclosed raw data can include multiple data packets for building multiple color maps (e.g., more than 10 or more than 20 color maps) corresponding to different media types, dimensions, etc. While each data packet is separately encoded for separate reconstruction of different color maps, the encapsulation and raw data can be compressed into a single compressed container. For example, where different data packets (DCT, residual, delta scalar) are often compressed together into a single color map, and these multiple individually compressed color maps are stored on a memory, in certain examples of the present disclosure, multiple color map data packets can be compressed together, whereby the data packets are grouped by type across different color maps under the decompressed format.
[0051] In several examples of the present disclosure, the entire data set, including the encapsulation of metadata and data packets including raw data, is compressed. Thus, the compressed set needs to be decompressed before the printer controller (firmware) can decode the individual components. In one example, zlib can be used to compress the data set into a single entity. The zlib library can be stored on the printer and used by the printer for improved compression. In the context of the present disclosure, decoding can refer to multiple actions, including conversion, deserialization (where an object is created from a series of bytes), unpacking (a form of compression where, for example, two 4-bit values are stored in a single byte), or transformation (where a series of bytes is converted to another series of bytes by an algorithm or formula, such as with DCT). Decoding can also include actions of parsing and / or processing. Decompression does not necessarily have to be part of decoding: since the entire data set has already been compressed, not every component of each encapsulation or data packet needs to be decompressed, however, some decoding is implied in order to be able to build the color maps. Compression and encoding of color map data can have already occurred at the initial OEM (Original Equipment Manufacturer) color map generation stage. From there, the generated, encoded, and compressed color map data can be copied to different memories. It can be understood that a copy of said generated, encoded, and compressed color map data copied by the same OEM or a third party would also be considered generated, compressed, and encoded color map data, even if the generation of that data only involves the action of copying already generated, encoded, and compressed color map data or a portion thereof. The same applies to copies of copies, etc.
[0052] It should also be noted that novel table types and dimensions are supported by new encapsulation and DCT data packet structures, for example: RGB -> RGB (3D -> 3D color map), CMYK -> CMYK (4D -> 4D color map), and CMYK -> C or M or Y or K (4D -> 1D channel map).
[0053] Several example packages and data packet structures of the present disclosure can result in a greater number of custom color mappings stored on a relatively small data space. The packages and data packet structures can add dimensions and functionality that were not previously used, enabling color conversion and color printing to be improved for these new input-output color spaces. Ultimately, by continually updating material- or technology-specific color mappings, the example compressed packages and data packet structures can affect or improve the colors physically printed on media for a wide range of printing materials and printing technologies (e.g., inkjet versus laser toner).
[0054] It should also be noted that the color channel of the stored data packet need not necessarily relate to the print material contained in the cartridge. For example, a different color channel data packet can be stored on a print component that does not contain print material (e.g., a fusing component), a print component contains print material that is different from the color channel (e.g., black print material associated with a cyan color channel data packet), or the color mapping or data packet is not customized for a particular print material because the print material is third-party (e.g., refilled). It can be appreciated that the custom color mapping data of the packages and data packet structures of the present disclosure need only be created once, after which it can be repeatedly copied for the print component for which the color mapping data was developed or for a print component for which the color mapping data was not specifically developed. Both the originally generated (e.g., compressed) color mapping data and the copied color mapping data are included within the scope of the present disclosure.
Claims
1. An integrated circuit for a replaceable printing assembly, the replaceable printing assembly being associated with a printing material of a predetermined color, the integrated circuit comprising: A memory for storing print data, the print data including encapsulation and data packets to construct at least one color map, and The interface contact point, when connected to the printer controller, transmits the print data to the printer controller in response to a request from the printer controller. The printed data includes At least one color mapping encapsulation corresponding to the color mapping, including The first-level label indicating the medium used for color mapping, and A color mapping recipe for constructing the color map, the recipe identifying each of a second-level package, including a DCT (Discrete Cosine Transform) package and a residual package, by means of at least one locator included in the recipe: At least one DCT package, including At least one second-level tag corresponding to the locator, and Encapsulate DCT data packets surrounding the color map; as well as At least one residual package, including At least one second-level tag corresponding to the locator, and Encapsulate the residual data packets surrounding the color map; in The at least one DCT data packet is associated with the corresponding residual data packet through the color mapping recipe.
2. The integrated circuit according to claim 1, wherein, To generate the selected color map, the DCT data packet and the associated residual data packet are decoded, and the node of the decoded residual data packet is added to the selective node of the decoded DCT data packet, and the table thus constructed is added to the node of the reference table stored by the printer controller on the host printer.
3. The integrated circuit according to claim 1 or 2, wherein, The recipe defines and positions the data package used to construct the selected color map.
4. The integrated circuit according to any of the preceding claims, wherein, Each locator refers to a second-level tag in the second-level encapsulation, and the locator includes: A first-level label or a reference to a first-level label of a first-level encapsulation, used to identify a second-level encapsulation having the same second-level label as the first-level encapsulation, or The second-level label, which is thus located as a second-level encapsulation, is shared by another color map.
5. The integrated circuit according to any of the preceding claims, wherein, Each locator also includes a packet type and / or color channel to locate its respective second-level encapsulation.
6. The integrated circuit according to any of the preceding claims, wherein, The first-level label and the second-level label indicate the medium and / or axis of their respective color mappings.
7. The integrated circuit according to any of the preceding claims, wherein, The color mapping encapsulation includes attributes that specify the dimensions and / or color channels used for their respective color mappings.
8. The integrated circuit according to any of the preceding claims, wherein, At least one second-level encapsulation and the corresponding data packet are associated with more than one color mapping encapsulation and color mapping.
9. The integrated circuit according to any of the preceding claims, wherein, The encapsulation includes metadata that enables the printer controller to locate individual data packets from the metadata to construct the color map and print on the media using the color map once a new replaceable component integrated circuit is connected to the printer controller, without needing to read all the original color map data.
10. The integrated circuit according to any of the preceding claims, wherein, The second-level packaging includes at least one incremental scalar package, each of which is identified by a positioner in an associated formulation; and Each incremental scalar encapsulation includes at least one second-level tag corresponding to the locator, and encapsulation around the incremental scalar data packet, which is used by the print controller to decode the DCT and / or residual data packets linked to by the associated recipe.
11. The integrated circuit according to any of the preceding claims, wherein The printing material is black and / or suitable for monochrome printing; The second-level package includes multiple CBAT (Coefficient Bit Assignment Table) packages, each of which is identified by the locator in its associated recipe; Each CBAT encapsulation includes at least one second-level tag corresponding to the locator, and an encapsulation surrounding a CBAT data packet configured to be decoded by a printer controller to decode the DCT data associated with the CBAT data packet via the recipe.
12. The integrated circuit according to any of the preceding claims, wherein, The data packets will be decoded and / or combined to construct a color map by the printer controller based on a predetermined set of build instructions on the printer, and Each recipe includes a build operator that references the build instruction corresponding to the recipe.
13. The integrated circuit according to any of the preceding claims, wherein, Multiple different second-level encapsulations and associated data packets, associated with different color maps but having the same data packet type, are grouped into consecutive data strings, and the memory structure stores different groups of different data packet types.
14. The integrated circuit according to any of the preceding claims, wherein... The data packets will be decoded individually to construct the color map from combinations of different data packets, and The encapsulation and data packets associated with at least one color map stored on the memory are compressed into a single data container for decompression as a single data container.
15. The integrated circuit according to any of the preceding claims, wherein, The encapsulation and data packets will be decompressed as a single data container using a single dictionary.
16. The integrated circuit according to any of the preceding claims, wherein, The first-level label and the second-level label indicate the table type.
17. The integrated circuit according to any of the preceding claims, wherein, The second level of encapsulation includes attributes including color channels.
18. A printing material cartridge comprising an integrated circuit and a memory according to any of the preceding claims, the memory containing printing material associated with color mapping.
19. A print cartridge memory structure storing a single compressed data container including at least one color map, which, when decompressed by a printer controller, comprises: Multiple first-level packages, each first-level package being associated with and including a color map in at least one color map. At least one characteristic to identify the corresponding color map, and A recipe for defining and locating data packets for constructing the color map, the recipe having at least one locator for each second-level encapsulation associated with one of the data packets; Multiple different types of secondary packages, each secondary package Includes at least one tag to facilitate location by the locator, and Encapsulate the data packets to be decoded by the printer controller; as well as Multiple different types of encapsulated data packets, among which Different types of data packets will be combined to obtain a single selected color map based on the recipe, and The second level of encapsulation includes DCT table encapsulation and residual node table encapsulation, and the data packets encapsulated by them respectively include DCT table and residual node table.
20. The printer cartridge memory according to claim 19, wherein, The at least one characteristic includes at least one of dimension, color channel, media, axis type, table type, theme, and print mode, and each individual characteristic or combination of characteristics relates to a different color table that results in different print outputs relative to the same input digital image.
21. The print cartridge memory according to claim 19 or 20, wherein, The at least one color map will be decompressed by the printer controller using a single decompression dictionary.
22. The print cartridge memory according to any one of claims 19-21, wherein, The locator includes at least one of a tag, a data packet type, and a color channel.
23. The print cartridge memory according to any one of claims 19-22, wherein, The encapsulation includes metadata and the data packet forms the raw data.
24. The print cartridge memory according to any one of claims 19-23, wherein, The second level of encapsulation also includes incremental scalar encapsulation and / or CBAT encapsulation, and the data packets encapsulated by them respectively include incremental scalar multipliers and / or CBAT.
25. A print cartridge connected to a host printing device includes the memory according to any one of claims 19-24.
Citation Information
Patent Citations
Printer cartridge and memory device containing a compressed color table
US9621764B2
Transform map at printer cartridge
WO2016028272A1