Python известен своей универсальностью. Вы можете создавать на Python реальные служебные инструменты, которые упрощают и автоматизируют определенные задачи.

Узнайте, как создать преобразователь типов изображений, используя всего несколько простых строк кода Python. Будь то один файл изображения или все файлы в каталоге, вы можете легко конвертировать между различными форматами.

Установка необходимых библиотек

Вам необходимо установить Подушка Библиотека Python для создания преобразователя типов изображений в Python. Эта библиотека расширяет возможности обработки изображений вашего интерпретатора Python. Вы можете создать общий инструмент обработки изображений, используя несколько модулей этой библиотеки. Одними из самых полезных являются Изображение, Файл изображения, ImageFilter, и ИмиджСтат модули.

Выполните следующую команду в терминале, чтобы установить библиотеку Pillow Python:

точка установить подушка

Как только Pillow будет установлен в вашей системе, вы готовы работать с изображениями.

Загрузка и отображение свойств изображения

Сначала вам нужно импортировать Изображение модуль из ПИЛ библиотека для настройки кода. Далее необходимо использовать Изображение.открыть() метод для загрузки изображения и присвоения его переменной. После того, как вы загрузили изображение, вы можете отобразить его с помощью показывать() метод.

Код преобразователя формата изображения доступен в Репозиторий GitHub и вы можете использовать его бесплатно по лицензии MIT.

от ПИЛ Импортировать Изображение
изображение = изображение.открыть('образец-изображение.jpg')
изображение.показывать()

Изображение, которое вы передали в качестве параметра открыть() метод откроется после того, как вы выполните код. Это хороший первый шаг в качестве проверки работоспособности, чтобы убедиться, что вы успешно установили библиотеку в своей системе.

Модуль Image предоставляет несколько других свойств, которые можно использовать для получения дополнительной информации об изображении.

# Импорт библиотеки
от ПИЛ Импортировать Изображение

# Загрузка изображения
изображение = изображение.открыть('образец-изображение.jpg')

# Печатает имя файла
Распечатать("Имя файла: ", изображение.имя_файла)

# Печатает формат файла
# Например, PNG, JPG, GIF и т. д.
Распечатать("Формат: ", формат изображения)

# Печатает режим файла
# Например, RGB, RFBA, CMYK и т. д.
Распечатать("Режим: ", изображение.режим)

# Выводит размер в виде кортежа ширины и высоты (в пикселях)
Распечатать("Размер: ", Размер изображения)

# Печатает ширину изображения (в пикселях)
Распечатать("Ширина: ", изображение.ширина)

# Печатает высоту изображения (в пикселях)
Распечатать("Высота: ", изображение.высота)

# Закрытие изображения
изображение.закрывать()

Вы должны увидеть некоторые значимые данные без ошибок:

Как преобразовать формат изображения с помощью Python

Вы можете просто преобразовать формат файла изображения, используя сохранять() метод. Вам просто нужно пройти новый имя файла и расширение в качестве параметра для сохранять() метод. сохранять() метод автоматически определит переданное вами расширение, а затем сохранит изображение в указанном формате. Но прежде чем использовать сохранять() методе может потребоваться указать режим изображения (RGB, RGBA, CMYK, HSV и т. д.).

В соответствии с официальная документация по подушкам, режим изображения — это строка, определяющая тип и глубину пикселя изображения. Библиотека подушек поддерживает 11 режимов, включая следующие стандартные режимы:

RGB (3x8-битных пикселей, истинный цвет)

RGBA (4x8-битных пикселей, истинный цвет с маской прозрачности)

CMYK (4x8-битных пикселей, цветоделение)

ВПГ (3x8-битных пикселей, оттенок, насыщенность, цветовое пространство Value)

Как преобразовать изображение из PNG в JPG и JPG в PNG

