我是Python的新手,我希望从电子显微镜(.tif)图像中提取尺度信息。
当我在记事本中打开文件并滚动到底部时,我看到一个标题“[Scan]”和一个项目……
看起来您的文件可能是FEI SEM TIFF,其中包含TIFF标签34682中的INI类元数据。
尝试使用 tifffile :
import tifffile with tifffile.TiffFile('FEI_SEM.tif') as tif: print(tif.fei_metadata['Scan']['PixelWidth'])
使用PIL,我认为使用for循环设置字典会更清楚,然后打印所需的结果。
from PIL import Image from PIL.TiffTags import TAGS with Image.open(imagetoanalyze) as img: meta_dict = {} for key in img.tag: # don't really need iterkeys in this context meta_dict[TAGS.get(key,'missing')] = img.tag[key] # Now you can print your desired unit: print meta_dict["PixelWidth"]
如果您只需要一个值,您也可以查找该数字 PixelWidth 用这个标记:
PixelWidth
for k in img.tag: print k,TAGS.get(k,'missing')
然后打印 img.tag[<thatnumber>] 没有填充字典。
img.tag[<thatnumber>]