在许多机器学习的任务中,大多数图像类型的训练数据集会以tif的格式储存,在这种情况下,如何读取tif格式的数据就至关重要
TIF(Tagged Image File Format)格式,也被称为TIFF,是一种灵活的位图格式,主要用于存储包括照片和艺术图像在内的各种类型的图片。TIF格式最早在1986年由Aldus公司为高分辨率打印机进行开发。现在它的所有权属于Adobe。 下面是一些关于TIF格式的关键特性:
这里使用python的PTL库对tif格式的文件进行读取
环境依赖的库
from PIL import Image # 读取tif格式文件
import numpy as np # 将PIL.Image转换为numpy类型
import matplotlib.pyplot as plt # 对图像进行可视化
我们这里读取的是进行视网膜血管分隔的训练数据集,图像以tif格式储存
data_path = r"你的tif格式文件路径"
data = Image.open(data_path)
print(data)
输出结果
<PIL.TiffImagePlugin.TiffImageFile image mode=RGB size=565x584 at 0x1FA40F099D0>
这样不太直观,我们把数据转换成numpy类型打印出tif格式图像的形状
data_np = np.array(data)
print(data_np.shape)
结果输出
(584, 565, 3)
可以直观地看到读取的tif是一个像素的三通道图像
我们对读取的数据进行显示看看
plt.imshow(data)
plt.show()
注意这里plt.imshow可以直接显示PIL.Image格式的数据,同样可以传入转换为numpy格式的数据进行可视化
欢迎大家讨论交流~