Traitement ponctuel des images numériques
Dans cette page, nous nous intéressons plus particulièrement aux traitements ponctuels appliqués aux images numériques. Ces traitements consistent à effectuer, pour chaque pixel de l'image, une correction individuelle qui ne dépend que de la valeur du pixel lui-même, et non de celles de ses voisins. Autrement dit, la transformation appliquée à un pixel est entièrement déterminée par son niveau de gris initial, sans tenir compte du contexte spatial dans lequel il se trouve.
On regroupe dans cette catégorie un ensemble d'opérations fondamentales, telles que les fonctions de recadrage de la dynamique, l'égalisation des niveaux de gris, la binarisation, ou encore d'autres transformations simples visant à modifier l'apparence globale de l'image. Ces traitements constituent généralement une étape préalable essentielle dans une chaîne de traitement d'images plus complexe, car ils permettent d'ajuster efficacement la luminosité, d'améliorer le contraste et de rendre certaines informations plus visibles ou plus exploitables pour les étapes suivantes.
Sauf indication contraire, nous considérerons dans ce cadre des images numériques de dimensions N1 × N2 pixels, dont les intensités sont codées sur 256 niveaux de gris distincts, ce qui correspond à une quantification sur 8 bits par pixel. Ce type de codage est le plus couramment utilisé en pratique, car il offre un compromis satisfaisant entre qualité visuelle, simplicité de traitement et coût d'entreposage. Les méthodes de traitement ponctuel présentées peuvent toutefois être généralisées à d'autres profondeurs de quantification ou à des images couleur, en adaptant les principes exposés à chaque canal d'intensité.
Recadrage de dynamique et amélioration du contraste
Le recadrage de dynamique, également appelé amélioration du contraste, constitue une transformation fondamentale dans le traitement des images numériques. Son objectif principal est de modifier la dynamique des niveaux de gris d'une image afin d'optimiser sa lisibilité et d'améliorer son aspect visuel global. Cette opération agit sur chaque pixel individuellement : à chaque niveau de gris ∫ d'un pixel dans l'image originale correspond un nouveau niveau t(∫) dans l'image transformée. Ainsi, le traitement appliqué à un pixel dépend uniquement de sa valeur initiale, sans tenir compte des valeurs des pixels voisins ni du contexte spatial de l'image.
La transformation t(∫) peut être effectuée en temps réel, directement sur l'image au moment de son acquisition, grâce à l'utilisation d'une table de transcodage (ou table de correspondance), associant à chaque niveau de gris initial une nouvelle valeur modifiée. Ce type de transformation est particulièrement efficace pour accentuer le contraste, corriger des images trop sombres ou trop claires, et permettre à l'oil humain ou à des algorithmes d'analyse d'identifier plus facilement les détails présents dans l'image.
Les transformations de base s'appuient souvent sur l'histogramme de l'image, constituant un outil statistique essentiel pour décrire la répartition des niveaux de gris.
Définition (Histogramme d'une image)
L'histogramme d'une image numérique correspond à la représentation de la distribution des niveaux de gris des pixels de l'image. Il s'agit d'une fonction discrète définie par :
| ∀p∈{0,1,...,255}, hp=Nombre de pixels ayant p pour niveau de gris. |
Autrement dit, pour chaque niveau de gris possible p, l'histogramme indique combien de pixels de l'image possèdent exactement cette intensité.
On peut également définir une version "continue" de l'histogramme, notée h(p), en procédant à une interpolation des valeurs discrètes hp. Cette interpolation peut être linéaire par morceaux ou utiliser d'autres techniques d'ajustement, de sorte que l'on obtienne :
| ∀p∈{0,1,...,255}, h(p)=hp |
L'histogramme fournit ainsi une indication précieuse sur la dynamique de l'image, c'est-à-dire sur la répartition des intensités lumineuses dans l'ensemble des pixels. Il permet de visualiser si l'image est globalement trop sombre, trop claire ou mal contrastée, mais il est important de noter que l'histogramme n'est en aucun cas une caractéristique intrinsèque de l'image elle-même. Il s'agit uniquement d'un outil d'analyse statistique, utile pour guider les transformations de recadrage de dynamique et améliorer la qualité perceptuelle ou l'efficacité des traitements automatiques.
Transformation de recadrage
On considère une image numérique dont l'histogramme des niveaux de gris est principalement concentré dans un intervalle restreint [a,b]. Les valeurs a et b correspondent respectivement aux niveaux de gris minimum et maximum effectivement présents dans l'image originale. En dehors de cet intervalle, les niveaux de gris sont absents ou très peu représentés, ce qui se traduit généralement par une image peu contrastée, manquant de nuances et de détails visibles.
Le recadrage de dynamique a pour objectif de réétaler cet intervalle réduite de niveaux de gris afin d'exploiter toute la dynamique disponible, c'est-à-dire l'intervalle complet [0,255] pour une image codée sur 8 bits. Cette opération permet d'améliorer sensiblement le contraste global de l'image en accentuant les différences entre les zones claires et sombres, tout en conservant la structure relative des niveaux de gris.
Mathématiquement, la transformation de recadrage correspond à une application affine, appliquée indépendamment à chaque pixel. À un niveau de gris initial f est associé un nouveau niveau de gris t(f), défini de la manière suivante :
|
t(f)={0 si f < a, (255/b-a)) (f-a) si a ≤ f ≤ b, 255 si f > b. |
Cette transformation agit en trois étapes :
- les niveaux de gris inférieurs à a sont saturés à 0, correspondant au noir,
- les niveaux compris entre a et b sont étirés linéairement sur tout l'intervalle disponible,
- les niveaux supérieurs à b sont saturés à 255, correspondant au blanc.
Le résultat obtenu est une image dont l'histogramme est réparti sur l'ensemble de la dynamique possible, ce qui améliore la perception visuelle des détails et facilite les traitements ultérieurs, tels que la segmentation ou la détection de contours.
Variantes pour le rehaussement des contrastes
Il existe plusieurs variantes de transformation de recadrage, destinées à accentuer le contraste uniquement dans un intervalle spécifique de niveaux de gris, plutôt que sur l'ensemble de la dynamique. Ces corrections sont particulièrement utiles lorsque l'information pertinente de l'image se situe dans une région d'intensité bien définie.
Un exemple de transformation de rehaussement de contraste peut être défini par la fonction suivante :
|
t(f)={(b/a) f pour 0 ≤ f ≤ a, ((255-b)/(255-a))(f-a)+b pour a ≤ f ≤ 255. |
Dans ce type de transformation, l'intervalle de niveaux [0,a] et l'intervalle [a,255] sont modifiées de manière différente, ce qui permet de favoriser certaines intensités au détriment d'autres. En ajustant convenablement les paramètres a et b, il est possible de mettre en valeur des structures spécifiques, par exemple des zones faiblement contrastées ou des détails peu visibles dans l'image originale.
Ces méthodes de rehaussement constituent des outils simples mais très efficaces du traitement ponctuel, souvent utilisés comme prétraitement avant des opérations plus avancées de filtrage, de segmentation ou d'analyse d'images.
Égalisation de l'histogramme
Dans une image numérique réelle, l'histogramme des niveaux de gris est très rarement uniforme ou plat. Cette non-uniformité traduit une entropie inférieure à son maximum, ce qui signifie que certaines valeurs de niveaux de gris sont surreprésentées tandis que d'autres sont peu ou pas utilisées. Une telle répartition conduit souvent à une image présentant un contraste insuffisant, avec des zones sombres ou claires mal différenciées.
L'égalisation de l'histogramme est une transformation ponctuelle conçue précisément pour remédier à ce problème. Son principe consiste à construire une fonction de transformation telle que l'histogramme de l'image transformée soit aussi proche que possible d'un histogramme plat, c'est-à-dire d'une distribution uniforme des niveaux de gris. Cette opération permet d'améliorer significativement le contraste global et d'augmenter artificiellement la clarté visuelle de l'image, en redistribuant plus efficacement les intensités relatives sur l'ensemble de la dynamique disponible.
Considérons une image dont l'histogramme continu est représenté par la relation :
| f ↔ h(f), |
où h(f) décrit la densité de pixels associée à chaque niveau de gris f. On note f'=t(f) le niveau de gris obtenu après transformation. L'histogramme de l'image égalisée est alors noté :
| f' ↔ h'(f'), |
et doit se rapprocher autant que possible de la forme idéale uniforme, dans laquelle toutes les intensités sont équitablement représentées.
Le principe fondamental de l'égalisation repose sur la conservation du nombre de pixels. Deux surfaces élémentaires correspondant à des intervalles de niveaux de gris dans les histogrammes initial et égalisé doivent contenir le même nombre de points. Cette contrainte permet d'établir une relation directe entre les niveaux de gris avant et après transformation. On peut ainsi écrire la fonction de transformation sous la forme suivante :
| f'=t(f)=255/N ∫0f h(s) ds, |
où N désigne le nombre total de pixels de l'image. Le terme h(s)/N correspond à l'histogramme normalisé, dont les valeurs sont comprises entre 0 et 1 et peuvent être interprétées comme une densité de probabilité des niveaux de gris.
En pratique, les images numériques étant discrètes, l'intégrale continue est remplacée par une somme discrète. On obtient alors la transformation d'égalisation discrète suivante :
| f'=t(f)=255/N ∑fi=0 hi, |
où hi représente le nombre de pixels ayant le niveau de gris i. Cette expression correspond à la fonction de répartition cumulée de l'histogramme, mise à l'échelle sur l'intervalle [0,255].
L'égalisation de l'histogramme constitue ainsi un outil puissant et largement utilisé en traitement ponctuel des images, notamment comme étape de prétraitement avant des opérations plus complexes telles que la segmentation, la détection de contours ou l'analyse automatique des images. Bien qu'elle puisse parfois accentuer le bruit ou produire un rendu visuel artificiel, elle reste une méthode simple et efficace pour exploiter pleinement la dynamique des niveaux de gris disponibles.
Binarisation et seuillage
L'objectif principal de la binarisation d'une image numérique est de simplifier l'information visuelle en ne conservant que les éléments jugés pertinents, tout en éliminant ou en ignorant le reste de l'image. Cette opération consiste à attribuer un niveau de gris uniforme aux pixels correspondant aux objets d'intérêt, et un autre niveau aux pixels considérés comme non pertinents, ce qui permet d'obtenir une image beaucoup plus simple à analyser. En pratique, la binarisation transforme une image en niveaux de gris en une image composée uniquement de deux valeurs possibles, généralement le noir et le blanc.
La méthode la plus courante pour réaliser cette opération est le seuillage. Elle consiste à comparer la valeur de chaque pixel à un seuil S prédéfini. Les pixels dont le niveau de gris est supérieur ou égal à ce seuil se voient attribuer la valeur maximale, généralement 255 (blanc), tandis que tous les autres pixels reçoivent la valeur minimale, 0 (noir). Ce traitement ponctuel est appliqué indépendamment à chaque pixel et ne dépend que de son intensité, sans tenir compte de son voisinage immédiat.
Il est également possible d'adopter une approche plus sélective et plus fine du seuillage, en définissant une fenêtre d'intensité [a,b]. Dans ce cas, seuls les pixels dont le niveau de gris appartient à cet intervalle sont conservés et affichés dans l'image binaire, tandis que les autres sont systématiquement supprimés ou ramenés à une valeur nulle. Cette transformation permet ainsi de visualiser uniquement les zones de l'image dont l'intensité se situe dans une plage bien déterminée, ce qui est particulièrement utile lorsque les objets recherchés possèdent des caractéristiques radiométriques spécifiques.
Sous réserve de disposer d'une connaissance a priori de la distribution des niveaux de gris associée aux différents objets présents dans l'image originale, le seuillage par fenêtre d'intensité constitue un outil efficace de segmentation. Il permet d'extraire des structures ou des objets particuliers, tels que des régions lumineuses, sombres ou contrastées, en les isolant du fond de l'image. Cette technique est fréquemment utilisée comme première étape dans des chaînes de traitement plus complexes.
Le choix de la valeur du seuil représente cependant le point le plus critique de la binarisation. Un seuil mal choisi peut conduire à la perte d'informations importantes ou, au contraire, à l'inclusion de nombreux pixels indésirables. Pour pallier cette difficulté, il existe de nombreuses méthodes automatiques et statistiques permettant de déterminer le seuil de manière optimale. Ces méthodes peuvent s'appuyer sur l'analyse de l'histogramme, sur des critères locaux prenant en compte le voisinage des pixels, ou encore sur des paramètres statistiques tels que la moyenne, la variance ou des mesures d'homogénéité. Bien que ces approches soient largement étudiées en traitement d'images, nous ne les détaillerons pas ici.