ICC Specifications
IntroductionThe ICC specification defines the file format for profiles that connect between colour encodings.
The first version was published as ICC.1 in 1994, and the most recent in 2022. In 2016 ICC introduced an advanced colour management architecture and profile specification, known as ICC.2 (iccMAX) designed for emerging needs that could not be handled by ICC.1.
ICC.1 was published as ISO 15076-1 in 2005. Subsequently, ICC.2 was published as ISO 20677 in 2019. ICC continues to maintain both ICC.1 and ICC.2, and works to update them as needed to address changing colour management requirements. The ISO versions are developed through a liaison with ISO TC 130, and are intended to be functionally identical to the corresponding ICC version. The essential features of the specifications are:
ICC.1
From 2001, the ICC.1 specification is known as v4. The v4 specification introduced a number of important changes that reduced ambiguity in previous versions and added important functionality.
Versions published prior to 2001 are known as v2. V2 profiles are still widely used, especially in legacy applications, and a v4 system is able to process a v2 profile.
Third-party specifications that refer to ICC.1 profiles now all cite a v4 version, in some cases referring to a particular dated version of ICC.1 or ISO 15076-1.
Current version: Specification ICC.1:2022 (Profile version 4.4.0.0) Image technology colour management - Architecture, profile format, and data structure
More information on the v4 ICC.1 specification is available here
ICC.2
Many requests for extensions to the ICC.1 specification required significant changes to the colour management architecture, such as support for spectral data and for modified Profile Connection Spaces. Rather than publish extensions to ICC.1, requiring implementors to make a series of major changes to a well-established code base, it was decided to develop an alternate architecture which encompassed all the envisaged changes. A key feature of ICC.2 is that only those features required for a given application need to be implemented. ICS documents provide a means of defining such sub-sets of the specification.
Current version: Specification ICC.2:2023 (iccMAX) Image technology colour management - Extensions to architecture, profile format, and data structure
More information about ICC.2 is available on the iccMAX page.
Which specification should I use?
The current ICC.1 v4 specification should be the first choice in almost all cases. It is widely supported in software, operating systems and devices including displays, printers, cameras, projectors and scanners. Application areas such as graphic arts, digital photography and displays have relied on the ICC.1 profile from its inception.
Outside of these traditional application areas some users may have colour management needs that cannot be satisfied with ICC.1. These include connecting via spectral or material channels, or a different colorimetry from the ICC.1 PCS. Additionally, it is envisaged that in some situations the basic matrices, curves and LUTs available in ICC.1 will be insufficient (for example where it is desired to encode a more complex functional transform). An example is in packaging, where complex surface reflectances require additional processing beyond simple colorimetry. In such cases users can consider the use of an ICC.2 profile, preferably with the support of an Interoperability Conformance Specification.