• Aucun résultat trouvé

1.3 Nouvelles technologies d’imagerie microscopique et de traitement d’images 12

2.1.2 Les descripteurs de texture

Dans cette partie, nous allons nous attacher à décrire la notion de texture et à passer en revue différents descripteurs qui peuvent la caractériser. Nous verrons ensuite comment ces caractéristiques ont été utilisées, dans quelques cas de la littérature, pour réaliser une segmentation.

Classiquement, le schéma d’analyse d’une texture est le suivant : dans le voisinage d’un pixel, des propriétés particulières de l’image sont mesurées ou estimées. À partir du vec-teur de descripvec-teurs ainsi attaché à chaque pixel, une classification est réalisée (par k-means, k-plus proches voisins, SVM, réseau neuromimétique, classifieurs bayésiens, etc.). Elle peut être non-supervisée ou supervisée. Dans ce cas, le vecteur de descripteurs au point considéré est comparé aux vecteurs des classes de référence à l’aide d’une mesure de distance ad hoc (distance euclidienne, de Mahalanobis, de Bhattacharya, fonction de vraisemblance, etc.) et le pixel est affecté à la classe la plus proche. Dans le cas de vec-teurs de grande dimension, il peut être intéressant de réduire la dimension de l’espace (par une analyse en composantes principales par exemple) pour éviter d’avoir à estimer des probabilités faibles.

2.1.2.1 Qu’est ce qu’une texture ?

Chaque article ou livre traitant de la texture commence par une définition de ce concept. Jusqu’à présent, aucune définition universelle n’a pu être proposée. La texture se manifeste par une information visuelle et se décrit par des termes linguistiques qualificatifs comme la finesse, la granularité, la rugosité, le contraste, etc. L’information visuelle pourra être modifiée par l’éclairage, la distance d’observation, les ombres, etc. Unser [Unser, 1984] en a proposé la définition suivante : « Une texture est une région d’une image pour laquelle il existe une dimension réduite, telle qu’une observation au travers de celle-ci se traduise par une impression visuelle identique pour toutes les positions envisageables par translation à l’intérieur de la région considérée ». Cette définition met en avant trois notions importantes que sont la perception, la notion d’échelle et la stationnarité. À partir de ces notions, les textures sont souvent classées en deux ou trois catégories selon les auteurs [Mavromatis, 2001] : les textures structurelles, les textures aléatoires et les textures directionnelles. Les textures structurelles sont définies comme la répétition de motifs élémentaires (tex-tons) dont la répartition spatiale suit des règles de direction et de placement [Julesz, 1981]. L’analyse de ces textures consiste à déterminer l’élément structurant de base et les règles le régissant.

Dans les textures aléatoires, il n’est pas possible de déterminer un motif de base. L’ar-rangement et l’intensité des pixels évoluent selon une loi stochastique. L’analyse de ces textures consistera à déterminer les lois du processus générateur.

Les textures directionnelles ne présentent pas d’élément structurant de base et ne sont pas totalement aléatoires mais sont caractérisées principalement par certaines orientations.

Il existe différentes approches pour analyser les textures correspondant à ces multiples définitions. Certains auteurs les classent en trois catégories [Boukerroui, 2000, Dombre, 2003], mais la plupart des auteurs les ont classées en quatre catégories selon le type de descripteur utilisé [Tüceryan et Jain, 1998, D’Hondt, 2006, Xie, 2008] :

– les descripteurs géométriques caractérisant les primitives de la texture, – les descripteurs décrivant la texture par un modèle,

– les descripteurs basés sur l’application d’un filtre.

Dans ce qui suit, nous décrirons brièvement, sans souci d’exhaustivité, ces approches. Certaines méthodes, faisant partie de plusieurs catégories, ont été arbitrairement placées dans celle qui les décrivait le mieux.

2.1.2.2 Descripteurs statistiques

Les méthodes statistiques évaluent la distribution spatiale des pixels. Elles utilisent des statistiques du premier ordre, tout comme des statistiques d’ordre supérieur. Nous allons passer en revue les mesures les plus courantes :

Histogramme des niveaux de gris : Différents descripteurs simples peuvent être cal-culés à partir de l’histogramme des niveaux de gris de l’image : la moyenne (classique, géométrique, harmonique ou quadratique), la médiane, la variance. Le minimum, le maxi-mum, la valeur milieu et la dynamique d’un histogramme peuvent également servir comme descripteurs [Laws, 1980].

