我有一个图像(医学图像)存储为.TIFF文件,当我读它时我发现第一个是4个矩阵,第二个和第三个是我图像的RGB分量,第四个是二进制矩阵(只包含1个值),我不知道它是什么。我已经去噪了,但问题是: - 当我保存它时我得到000个值(黑色图像)但是当我在matlab下打开它时,我发现它不是一个空矩阵,这是我的代码:
t = Tiff([source2,'',num2str(v)],'w');
tagstruct.ImageLength = 1000;
tagstruct.ImageWidth = 1024;
tagstruct.Photometric = Tiff.Photometric.RGB;
tagstruct.BitsPerSample = 32;
tagstruct.SamplesPerPixel = 4;
tagstruct.RowsPerStrip = 1000;
tagstruct.ExtraSamples =Tiff.ExtraSamples.AssociatedAlpha;
tagstruct.PlanarConfiguration = Tiff.PlanarConfiguration.Chunky;
tagstruct.Software = 'MATLAB';
tagstruct.SampleFormat=Tiff.SampleFormat.IEEEFP;
t.setTag(tagstruct);
t.write(single(Iy_d));
t.close();
我想阅读文件的头部,以便检查我的BitsPerSample,但我无法
Xn= imread([source,'', num2str(v)],'tif')
我收到了这个错误:
info = imfinfo(Xn);
Error using imfinfo (line 80)
Expected FILENAME to be one of these types:
char
Instead its type was uint8
这让我感到困惑,因为它不应该是uint8!,所以我把它转换成双重
Xn=im2double(imread([source,'', num2str(v)],'tif'))
但没有任何效果