imshow 16 bit tif file turns to black
12 views (last 30 days)
Show older comments
Mao Ye
on 23 Jan 2017
Commented: Mao Ye
on 23 Jan 2017
I am currently loading a tif file into matlab by using the code below.
fname = '1.tif'; img = imread(fname); imshow(img)
But it showed a black picture. If I change to this.
fname = '1.tif'; [img,map] = imread(fname,k); imshow(img,map)
It works. And I found that map is actually empty.
If I did like this, it also works.
fname = '1.tif'; img = imread(fname); map = []; imshow(img,map)
I am wondering why.
The tif file information is here.
Filename:
FileModDate: ' '
FileSize: 761533941
Format: 'tif'
FormatVersion: []
Width: 630
Height: 630
BitDepth: 16
ColorType: 'grayscale'
FormatSignature: [73 73 42 0]
ByteOrder: 'little-endian'
NewSubFileType: 2
BitsPerSample: 16
Compression: 'Uncompressed'
PhotometricInterpretation: 'BlackIsZero'
StripOffsets: 1x105 Double
SamplesPerPixel: 1
RowsPerStrip: 6
StripByteCounts: 1x105 Double
XResolution: []
YResolution: []
ResolutionUnit: 'Inch'
Colormap: []
PlanarConfiguration: 'Chunky'
TileWidth: []
TileLength: []
TileOffsets: []
TileByteCounts: []
Orientation: 1
FillOrder: 1
GrayResponseUnit: 0.0100
MaxSampleValue: 65535
MinSampleValue: 0
Thresholding: 1
Offset: ...
ImageDescription: ...
PageNumber: ...
UnknownTags: [4x1 struct]
Thank you so much. Any suggestions will be welcomed.
2 Comments
Accepted Answer
Jorge Mario Guerra González
on 23 Jan 2017
I think that it happends because your tif image is a grayscale image are it's said in properties. Maps are used for colour images.
Since it's a grayscale image the notation [] means that the display range is [min max] then you see the whole gray scale.
Check this to see how maps work on a RGB tif image.
[X,map] = imread('corn.tif');
imshow(X,map)
More Answers (0)
See Also
Categories
Find more on Data Import and Analysis 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!