Traitement des images

Descriptif du projet

Dans ce projet il s'agit de modifier une image par programmation, les tâches suivantes sont à réaliser :

Réalisation

Dans une page web un élément img contient l'image source et un élément canvas est utilisé pour réaliser l'image retouchée.

En outre trois boutons permettent de choisir la transformation que l'on veut appliquer.

Conversion en niveaux de gris

Pour effectuer cette transformation la couleur de chaque pixel est remplacée par une teinte de gris plus ou moins foncée, le calcul de la teinte de gris peut se faire de plusieurs façons à partir des composantes rouge, vert et bleu du pixel original :

Dans ce projet nous utilisons la méthode de la moyenne.

Retournement d'image

Pour retourner l'image on fait simplement passer tout les pixels de la position $(x~;~y)$ à la position $(x~;~h-y)$ où $h$ est la hauteur en pixels de l'image.

Floutage par pixellisation

L'image est découpée en zones carrées et tous les pixels d'une même zone sont mis à la même couleur. La couleur de la zone est obtenue en faisant la moyenne de chaque composante RVB des différents pixels de la zone.

Une variable granularite est utilisée pour définir la taille en pixels des zones carrées. La longueur et la largeur en pixels de l'image n'étant pas forcément divisibles par granularite on ne traite pas les « bords » restant.

Code source complet du projet