Les histogrammes ont l’avantage d’être invariants en translation, en rotation et de ne pas être sensibles à la distribution spatiale des pixels.

Moments : La texture d’un motif peut aussi être considérée comme un ensemble aléa-toire à deux dimensions x et y que l’on peut caractériser par ses moments statistiques :

– la moyenne, qui renseigne sur l’aspect global de la texture,

– la variance, qui mesure les irrégularités de la texture par rapport à sa valeur moyenne, – le skewness, qui mesure l’étalement des bords de la distribution,

– le kurtosis, qui mesure l’aplatissement de la distribution.

Matrices de co-occurrence : Pour caractériser une texture, il est également possible de construire une matrice de co-occurrence P (i, j, d, θ) qui est l’estimation de la probabilité de rencontrer un pixel d’intensité j à une distance d et une orientation θ d’un pixel d’in-tensité i.

Pour une image dont la valeur des pixels est quantifiée sur n bits, la matrice a une taille de 2n× 2n éléments par distance et par orientation. Pour cette raison, les valeurs des pixels des images sont couramment quantifiées sur 3 à 6 bits (par une quantification régulière ou adaptative) lors de l’utilisation des matrices de co-occurrence. Ceci permet de diminuer les temps de calcul et d’augmenter l’occurrence moyenne de chaque cas.

A partir des matrices de co-occurrence, Haralick [Haralick, 1979] a défini 14 paramètres caractérisant les textures parmi lesquels l’énergie, l’entropie, le contraste, la corrélation, homogénéité, etc. D’autres paramètres ont, par la suite, été définis par de nouveaux au-teurs, comme l’indice de contraste orienté [Delenne, 2006].

Matrices de longueur de plages : Une Matrice de Longueur De Plages (MLDP) enre-gistre, pour chaque couleur, le nombre de plages de longueur L de pixels consécutifs de cette couleur dans une direction donnée.

Une texture fine (contenant des éléments structurants de petite taille) sera ainsi caractéri-sée par une MLDP contenant peu de longues plages. Conners [Conners et Harlow, 1980] et Chu [Chu et al., 1990] ont défini plusieurs paramètres qui, pris seuls ou combinés, peuvent servir de descripteurs de texture : nombre de plages, poids des plages courtes, poids des plages longues, distribution des longueurs de plage, etc.

Matrices de dépendance des niveaux de gris des pixels voisins : Cette méthode s’in-téresse au voisinage d’un pixel, et elle est donc bien adaptée à l’analyse locale de textures. Elle compte, dans le voisinage d’un pixel, le nombre de pixels ayant le même6 niveau de gris que le pixel considéré [Sun et Wee, 1983]. Les différents descripteurs de texture définis à partir de cette matrice (analogues à ceux construits à partir des matrices de co-occurrence) présentent également l’avantage d’être isotropes et invariants par rotation, et de ne pas être sensibles à une transformation affine des niveaux de gris de l’image. Autocorrélation : Une propriété intéressante de certaines textures est la nature répétitive de leurs éléments structurants. La fonction d’autocorrélation d’une image peut être utilisée afin d’évaluer la régularité de la texture présente dans l’image. Les éléments de grande taille indiquent une texture grossière et les petits éléments une texture fine. La fonction d’autocorrélation, qui mesure la différence entre une image et sa translatée, permet de mettre en évidence des textures grossières ayant des éléments régulièrement répartis dans l’espace [Kaizer, 1955].

Méthode des bords : Rosenfeld [Rosenfeld et Troy, 1970] considère la texture comme une quantité de bords par unité de surface. Cette technique consiste à déterminer le gra-dient d’une image, puis à séparer l’image en zones et calculer pour chaque zone la valeur moyenne du gradient.

Vilnrotter [Vilnrotter et al., 1986] a montré que des textures pouvaient être distinguées par des matrices de répétitions de bords qui spécifient la co-occurrence des bords, dans une direction et à une distance particulière.

Descripteur SIFT : Développés par Lowe [Lowe, 1999, Lowe, 2004], les descripteurs Scale Invariant Feature Transform (SIFT) sont représentés par un histogramme d’orien-tation, construit à partir des amplitudes et des orientations des gradients calculés dans un voisinage autour d’un pixel. Afin de limiter le nombre de données pertinentes, le calcul des descripteurs SIFT n’est fait que sur certains points d’intérêt de l’image de texture, calculés à partir d’une différence de gaussiennes (la différence entre l’image originale convoluée par deux gaussiennes d’écarts type différents). Ces descripteurs sont invariants en échelle et par rotation.

