如何解决TiffFileError:不TIFF文件和字节问题与KeyError异常:B“\\ x89

2019-09-28 22:26发布

我设置了计算机视觉项目,以检测和处理GFP蛋白质。 我一直对不是我的文件TIFF图像和字节错误得到错误。 我不太明白他们的意思,并没有发现任何关于它的在线。

我已经确信,文件路径是正确的,并试图改变文件转换成TIFF格式。 现在在Finder中,它说,它是一个TIFF图像,但仍然给出了一个错误。

import tifffile
from colicoords import Data, Cell, CellPlot
import matplotlib.pyplot as plt


binary_img = tifffile.imread('organoid_images/gfp/cells1.tif')
data = Data()
data.add_data(binary_img, 'binary')
cell = Cell(data)
cell.optimize()
cp = CellPlot(cell)

plt.figure()
cp.imshow('flu_514', cmap='viridis', interpolation='nearest')
cp.plot_outline()
cp.plot_midline()
plt.show()

错误信息:

Traceback (most recent call last):
  File "/Users/CosmoCrash/opencvblobs/lib/python3.7/site-packages/tifffile/tifffile.py", line 2236, in __init__
    byteorder = {b'II': '<', b'MM': '>'}[header[:2]]
KeyError: b'\x89P'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "gfp.py", line 6, in <module>
    binary_img = tifffile.imread('organoid_images/gfp/cells1.tif')
  File "/Users/CosmoCrash/opencvblobs/lib/python3.7/site-packages/tifffile/tifffile.py", line 715, in imread
    with TiffFile(files, **kwargs_file) as tif:
  File "/Users/CosmoCrash/opencvblobs/lib/python3.7/site-packages/tifffile/tifffile.py", line 2238, in __init__
    raise TiffFileError('not a TIFF file')
tifffile.tifffile.TiffFileError: not a TIFF file

Answer 1:

你的文件开始\x89P是一个PNG文件,而不是TIFF ,因为这是一个PNG签名,而TIFF文件启动II英特尔订单,如果,还是MM如果摩托罗拉顺序。

如果在Linux / MacOS的,尝试运行:

file cells1.tif

参见维基百科为PNG签名的说明,由沃伦的建议。

参见维基百科为TIFF头的描述。



文章来源: How to resolve TiffFileError: Not a Tiff File and Byte Problem with KeyError: b'\\x89P'