Thomas Benseghir & Lydie Luengo Master 2 Mathématiques, spécialité Automatique Année Universitaire 2010-2011 PROJET M2 : DEBRUITAGE D'IMAGE PAR METHODES VARIATIONNELLES 1. Introduction ................................................................................................................................3 2. Les différents Algorithme ............................................................................................................3 2.1. Chambolle ...........................................................................................................................3 2.1.1. Principe .......................................................................................................................3 2.1.2. Algorithme ...................................................................................................................3 2.1.3. Critère d’arrêt ..............................................................................................................4 2.1.4. Résultat numérique .....................................................................................................5 2.2. Nesterov..............................................................................................................................6 2.2.1. Principe .......................................................................................................................6 2.2.2. Algorithme ...................................................................................................................6 2.2.3. Résultats numériques ..................................................................................................7 2.3. Passage à l’ordre 2...............................................................................................................7 2.3.1. Chambolle ordre2 ........................................................................................................7 2.3.2. Nesterov 2 ................................................................................................................ 10 3. Rapidité de convergence ........................................................................................................... 10 4. Passage image couleur .............................................................................................................. 13 4.1. 4.2. Preuve ........................................................................................................................... 13 Test numérique ................................................................................................................. 14 Bibliographie .................................................................................................................................... 15 1. Introduction Le débruitage d’une image est un problème essentiel en traitements d’images. Effectivement il arrive continuellement que lors d’une capture d’image des phénomènes comme le bruit, le flou, la mauvaise qualité … apparaissent. Le modèle que nous allons présenter ici à pour but d’atténuer le bruit pour se rapprocher d’une image plus authentique. Notre projet est basé sur le modèle ROF2 (de Loïc Piffet). C’est un modèle variationnel de débruitage d’ordre deux qui s’appui sur le modèle de Rudin, Osher et Fatemi (ROF). ROF2 a pour objectif de diminuer le starcaising que déclenche ROF sur les images. Nous pourrons remarquer cependant qu’après son application grâce à l’algorithme de Nesterov notre résultat est flou. 2. Les différents Algorithme 2.1. Chambolle 2.1.1. Principe Dans le modèle de ROF (Rudin,Osher et Fatemi ) une image se décompose en deux parties la partie qui correspond au bruit et la partie dite "régulière" noté . Le but sera alors de minimiser le bruit à l'aide de la variation total d'ordre 1. On se placera alors avec et gradient de . Où sera un espace euclidien de avec M et N le nombre de lignes et de colonnes de notre images. L’algorithme de Chambolle (Chambolle, 2004) permet de minimiser une énergie définit comme suit : (1.1) Avec : notre image de taille , u l’image projetée, la variation total d’ordre 1. l’espace euclidien et 2.1.2. Algorithme La solution de (1.1) est donnée par : Avec : le projecteur orthogonal sur minimisation suivant : c'est à dire Qui se résout grâce aux algorithmes ci après : Chambolle sans le max : est solution du problème de Chambolle avec le max : 2.1.3. Critère d’arrêt Nous avons tout d’abord pris le critère d’arrêt de (Chambolle, 2004). Qui précise qu’entre la solution finale Avec et la solution à l’instant on a : le produit scalaire Par linéarité de la divergence On sait de plus que ie : est l’opérateur adjoint de avec Par linéarité du gradient De la même manière que dans (Chambolle, 2004) on cherche à trouver un critère d’arrêt en majorant pour cela nous inversons les signes. Or on sait que et donc ici on a on a avec ce qui revient à On peut alors écrire : En changeant à nouveau de signe on obtient alors notre critère d’arrêt : . 2.1.4. Résultat numérique Les tests ont été effectués sur une image bruitée avec un bruit gaussien . Nous avons utilisé les algorithmes précédent avec un et nous obtenons des résultats similaire. Néanmoins l’image est touchée par un phénomène de starcaising(on observe que l’image est constante par morceau ). (en haut image bruité,à gauche Chambolle sans le max et à gauche Chambolle avec le max ) 2.2. Nesterov 2.2.1. Principe Le Principe est le même que dans Chambolle on essaye de minimiser l’énergie définit par ROF qui est la suivante : (2.2.1) Avec : notre image de taille , u l’image projetée, la variation total d’ordre 1. l’espace euclidien et 2.2.2. Algorithme Pour trouver la solution au problème (2.2.1) nous cherchons à résoudre : avec : (fonction L-Lipschitz différentiable), (fonction convexe que nous prendrons égale à la fonction indicatrice d’un ensemble convexe K) et est un espace vectoriel de dimension finie. Qui se solutionne à l’aide de l’algorithme suivant : Entrée : nombre d’itération N, Sortie : (une estimée de la solution ) 8 (la constante de Lipschitz ) Pour k allant de 0 à N-1 Fin . 2.2.3. Résultats numériques De la même façon que pour Chambolle les tests ont été effectués sur une image bruitée avec un bruit gaussien avec en paramètre de l’algorithme et nous observons des résultats similaire à Chambolle. (à gauche l’image bruité et à droite l’image débruité par Nestrov d’ordre1) Pour Nesterov nous n’avons pas travaillé sur le critère d’arrêt et nous avons voulu vérifier dans un premier temps la rapidité de convergence des trois algorithmes précédents. 2.3. Passage à l’ordre 2 2.3.1. Chambolle ordre2 2.3.1.1. Principe ROF2 repose sur le même principe que le premier ordre et devrait permettre de supprimer le staircasing en prenant la variation totale de ses dérivées. ROF2 tente de minimiser une énergie d’ordre 2 : (2.3.1) Avec : notre image de taille , u l’image projetée, la variation total d’ordre 2. l’espace euclidien et 2.3.1.2. Algorithme La solution de (2.3.1)est donnée par : Avec : la Hessienne adjointe de (« divergence seconde ») et sur c'est à dire est solution du problème de point fixe : 2.3.1.3. le projecteur orthogonal Critère d’arrêt Comme à l’ordre 1 nous avons dans un premier temps calculé un critère d’arrêt. De la même manière que précédemment nous observons entre la solution finale et la solution à l’instant une erreur que l’on cherche à majorer. Avec le produit scalaire Par linéarité de la divergence seconde On sait de plus que ie : est l’opérateur adjoint de avec Par linéarité de la Hessienne Or on sait que et donc on a on a . avec On peut alors écrire : L’inégalité se simplifie et on obtient alors notre critère d’arrêt : du problème 2.3.1.4. Résultat numérique Les tests ont été effectués sur une image bruitée avec un bruit gaussien . L’algorithme à été exécuter avec . Les résultats ont certes supprimé le starcaising mais on voit alors apparaitre un léger flou sur l’image. (en haut image bruité,à gauche Chambolle sans le max et à gauche Chambolle avec le max ) 2.3.2. Nesterov 2 L’algorithme de Nesterov peut lui aussi être adapté à l’ordre 2. Dans ce cas, on obtient le problème ROF2 réécrit : avec : (fonction L-Lipschitz différentiable), (fonction convexe que nous prendrons égale à la fonction indicatrice d’un ensemble convexe K) et est un espace vectoriel de dimension finie. Qui se solutionne à l’aide de l’algorithme suivant : Entrée : nombre d’itération N, Sortie : . (une estimée de la solution ) 64 (la constante de Lipschitz) Pour k allant de 0 à N-1 Fin 3. Rapidité de convergence Pour connaitre la rapidité de nos algorithmes nous avons voulu comparer leur énergie à chaque itération. Nous avons appliqué à notre image bruitée ( les trois algorithmes (Chambolle avec max ,Chambolle sans max et Nesterov ) , en affichant à chaque itération l’énergie ( pour l’ordre 1 et pour l’ordre 2 ). Les résultats ont permis de conclure que Nesterov convergé plus rapidement (voir courbe ci-dessous) à l’ordre 1 comme à l’ordre 2. Image bruitée Nous avons ensuite voulu comparer les temps d’exécution de nos programmes pour savoir le quel était le plus couteux en temps de calcul. Le bilan de notre expérience à permis de confirmer que Nesterov est supérieur par rapport aux deux autres algorithmes. 4. Passage image couleur 4.1. Preuve Pour les images couleur chaque pixel correspond à trois valeurs numériques. Nous utiliserons ici le système RGB (de l’anglais red green blue). Une image se décompose donc comme une somme de trois images (rouge, vert et bleu). En nous inspirant de (Vincent Duval, 2010) nous avons pu appliquer nos algorithmes aux images couleur. Le produit scalaire d’une image par elle-même est donc définit comme la somme du produit scalaire de chaque composante de couleur. Avec : u notre image, le canal rouge de notre image, canal bleu de notre image . le canal vert de notre image , le On peut sous le même principe définir le produit scalaire entre deux images. On décrire alors le gradient comme la somme des gradients RGB. )+ ) On démontre ainsi que la divergence couleur est ) car : On peut démonter de même l’ordre 2. Ainsi la Hessienne correspond à la somme des Hessiennes de chaque canal puisque la Hessienne est le gradient du gradient de notre image. On en déduit facilement que la divergence couleur à l’ordre 2 est : Il suffit maintenant d’appliquer nos algorithmes en faisant la somme de tous les canaux. 4.2. Test numérique (En haut image bruitée ( , à gauche ordre 1 et à droite ordre 2 ) On observe comme pour les images en niveau de gris du starcaising pour l’ordre1 et un effet de flou pour l’ordre 2. (Il faudrait cependant tester canal par canal nos algorithmes pour voir le temps de convergence) Bibliographie Chambolle, A. (2004). An algorithm for total variation minimization an applications. Journal of Mathematical Imaging an Vision , 20 89-97. Piffet, L. (2010). Décomposition d'image par modèles variationnels-Débruitage et extraction de texture. Vincent Duval, J.-F. A. (2010). Mathematical Modeling of Textures: Application to Color Image Decomposition with a Projected Gradient Algorithm. Journal of Mathematical Imaging and Vision . Weiss, P.-F. (2009). Efficient schemes for total variation minimization under constraints in image processing. SIAM Journal on Scientific Computiing , to appear.