Does imshow account for monitor calibration?
5 views (last 30 days)
Show older comments
I am reading in TIF files and displaying them with imshow (example below). Outside of Matlab, I calibrated my monitor and produced an ICM file which is listed as the default in Color Management in Windows. Is the image displayed by imshow adjusted for my monitor calibration for the most accurate color? If not, how can I display an image with the most accurate colors based on my monitor calibration?
A = imread('myFile.tif');
imshow(A);
% Display info about the tif file in case it is useful
iminfo(A)
Format: 'tif'
FormatVersion: []
Width: 3105
Height: 4109
BitDepth: 24
ColorType: 'truecolor'
FormatSignature: [73 73 42 0]
ByteOrder: 'little-endian'
NewSubFileType: 0
BitsPerSample: [8 8 8]
Compression: 'Uncompressed'
PhotometricInterpretation: 'RGB'
StripOffsets: [1×257 double]
SamplesPerPixel: 3
RowsPerStrip: 16
StripByteCounts: [1×257 double]
XResolution: 600
YResolution: 600
ResolutionUnit: 'Inch'
Colormap: []
PlanarConfiguration: 'Chunky'
TileWidth: []
TileLength: []
TileOffsets: []
TileByteCounts: []
Orientation: 1
FillOrder: 1
GrayResponseUnit: 0.01
MaxSampleValue: [255 255 255]
MinSampleValue: [0 0 0]
Thresholding: 1
Offset: 38275344
YCbCrPositioning: 'Centered'
0 Comments
Accepted Answer
Walter Roberson
on 14 Mar 2018
imshow() has no idea about color profiles.
You might be able to use makecform / applycform to convert between the .icm and sRGB and imshow() or image() the resulting data. However, this would only make sense to do if sRGB was calibrated for your screen. So I guess more applicable would be to run some kind of calibration procedure for your screen to get a .icm for it, and then makecform / applycform to transform between the source .icm and your display.
3 Comments
Walter Roberson
on 14 Mar 2018
Well you can either tune your display properties to provide a particular response, or you can figure out what response your display does give and have the software work backwards to figure out what it has to send to get your display to show a particular response. I did not want to assume that your display could be accurately tuned.
More Answers (0)
See Also
Categories
Find more on Color in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!