Descripteur JSeg : L’algorithme de segmentation JSeg proposé par Deng [Deng et Man-junath, 2001] est basé sur le calcul d’un descripteur de rupture du modèle textural s’inspi-rant du discriminant de Fisher et faisant intervenir plusieurs échelles. Cet indice fournit une information sur l’uniformité de la texture. Une fois ce critère calculé pour toute l’image,

la segmentation est réalisée par une croissance de régions utilisant une ligne de partage des eaux.

Extrema locaux : Une texture peut aussi être caractérisée en étudiant la distribution de ses extrema locaux. Une dilatation ou une érosion morphologique avec un élément structurant B est appliquée à la texture pour déterminer les extrema. La difficulté est de choisir le bon élément structurant lorsque l’on n’a pas d’a priori sur la nature de la texture (direction, finesse, etc.).

Local Binary Pattern : La notion de Local Binary Pattern a été introduite par Ojala [Ojala et al., 1996] comme une mesure complémentaire, invariante en translation, du contraste local d’une image. Le calcul de la valeur LBP est fait en deux étapes (cf. fi-gure 2.2) :

– un seuillage : le niveau de gris du pixel central d’une fenêtre glissante est pris comme valeur de seuil pour les pixels voisins. On obtient ainsi un motif binaire,

– une somme pondérée : les valeurs du motif sont sommées pour donner la valeur LBP.

Pour caractériser une texture, le calcul des LBP est souvent réalisé conjointement à une mesure locale du contraste [Ojala et al., 1996].

Les LBP sont relativement invariants en ce qui concerne les changements d’illumination et de rotation de l’image (en comparaison de la matrice de co-occurrence) et sont simples à calculer. Différentes extensions des LBP existent, comme l’utilisation d’un seuil à trois niveaux, mais ces extensions n’ont pas montré d’améliorations sensibles des résultats de segmentation de zones texturées [Mäenpää, 2003].

250 205 195 170 150 128 56 75 100 1 1 1 1 0 0 0 0 1 128 64 2 32 4 8 16 Valeur LBP : 11000011 ≡ 195 (a) (b) (c)

FIG. 2.2 – L’opérateur LBP : la valeur centrale de l’image (a) sert de seuil. Les pixels de valeur supérieure sont remplacés par un 1, ceux de valeur inférieure par un 0. On obtient le texton (b). La valeur LBP finale correspond à la somme pondérée par la matrice (c) des valeurs supérieures.

2.1.2.3 Descripteurs géométriques

Les méthodes géométriques doivent leur existence à une définition déterministe de la texture : la texture est composée de primitives que l’on peut extraire (éléments de texture, généralement caractérisés par des niveaux de gris homogènes). Les relations qui lient les primitives entre elles vont être recherchées.

Pavage de Voronoï : Tuceryan et Jain ont développé une méthode basée sur le dia-gramme de Voronoï7 permettant de définir les relations locales entre les primitives de zones texturées [Tüceryan et Jain, 1990]. L’idée de base de la méthode est que des po-lygones voisins doivent avoir les mêmes caractéristiques s’ils appartiennent à la même texture, et des caractéristiques différentes sinon. La méthode est la suivante :

– segmentation des primitives de la texture,

– calcul du diagramme de Voronoï à partir des primitives,

– calcul de caractéristiques des polygones basées sur les moments des surfaces des polygones,

– mesure de la consistance (par une statistique de Kolmogorov-Smirnov) des carac-téristiques des polygones puis détection des frontières entre les zones de textures différentes.

Cette méthode s’avère très efficace sur les textures régulières.

Squelette : Chen et Jain ont développé une méthode pour distinguer des textures, basée sur les histogrammes de position et de longueur des squelettes des primitives de textures [Chen et Jain, 1988]. Ces histogrammes sont comparés à ceux de textures préalablement apprises.

Morphologie : La morphologie des primitives extraites peut être utilisée pour caractéri-ser des textures : surface, périmètre, allongement, etc. [Song et al., 1996].

2.1.2.4 Descripteurs par modèle

