Dans cet exemple d’utilisation de l’ACP, nous partons d’une image quelconque (quoique…), pour la compresser en utilisant l’ACP. Pour évaluer l’intérêt de la méthode, pour différents nombres d’axes, l’image reconstruite ainsi que la taille des éléments nécessaire à la reconstruction sont affichées.
Le code est visible afin de reproduire l’exemple avec une autre photo.
Comme indiquée, l’image prise ici est simplement ma photo disponible sur la page contact. Sa taille est non négligeable (14.1 Mb).
Pour compresser cette image, nous allons découper celle-ci dans les trois composantes classiques d’une image : rouge, vert et bleu. Chaque pixel est représenté par une triplet de valeurs entre 0 et 1, représentant la quantité de chaque couleur de base à afficher. Il est donc possible de représenter ces trois composantes d’une image séparément, tel que ci-dessous.
La compression va utiliser une ACP sur chaque composante. Pour cela, nous calculons les valeurs de l’ACP pour chacune. Lorsque nous utilisons uniquement 1 axe, l’image reconstruite est bien évidemment assez loin de l’image de départ.
Avec 3 axes, on se rapproche , au moins de l’idée générale de l’image de base.
Avec 20 axes, l’image est clairement reconnaissable, avec une taille trés raisonnable par rapport é la taille initiale.
Bien évidemment, plus on ajoute d’axes, plus on se rapproche de l’image originale.