32bits save as int32

12 次查看(过去 30 天)
Hi there,
I have a 32bit tif image https://we.tl/t-H0WliT3O50 . This image is 'single' but Matlab assumes by default 32bit means int32 and when the image is open with imread() the image is binary. I would to read the image using grey scale. How can I do this? I´ve tried itconvert in double but the image is open as binary image.
Any help would be very much appreciated , thanks
  8 个评论
Ameer Hamza
Ameer Hamza 2020-6-14
This tiff file seems to have very unusual encoding. How did you generate the png file from the tiff file?
Pamela Garcia
Pamela Garcia 2020-6-14
It is the result of windows photo visualizer

请先登录,再进行评论。

采纳的回答

Walter Roberson
Walter Roberson 2020-6-14
If you look at imfinfo() of the file, you can see that the headers say it is a collection of nine images with 32 bit signed integer. If it is intended to be single instead, then the metadata is wrong.
for IDX = 1 : 9
imgint32 = imread('lh.average.CURVATURE.tif','index',IDX);
imgsingle{IDX} = reshape(typecast(imgint32(:), 'single'), size(img32));
end

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Convert Image Type 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by