1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
import PIL.Image as Image
from scipy import array,ones
from colorsys import rgb_to_hls, hls_to_rgb
i = array(Image.open("une image"),"float")/255. # colorsys prend des valeurs entre 0.0 et 1.0
nrow,ncol = i.shape[:2]
# On crée un tableau 2D avec pour chaque ligne les composante rgb d'un pixel
hlss = array([ rgb_to_hls(rgb) for rgb in i.reshape(nrow*ncol,3) ])
# On augmente la valeur de la luminance
hlss[:,1]+=value
# On seuille à 1.0
m1 = ones(hls.shape)
hlss = array([hlss,m1]).min(0)
# On recrée l'image en rgb
r = array([ hls_to_rgb(hls) for hls in hlss]).reshape(i.shape)*255. |
Partager