Курс 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. Шаблоны и наследование в Flask
  3. Python: библиотеки и функции
  4. Фильтрация элементов с помощью islice
  5. Вычисление разности множеств в Python
  6. Переопределение метода
  7. Создание словарей в Python
  8. Переменная с нижним подчеркиванием
  9. Генераторы в Python
  10. Создание и операции с дробями
  11. Python Поверхностное Копирование
  12. Объединение словарей в Python
  13. Каналы Senior: Python, Java, Frontend, SQL, C++
  14. Декораторы в Python
  15. Модуль subprocess: запуск внешних команд
  16. Многоточие в Python
  17. Работа с типами данных в Python с помощью pydantic.
  18. Выборка чисел
  19. Работа с многоуровневыми словарями в Python
  20. Преобразование чисел в восьмеричную строку
  21. Списки: объединение, изменение
  22. Справка по импортированным модулям
  23. Поиск элементов BeautifulSoup
  24. Настройка логгера Logzero
  25. Оператор += в Python
  26. Основы Python за 14 дней
  27. Работа со строками в Python
  28. Сравнение строк в Python
  29. Создание матрицы в Python
  30. Работа с контекстными менеджерами
  31. Списковое включение в Python
  32. Использование метода lower()
  33. Python: отсутствие точек с запятыми
  34. Генерация резюме в Gensim
  35. Взаимодействие с sys
  36. Срезы в Python
  37. Слияние словарей в Python 3.9
  38. Обязательные аргументы в Python
  39. Работа со строками в Python
  40. Работа с enumerate()
  41. История Python
  42. Многострочные комментарии в Python

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