Le programme HurtelVisio permet de charger une image Windows Bitmap (BMP) ou Truevision Targa (TGA), d'y appliquer et enregistrer des modifications.
Exercice sur la lecture de fichiers et le traitement d'images.
Projet réalisé avec Marion Hurteau.
HurtelVisio supporte les fonctionnalités principales des formats d'image Windows Bitmap (.BMP) et Truevision Targa (.TGA) à l'ouverture et à l'enregistrement.
La lecture d'une image s'effectue avec le bouton Ouvrir, affichant une boîte de dialogue permettant de sélectionner le fichier à ouvrir.
La lecture du format Windows Bitmap prend en compte trois types de profondeurs :
32 bits par pixels : Rouge, vert, bleu, alpha, chaque composante est codée sur 8 bits.
24 bits par pixels : Rouge, vert, bleu, chaque composante est codée sur 8 bits.
8 bits par pixels : Une palette de 256 couleurs maximum 24 ou 32 bits accompagne l'image. Chaque pixel charge une valeur indexée dans la palette.
La lecture du format Truevision Targa prend en compte quatre types de profondeurs et une éventuelle compression de type RLE.
32 bits par pixels : Rouge, vert, bleu, alpha, chaque composante est codée sur 8 bits.
24 bits par pixels : Rouge, vert, bleu, chaque composante est codée sur 8 bits.
16 bits par pixels : Rouge, vert, bleu, chaque composante est codée sur 5 bits.
8 bits par pixels : Une palette de 256 couleurs maximum 24 ou 32 bits accompagne l'image. Chaque pixel charge une valeur indexée dans la palette.
Compression RLE : Les pixels identiques qui se suivent de gauche à droite ne sont écrits qu'une fois.
L'enregistrement d'une image prend en compte les modifications apportées à celle-ci et s'effectue avec le bouton Enregistrer, ouvrant une boîte de dialogue indiquant l'emplacement à choisir pour enregistrer le fichier au format désiré.
L'enregistrement du format Windows Bitmap prend en compte deux types de profondeurs :
32 bits par pixels : Rouge, vert, bleu, alpha, chaque composante est codée sur 8 bits.
24 bits par pixels : Rouge, vert, bleu, chaque composante est codée sur 8 bits.
L'enregistrement du format Truevision Targa prend en compte trois types de profondeurs et une éventuelle compression de type RLE.
32 bits par pixels : Rouge, vert, bleu, alpha, chaque composante est codée sur 8 bits.
24 bits par pixels : Rouge, vert, bleu, chaque composante est codée sur 8 bits.
Note : une perte du canal alpha s'effectuera si l'image d'origine a une profondeur de 32 bits.
16 bits par pixels : Rouge, vert, bleu, chaque composante est codée sur 5 bits.
Note : une perte d'information et donc de qualité s'effectuera si l'image d'origine a une profondeur supérieure à 16 bits.
Compression RLE : Les pixels identiques qui se suivent de gauche à droite ne sont écrits qu'une fois.
Note : la compression RLE n'a d'intérêt que si l'image comporte des aplats de couleurs fréquents, le fichier enregistré sera plus léger et sans perte d'information.
HurtelVisio propose plusieurs filtres graphiques superposables modifiant l'apparence de l'image.
Cliquez sur le + pour tendre l'image vers le blanc, sur le - pour la tendre vers le noir. Cliquez sur le point noir pour réinitialiser la luminosité.
Cliquez sur le + pour augmenter le contraste de l'image, sur le - pour le baisser et tendre l'image vers le gris.
Cliquez sur le point noir pour réinitialiser le contraste.
Cliquez sur le bouton Inverser les couleurs pour inverser les couleurs de l'image.
Ou utilisez la touche de raccourci clavier I.
Cliquez sur le bouton Niveau de gris pour passer l'image en niveau de gris.
Ou utilisez la touche de raccourci clavier N.
Cliquez sur Reset pour réinitialiser les filtres graphiques. Cela a pour effet de recharger l'image.
HurtelVisio propose des outils de correction permettant de modifier la taille et l'orientation de l'image.
Cliquez sur le + et le - pour ajuster la largeur et la hauteur de l'image. Le redimensionnement rééchantillonne les pixels.
Cliquez sur + (ou la touche du clavier R) pour activer l'outil de rognage. Cliquez-glissez ensuite sur l'image pour définir la zone de recadrage. Le recadrage sera appliqué à l'image à l'enregistrement du fichier, cela permet de réajuster la zone si besoin.
Recliquez sur + (ou la touche du clavier R) pour désactiver l'outil de rognage.
Cliquez sur les flèches correspondantes pour pivoter l'image de 90° à gauche ou à droite.
Applique une symétrie horizontale ou verticale de l'image.
Différents types de fusion d'images sont disponibles. Cliquez sur Fusionner pour charger une image à fusionner et ouvrir le menu des Fusions. Cliquez sur OK pour valider la fusion, Sans pour la désactiver.
Calcule la moyenne de chaque pixels des deux images A et B.
Incruste l'image B selon sa couche Alpha (sa transparence) sur l'image A.
Additionne les valeurs RVB des deux images A et B.
Soustrait les valeurs RVB de l'image B à l'image A.
Transpose les pixels plus clairs de l'image B à l'image A.
Transpose les pixels plus sombres de l'image B à l'image A.
Multiplie l'image A à l'image B divisé par 255.
Soustrait 255 à l'image A multipliée par l'image B.
Soustrait l'image B par l'inverse de l'image A.
HurtelVisio utilise la bibliothèque SDL 2.0 pour la gestion des fenêtres et des évènements de la souris.
Le programme est constitué de la manière suivante :
- Création et initialisation des fenêtres - Récupération des évènements souris du menu - Application des fonctionnalités non destructives sur l'Image d'Origine - Chargement - Ouverture dans l'Image d'Origine - Enregistrement - Application du rognage - Enregistrement de l'Image Modifiée - Réinitialisation des outils - Rotation - Miroir - Inversion des couleurs - Prévisualisation du rognage - Copie de l'Image d'Origine dans l'Image Modifiée - Application des fonctionnalités destructives sur l'Image Modifiée - Luminosité / Contraste - Niveau de gris - Chargement de l'Image à fusionner et application de la fusion - Affichage de l'Image Modifiée - Libération de la mémoire et fermeture des fenêtres
keyboard_arrow_down