iccread() - Image Processing
P = iccread(filename) reads
the International Color Consortium (ICC) color profile information
from the file specified by filename. The file can
be either an ICC profile file or a TIFF file containing an embedded
ICC profile. To determine if a TIFF file contains an embedded ICC
profile, use the imfinfo function to get information
about the file and look for the ICCProfileOffset field. iccread looks
for the file in the current directory, a directory on the MATLABĀ® path,
or in the directory returned by iccroot, in that
order.iccread returns the profile information in
the structure P, a 1-by-1 structure array whose
fields contain the data structures (called tags) defined in the ICC
specification. iccread can read profiles that conform
with either Version 2 (ICC.1:2001-04) or Version 4 (ICC.1:2001-12)
of the ICC specification. For more information about ICC profiles,
visit the ICC web site, www.color.org.ICC profiles provide color management systems with the information
necessary to convert color data between native device color spaces
and device independent color spaces, called the Profile Connection
Space (PCS). You can use the profile as the source or destination
profile with the makecform function to compute
color space transformations.The number of fields in P depends on the
profile class and the choices made by the profile creator. iccread returns
all the tags for a given profile, both public and private. Private
tags and certain public tags are left as encoded uint8 data.
The following table lists fields that are found in any profile structure
generated by iccread, in the order they appear
in the structure.FieldData TypeDescription
Header1-by-1 struct arrayProfile header fields
TagTablen-by-3 cell arrayProfile tag table
CopyrightText stringProfile copyright notice
Description1-by-1 struct arrayThe String field in this structure
contains a text string describing the profile.
MediaWhitepointdouble arrayXYZ tristimulus values of the device's
media white point
PrivateTagsm-by-2 cell arrayContents of all the private tags or tags not defined
in the ICC specifications. The tag signatures are in the first column,
and the contents of the tags are in the second column. Note that iccread leaves
the contents of these tags in unsigned 8-bit encoding.
FilenameText stringName of the file containing the profile
Additionally, P might contain one or more
of the following transforms:Three-component, matrix-based transform: A simple
transform that is often used to transform between the RGB and XYZ color
spaces. If this transform is present, P contains
a field called MatTRC.N-component LUT-based transform: A transform that
is used for transforming between color spaces that have a more complex
relationship. This type of transform is found in any of the following
fields in P:AToB0BToA0Preview0
AToB1BToA1Preview1
AToB2BToA2Preview2
AToB3BToA3Gamut
Syntax
P = iccread(filename)
Example
P = iccread('sRGB.icm')
P =
Header: [1x1 struct]
TagTable: {17x3 cell}
Copyright: 'Copyright (c) 1999 Hewlett-Packard Company'
Description: [1x1 struct]
MediaWhitePoint: [0.9505 1 1.0891]
MediaBlackPoint: [0 0 0]
DeviceMfgDesc: [1x1 struct]
DeviceModelDesc: [1x1 struct]
ViewingCondDesc: [1x1 struct]
ViewingConditions: [1x1 struct]
Luminance: [76.0365 80 87.1246]
Measurement: [1x36 uint8]
Technology: [115 105 103 32 0 0 0 0 67 82 84 32]
MatTRC: [1x1 struct]
PrivateTags: {}
Filename: 'sRGB.icm'
Output / Return Value
Limitations
Alternatives / See Also
Reference