如何在Exif方向上将图像文件加载到numpy数组中,在Python中一次支持多个图像?

问题描述 投票:0回答:1

就像标题说的那样,我正在尝试将图像文件加载到具有Exif方向支持的numpy数组中。我这样做是为了防止face_recognition的上下颠倒图像,因为它不适用于Iphone拍摄的照片。要使用此脚本修复该问题,请执行以下操作:

import matplotlib.pyplot as plt
import image_to_numpy

img = image_to_numpy.load_image_file("my_file.jpg")

plt.imshow(img)
plt.show()

这适用于一个图像,但我想创建一个循环以对一个文件夹中的多个图像执行此操作,然后将其保存在另一个文件夹中。关于如何做到这一点的任何想法?

python face-recognition
1个回答
0
投票

我找到了这个答案:https://stackoverflow.com/a/26928142/12076702

您唯一需要做的就是将filepath中的image=Image.open(filepath)更改为原始图像文件路径以及此文件路径,image.save(filepath)更改为要将图像保存到的文件路径。

您可以使用glob.glob()通过执行以下操作来获取指定目录中您选择的格式的所有图像文件路径:

import glob
import os

filepaths = glob.glob(os.path.join('path', 'to', 'my', 'directory', *.jpg'))

然后只需进行for循环,打开图像,对其进行修改,最后将它们保存在您选择的目录中。希望这会有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.