Optimisation de la compression d’images
par décomposition en valeurs singulières (SVD)
Prénom NOM
MPSI – Lycée XXXXX
TIPE 2026-2027
18 mars 2026
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 1 / 21
Plan de la présentation
1 Introduction
2 Outils mathématiques
3 Compression par troncature
4 Optimisation du rang de troncature
5 Implémentation et résultats
6 Conclusion
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 2 / 21
Contexte : le problème du stockage des images
Données massives : 1,2 trillion de photos prises en 2024
Question centrale
Comment trouver le compromis optimal entre taille du fichier et qualité visuelle ?
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 3 / 21
Contexte : le problème du stockage des images
Données massives : 1,2 trillion de photos prises en 2024
Applications critiques :
Imagerie médicale (IRM, scanner)
Images satellites
Streaming vidéo (Netflix, YouTube)
Question centrale
Comment trouver le compromis optimal entre taille du fichier et qualité visuelle ?
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 3 / 21
Contexte : le problème du stockage des images
Données massives : 1,2 trillion de photos prises en 2024
Applications critiques :
Imagerie médicale (IRM, scanner)
Images satellites
Streaming vidéo (Netflix, YouTube)
Problème : stockage et transmission coûteux
Question centrale
Comment trouver le compromis optimal entre taille du fichier et qualité visuelle ?
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 3 / 21
Contexte : le problème du stockage des images
Données massives : 1,2 trillion de photos prises en 2024
Applications critiques :
Imagerie médicale (IRM, scanner)
Images satellites
Streaming vidéo (Netflix, YouTube)
Problème : stockage et transmission coûteux
Solution : compression d’images
Question centrale
Comment trouver le compromis optimal entre taille du fichier et qualité visuelle ?
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 3 / 21
Lien avec le thème : Optimisation, efficacité, sobriété
Optimisation Efficacité Sobriété
Image Image Image
Recherche du rang optimal Qualité maximale Stockage minimal
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 4 / 21
Rappels : matrices et valeurs propres
Définition
Une matrice A ∈ Mm,n (R) est un tableau de nombres.
Vecteurs propres et valeurs propres
Pour une matrice carrée M , on a :
M v = λv
où λ est une valeur propre et v un vecteur propre.
Polynôme caractéristique
PM (λ) = det(M − λIn )
Les racines de PM sont les valeurs propres de M .
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 5 / 21
La décomposition en valeurs singulières (SVD)
Théorème (SVD)
Toute matrice A ∈ Mm,n (R) peut s’écrire :
A = U ΣV T
où :
U ∈ Mm,m : matrice orthogonale
V ∈ Mn,n : matrice orthogonale
Σ : matrice diagonale contenant les valeurs singulières
σ1 ≥ σ2 ≥ ... ≥ σr > 0
Lien avec les valeurs propres
Les σi2 sont les valeurs propres de AT A (et AAT ).
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 6 / 21
Visualisation de la SVD
A = U Σ VT
m×n m×m m×n n×n
Les colonnes de U : modes de l’image
Les colonnes de V : coordonnées des modes
Les σi : importance de chaque mode
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 7 / 21
Principe de la compression SVD
On ne garde que les k plus grandes valeurs singulières
Ak = Uk Σk VkT
Uk Σk VkT
m×k k×k k×n
Taux de compression
Avant : m × n coefficients
Après : m × k + k + k × n = k(m + n + 1) coefficients
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 8 / 21
Mesure de l’erreur : norme de Frobenius
Définition (Norme de Frobenius)
v
um X
n
uX
∥A∥F = t |aij |2
i=1 j=1
Théorème (Erreur de troncature)
L’erreur commise en remplaçant A par Ak est :
r
X
∥A − Ak ∥2F = σi2
i=k+1
C’est une formule exacte !
L’erreur est la somme des carrés des valeurs singulières négligées
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 9 / 21
Visualisation des valeurs singulières
Image
Les premières valeurs singulières sont très grandes
Elles concentrent l’essentiel de l’information
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 10 / 21
Fonction de coût à minimiser
On cherche à minimiser :
r
X
F (k) = σi2 +λ · k(m + n + 1)
| {z }
i=k+1
| {z } taille compressée
erreur
λ : paramètre qui équilibre erreur et taille
λ grand → on privilégie la compression
λ petit → on privilégie la qualité
Problème d’optimisation discrète
Trouver k ∗ = arg min1≤k≤r F (k)
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 11 / 21
Méthode de résolution
1 Calculer toutes les valeurs singulières σi
Image
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 12 / 21
Méthode de résolution
1 Calculer toutes les valeurs singulières σi
2 Calculer F (k) pour k = 1, 2, ..., r
Image
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 12 / 21
Méthode de résolution
1 Calculer toutes les valeurs singulières σi
2 Calculer F (k) pour k = 1, 2, ..., r
3 Trouver le k qui minimise F (k)
Image
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 12 / 21
Code Python : calcul de la SVD
import numpy as np
import matplotlib . pyplot as plt
from skimage import data , color
# Charger une image
image = color . rgb2gray ( data . camera () )
A = np . array ( image )
# Calculer la SVD
U , s , Vt = np . linalg . svd (A , full_matrices = False )
# s contient les valeurs singulieres
print ( f " Valeurs ␣ singulieres ␣ : ␣ { s [:10]} " )
# Calcul de l ’ erreur pour chaque k
erreurs = [ np . sum ( s [ k :]**2) for k in range ( len ( s ) ) ]
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 13 / 21
Code Python : recherche du rang optimal
m , n = A . shape
lambd = 0.1 # parametre d ’ equilibrage
# Calcul de F ( k )
F = []
for k in range (1 , len ( s ) ) :
erreur = np . sum ( s [ k :]**2)
taille = k * ( m + n + 1)
F . append ( erreur + lambd * taille )
# Trouver le k optimal
k_opt = np . argmin ( F ) + 1
print ( f " Rang ␣ optimal ␣ : ␣ { k_opt } " )
# Reconst ruction avec k_opt
A_opt = U [: , : k_opt ] @ np . diag ( s [: k_opt ]) @ Vt [: k_opt , :]
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 14 / 21
Résultats sur l’image "camera"
Image Image
(b) Compressée
(a) Originale k = 50
k = 512 Gain : 90%
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 15 / 21
Analyse des résultats
Rang k Taille (Ko) Erreur Gain
512 (original) 256 0 0%
100 50 0.02 80%
50 25 0.05 90%
20 10 0.15 96%
10 5 0.30 98%
k = 50 : excellent compromis (90% de gain, erreur faible)
k = 20 : très fort gain mais image dégradée
Le rang optimal dépend de λ
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 16 / 21
Retour sur la problématique
Problématique
"Comment déterminer le rang de troncature optimal dans la compression SVD
d’une image pour minimiser à la fois l’erreur de reconstruction et la taille du
fichier compressé ?"
Pr
Solution : minimiser F (k) = i=k+1 σi2 + λ · k(m + n + 1)
Méthode : calcul des valeurs singulières, puis recherche du minimum
Résultat : compromis optimal trouvé pour k ≈ 50 (selon l’image)
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 17 / 21
Lien avec le thème
Optimisation Efficacité Sobriété
Recherche systématique du Maximisation de la qualité Minimisation de l’espace
meilleur k par minimisation visuelle pour une taille de stockage et de l’énergie
d’une fonction de coût donnée de transmission
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 18 / 21
Limites et perspectives
Limites :
Images couleur (3 matrices)
Temps de calcul (SVD coûteuse pour grandes images)
Choix subjectif de λ
Perspectives :
Adaptation aux vidéos (compression temporelle)
Deep learning : compression des poids de réseaux de neurones
Compression temps réel pour satellites
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 19 / 21
Pour aller plus loin
Strang, G. (2016). Introduction to Linear Algebra. Wellesley-Cambridge Press.
Trefethen, L.N. & Bau, D. (1997). Numerical Linear Algebra. SIAM.
Brunton, S.L. & Kutz, J.N. (2019). Data-Driven Science and Engineering.
Cambridge University Press.
Code source disponible sur GitHub
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 20 / 21
Merci de votre attention
Questions ?
Prénom NOM – MPSI – pré[Link]@[Link]
Prénom NOM (MPSI – Lycée XXXXX TIPE 2026-2027)
Compression d’images par SVD 18 mars 2026 21 / 21