• Как увеличить оттенки красного, зеленого, синего в Pillow?

    @vitamark
    Любое изображение с несколькими каналами можно поделить на каналы
    Затем применить к ним метод Image.eval(), примерно так:

    from PIL import Image
    
    img = Image.open("путь к картинке")
    
    channels = img.split()
    channels[0] = Image.eval(
        channels[0],
        lambda x: min(x * 2, 255)
    ) # увеличиваем значение красного (0) в два раза
    img = Image.merge(img.mode, channels)


    Увеличение в 2 раза естественно показано лишь для примера, может быть любая операция, главное проверять, что значение находится в диапазоне [0, 255] и является целым
    Ответ написан
    1 комментарий