Pour ces approches, les descripteurs sont les paramètres d’un modèle, qui sont estimés ou appris. Lors d’une étape de segmentation ou de classification, les paramètres permettent de calculer la probabilité d’appartenance d’une texture à l’une ou l’autre des classes. Dimension fractale : Un objet fractal est un objet autosimilaire : le tout est semblable à une de ses parties. Les propriétés statistiques sont conservées quelle que soit l’échelle d’observation. La Dimension Fractale (DF) d’un objet A est définie comme le rapport du logarithme du nombre Nr d’objets similaires à A réduits ou agrandis d’un facteur 1/r par le logarithme de r : DF = ln (Nr)/ ln (r). Pour l’analyse de texture, la dimension fractale d’une texture est calculée (ou approximée). Plus la dimension fractale d’une texture est importante, plus la texture est considérée comme ayant un aspect rugueux.

La DF d’une texture n’est cependant pas toujours un critère discriminant ; ainsi, plusieurs textures ayant une même DF peuvent apparaître comme étant très différentes à un obser-vateur [Fioravanti et Giusto, 1993]. C’est pourquoi d’autres critères sont souvent utilisés conjointement.

Chaudhuri [Chaudhuri et Sarkar, 1995] a proposé six attributs pour caractériser une tex-ture : la DF de la textex-ture originale, la DF des niveaux de gris supérieurs à un seuil, la DF des niveaux de gris inférieurs à un seuil, la DF de l’image filtrée par un filtre moyenneur

7Un polygone de Voronoï représente la zone d’influence d’un site. On appelle polygone de Voronoï associé au site Pila région V or(Pi) telle que chaque point de V or(Pi) a pour plus proche site Pi.

horizontal et la DF de l’image filtrée par un filtre moyenneur vertical8 et une dimension multifractale (qui permet de représenter la dimension fractale dans un certain voisinage). Ces six attributs sont calculés pour chaque pixel à l’intérieur d’une fenêtre centrée sur le pixel. Les pixels sont ensuite regroupés, en se basant sur ces attributs, par k-means. Tabesh et al. cherchent à classer des images de tissu cancéreux et non cancéreux dans le cancer de la prostate. Pour cela, ils utilisent (entre autres) des caractéristiques fractales : la DF, qui est calculée sur différentes versions seuillées de l’image, et l’histogramme des caractéristiques du code fractal de chaque image. Le code fractal consiste à rechercher, pour chaque bloc A, de taille NxN, contenu dans l’image, le bloc B, décimé r fois, le plus ressemblant. La transformation affine, la transformation géométrique (rotation, mi-roir, etc.) permettant de passer de A à B, la distance euclidienne entre les positions de A et de B et l’erreur quadratique entre A et B forment les paramètres du code fractal. Les caractéristiques de l’image à classer sont rassemblées dans un vecteur qui est projeté dans l’espace des vecteurs des données d’apprentissage. La classification est alors réalisée par un classifieur k-plus proches voisins ou par un classifieur SVM [Tabesh et al., 2007].

Champs de Markov aléatoires : La modélisation de la répartition spatiale des pixels peut être prise en compte grâce à une hypothèse markovienne. Le modèle des champs de Markov aléatoires (Markov Random Fields) est défini par un système de voisinage (clique), un ensemble de pixels et un champ aléatoire donnant les labels des pixels. Dans cette approche, la probabilité d’avoir une configuration particulière de labels doit satisfaire la propriété suivante : l’intensité d’un pixel est considérée comme ne dépendant que de celles de ses voisins. Ceci peut être développé dans un cadre bayésien et les probabilités a priori définissant le modèle (apprises sur des textures de référence) permettent de déterminer la classe maximisant la probabilité a posteriori d’appartenance à l’une des classes de texture possibles [Cross et Jain, 1983].

Histogrammes de motifs : Dans cette approche, chaque texture est décrite dans un es-pace de caractéristiques. La distribution des « motifs » de la texture dans cet eses-pace est ensuite modélisée. Lorsqu’une texture inconnue est présentée pour identification, elle est projetée dans l’espace des caractéristiques et la distribution de ses motifs est comparée aux distributions des textures apprises.

L’espace des caractéristiques peut être celui des descripteurs SIFT ou LBP, présentés au 2.1.2.2, ou bien des patchs. Les patchs sont des matrices carrées de valeurs des pixels de l’image. La difficulté est de trouver des motifs représentatifs des textures.

