Matlab - 读取并显示tif图像

时间:2016-05-23 15:40:13

标签: matlab tiff

请查看以下指向图片的链接(tif)。它有4个频道。

http://amarfree.com/Kannada_1_001.tif

请帮我阅读图片并使用matlab将其转换为黑白图像。

请提供图片频道信息。

1 个答案:

答案 0 :(得分:2)

图像的第四个通道是Alpha通道。它包含每个像素的透明度值。在此示例中,第4个通道中的所有值都与255相同:

sum(sum(I(:,:,4)~=255))

ans =

 0

在这种特定情况下的一般解决方案是忽略最后一个通道(因为它根本不添加信息),并使用rgb2gray函数:

I = imread('<image path>');
bw = rgb2gray(I(:,:,1:3));

但是,在您的情况下,您没有rgb2gray功能(可能是因为您没有Matlab的图像处理工具箱)。这种情况的一般解决方案是实现将rgb图像转换为bw图像的功能。

幸运的是,在这个特定的例子中,3个通道是完全相同的:

isequal(I(:,:,1),I(:,:,2))

ans =

 1

isequal(I(:,:,1),I(:,:,3))

ans =

 1

因此,您可以简单地写:

bw = I(:,:,1);

请注意,只有适用于此特定情况