Égalisation d'histogramme

En traitement d'images, l'égalisation d'histogramme est une méthode d'ajustement du contraste d'une image numérique qui utilise l'histogramme. Elle consiste à appliquer une transformation sur chaque pixel de l'image, et donc d'obtenir une nouvelle image à partir d'une opération indépendante sur chacun des pixels. Cette transformation est construite à partir de l'histogramme cumulé de l'image de départ.

L'égalisation d'histogramme permet de mieux répartir les intensités sur l'ensemble de la plage de valeurs possibles, en « étalant » l'histogramme. L'égalisation est intéressante pour les images dont la totalité, ou seulement une partie, est de faible contraste (l'ensemble des pixels sont d'intensité proches). La méthode est rapide, facile d'implémentation, et complètement automatique (i.e. pas de réglages)[1].

Méthode

modifier
 
La transformation T permet d'égaliser l'histogramme et d'améliorer le contraste.

La méthode consiste à appliquer une transformation T indépendamment sur chaque pixel de l'image. Cette transformation est construite à partir de l'histogramme cumulé.

Pour une image {x} en niveaux de gris codée sur   niveaux, on définit nk le nombre d'occurrences du niveau xk. La probabilité d'occurrence d'un pixel de niveau xk dans l'image est:

 

avec n le nombre total de pixels de l'image, et px l'histogramme normalisé sur [0,1].

La transformation T qui à chaque pixel de valeur xk de l'image d'origine associe une nouvelle valeur sk,   est alors définie par[1]

  , où   est l'histogramme cumulé.

que l'on peut écrire aussi:

 

Justification théorique

modifier

Il est possible de donner une justification théorique à l'égalisation d'histogramme si on se place dans le cas continu. Pour une image {x} en niveaux de gris codée sur   niveaux, les intensités des pixels de l'image sont vues comme des variables aléatoires dans  . On considère les densités de probabilités   et   de   et   et la transformation T telle que   avec   continue, différentiable et strictement croissante. On a alors:

 

En choisissant   comme la fonction de répartition de la variable aléatoire x:

 

alors on peut montrer[2] que la densité de probabilité de   est uniforme et égale à

 .

L'application de la transformation   permet donc de transformer la densité de probabilité d'origine en une loi uniforme, ce qui est le but recherché dans l'égalisation d'histogramme, puisque tous les niveaux seraient utilisés, et avec une égale probabilité. Toutefois, en pratique, c'est-à-dire avec des histogrammes discrets, il est rare d'obtenir des histogrammes plats, mais la méthode permet de mieux répartir les intensités sur l'ensemble de la plage de valeurs[1].

Images couleurs

modifier

Pour les images couleurs, il faut étendre la méthode d'égalisation en niveau de gris aux 3 composantes de couleur (ex. RVB). Il est possible de faire une égalisation indépendamment sur chaque composante, toutefois ceci dégrade les couleurs, et n'est donc pas utilisé en pratique[3]. La méthode utilisée est de réaliser l'égalisation uniquement sur les intensités, sans toucher aux couleurs. Ceci est fait en général dans l'espace colorimétrique HSV, où l'égalisation est réalisée sur la composante V uniquement[3].

Exemple

modifier
 
image originale
 
Son histogramme (rouge) et l'histogramme cumulé (noir)
 
L'image après égalisation d'histogramme
 
L'histogramme (rouge) et l'histogramme cumulé (noir) après égalisation

Bibliographie

modifier
  • Acharya and Ray, Image Processing: Principles and Applications, Wiley-Interscience 2005 (ISBN 0-471-71998-6)
  • Russ, The Image Processing Handbook: Fourth Edition, CRC 2002 (ISBN 0-8493-2532-3)
  • (en) Rafael C. Gonzalez et Richard E. Woods, Digital Image Processing, Pearson Prentice Hall,

Notes et références

modifier
  1. a b et c Gonzalez, Woods (2008), Intensity Transformations and Spatial Filtering p. 127
  2. Gonzalez, Woods (2008), Intensity Transformations and Spatial Filtering p. 123-124
  3. a et b Gonzalez, Woods (2008), Color Image Processing p. 438