PIL Image无法使用skimage.io打开转换后的图像

时间:2019-07-10 18:09:24

标签: python python-imaging-library tiff scikit-image

我对保存在PFM文件中的浮点数组执行了剪切和水平翻转转换,然后通过以下代码将它们另存为tif文件:

import os
from scipy import ndarray

  # image processing library
import skimage as sk
from skimage.transform import warp
from skimage import util
from skimage import io
import numpy as np

def shear(image_array: ndarray, shear=10):
    tf_augment = sk.transform.AffineTransform(shear=np.deg2rad(shear))
    return  warp(image_array, tf_augment, order=1, preserve_range=True, 
    mode='edge')

def horizontal_flip(image_array: ndarray):
    return image_array[:, ::-1]

image_path='./train/0006.pfm'
image_to_transform, scale=readPFM(image_path)   

flipped_image1=horizontal_flip(image_to_transform)
io.imsave("flipped_image1.tif", flipped_image1)

sheared_image1 =shear(image_to_transform,5)
io.imsave("sheared_image1.tif", sheared_image1)

但是,当我尝试使用PIL框架打开这些图像时,它只能用于翻转的图像,而不能用于剪切后的图像:

from PIL import Image
Image.open("sheared_image1.tif")

我得到了错误

 OSError: cannot identify image file 'sheared_image1.tif'

任何人都可以向我解释原因,或者如何通过skimage框架保存转换后的图像,以便能够使用PIL读取它们(出于后期目的,我必须使用PIL读取)

0 个答案:

没有答案