Материалы для изучения:
Пример программы, которая делает из изображения чёрно-белое, усредняя значения компонент R, G, B.
from PIL import Image img = Image.open("input.png") # Загружаем изображение из файла, формат файла определяется автоматически pix = img.load() # Получаем ссылку на массив пикселей for x in range(0, img.width): # Цикл по оси OX, слева направо for y in range(0, img.height): # Цикл по оси OY, cверху вниз r, g, b = pix[x, y] # pix[x, y] - это кортеж из трёх чисел gr = (r + g + b) // 3 # берём среднее из них pix[x, y] = (gr, gr, gr) # записываем новый кортеж # img.show() # Если оставить эту строчку, то картинка отобразится во внешней программе просмотра img.save("output.png") # Сохраняем изображение в новом файле
Для создания нового изображения нужно вызвать метод new
:
img = Image.new("RGB", (640, 480), "white")
У этого метода следующие параметры.
(255, 255, 255)
.
После этого с созданным изображением можно выполнять любые действия, затем записать его в файл.