Contexte du projet
Le traitement d’images est un domaine fascinant qui trouve des applications dans de nombreux secteurs, tels que la photographie, la médecine, la sécurité et bien d’autres. Mon projet avait pour objectif de créer une application capable de charger, traiter et sauvegarder des images. Pour ce faire, j’ai utilisé le langage C++, connu pour sa performance et sa gestion fine de la mémoire.
Fonctionnalités
- Lecture de fichiers PGM
- Lecture de fichiers TGA
- Écriture de fichier PGM
- Écriture de fichiers TGA
- Dessin de rectangle, cercle (pleins et vides)
- Compression des images TGA par RLE
Compression d’images
Ce projet a demandé la mise en place de la compression par plages (RLE). Cette compression sans perte est une des manières les plus évidentes de compresser une série de données.

Compétences Acquises
- Compression d’images : Ce projet a été l’occasion pour moi d’apprendre les différentes techniques de compression d’images, avec ou sans perte.
- Programmation Orientée Objet (POO) : En utilisant des classes pour encapsuler les fonctionnalités de traitement d’images, j’ai renforcé mes compétences en POO.
- Gestion de la Mémoire : J’ai renforcé ma compétence à gérer la mémoire de manière efficace, en particulier lors de la manipulation de grandes quantités de données comme les images. En C++, la gestion de la mémoire est cruciale car elle permet d’optimiser les performances de l’application et d’éviter les fuites de mémoire.
- Manipulation de Fichiers : J’ai acquis de l’expérience dans la lecture et l’écriture de fichiers binaires, essentiels pour le traitement d’images.
Conclusion
Ce projet m’a permis de renforcer mes compétences en C++ et d’approfondir mes connaissances sur les représentations d’images à travers des standards comme le PGM et le TGA. L’utilisation de ces formats a permis l’acquisition de compétences transversales en informatique.