2010-04-11 7 views

Répondre

7

Vous pouvez utiliser ImageEnhance module de PIL:

import Image 
import ImageEnhance 

image = Image.open(r'c:\temp\20090809210.jpg') 
enhancer = ImageEnhance.Brightness(image) 
brighter_image = enhancer.enhance(2) 
darker_image = enhancer.enhance(0.5) 

Regardez PIL et la documentation ImageEnhance pour plus de détails.
Note: Je pense que la documentation de ImageEnhancer est un peu trop laconique, et vous aurez peut-être besoin d'expérimenter dans l'invite interactive pour bien faire les choses.

1

Si vous voulez le faire à la dure, c'est-à-dire coder un changement d'intensité pixel par pixel. Voici comment: 1) Convertir RGB to HSI 2) Augmenter ou diminuer la composante d'intensité 3) Conver retour de HSI RVB

fondu est vrai à dire que le canal alpha n'est pas présent dans le format JPG ou BMP [Format RGBA image en PIL]. Vous obtenez du noir au blanc en utilisant la technique de l'intensité. Si vous voulez utiliser alpha, utilisez plutôt png ou tiff.