Livre_silo 30 août 2013 16:32 Page 362
¨
©
¨
©
¨
©
¨
©
C o p y r i g h t E y r o l l e s
362
Informatique pour tous
On obtient différents degrés de floutage selon qu’on considère les 9 pixels immédiatement adjacents, ou bien un carré de 5 voire 7 pixels de côté centré sur le pixel à calculer.
2 À l’inverse, on peut chercher des contours dans une image ; il s’agit de détecter les endroits où les pixels changent brutalement de couleur. Pour cela, on calcule pour chaque
pixel une moyenne pondérée des pixels qui l’entourent, par exemple avec les coefficients :
−1 −1 −1
−1 8 −1
−1 −1 −1
Quel est le résultat de ce calcul pour un pixel qui est entouré d’autres pixels d’une couleur
proche ? Et si au contraire il est d’une couleur nettement différente de celle d’une partie
de ses voisins ?
Programmer cette méthode de détection des contours.
3 Expérimenter avec d’autres coefficients. On retrouve ainsi encore d’autres fonctionnalités des logiciels de traitement d’image.
A.7.3 Traitement global
On peut enfin chercher à modifier l’image dans sa globalité.
1 Écrire une fonction qui agrandit une image d’un facteur k > 1 donné. Pour k entier, il
suffit de remplacer chaque pixel par un bloc de k × k pixels. Si k est décimal, il faudra
procéder à des interpolations pour calculer la couleur des pixels de l’image agrandie.
2 Écrire une fonction qui divise par deux les dimensions d’une image. Chaque bloc de
2 × 2 pixels sera donc remplacé par un unique pixel dont la valeur est la moyenne des
quatre pixels originaux.
3 Généraliser ce principe pour écrire une fonction qui réduit la taille d’une image d’un
facteur k < 1.
4 Que se passe-t-il si on prend deux images de même taille et qu’on calcule leur différence
pixel par pixel ?
A.7.4 En couleurs
Pour représenter une couleur, on peut la décomposer en trois intensités de bleu, de vert et
de rouge ; c’est d’ailleurs la façon dont l’œil humain perçoit les couleurs. Numériquement,
cela signifie qu’ on peut conserver le même principe de représentation, en donnant pour
chaque pixel trois nombres entre 0 et 255. Il faut donc trois octets pour représenter un
pixel de couleur.
Dans les matrices créées par le module Image pour représenter des images en couleur, cela
se traduit par le fait que chaque pixel est représenté non plus par un entier mais par un
tableau de trois entiers.
Précédent

- 375/402

Suivant