WO1995031794A1 - Systeme de gestion de la couleur pour infographie - Google Patents

Systeme de gestion de la couleur pour infographie Download PDF

Info

Publication number
WO1995031794A1
WO1995031794A1 PCT/US1995/006237 US9506237W WO9531794A1 WO 1995031794 A1 WO1995031794 A1 WO 1995031794A1 US 9506237 W US9506237 W US 9506237W WO 9531794 A1 WO9531794 A1 WO 9531794A1
Authority
WO
WIPO (PCT)
Prior art keywords
color
profile
matching module
color matching
space
Prior art date
Application number
PCT/US1995/006237
Other languages
English (en)
Inventor
Iue-Na Swen (Steve)
Michael D. Stokes
Thomas E. Mohr
Original Assignee
Apple Computers, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple Computers, Inc. filed Critical Apple Computers, Inc.
Priority to AU26400/95A priority Critical patent/AU2640095A/en
Publication of WO1995031794A1 publication Critical patent/WO1995031794A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour

Definitions

  • the present invention relates to color computer graphics, more particularly to color management systems, i.e., systems (typically software) that provide for the exchange and use of color information in a computer environment in which different devices have different color characteristics.
  • color management systems i.e., systems (typically software) that provide for the exchange and use of color information in a computer environment in which different devices have different color characteristics.
  • Differing device types operate in different color spaces. Within those spaces, the colors the devices can actually produce constitute differing gamuts, or ranges of colors. Monitors, for example, typical display colors as combinations of red, green, and blue, and are said to work in the RGB color space. Monitors by different manufacturers may be capable of displaying different intensities of those three colors, so that even though they work in RGB space, their gamuts may be different. Printers typically work with varying intensities of cyan, magenta, yellow, and black, and are said to work in the CMYK color space. Print technologies vary drastically, and the gamut that an ink jet color printer can display may be quite different from one based on another technology.
  • a single printer may be able to produce different gamuts depending on the paper or ink being used at the time of printing.
  • Devices with differing color gamuts cannot reproduce each other's colors exactly but shifting the colors of one by a carefully chosen profile may improve the visual match between them.
  • Monitor colors are additive ⁇ adding color moves the image toward white ⁇ and are generally more vivid.
  • Printed colors are subtractive ⁇ adding colors moves the image toward black or dark gray. Under most viewing conditions, the white of a monitor will appear bluish when compared to a sheet of paper, even though the eye perceives both as white when viewed separately.
  • a color management system is a system that supports color information exchange, color matching, color profile management, and device calibration. Color management offers the means of transmitting color images and documents containing color across local and wide area networks while maintaining the fidelity of the colors of the original image or document.
  • the ColorSync Utilities define a process (the color matching method, or CMM) for matching colors between gamuts, and a data structure (the color profile) for holding information about the characteristics of a particular gamut.
  • the ColorSync Utilities provide a default CMM and a default system color profile for Apple monitors. Because the ColorSync Utilities are designed to provide an "open system" for color management, developers can use an Apple-supplied default
  • the ColorSync Utilities provide applications with several tools for matching colors between devices. These include: a default system color profile that describes the gamut of the Apple RGB 13 inch monitor, a control panel (cdev) interface by which users can set their system profile, a means of specifying and obtaining color profiles for other devices, a means of tagging pictures with color profiles, a default color matching method, a folder for storing color profiles, an open architecture that allows developers to create or obtain a custom color matching method and associate it with a device profile, and the ability to report matching progress to the user.
  • a default system color profile that describes the gamut of the Apple RGB 13 inch monitor
  • cdev control panel
  • a means of specifying and obtaining color profiles for other devices a means of tagging pictures with color profiles
  • a default color matching method a folder for storing color profiles
  • an open architecture that allows developers to create or obtain a custom color matching method and associate it with a device profile, and the ability to report matching progress to the user.
  • the ColorSync Utilities contain high level routines that can query and set a color profile, begin and terminate matched drawing, match a picture's colors as it is drawn, tag a picture with one or more color profiles, and test whether colors are in a device's gamut.
  • the ColorSync Utilities also contain low-level routines for matching specific lists of colors, matching pixel map colors, monitoring the progress of color matching, and creating a custom color matching method.
  • Color matching means converting colors between differing color gamuts.
  • a color matching method implements an algorithm that determines how to convert the colors.
  • device drivers supply CMMs appropriate to their device (since the driver knows the color characteristics of the device), applications typically do not need to create CMMs.
  • ColorSyncTM device drivers can create their own CMMs, obtain them from other vendors, or use the CMM provided as the default by Apple.
  • the ColorSync Utilities describe a color gamut by a set of characteristics (the color profile) that define key parameters, such as the points of purest white and black, tonal response curves for primary colors, and the type of CMM for which the profile was intended.
  • Each CMM may offer matching options, so that the user can tailor the match depending on the kind of image being processed.
  • color matching alters the colors of an image being transferred from one device to another such that the resulting image looks as close to the original as possible.
  • a number of methods may be used to alter the colors.
  • a third possibility is to maintain saturation: computer-generated bar charts, for example, do not require exact matching of the particular hues used; it may be more important that the image is vivid so it will project well.
  • Applications can set one of three corresponding matching options in a source profile header to choose variations on the techniques used for color matching.
  • a perceptual match uses the destination white point, maintains lightness, and is good for real-world images.
  • a colorimetric match uses the source white point and is good for spot-color matches.
  • a saturation match uses the destination white point, maintains saturation for out-of-gamut colors, and is good for charts.
  • ColorSync allows multiple data types that have different matching to exist on the same page. For example, a page might contain a photograph that was scanned, some bar charts that were generated with a statistical package, and some line art that was generated using spot colors, as shown in Figure 1.
  • the data stream will represent different matching operations required for proper rendering, as follows:
  • An application or driver sets the options to the values it needs before calling ColorSync Utilities' matching functions, or before tagging a picture with a color profile (i.e., embedding the color profile in the picture).
  • All CMMs are components that a Component Manager of the Macintosh system software calls in response to calls of applications or drivers through a defined application interface (API).
  • a component is a piece of code that provides a defined set of services to one or more clients. Applications, system extensions, as well as other components can use the services of a component.
  • a component typically provides a specific type of service to its clients. For example, a component might provide image compression or image
  • an application could call such a component, providing the image to compress, and the component could perform the desired operation and return the compressed image to the application.
  • the type of service performed is color matching.
  • An application or device driver can call ColorSync, providing an image, a source color profile and a destination color profile, and ColorSync will call the appropriate CMM component to perform color matching or other color management functions and return the result (e.g., a color-matched image) to the application or device driver.
  • Multiple components can provide the same type of service. For example, separate components might exist that can compress an image by 20 percent, 40 percent, or 50 percent, with varying degrees of fidelity. Similarly, different CMMs may achieve varying degrees of color fidelity. All components of the same type must support the same basic interface. This requirement allows an application or driver to use the same interface for any given type of component and get the same type of service, yet allows applications and drivers to obtain different levels of service.
  • the Component Manager provides access to components and manages them by, for example, keeping track of the currently available components and routing requests to the appropriate component.
  • the Component Manager classifies components by three main criteria: the type of service provided, the level of service provided, and the component manufacturer.
  • CMMs have a
  • CMMs have a signature.
  • the signature of the default CMM is appl ' .
  • Third party CMMs are registered with Apple and assigned a CMM signature.
  • the Component Manager provides services that allow applications to obtain run-time location of and access to functional objects by creating an interface between components and clients. Instead of implementing support for a particular data format, protocol, or model of a device, a standard interface is used through which an application can communicate with all components of a given type, such as CMMs. The Component Manager may be used to locate and communicate with components of that type. Those components, in turn, provide the appropriate services to the client application.
  • the Component Manager can locate and query all components of that type. An application can find out how many components of a specific type are available and can get further detail about a component's capabilities without having to open it first. For each component, the Component Manager keeps track of many characteristics, including its name, icon, and information string, which may contain any arbitrary information about the component.
  • Components of the type 'CMM' provide color matching services. All components of type ' CMM ' share a common application interface, but each component may support a unique color matching technique or take advantage of a special hardware implementation. Individual components may support additions to the defined application interface, as long as they support the common routines any algorithm-dependent or implementation-dependent variations of the general interface can be implemented by each ' CMM' component as extensions to the basic interface.
  • the Component Manager allows a single component to service multiple client applications at the same time. Each client application has a unique access path to the component. These access paths are called component connections.
  • a component connection is identified by specifying a component instance. The Component Manager provides this component instance to an application when it opens a connection to a component. This component maintains separate status information for each open connection.
  • the Component Manager routes each application request to the component instance for that connection. Because a component can maintain separate storage for each connection, application requests do not interfere with each other and each application has full access to the services provided by the component. Further information concerning component-based design may be found in Inside Macintosh, More Macintosh Toolbox. In accordance with the foregoing component-based design, the ColorSync Utilities provide a default CMM; developers of device drivers can create or buy other CMMs, tailored to the requirements of their devices.
  • the shaded blocks represent the color management system, which includes a component based color management framework interface, a default CMM, and Apple supplied profiles including a default system profile and additional profiles of Apple peripherals.
  • the color management system is interoperable with third party CMMs and with third party device profiles, which the color management system may use to perform color matching.
  • the color management system may be called upon by applications directly (through a predefined application program interface, or API) to perform color matching, or the application may call upon a graphics library or an imaging library to perform color-matched services, in which case the graphics library or the imaging library will then call upon the color management system to perform color matching.
  • the ColorSync Utilities use the Component Manager to call a color matching method.
  • the actual matching happens inside the color matching method component.
  • Figure 3 shows the relationship between an application, the ColorSync Utilities, and the color matching component.
  • Device drivers generally provide their own color profiles, and perform the match by calling the ColorSync Utilities. This ensures that as new devices become available, existing applications continue to receive matched input and produce matched output. Applications can print with confidence that the device driver will produce the best color translation.
  • Applications can use color matching to create a print preview dialog, showing which colors in the printed image are out of the image gamut as it appears on the monitor, for example.
  • Applications that generate images can automatically tag the image with the appropriate profile, or allow the user to tag it.
  • Color matching always matches the colors of a source profile to the colors of a destination profile using a color matching method.
  • the matching process takes one or more steps, depending on whether the source and destination profiles are the same type, and therefore use the same CMM.
  • the colors are mapped directly from one color gamut to the other.
  • colors are mapped from the source profile to a profile describing XYZ space, a standard intermediate space, using the matching method associated with the source profile. Colors are then mapped from XYZ space to the destination profile, using the matching method associated with the destination profile. If either the source or the destination profile parameter to a matching routine is NIL, the ColorSync Utilities use the default system profile in its place.
  • Figure 4 diagrams the default condition, in which input devices match to the system color profile, and output devices match from it to the profile of their device.
  • the input matching step colors are mapped from the device's profile to the RGB space of the system color profile.
  • the output matching step the colors are mapped from the system RGB space to the color space of the output device.
  • Profiles reside in files (usually in a ColorSyncTM Profiles folder), with device drivers, or in pictures. All ColorSyncTM 1.0 profiles have a header, a copy of an Apple CMProfileChromaticities record (containing colorant values), profile response data for the associated device, and a profile name string for use in dialog boxes. Custom profiles may also have additional, private data.
  • the profile record is diagrammed in Figure 5.
  • the device type field indicates the type of device for which the profile is intended. Three standard types are:
  • the response data fields contain nine curve tables defining device gamma values. Seven tables are always filled in; the last two are used only for printers using four colors (CMYK). The first table is for grayscale values. The next three are red, green, and blue values, followed by three for cyan, magenta, and yellow values. Each table includes a count field. The count value specifies the number of entries in the curve table except as follows:
  • the eighth and ninth tables are for CMYK printers and specify undercolor removal and black generation data, respectively. Placing a 0 in the counts field specifies maximum undercolor removal and maximum black generation.
  • the name string of the profile is used by the user interface.
  • Applications can retrieve ColorSync 1.0 profiles using a GetProfile function.
  • Calibration programs can attach a profile to a device using a SetProfile function.
  • Profiles can be obtained from currently attached devices that support ColorSync and from the ColorSyncTM Profiles folder, if present. Profiles can be created by hand, or by using a utility such as ProfileMaker.
  • the ColorSync Utilities provide an open architecture that can work with a variety of color matching methods and color profiles. ColorSync determines which CMM to use, based on the CMMType field of the source and destination profiles used in a match. (If either profile is missing or NIL, ColorSync uses the system profile.) Since any particular configuration may include a variety of input and output devices, each with its own CMM and profiles, the ColorSync Utilities follow a defined sequence to determine which CMM to use in a given match. In the sequence, the default CMM is last in the list, to be used if no other CMM is specified, or a specified CMM is not available. The process of choosing a CMM to perform a match is referred to as CMM arbitration.
  • ColorSyncTM 1.0 chooses which CMM to use for a match according to this sequence:
  • ColorSync attempts the following alternatives in order.
  • the Apple-supplied default CMM will always respond noErr and try to perform a match. All profiles must contain the elements necessary for the default CMM. If either the source or destination profile has a CMMType value other than 'appl,' that CMM will get a chance to perform the match. The default CMM is always the last to be chosen, and it always attempts the match if asked.
  • ColorSync converts the XYZ color space to the destination RGB space using the destination profile and its CMM, as shown in Figure 7.
  • ColorSync uses the default CMM for that step of the match, using the Apple format data required in all ColorSync profiles.
  • a CMM must support RGB and CMYK as input color spaces, and RGB, XYZ, and CMYK as output color spaces.
  • PostScript Level 2 defined a device-independent color mechanism to specify and render color. To integrate color device profiles used by color management systems with PostScript devices, conversions have to be done between color profiles and PostScript.
  • PostScript driver The main function of a PostScript driver is to convert from the platform native graphic format to PostScript for printing.
  • One example of a PostScript driver is the PSWriter 8.1. It converts Quickdraw format on the Macintosh to Postscript.
  • the ColorSync 1.0 system when a color profile is embedded in the document, the driver will convert it into Postscript also. If no profile is embedded with the document, the ColorSync System Profile is used.
  • the ColorSync 1.0 profile format is extendible, as are some other color profile formats. Many profile vendors therefore put custom information in the private fields of such formats.
  • the custom data provides higher performance when used with the preferred CMM. However, the driver does not understand how to interpret the custom data and may not have access to the preferred CMM. As a result, the quality of the output from the Postscript devices is less than optimal.
  • ColorSyncTM 1.0 makes no provision for profile validation to determine whether or not a profile contains all of the required fields. Using profiles that do not contain all of the required fields may have a range of effects from mild (improper matching) to severe (causing a system crash).
  • ColorSyncTM 1.0 provides only limited support for concatenation profiles in which a transformation is calculated from a sequence of profiles (for a print preview operation, for example, from monitor device space to printer device space and back to monitor device space). In ColorSyncTM 1.0, concatenation profiles cannot be saved for future use or embedded in images.
  • the profile format is memory resident. Such a profile format does not readily lend itself to extension and improvements without creating a memory burden on the host system.
  • the present invention generally speaking, provides in an
  • operating-system-level color management system a scalable, flexible and extensible solution to managing color in color computer graphics systems.
  • a disk-based, tagged-element structure allows selective access to profile data.
  • the color management system dynamically arbitrates and dispatches to color matching modules (CMMs) and other code modules to perform color management functions such as color matching, color space conversion, profile management, profile file and element access, profile validation, and converting profiles to PostScript.
  • CMM arbitration method ensures fairness for both source and destination profiles.
  • Figure 1 shows an example of a page containing a scanned photograph, a bar chart generated with a statistical package, and line art generated using spot colors;
  • Figure 2 is a block diagram showing the architecture of a known color management system
  • Figure 3 shows the relationship between an application, the ColorSync Utilities, and the color matching component in the color management system of Figure 2;
  • Figure 4 diagrams a default matching condition in the color management system of Figure 2, in which input devices match to the system color profile, and output devices match from it to the profile of their device;
  • Figure 5 is a diagram of a ColorSyncTM 1.0 profile record
  • Figure 6 illustrates a case in which, in the color management system of Figure 2, matching is performed entirely by a single CMM where both the source and destination profiles have the same CMMType and the corresponding CMM component is available;
  • Figure 7 illustrates the case in which, in the color management system of Figure 2, ColorSync first converts the source data from the source space to XYZ space using the source profile and its corresponding CMM and then converts the XYZ color space to the destination space using the destination profile and its CMM;
  • FIG. 8 is a functional block diagram of the color management system of the present invention.
  • Figure 9 is a diagram of a color profile format in accordance with the present invention.
  • the present color management system architecture is divided into five parts: 1) a memory-resident dispatcher, 2) profile
  • CCMs color management methods
  • the memory-resident dispatcher, profile management functions, color space conversion functions,color management methods and color profiles are identified in Figure 8 by reference numerals 10, 22, 30, 40 and 50, respectively.
  • the profile management, color space conversion, and color management functions are all implemented using the Component Manager 60. Components are dynamically dispatched on demand. In addition, the Component Manager provides database facilities to track each component in the system, allowing the resident dispatcher 10 to call the appropriate component.
  • the resident dispatcher provides the overall color management administrative framework and manages the interaction between the application, the various color management pieces, and the actual color image.
  • the dispatcher receives input from the application, analyzes the current profiles and passes the image and profile data to the appropriate CMMs to perform the actual color transformation.
  • Each profile contains information on the preferred CMM for that particular profile.
  • An arbitration scheme within the dispatcher determines which CMM has precedence in the transformation process.
  • the dispatcher calls the appropriate color conversion methods when there exists a mismatch between profile interchange spaces.
  • the color management system consists of an Extension file from which the resident dispatcher is installed at system startup.
  • a separate Control Panel file provides user control of the ColorSync System Profile.
  • the color management system relies on the
  • Component Manager for the basis of the framework which allows plug-and-play capability for third party color-matching implementations.
  • the dispatcher is implemented using the Toolbox A-trap mechanism.
  • the interface defines the value for register D0 at the time a function is called.
  • a selector is in the low 16 bits and the parameter size is in the high 16 bits.
  • the functions use pascal stack-based calling conventions.
  • the color management system implements a 680X0 mainline function which internally dispatches individual calls on the selector.
  • Device profiles provide color management systems necessary information to convert color data between native device color spaces and device independent color spaces.
  • color devices are divided into three broad classifications: input devices, display devices and output devices.
  • input devices For each device class, a series of base algorithmic models are described which performs the transformation between color spaces. These models provide a range of color quality and performance results.
  • Each of the base models provides different trade-offs in memory footprint, performance and image quality.
  • the necessary parameter data to implement these models is contained in the required portions of the appropriate device profile descriptions. This required data provides the necessary information for the color management framework default color management module (CMM) to transform color information between native device color spaces.
  • CCMM color management framework default color management module
  • CMM arbitration Selecting an appropriate color matching module to perform a color matching operation is referred to as CMM arbitration.
  • ColorSync 1.0 the present color management system uses a more efficient arbitration scheme, as follows: 1. If both the source and destination profiles have the same CMMType and the corresponding CMM component is available then matching is performed entirely by that CMM. If the CMM is not available, the color management system uses the default CMM.
  • a concatenated transformation table is built by either the dispatcher of the default CMM sampling the source data space and converting the sampled color points into destination data space using source and destination CMMs. This is done by first converting the source data to the interchange space data using the source CMM, then converting between interchange spaces from source profile to destination profiles, if different, using the color space conversion functions, and finally converting from the interchange data space to the destination data space using the destination CMM.
  • Colors are converted from source to destination data spaces by doing a table look up using the transformation table built in Step 3.
  • This improved scheme provides the most flexible CMM arbitration by giving the preferred CMM first chance to convert between device space and interchange space, while improving the performance by building a concatenated transformation table.
  • This arbitration scheme also avoids the possible domination of destination CMMs by always answering yes when queried concerning the ability to perform a matching operation.
  • memory-resident is defined as a series of tagged elements that can be accessed randomly and individually.
  • the collection of tagged elements provides three levels of information: required data, optional data and private data.
  • a tag data header provides a table of contents for the tagging information in each individual profile.
  • the header includes a tag signature and the beginning address offset and size of the tag for each individual tagged element. This tagging scheme allows the tag data header to be read in, after which the information necessary for a current software application may be randomly accessed and loaded into memory. Since some instances of profiles can be quite large, this arrangement provides significant savings in performance and memory.
  • the required tags provide the complete set of information necessary for the default CMM to translate color information between the color interchange space and the native device space.
  • a default modeling method for each device class determines which combination of tags is required. For example, a multidimensional lookup table is required for output devices, but not for display devices.
  • tags that can be used for enhanced color transformations, including tags that support PostScript Level 2 and calibration, among others.
  • Private data tags allow CMM developers to add proprietary value to their profiles. Private data tags allows developers to maintain proprietary advantages without sacrificing compatibility.
  • the header provides a set of parameters at the beginning of the profile format.
  • the header is fixed-length (128 bytes) and contains the following information:
  • the profile format supports a variety of both device-dependent and device independent color spaces divided into three basic families: 1) CIEXYZ based, 2) RGB based, and 3) CMY based.
  • a subset of the CIEXYZ based spaces are also defined as exchange spaces.
  • Other device dependent color spaces may be also used. Any of the defined color spaces may be used as a device space, which corresponds to the source or destination color space in a color modeling session.
  • a key component of a color profile is the choice of color interchange spaces. These spaces provide the "universal language" with which any number of color devices can communicate color information with each other. Most color interchange spaces today are based on the CIE 1931 standard observer. This experimentally derived standard observer provides a very good
  • the CIEXYZ space represents a linear transformation of the derived matching responses
  • the CIELAB space represents a transformation of the CIEXYZ space into one that is nearly perceptually uniform. This uniformness allows color errors to be equally weighted throughout its domain.
  • the device profiles along with the appropriate device models provide a translation mechanism between the native device color space and one of these three color interchange space encodings.
  • Requiring tags with profiles is a way to provide a common base level of functionality. If a custom CMM is not present, then the default CMM will have enough information to adequately model the data.
  • the required data for different devices and the particular models implied by the required data are set forth in Appendix 1 below. While the required data might not provide the highest level of quality obtainable with optional data and private data, the data provided is adequate for sophisticated device modeling.
  • Profiles need to be validated to contain required color information for the tagged CMM to use.
  • a ValidateProfile function is provided to test whether a specified profile contains the minimum set of elements. This function is dispatched to the CMM specified by the Profile CMMTypeTag element. If the CMM is not available then the default Apple CMM is called. Only the existence of Profile elements is checked. The element content and size are not.
  • the dispatcher upon receiving a request to validate a profile, will do the following steps. 1. Get the name of the preferred CMM from the profile.
  • tags that are required in some profile types may be optional in other profile type.
  • optional tags not generally required in a profile type include the following:
  • Rendering Intent described in detail in the PostScript Language Reference Manual, Second Edition, provide all the necessary information to produce color-matched output on a PostScript device. Since these tags are optional, however, the present color management system provides facilities to derive equivalent information from color profiles that do not include them.
  • the conversion between color profiles and PostScript is built into the color management system, utilizing its modular framework and code resource database manager (i.e., the Component Manager).
  • the color management system by using the code resource database manager, can dynamically dispatch the preferred code module to generate the equivalent PostScript for the given color profile.
  • the preferred color conversion code module is tagged in the profile. If the preferred color conversion code module is not available, the default code module will be invoked to convert the profile into PostScript. In this case, only the public profile information is used to generate PostScript.
  • color management dispatcher checks the preferred CMM name tagged with profile
  • a matching session typically is set up between two device profiles, a source profile and a destination profile.
  • a typical scenario is a graphic designer who has created a drawing on a computer monitor using a drawing application. The designer will often want to print the design out using a color printer so the customer can see it.
  • a matching session is set up with the source profile being the display profile for the computer monitor and the destination profile being the color printer profile.
  • Method 1 To set up a multiple profile matching session, there are two methods that the dispatcher can use. Method 1 :
  • an application sets up profile concatenation by providing a list of profiles with a "key profile" which indicates the preferred CMM to do the operation.
  • the second method can be employed by the dispatcher or by the CMMs to perform profile concatenation.
  • the application sets up profile concatenation by providing a list of profiles.
  • the dispatcher checks if the preferred CMM for each profile in the list is available. If not, it is replaced with the default CMM.
  • a concatenated transformation table is built by sampling the source data space and converting the sampled color points into destination data space using the profiles in the list and CMMs associated with each profile. This is done by the following steps:
  • Colors are converted from source to destination data spaces by doing a table look up using the transformation table built in Step 3.
  • the concatenated profile can be stored as a special type of profile (called a device link profile). If the user establishes a workflow pattern of designing and proofing documents, a device link profile can be saved to reflect the color conversion sequence by the user's workflow.
  • Creating a device link profile is very similar to the profile concatenation process. Two algorithms can be used by the dispatcher. The only difference from profile concatenation is that in step 4, instead of converting colors from source data space to destination data space, a device link profile is simply created with the transformation table stored in it.
  • a device link profile is one of three special profiles, or transformations, in addition to the three basic device profile classes (input, display and output). These transformations provide a standard
  • Device link transformations provide a mechanism in which to save and store a series of device profiles and color transformations in a concatenated format. This is extremely useful for workflow issues where a combination of devices and transforms are used repeatedly.
  • Color space conversion transformations are used as a convenient method for CMMs to convert between different color spaces. This is particularly useful if two device profiles support different interchange spaces. Conversions between base color spaces and derived color spaces are performed with known equations. The conversion functions are implemented in a stand-alone
  • Component making the routines available to the default CMM and to third-party CMMs.
  • abstract color transformations provide a generic method for users to make subjective color changes to images or graphic objects. This
  • This profile represents input devices such as scanners and digital cameras.
  • the AToB0Tag represents a device model described by the Lut8Type or Lutl6Types. This tag provides the parameter data for an algorithm that includes a set of non-interdependent per-channel tone reproduction curves, a three dimensional lookup table and a set of non-interdependent per-channel linearization curves.
  • This profile represents display devices such as monitors.
  • the tone reproduction curve provides the necessary information to convert between a single device channel and the CIEXYZ interchange space.
  • This model is based on a three non-interdependent per-channel tone reproduction curves to convert between linear and non-linear rgb values and a 3 ⁇ 3 matrix to convert between linear rgb values and relative XYZ values.
  • the mathematical model implied by this data is :
  • This profile represents output devices such as printers and film recorders.
  • the LUT tags that are required by the printer profiles contain either the 8 bit or the 16 bit LUTs exclusively as described in the LUT tags. The bit precision supported must be consistent for all of the LUT tags.
  • the LUT algorithm for interchange space to device space transformations process data sequentially through a matrix, input tables, a color LUT, and output tables.
  • the tone reproduction curve provides the necessary information to convert between a single device channel and the CIEXYZ interchange space.
  • tags represent a device model described by the Lut8Type or Lut16Types.
  • each of these tags provides the parameter data for an algorithm that includes a 3 ⁇ 3 matrix, a set of non-interdependent per-channel tone reproduction curves, a three dimensional lookup table and a set of non-interdependent per-channel linearization curves.
  • the algorithmic details of this model and the intent of each tag is given in the following sub-section, specifying the general lookup table tag element structure for 16-bit data.
  • This structure converts an 16 bit input color into an 16 bit output color.
  • This type contains four processing elements: a 3 by 3 matrix (only used when the input color space has three components), a set of one dimensional input lookup tables, a multidimensional lookup table, and a set of one dimensional output tables. Data is provicd using these elements via the following sequence:
  • the input, output and CLUT tables are arrays of 16 bit unsigned values. Each input table entry is a two byte integer and each table has up to 4096 entries. Each input table entry is appropriately normalized to the range 0-65535.
  • the input-Table is of size InputCharmels * inputTableEntries * 2 bytes.
  • the matrix is organized as an 3 by 3 array.
  • the dimension corresponding to the matrix rows varies least rapidly and the dimension corresponding to the matrix columns varies most rapidly and is shown in matrix form below.
  • Each matrix entry is a four byte number with one sign bit, 15 integer bits, and 16 fractional bits.
  • the matrix is mandated to be an identity matrix for input and display profiles.
  • the matrix is mandated to be an identity matrix for output profiles when the interchange space is CIELAB.
  • Each CLUT is organized as an n-dimensional array with a variable number of grid points in each dimension, where n is the number of input channels(input tables) in the transform.
  • the dimension corresponding to the first input channel varies least rapidly and the dimension corresponding to the last input channel varies most rapidly.
  • Each grid point value contains m two byte integers, where m is the number of output functions.
  • the first sequential two byte integer of the entry contains the function value for the first output function
  • the second sequential two byte integer of the entry contains the function value for the second output function, and so on until all the output functions have been supplied.
  • the equation for computing the size of the CLUT is :
  • the CLUT data must be padded to a 4 byte boundary with zeros at the end of the data if necessary.
  • Each output table is a two byte integer and has up to 4096 entries.
  • the outputTable is of size OutputChannels * outputTableEntries * 2 bytes.
  • This transform represents a one-way link or connection between devices. It does not represent any device model nor can it be embedded into images.
  • the AToB0Tag represents a device model described by the Lut8Type or Lut16Types. This tag provides the parameter data for an algorithm that includes a 3 ⁇ 3 matrix, a set of non-interdependent per-channel tone reproduction curves, a three dimensional lookup table and a set of non-interdependent per-channel linearization curves.
  • This transform provides the relevant information to perform a color space transformation between the interchange color spaces. It does not represent any device model nor can it be embedded into images.
  • the AToB0Tag and BToA0Tag represent a device model described by the Lut8Type or Lut16Types.
  • This tag provides the parameter data for an algorithm that includes a 3 ⁇ 3 matrix, a set of non-interdependent per-channel tone reproduction curves, a three dimensional lookup table and a set of non-interdependent per- channel linearization curves.
  • This transform represents abstract transforms and does not represent any device model nor can it be embedded into images. Color transformations using abstract profiles are performed within a single interchange space.
  • the AToB0Tag represents a device model described by the Lut8Type or Lut16Types. This tag provides the parameter data for an algorithm that includes a 3 ⁇ 3 matrix, a set of non-interdependent per-channel tone reproduction curves, a three dimensional lookup table and a set of non-interdependent per-channel linearization curves.
  • TheProfile must be populated and updated by the client program.
  • the default disk file type is 'prof.
  • the default profile contents include thecM2Header and an empty element table. All fields of theCM2Header will be set to zeroes exceptsize and profileVersion.
  • Flatten specifiedProfile to the external CMProfile format.
  • a caller supplied FlattenProcUPP is called to perform the actual data transfer.
  • the flags parameter specifies options for the content of the flattenedMProfile.
  • This function is used to create an embeddedCMProfile which can be used for graphic documents.
  • the element subset is normally specified by the sourceProfElements flag.
  • the qd32KLimit flag should be used for Quick- draw PicCommentS.
  • This routine is dispatched to the CMM Component specified by therofile CMMTypeTag element If the CMM is not available then the default Apple CMM is called. The default elements are flattened and the function result is CMMethodNotFound.
  • intent0 Include elements necessary for rendering intent 0.
  • intentl Include elements necessary for rendering intent 1.
  • intent2 Include elements necessary for rendering intent 2.
  • qd32KLimit Flattened CMPr ofile may not exceed 32K, the limit for
  • a client-suppliedFiattenProcUPP is called to perform the actual data transfer.
  • This function may be used to create aProfile reference from acMProfile embedded in a graphic document
  • the caller is responsible for calling Open- ProfileFile(%) and then clean-up by callingCloseProfile defined and FSpDe- lete defined when use of the profile is completed.
  • OpenReadSpool Begin the process of readng data.
  • command(in) Specifies operation.
  • the src and dst Profiles may be closed withCloseProfile defined after calling this function.
  • NCWNewColorWorld (CWorld *myCWorld, Profile sre, Profile dst) ;
  • the specifiedProf iles may be closed with ciosePro file defined after calling this function. pascal
  • NCWConcatColorWorld (eWorld * myCWorld,
  • profileSet(in) concatProfileSet contains an array of Prof iles which describe the processing to be carried out.
  • the prof ileset array is in processing order— Source through Destination. A minimum of one Profile is required.
  • the CMMType element of Profile at keylndex specifies the CMM which is entirely responsible for the session.
  • This function allows the creation of a newProfile which embodies the transforms included by NCWConcatColorWorld defined .
  • profileSet(in) ConcatProfileSet contains an array ofProfiles which describe the processing to be carried out
  • the prof ileset array is in processing order— Source through Destination. A minimum of one Profile is required.
  • the CMMType element of Profile at key Index specifies the CMM which is entirely responsible for the session.
  • Match colors according to theProfiles corresponding to acworld are taken to be thedataType of the Source Profile.
  • theCMColor values are transformed to the dataType of the Destination Profile.
  • Gamut test colors according to theProfiles corresponding to myCWorld.
  • the CMColor values are taken to be thedataType of the Source Profile.
  • the gamut test is a preflight of color-matching with thisCWorld.
  • the result bit array indicates whether the colors in the list are in or out of gamut for the DestinationProfile.
  • Gamut-test pixel data ofmy PixMap according to the Pro files correspond ing to myCWorld myPixMap must be non-relocatable.
  • Bracket DrawPicture with WhiteFang function calls which set up and take down a high-level matching session.
  • the Picture will be drawn with matched colors to all monitorGDevices. If the current GDevice is not a monitor Device then matching will occur for thatCDevice only.
  • This function and DrawPicture operate in the context of the currentCGrafPort. Color-matchingPicComments embedded in the Picture are respected.
  • Search specifications are defined by :
  • bits of searchMask specify corresponding fields which must match in the search.
  • filter is a client function which can be used to search on elements outside the defined ProfileSearchRecord fields to implement OR or AND search logic. This function returns true if the specified profile is to be filtered from the search.
  • the data structure which contains the result of a profile search is a private abstract type.
  • This Component is opened and called by the resident dispatcher to implement the WhiteFang API.
  • Sharing a disk over a network makes it possible for the folder contents to be modified at any time.
  • the System Profile represents an abstract device. It is used as the default color space if a Profile is not specified for the WhiteFang matching functions.
  • the System Profile is that of an RGB or GRAY monitor for Color QuickDraw.
  • the flags parameter to these three function specifies the format of the PostScript data to be returned.
  • ps8bit specifies 8-bit per character data as specified in thePostScript Language Reference Manual second edition.
  • This operator characterizes the color space of subsequent graphics data.
  • This function is dispatched to the CMM Component corresponding to srcProf. If the Component is not available or the function is not implemented then it is dispatched to the default CMMtextData is set by the default CMM and the function result isCMMethodNotFound.
  • a caller-supplied FlattenProc function is used to perform the actual data transfer.
  • This function is dispatched to the CMM Component corresponding to srcProf. If the Component is not available or the function is not implemented then it is dispatched to the default CMMtextData is set by the default CMM and the function result isCMMethodNotFound.
  • a caller-supplied FlattenProc function is used to perform the actual data transfer.
  • CMMethodNotFoundCMM corresponding to prof not available.
  • System or ColorSync result code if an error occurs.
  • This function is dispatched to the CMM Component corresponding to srcProf. If the Component is not available or the function is not implemented then it is dispatched to the default CMMtextData is set by the default CMM and the function result isCMMethodNotFound.
  • a caller-supplied FlattenProc function is used to perform the actual data transfer.
  • a CMM is a Component Manager Component The standard required Component functions must be supported.
  • the dispatcher determines the CMM Components which will be responsible from the CMMType element of theProfile parameters to the client call. One or two CMMs perform the actual work.
  • a separate ComponentInstance is opened for each matching session.
  • the set oProfiles is unique for each session.
  • the Component should allocate private storage to store the necessary information for the instance and use Component Manager functions to manage the storage.
  • a Component should free the storage in the ComponentClose function.
  • the CMM Component functions are in either required or optional categories.
  • the dispatcher will call the Component with the kComponentCanDoSelect selector before calling the actual function.
  • the dispatcher will use an alternative to complete the client request For example, if the CMM does not support the CMMatchBitMap function, the dispatcher will convert the BitMap data CMcolor format and call the CMMcMMatchColors function. The matched colors will then be copied to the client BitMap.
  • Component function called to initialize a matching session. Called after the Component has been opened with OpenComponent().
  • NCMInit Componentlnstance CMSession, Profile srcProfile
  • CMMatchColors Color-matching on a list of CMColor.
  • the source and destination data types are specified by theProfile parameters to the previous call to the NC- MInit(%), CMInit(%), or CMConcatInit(%) function.
  • CMColorList myColors , long count) ;
  • Gamut test a list of CMColor.
  • the source and destination are specified by the Profile parameters to the previous call to the NCM_nit((7),
  • CMCheckColors Componentlnstance CMSession
  • CMColorList myColors, long count
  • Third-party CMMs should first call the default CMM using Component Manager functions to assure that the minimum default elements are present pascal
  • CMFlattenProfile Componentlnstance CMSession, Profile prof .
  • This function may be used to create aProfile reference from acMProfile embedded in a graphic document
  • the caller is responsible for calling closeProfile defined when the use of the Profiie reference is completed.
  • the returned Profile has a temporary backing file if necessary.
  • the file is deleted at the timecioseProfile.
  • CMUnflattenProfile Componentlnstance CMSession, Profile
  • Gamut test pixel data of bitMap according to th ⁇ rofile parameters supplied to a previous call tOCMInit NCMInit
  • CMConcatInit CMConcatInit
  • CMCheckBitMap Componentlnstance CMSession, const CMBitMap
  • BitMapCallBackUPP progressProc void *refCon, CMBitMap *resultBitMap) ;
  • myPixMap is non-relocatable.
  • my PixMap is non-relocatable.
  • CMCheckPixMap Componentlnstance CMSession, PixMap *myPixMap
  • a single CMM is specified by the caller which is responsible for the entire session. That CMM may use Component Manager functions to call other CMMs if required.
  • the processing possible with this function can be complex, including operations outside of simple "matching".
  • thedataType and deviceType of the first and lastProf iles must be valid device values.
  • Intermediats-rof iles may be non-device type values.
  • profileSet(in) ConcatProfileSet contains an array of Profiles which describe the processing to be carried out
  • the profileSet array is in processing order— Source through Destination. A minimum of one Profile must be specified.
  • the CMMType element ofProfile at keyIndex specifies this CMM, which is entirely responsible for the session.
  • This function allows the creation of a newProfile which embodies the transforms included byNCWconcatColorWorld((7) .
  • thedataType and deviceType of the first and lastProfiles must be valid device values.
  • IntermediateProf iles may be non-device type values.
  • CMNewLinkProfile Componentlnstance CMSession, Profile
  • profileSet(in) ConcatProfileSet contains an array of Profiles which describe the processing to be carried out
  • the prof ileSet array is in processing order— Source through Destination. A mini mum of one Profile is required.
  • the CMMType element of Profile at key Index specifies the CMM which is entirely responsible for the session.
  • This operator characterizes the color space of subsequent graphics data.
  • a caller-supplied FlattenProc function is used to perform the actual data transfer.
  • CMGetPS2ColorSpace (Componentlnstance CMSession, Profile srcProf , unsigned long flags, FlattenUPP proc, void *refCon) ;
  • a caller-supplied FlattenProc function is used to perform the actual data transfer.
  • PostScripsetColorRendering operator specifies the PostScript Color Rendering dictionary to be used for subsequent graphics data.
  • a caller-supplied FlattenProc function is used to perform the actual data transfer.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

Un système de gestion des couleurs de niveau d'exploitation système fournit une solution extensible, flexible et à géométrie variable à la gestion de la couleur dans des systèmes d'infographie couleur. Une structure à disques et à éléments étiquetés permet l'accès sélectif à des données de profil. Le système de gestion de couleurs assure l'arbitrage et la répartition dynamiques en fonction de modules de codage pour exécuter des fonctions de gestion de la couleur telles que la colorimétrie, la conversion des espaces couleur, la gestion de profils, le fichier de profils et l'accès aux éléments, la validation de profil et la conversion de profils en Postscript. Une méthode d'arbitrage colorimétrique (CMM) permet d'assurer l'équité à la fois pour les profils source et de destination.
PCT/US1995/006237 1994-05-17 1995-05-17 Systeme de gestion de la couleur pour infographie WO1995031794A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU26400/95A AU2640095A (en) 1994-05-17 1995-05-17 Computer graphics color management system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US24504994A 1994-05-17 1994-05-17
US08/245,049 1994-05-17

Publications (1)

Publication Number Publication Date
WO1995031794A1 true WO1995031794A1 (fr) 1995-11-23

Family

ID=22925086

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1995/006237 WO1995031794A1 (fr) 1994-05-17 1995-05-17 Systeme de gestion de la couleur pour infographie

Country Status (2)

Country Link
AU (1) AU2640095A (fr)
WO (1) WO1995031794A1 (fr)

Cited By (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0843237A2 (fr) * 1996-11-15 1998-05-20 Canon Kabushiki Kaisha Appareil et procédé de traitement d'images et support d'enregistrement
WO2000000922A2 (fr) * 1998-06-29 2000-01-06 Splash Technology, Inc. Inversion et reconversion de donnees couleur
EP0974934A2 (fr) * 1998-07-24 2000-01-26 Canon Kabushiki Kaisha Appareil et procédé de traitement d'image
WO2000026857A1 (fr) * 1998-10-29 2000-05-11 Pixar Animation Studios Systeme de gestion de couleurs
EP1006483A1 (fr) * 1998-11-30 2000-06-07 Fujitsu Limited Procédé pour la conversion de données de couleurs
EP1102478A2 (fr) * 1999-11-15 2001-05-23 Canon Kabushiki Kaisha Gestion des couleurs et architecture d'épreuve en couleur
WO2001050328A2 (fr) * 1999-12-30 2001-07-12 General Electric Company Procede et systeme pour creer des capacites d'assortiment de couleurs globalisees
JP2002062960A (ja) * 2000-05-05 2002-02-28 Xerox Corp カラーマネージャの高レベルなナビゲーションシステム及びそれを用いたカラー管理方法
EP1211665A1 (fr) * 1999-08-25 2002-06-05 Fujitsu Limited Procede de mesure d'affichage et procede de preparation de profil
EP1307042A2 (fr) * 2001-10-29 2003-05-02 Hewlett-Packard Company Procédé et système pour la gestion de couleur par conversion entre des espaces de couleurs
EP1396995A2 (fr) * 2002-08-30 2004-03-10 Konica Corporation Procédé de traitement d'images, dispositif de traitement d'image, dispositif d'enregistrement d'images, programme et support d'enregistrement
EP1439691A1 (fr) * 2003-01-15 2004-07-21 Xerox Corporation Sélection d'une intention de rendu basé sur l'espace-entrée de couleurs et le type d'objet
EP1524843A1 (fr) 2003-10-14 2005-04-20 Microsoft Corporation Système de gestion de couleurs
EP1563454A2 (fr) * 2002-09-20 2005-08-17 Tribeca Imaging Laboratories, Inc. Procede permettant de corriger la couleur d'images numeriques
US7256793B2 (en) 2001-07-20 2007-08-14 Corel Corporation System and method for color management of multiple color devices and color spaces
US7366349B2 (en) 2004-11-02 2008-04-29 Pixar Two-dimensional array spectroscopy method and apparatus
US7426029B2 (en) 2005-08-31 2008-09-16 Microsoft Corporation Color measurement using compact device
US7573620B2 (en) 2005-09-01 2009-08-11 Microsoft Corporation Gamuts and gamut mapping
US7822270B2 (en) 2005-08-31 2010-10-26 Microsoft Corporation Multimedia color management system
US8917394B2 (en) 1997-08-25 2014-12-23 Rah Color Technologies Llc System for distributing and controlling color reproduction at multiple sites
US9036209B2 (en) 1996-02-26 2015-05-19 Rah Color Technologies Llc System for distributing and controlling color reproduction at multiple sites
US9500527B2 (en) 2000-04-11 2016-11-22 Rah Color Technologies Llc Methods and apparatus for calibrating a color display
US9516288B2 (en) 2005-08-31 2016-12-06 Rah Color Technologies Llc Color calibration of color image rendering devices
US11276368B2 (en) 2019-09-06 2022-03-15 Microsoft Technology Licensing, Llc Techniques for applying color transforms in rendering visual content

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0475554A2 (fr) * 1990-02-05 1992-03-18 Scitex Corporation Ltd. Appareil et procédé de calibrage de couleurs
US5233684A (en) * 1990-06-26 1993-08-03 Digital Equipment Corporation Method and apparatus for mapping a digital color image from a first color space to a second color space
EP0594370A1 (fr) * 1992-10-22 1994-04-27 Xerox Corporation Affichage d'images en couleur pour un système de sortie à partir de données symboliques d'image

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0475554A2 (fr) * 1990-02-05 1992-03-18 Scitex Corporation Ltd. Appareil et procédé de calibrage de couleurs
US5233684A (en) * 1990-06-26 1993-08-03 Digital Equipment Corporation Method and apparatus for mapping a digital color image from a first color space to a second color space
EP0594370A1 (fr) * 1992-10-22 1994-04-27 Xerox Corporation Affichage d'images en couleur pour un système de sortie à partir de données symboliques d'image

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KASSON J M ET AL: "AN ANALYSIS OF SELECTED COMPUTER INTERCHANGE COLOR SPACES", ACM TRANSACTIONS ON GRAPHICS, vol. 11, no. 4, 1 October 1992 (1992-10-01), pages 373 - 405, XP000335146 *

Cited By (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9036209B2 (en) 1996-02-26 2015-05-19 Rah Color Technologies Llc System for distributing and controlling color reproduction at multiple sites
EP0843237A3 (fr) * 1996-11-15 1998-11-18 Canon Kabushiki Kaisha Appareil et procédé de traitement d'images et support d'enregistrement
EP0843237A2 (fr) * 1996-11-15 1998-05-20 Canon Kabushiki Kaisha Appareil et procédé de traitement d'images et support d'enregistrement
US6546129B1 (en) 1996-11-15 2003-04-08 Canon Kabushiki Kaisha Image processing apparatus, method, and medium for adding identification information
US9894338B2 (en) 1997-08-25 2018-02-13 Rah Color Technologies Llc System for distributing and controlling color reproduction at multiple sites
US8917394B2 (en) 1997-08-25 2014-12-23 Rah Color Technologies Llc System for distributing and controlling color reproduction at multiple sites
US9057645B2 (en) 1997-08-25 2015-06-16 Rah Color Technologies Llc System for distributing and controlling color reproduction at multiple sites
US9404802B2 (en) 1997-08-25 2016-08-02 Rah Color Technologies Llc System for distributing and controlling color reproduction at multiple sites
US6327052B1 (en) 1998-06-29 2001-12-04 Electronics For Imaging, Inc. Color data inversion and reconversion
WO2000000922A3 (fr) * 1998-06-29 2000-06-08 Splash Technology Inc Inversion et reconversion de donnees couleur
WO2000000922A2 (fr) * 1998-06-29 2000-01-06 Splash Technology, Inc. Inversion et reconversion de donnees couleur
EP0974934A3 (fr) * 1998-07-24 2001-04-11 Canon Kabushiki Kaisha Appareil et procédé de traitement d'image
EP0974934A2 (fr) * 1998-07-24 2000-01-26 Canon Kabushiki Kaisha Appareil et procédé de traitement d'image
US6999617B1 (en) 1998-07-24 2006-02-14 Canon Kabushiki Kaisha Image processing method and apparatus
US6895110B2 (en) 1998-10-29 2005-05-17 Pixar Color management system
WO2000026857A1 (fr) * 1998-10-29 2000-05-11 Pixar Animation Studios Systeme de gestion de couleurs
US7155054B2 (en) 1998-10-29 2006-12-26 Pixar Color management system
US6697519B1 (en) 1998-10-29 2004-02-24 Pixar Color management system for converting computer graphic images to film images
EP1006483A1 (fr) * 1998-11-30 2000-06-07 Fujitsu Limited Procédé pour la conversion de données de couleurs
US6373595B1 (en) 1998-11-30 2002-04-16 Fujitsu Limited Color data converting method
EP1211665A4 (fr) * 1999-08-25 2006-05-17 Fujitsu Ltd Procede de mesure d'affichage et procede de preparation de profil
US7268913B2 (en) 1999-08-25 2007-09-11 Fujitsu Limited Display measuring method and profile generating method
EP1211665A1 (fr) * 1999-08-25 2002-06-05 Fujitsu Limited Procede de mesure d'affichage et procede de preparation de profil
EP1102478A2 (fr) * 1999-11-15 2001-05-23 Canon Kabushiki Kaisha Gestion des couleurs et architecture d'épreuve en couleur
EP1102478A3 (fr) * 1999-11-15 2004-01-14 Canon Kabushiki Kaisha Gestion des couleurs et architecture d'épreuve en couleur
WO2001050328A2 (fr) * 1999-12-30 2001-07-12 General Electric Company Procede et systeme pour creer des capacites d'assortiment de couleurs globalisees
WO2001050328A3 (fr) * 1999-12-30 2001-12-06 Gen Electric Procede et systeme pour creer des capacites d'assortiment de couleurs globalisees
US10008180B2 (en) 2000-04-11 2018-06-26 Rah Color Technologies Llc Methods and apparatus for calibrating a color display
US9767763B2 (en) 2000-04-11 2017-09-19 Rah Color Technologies Llc Methods and apparatus for calibrating a color display
US9500527B2 (en) 2000-04-11 2016-11-22 Rah Color Technologies Llc Methods and apparatus for calibrating a color display
JP2002062960A (ja) * 2000-05-05 2002-02-28 Xerox Corp カラーマネージャの高レベルなナビゲーションシステム及びそれを用いたカラー管理方法
EP1152322A3 (fr) * 2000-05-05 2008-05-07 Xerox Corporation Gestion d'un profil couleur et gestion, navigation et dessin visuel d'une collection de couleurs
US7256793B2 (en) 2001-07-20 2007-08-14 Corel Corporation System and method for color management of multiple color devices and color spaces
EP1307042A2 (fr) * 2001-10-29 2003-05-02 Hewlett-Packard Company Procédé et système pour la gestion de couleur par conversion entre des espaces de couleurs
EP1307042A3 (fr) * 2001-10-29 2004-05-26 Hewlett-Packard Company Procédé et système pour la gestion de couleur par conversion entre des espaces de couleurs
US7054035B2 (en) 2001-10-29 2006-05-30 Hewlett-Packard Development Company, L.P. Method and system for management of color through conversion between color spaces
EP1396995A3 (fr) * 2002-08-30 2007-08-15 Konica Corporation Procédé de traitement d'images, dispositif de traitement d'image, dispositif d'enregistrement d'images, programme et support d'enregistrement
EP1396995A2 (fr) * 2002-08-30 2004-03-10 Konica Corporation Procédé de traitement d'images, dispositif de traitement d'image, dispositif d'enregistrement d'images, programme et support d'enregistrement
EP1563454A4 (fr) * 2002-09-20 2007-01-17 Tribeca Imaging Lab Inc Procede permettant de corriger la couleur d'images numeriques
EP1563454A2 (fr) * 2002-09-20 2005-08-17 Tribeca Imaging Laboratories, Inc. Procede permettant de corriger la couleur d'images numeriques
US7019755B2 (en) 2003-01-15 2006-03-28 Xerox Corporation Rendering intent selection based on input color space
EP1439691A1 (fr) * 2003-01-15 2004-07-21 Xerox Corporation Sélection d'une intention de rendu basé sur l'espace-entrée de couleurs et le type d'objet
EP1524843A1 (fr) 2003-10-14 2005-04-20 Microsoft Corporation Système de gestion de couleurs
US7889391B2 (en) 2003-10-14 2011-02-15 Microsoft Corporation Color management system that enables dynamic balancing of performance with flexibility
US7952760B2 (en) 2003-10-14 2011-05-31 Microsoft Corporation Color management system that enables dynamic balancing of performance with flexibility
US7366349B2 (en) 2004-11-02 2008-04-29 Pixar Two-dimensional array spectroscopy method and apparatus
US9516288B2 (en) 2005-08-31 2016-12-06 Rah Color Technologies Llc Color calibration of color image rendering devices
US9894340B2 (en) 2005-08-31 2018-02-13 Rah Color Technologies Llc Color calibration of color image rendering devices
US7426029B2 (en) 2005-08-31 2008-09-16 Microsoft Corporation Color measurement using compact device
US7822270B2 (en) 2005-08-31 2010-10-26 Microsoft Corporation Multimedia color management system
US10038884B2 (en) 2005-08-31 2018-07-31 Rah Color Technologies Llc Color calibration of color image rendering devices
US10560676B2 (en) 2005-08-31 2020-02-11 Rah Color Technologies Llc Color calibration of color image rendering devices
US7573620B2 (en) 2005-09-01 2009-08-11 Microsoft Corporation Gamuts and gamut mapping
US11276368B2 (en) 2019-09-06 2022-03-15 Microsoft Technology Licensing, Llc Techniques for applying color transforms in rendering visual content

Also Published As

Publication number Publication date
AU2640095A (en) 1995-12-05

Similar Documents

Publication Publication Date Title
WO1995031794A1 (fr) Systeme de gestion de la couleur pour infographie
US5806081A (en) Method and system for embedding a device profile into a document and extracting a device profile from a document in a color management system
US6719392B2 (en) Optimized color ranges in gamut mapping
US7619773B2 (en) Color management system using measured device data
US6037950A (en) Configurable, extensible, integrated profile generation and maintenance environment for facilitating image transfer between transform spaces
US5208911A (en) Method and apparatus for storing and communicating a transform definition which includes sample values representing an input/output relation of an image transformation
US5872895A (en) Method for object based color matching when printing a color document
US7711185B2 (en) System for customer and automatic color management using policy controls
US6724500B1 (en) Piecewise color transformation by gamut partitioning
US5646752A (en) Color image processing apparatus which uses private tags to alter a predefined color transformation sequence of a device profile
US7944593B2 (en) Method and apparatus for efficient processing of color conversion
US5420979A (en) Method and apparatus for using composite transforms to form intermediary image data metrics which achieve device/media compatibility for subsequent imaging applications
US7796299B1 (en) Composite rendering intent for color proofing applications
US6310696B1 (en) Color gamut displaying method, an image processing method, and apparatus utilizing these methods
KR101122902B1 (ko) 레거시 및 진보된 컬러 관리 애플리케이션을 지원하는 방법 및 장치
US7227666B1 (en) Dynamic selection of rendering intent for color proofing transforms
US7920308B2 (en) Image processing apparatus and image processing method
EP0703701A2 (fr) Système de traitement d'image en couleur servant à préparer un module de transformation d'images composites pour effectuer une pluralité de transformation d'images sélectionnées
US6563944B1 (en) Image processing apparatus and method that automatically selects a substitute output device
US7443544B2 (en) Accelerating color conversion using a temporary palette cache
US6690489B1 (en) Color conversion acceleration using lookup tables
US7843600B2 (en) Information processing apparatus
US6498610B1 (en) Concurrent utilization of multiple color profile databases for image rending
Green The ICC Colour Management Architecture
Agfa-Gevaert International Color Consortium Profile Format

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AM AT AU BB BG BR BY CA CH CN CZ DE DK EE ES FI GB GE HU IS JP KE KG KP KR KZ LK LR LT LU LV MD MG MN MW MX NO NZ PL PT RO RU SD SE SG SI SK TJ TM TT UA UG US UZ VN

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): KE MW SD SZ UG AT BE CH DE DK ES FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: CA