cv2图像大小从PIL图像转置

2024-06-01 21:21:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一张72x96的照片。Windows说它的尺寸是72x96。PIL图像还显示它是72x96:

from PIL import Image, ImageOps

with Image.open(<path>) as img:
    print(img.size) # (72, 96)
    print(ImageOps.exif_transpose(img).size) # (72, 96)

但是当我用cv2.imreadskimage.io.imread阅读图像时,它说,图像的形状是(96, 72, 3)

from skimage.io import imread
im0 = imread(<path>)
print(im0.shape) # (96, 72, 3)

这里怎么了?即使我做了这样的事:

import matplotlib.pyplot as plt
plt.imshow(im0)

它以正确的大小显示图像,但写入的大小看起来被转置了


Tags: pathfromio图像imageimportimgsize