Вам нужно передать строку имя файла.jpg как параметр к сохранять() метод преобразования файлов изображений в любой формат (PNG, GIF, BMP, TIFF и т. д.) в формат JPG. Также вам необходимо указать режим изображения. Следующий код преобразует изображение из Формат PNG в формат JPG:

# Импорт библиотеки
от ПИЛ Импортировать Изображение

# Загрузка изображения
изображение = изображение.открыть('образец-png-image.png')

# Указание режима RGB для изображения
изображение = изображение.конвертировать('RGB')

# Преобразование изображения из формата PNG в формат JPG
изображение.сохранить("преобразованный-jpg-image.jpg")
Распечатать("Изображение успешно преобразовано!"

Вы потеряете прозрачность изображения, если конвертируете его в формат JPG. Если вы попытаетесь сохранить прозрачность с помощью RGBA режиме, Python выдаст ошибку.

Вы можете преобразовать изображение в любом формате в формат PNG, используя сохранять() метод. Вам просто нужно передать изображение PNG в качестве параметра в сохранять() метод. Следующий код преобразует изображение из формата JPG в формат PNG:

# Импорт библиотеки
от ПИЛ Импортировать Изображение

# Загрузка изображения
изображение = изображение.открыть('образец-jpg-image.jpg')

# Преобразование изображения из формата JPG в PNG
изображение.сохранить("преобразованный-png-image.png")
Распечатать("Изображение успешно преобразовано!")

Преобразование изображения в PNG сохраняет прозрачность. Например, если вы преобразуете прозрачное изображение GIF в изображение PNG, результатом все равно будет прозрачное изображение.

Как преобразовать изображение в любой другой формат с помощью Python

Аналогично шагам выше, вы можете преобразовать изображение любого формата в любой другой формат, используя сохранять() метод. Вам просто нужно указать правильное расширение изображения (.webp, .png, .bmp и т. д.) для сохранять() метод. Например, следующий код преобразует изображение из формата PNG в формат WebP:

# Импорт библиотеки
от ПИЛ Импортировать Изображение

# Загрузка изображения
изображение = изображение.открыть('образец-прозрачный-png-image.png')

# Преобразование изображения из формата PNG в формат WEBP
изображение.сохранить("преобразованный-webp-image.webp")
Распечатать("Изображение успешно преобразовано!")

Обработка ошибок для отсутствующих файлов изображений

Если код не сможет найти входное изображение, он выдаст ошибку. Вы можете справиться с этим, используя FileNotFoundErrorИсключение Python.

# Импорт библиотеки
от ПИЛ Импортировать Изображение

пытаться:
# Загрузка изображения
изображение = изображение.открыть('неправильное имя файла.jpg')

# Преобразование изображения из формата JPG в PNG
изображение.сохранить("преобразованный-png-image.png")
Распечатать("Изображение успешно преобразовано!")

кроме FileNotFoundError:
Распечатать("Не мог't найти предоставленное изображение")

Преобразование всех изображений в каталоге в другой формат

Если в каталоге есть несколько файлов изображений, которые вы хотите преобразовать в другой формат, вы можете легко сделать это, написав всего несколько строк кода на Python. Вам необходимо импортировать шарик библиотека для перебора файлов в текущем каталоге или внутри заданной папки. Следующий код преобразует все изображения JPG в текущем каталоге в формат PNG:

от ПИЛ Импортировать Изображение
Импортировать шарик

для файла в glob.glob("*.jpg"):
изображение = Image.open (файл)
изображение.сохранить (файл.заменить("jpg", "png"))

Если вы хотите преобразовать другой набор файлов, измените строковый параметр, который вы передаете в шарик() метод.

Создайте графический интерфейс с помощью Python

Библиотеки Python, такие как Pillow, упрощают разработку инструментов для работы с изображениями в Python. Вы можете быстро выполнять задачи с помощью интерфейса командной строки, но графический интерфейс необходим для создания удобного интерфейса. Вы можете создавать более специализированные приложения с графическим интерфейсом, используя фреймворки Python, такие как Tkinter и wxPython.