Курс Python → Обрезка изображения с Pillow

При работе с изображениями в Python с использованием библиотеки Pillow, часто возникает необходимость обрезать изображение до определенной области. Для этого используется метод crop(), который принимает аргумент в виде кортежа, содержащего координаты области обрезки. Например, для обозначения области обрезки на изображении с координатами (x1, y1) в верхнем левом углу и (x2, y2) в нижнем правом углу, можно создать кортеж box=(x1, y1, x2, y2).

Важно помнить, что координаты в кортеже box=(left, upper, right, lower) задают прямоугольную область на изображении. Верхняя левая координата (left, upper) указывает на точку начала обрезки, а нижняя правая (right, lower) — на точку конца обрезки. При этом пиксели с координатами x = right и y = lower не включаются в обрезанную область.

Для выполнения обрезки изображения в Pillow необходимо вызвать метод crop() на объекте Image и передать ему кортеж с координатами области обрезки. Например, для обрезки изображения img до области с координатами (100, 100) в верхнем левом углу и (300, 300) в нижнем правом углу, можно использовать следующий код:


from PIL import Image

img = Image.open('image.jpg')
cropped_img = img.crop((100, 100, 300, 300))
cropped_img.show()

В данном примере изображение ‘image.jpg’ будет обрезано до области с координатами (100, 100, 300, 300) и отображено на экране. При необходимости можно сохранить обрезанное изображение в файл, используя метод save(). Таким образом, обрезка изображения в Pillow с помощью кортежа box=(left, upper, right, lower) является простым и эффективным способом изменения размеров изображения.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Функции в Python: создание и вызов
  2. Путь к интерпретатору Python
  3. Модуль inspect
  4. Просмотр атрибутов и методов класса
  5. Ускоренный импорт библиотек
  6. Блок else в обработке исключений
  7. Извлечение аудио из видео
  8. Работа с NumPy.linalg
  9. Вычисление натурального логарифма в NumPy
  10. Операторы += в Python
  11. Операторы увеличения и уменьшения переменной
  12. Защита данных в Python
  13. Основные операции с Numpy
  14. Атрибуты класса и экземпляра
  15. Добавление элементов в список: append() vs extend()
  16. Установка и использование Virtualenv
  17. Применение функций в Python
  18. Управление User-Agent в Python
  19. Определение индекса элемента списка
  20. Отправка поздравлений по дню рождения
  21. Построение графиков в Matplotlib
  22. Поиск наиболее частого элемента
  23. Создание словарей в Python
  24. Декораторы в Python
  25. Делегирование в Python
  26. Работа с файлами и директориями в Python.
  27. Удаление символа из строки
  28. Применение функции к каждому элементу списка
  29. Итерация по копии коллекции
  30. Concrete Paths в Python
  31. Оператор walrus в Python
  32. Распаковка элементов последовательности
  33. Работа с Colorama
  34. Комментарии в Python
  35. Удаление дубликатов из списка
  36. Метод join для объединения строк
  37. Библиотека sh: удобные команды терминала
  38. Структуры данных в Python
  39. Проверка списка: any() и all()
  40. Логирование с Logzero
  41. Сравнение неупорядоченных списков
  42. Добавление элемента к кортежу
  43. Работа с контекстными переменными
  44. Создание копии итератора
  45. Создание словаря с значением по умолчанию
  46. Печать календаря в Python
  47. TypedDict для kwargs в Python 3.12

Marketello читают маркетологи из крутых компаний