У меня есть папка, содержащая 2000 изображений в формате TIF, и я хочу преобразовать их в изображения JPG. Я написал два кода, и оба работают хорошо, пока они не преобразуют 370 изображений, а затем они вызывают ошибку
Вот мой первый код:
DestPath='/media/jack/Elements/ToJPG95/'
from PIL import Image
import os
def change(path, row):
filename1=path+row
filename=row.split('.')[0] + '.jpg'
im = Image.open(filename1)
img= im.convert('RGB')
Dest=os.path.join(DestPath,filename)
img.save(Dest, format='JPEG',quality=95)
import csv
sourcePath='/media/jack/Elements/TifImages/'
with open("TIFFnames.csv") as f:
filtered = (line.replace('\n', '') for line in f)
reader = csv.reader(filtered)
for row in filtered:
change(sourcePath , row)
и вот мой второй код, в котором я запускал внутри папки с изображениями:
from PIL import Image # Python Image Library - Image Processing
import glob
DestPath='/media/jack/Elements/ToJPG95/'
print(glob.glob("*.TIF"))
for file in glob.glob("*.TIF"):
im = Image.open(file)
rgb_im = im.convert('RGB')
rgb_im.save(DestPath+file.replace("TIF", "jpg"), quality=95)
# based on SO Answer: https://stackoverflow.com/a/43258974/5086335
они конвертируют до 370 изображений, а затем выдают ошибку. Вот ошибка, которую я получаю:
Traceback (most recent call last):
File "conmg.py", line 7, in <module>
rgb_im = im.convert('RGB')
File "/home/jack/.local/lib/python3.6/site-packages/PIL/Image.py", line 873, in convert
self.load()
File "/home/jack/.local/lib/python3.6/site-packages/PIL/TiffImagePlugin.py", line 1070, in load
return self._load_libtiff()
File "/home/jack/.local/lib/python3.6/site-packages/PIL/TiffImagePlugin.py", line 1182, in _load_libtiff
raise OSError(err)
OSError: -2
Я пробовал упоминание imagemagick в решении Здесь
но это то, что я получаю, когда нажимаю клавишу ВВОД, чтобы выполнить команду:
jack@jack-dell:/media/jack/Elements/TifImages$ for f in *.tif; do echo "Converting $f"; convert "$f" "$(basename "$f" .tif).jpg"
>
>
>
>
Как видите, ничего не происходит. думаю, что коды работают хорошо, но по какой-то причине они не работают после преобразования 370 изображений, которые я запускаю на внешнем жестком диске объемом 6 ТБ. Может кто-нибудь сказать мне, пожалуйста, что не так?