Курс 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. Преобразование многоуровневого словаря
  2. Оператор continue в Python
  3. Цикл for в Python
  4. Введение в PyTorch
  5. Обратное распространение ошибки
  6. Сериализация объектов в Python
  7. Раздувающийся словарь в Python
  8. Официальный канал Python в Telegram
  9. Метод join() для объединения элементов строки
  10. Проверка надежности пароля на Python
  11. Форматирование вывода с F-строками
  12. Поиск самого длинного слова в списке с использованием max()
  13. Избегайте пустого списка
  14. Оператор break в Python
  15. Python itertools combinations() — группировка элементов
  16. Преобразование PowerPoint в PDF.
  17. Установка и использование Logzero
  18. Функция divmod() в Python
  19. Метод __int__ в Python
  20. Цикл while в Python
  21. Big O оптимизация
  22. Создание множества в Python
  23. Частичное совпадение ввода
  24. Генераторы в Python
  25. Метод remove() для удаления элемента из списка
  26. Установка Python3.7 и PIP
  27. Установка random seed в Python
  28. Numpy: разбиение массивов
  29. Строковое представление объектов
  30. UserList в Python: Описание и примеры использования
  31. Оптимизация параметров в Python
  32. Принципы SRP и OCP
  33. Работа с GitHub в Telegram
  34. Форматирование даты с strftime()
  35. Создание обратного итератора
  36. Получение обратного списка чисел
  37. Работа с файлами в Python
  38. Итерации в Python
  39. Генерация UUID в Python
  40. Метод rename() для переименования файлов и каталогов
  41. Сравнение строк в Python
  42. Работа с базами данных SQLite
  43. Отслеживание прогресса с tqdm
  44. Избегайте использования goto
  45. Преобразование типов данных в set comprehension
  46. Метод count в Python: почему count(», ») возвращает 4?

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