在Python中读取tiff标记
我正在尝试用Python读取tiff文件的标记。该文件为RGB,每个通道具有uint16值。我目前正在使用TIFF文件:在Python中读取tiff标记,python,tiff,scikit-image,Python,Tiff,Scikit Image,我正在尝试用Python读取tiff文件的标记。该文件为RGB,每个通道具有uint16值。我目前正在使用TIFF文件: 但是,img是一个numpy数组,它只有像素值。例如,如何读取图像的x_分辨率?不确定tiffilelib,但您可以使用exifread获得x分辨率: import exifread with open('image.tif', 'rb') as f: tags = exifread.process_file(f) print(tags['Image XResolu
但是,
img
是一个numpy数组,它只有像素值。例如,如何读取图像的x_分辨率?不确定tiffile
lib,但您可以使用exifread
获得x分辨率:
import exifread
with open('image.tif', 'rb') as f:
tags = exifread.process_file(f)
print(tags['Image XResolution'])
输出:
300
我找到了另一个选择:
import tifffile
with tifffile.TiffFile('file.tif') as tif:
tif_tags = {}
for tag in tif.pages[0].tags.values():
name, value = tag.name, tag.value
tif_tags[name] = value
image = tif.pages[0].asarray()
使用是另一种可能的方法:
from skimage.external import tifffile
with tifffile.TiffFile('your_file.tif') as tif:
imgs = [page.asarray() for page in tif.pages]
x_res = [page.tags['x_resolution'].value for page in tif.pages]
编辑:在中删除了TIFF文件
的副本,现在在scikit映像安装期间通过pip安装了TIFF文件
from skimage.external import tifffile
with tifffile.TiffFile('your_file.tif') as tif:
imgs = [page.asarray() for page in tif.pages]
x_res = [page.tags['x_resolution'].value for page in tif.pages]