Python 由于图像的exif元数据,使用PIL时出现图像旋转错误
我正在尝试停止特定文件夹中图像的自动旋转。当我在文件夹中使用win7 64位时,它会在上传到dropbox后显示所有内容都正确 显示图像从90度旋转到180度。通过这段Python3代码,我试图实现文件夹中所有图像的90自动旋转。然而,我得到了这个错误。请检查并让我知道如何实现这一点 以下是我正在应用的代码:Python 由于图像的exif元数据,使用PIL时出现图像旋转错误,python,python-3.x,image,python-imaging-library,Python,Python 3.x,Image,Python Imaging Library,我正在尝试停止特定文件夹中图像的自动旋转。当我在文件夹中使用win7 64位时,它会在上传到dropbox后显示所有内容都正确 显示图像从90度旋转到180度。通过这段Python3代码,我试图实现文件夹中所有图像的90自动旋转。然而,我得到了这个错误。请检查并让我知道如何实现这一点 以下是我正在应用的代码: from PIL import Image import os image1 = Image.open('.JPG') image1.rotate(90).save('.JPG') 错
from PIL import Image
import os
image1 = Image.open('.JPG')
image1.rotate(90).save('.JPG')
错误如下:
回溯(最近一次呼叫最后一次):
文件“C:\Users\Dell 2\Desktop\2020年2月14日\183ND750\pil_demo.py”,第4行,在
image1=Image.open('.JPG')
打开文件“C:\Users\Dell 2\AppData\Local\Programs\Python\37\lib\site packages\PIL\Image.py”,第2809行
fp=内置的.open(文件名为“rb”)
FileNotFoundError:[Errno 2]没有这样的文件或目录:'.JPG'
您没有给它一个图像来处理<代码>('.JPG')不会在文件夹中打开图像。您想要传递一个文件路径。差不多
from PIL import Image
import os
image1 = Image.open('C:\Users\YourUser\Desktop\pics\my_image.jpg')
image1.rotate(90).save('C:\Users\YourUser\Desktop\pics\my_image.jpg')
对
open()
和save()
的调用会与计算机的文件系统交互。感谢您的回复。实际上,我想在一个完整的文件夹而不是图像上执行此任务。我每天都会收到这些GBs大小的图像。这不会调用完整文件夹中的每个文件,只调用单个文件。我认为.JPG
无论如何都不是一个有效的目录。user3127647:您必须遍历目录中的每个JPG图像文件,并显式地旋转每个文件。现在还不清楚你想做什么与exif元数据有什么关系。你可以用ImageMagick更简单地自动旋转图像。尝试制作图像目录的副本,并在命令提示符下将目录更改为副本所在的位置。然后运行magick-mogrify-auto-orient*.jpg