Varma et Zisserman ont développé une méthode basée sur les patchs pour classifier des images de matériaux de textures différentes [Varma et Zisserman, 2009]. L’apprentissage du modèle de chaque texture est réalisé en deux phases : une phase de constitution d’un dictionnaire des motifs les plus courants et une phase de calcul de l’histogramme d’ap-parition de ces motifs dans les textures. Afin de constituer le dictionnaire de patchs, les n patchs les plus représentatifs de chaque classe d’apprentissage sont déterminés par k-meanset ajoutés comme motifs du dictionnaire. Ensuite, le calcul de l’histogramme

d’ap-8Si une texture est orientée, sa rugosité sera peu affectée si l’image est filtrée selon l’orientation do-minante, alors qu’elle le sera beaucoup dans la direction perpendiculaire. À l’inverse, la DF d’une image anisotrope sera perturbée de la même manière par tous les filtrages.

parition des motifs est réalisé en assimilant chaque patch au motif qui lui est le plus proche (en termes de distance du χ2) dans le dictionnaire.

2.1.2.5 Descripteurs basés sur un filtre

Pour cette nouvelle approche, la texture est représentée dans un autre espace que le domaine spatial. Le but est alors de trouver des vecteurs de la nouvelle base qui soient les plus porteurs d’information pour reconnaître la texture.

Domaine spatial : Laws a développé une mesure d’énergie des textures basée sur l’ap-plication de filtres de convolution, suivie d’opérations de fenêtrage non linéaires [Laws, 1980]. Les 25 noyaux de convolution 2D utilisés sont réalisés à partir de 5 noyaux 1D, spé-cialisés dans la mesure du niveau de gris moyen (noyau L : 1,4,6,4,1) dans la détection de bords (noyau E : -1,-2,0,2,1) ou de formes d’ondes particulières : vague (noyau W : -1,2,0,-2,1), ondulation (noyau R :1,-4,6,-4,1) ou tâche (noyau S :-1,0,2,0,-1), convolués entre eux (on obtient par exemple LHoriLV ert, LHoriEV ert, etc.). Après une étape de convolution des noyaux avec l’image, une mesure de l’énergie de la texture est réalisée dans un voisinage autour de chacun des pixels des 25 images résultantes. Après normalisation (généralement par l’image LHoriLV ert), les images ayant été générées avec des filtres identiques, mais ayant des orientations différentes (par exemple détection horizontale et verticale de bords) sont regroupées9. Il reste alors 14 images10. Au final, chaque pixel de l’image de texture initiale est représenté par un vecteur de 14 éléments invariants par rotation.

Domaine fréquentiel : L’hypothèse sous-jacente est que les motifs constituant la texture sont majoritairement périodiques et directionnels et peuvent ainsi être mieux caractérisés dans le domaine fréquentiel (par exemple analyse du spectre d’énergie dans le domaine de Fourier). La caractérisation des textures peut être réalisée en calculant l’énergie dans plusieurs bandes de fréquence pour différents secteurs angulaires.

Cette approche ne permet pas d’obtenir des mesures localisées spatialement.

Domaine spatio-fréquentiel : Pour réaliser une analyse localisée à la fois spatialement et en fréquence, il est possible d’utiliser une transformée de Fourier fenêtrée. Si la fonc-tion fenêtre utilisée est gaussienne, on définit alors la transformée de Gabor. L’étude de la réponse à des filtres de Gabor est souvent employée pour caractériser une texture ([Jain et Farrokhnia, 1991] par exemple). Les différents paramètres des filtres de Gabor sont la longueur d’onde, l’orientation, la phase de l’onde et l’écart type de la gaussienne. Les attributs de texture généralement étudiés sont les énergies de la convolution des textures avec les filtres de Gabor, sommées sur toutes les phases pour toutes les combinaisons de longueurs d’ondes et d’orientations. Les filtres de Gabor permettent une analyse multidi-rectionelle reproduisant les schémas d’analyse d’une texture effectués par l’œil.

Il est possible de remplacer les filtres de Gabor par des filtres en ondelettes. La transfor-mée en ondelettes produit à chaque niveau de décimation une image d’approximation et

9uniquement dans le cas où la direction des texture n’est pas importante.

1025 images de départ moins l’image de normalisation moins les 10 images représentant la même mesure pour des directions différentes.

trois bandes de détails. L’énergie, la moyenne et la variance des coefficients des sous-bandes peuvent être utilisées comme descripteurs de texture [Smith et Chang, 1994].