Brevet FR2687882A1 — publié le 19930827

i Procédé de caractérisation des textures dans une image numérisée, et dispositif pour la mise en oeuvre de ce procédé. L'invention concerne un procédé de caractéri- sation des textures dans une image numérisée, en vue de segmenter cette image en régions ayant chacune une texture distincte Dans des applications telles que la reconnaissance d'objectifs, le recalage d'images, et l'interprétation d'images, deux types de procédés sont utilisés: l'extraction de contours et l'extrac- tion de régions L'extraction de régions est fondée sur l'analyse des textures La texture en chaque élément d'image est caractérisée au moyen de plusieurs paramètres Une comparaison entre les valeurs des paramètres des différents éléments d'une image permet de regrouper les éléments d'image ayant une même texture, pour constituer des régions de texture uniforme Une comparaison des régions ainsi extraites avec les régions d'une image de référence permet, par exemple, de recaler l'image considérée par rapport à l'image de référence. Plusieurs procédés connus permettent de carac- tériser les textures d'une image D BARBA et J. RONSIN ont décrit un procédé dans un article intitulé : New method in texture analysis in the context of image segmentation, RUPSICO-83, ERLANGEN (RFA) September 1983 Pour caractériser la texture en un point o de l'image, ce procédé connu consiste à prendre en compte les valeurs de luminance d'éléments d'image situés le long de plusieurs demi-droites Li régulièrement réparties dans le plan de l'image, en rayonnant autour du point o. Il consiste, pour chaque demi-droite L, à i définir un repère cartésien (ox', oy', oz') centré sur le point o, l'axe ox' étant confondu avec la demi- droite Li; l'axe oy' étant perpendiculaire à ox' et étant dans le plan de l'image; et l'axe oz' étant perpendiculaire à ox' et oy' Les axes ox' et oy' repèrent la position des points de l'image et l'axe oz' repère leur valeur de luminance. Les valeurs de luminance des points de l'image situés sur la demi-droite Li sont représentées dans le repère (ox', oy', oz') par une courbe Ci En particu- lier la valeur de la luminance au point o est repré- sentée par un point M situé sur l'axe oy', à une ordonnée égale à la luminance au point o. Le procédé connu consiste en outre à définir une métrique euclidienne ds' en introduisant un facteur d'échelle entre les variations spatiales dx' et les variations de luminance dz', dans la direction de la demi-droite Li considérée. ds' = X 2 dx,2 + dz 2 Le procédé consiste ensuite à calculer l'intégrale curviligne, s', de ds' = (X 2 dx'2 + dz'2)1/2 le long de la courbe Ci; et à déterminer les coordonnées d'un point Di tel que la valeur de l'intégrale curviligne s' le long de la portion M Di de la courbe Ci soit égale à une valeur de seuil fixée. La longueur ai du segment M Di projeté sur l'axe ox' constitue la valeur d'un paramètre caratérisant la texture au point o Une valeur de paramètre est ainsi obtenue pour chacune des demi-droite Li rayonnant à partir du point M Le nombre de ces demi-droites peut être égal à 4, par exemple. Ce procédé connu a pour inconvénient d'être peu efficace dans des applications telles que le recalage d'image lorsqu'une suite d'images à traiter est affectée d'une rotation. L'objet de l'invention est un procédé de carac- térisation des textures par deux paramètres qui sont fonctions respectivement du module du gradient de luminance et de l'orientation du gradient de luminance Il a pour avantage de n'utiliser que deux paramètres de caractérisation, sa mise en oeuvre nécessite donc moins de calculs que celle du procédé connu Il a en outre l'avantage de bien prendre en compte une éventuelle rotation d'une scène repré- sentée par une suite d'images Il a aussi pour avan- tage de réaliser simultanément une détection des con- tours de l'image, qui est utile dans des applications o une extraction des contours doit être réalisée conjoitement avec une caractérisation des textures. Selon l'invention, un procédé de caractéri- sation des textures dans une image numérisée, cette image étant analysée élément par élément et chaque élément d'image étant représenté par la valeur numéri- que de sa luminance, est caractérisé en ce qu'il consiste, pour chaque élément d'image, à: déterminer le module et l'orientation du gradient de la luminance de l'élément considéré; à déterminer, parmi les éléments d'image voisins de l'élément considéré, celui tel que la valeur absolue de la différence entre l'orientation du gradient de luminance de l'élément considéré, modulo 900, et l'orientation du gradient de luminance de l'élément voisin, modulo 900, est maximale, cette valeur maximale étant appelée arrangement du gradient de luminance de l'élément d'image considéré; à déterminer un premier paramètre de carac- térisation de la texture de l'élément d'image consi- déré, en calculant la moyenne quadratique du module du gradient de luminance, dans une fenêtre centrée sur l'élément considéré à déterminer un second paramètre de caracté- risation de la texure de l'élément d'image considéré, en calculant la moyenne quadratique de l'arrangement, dans une fenêtre centrée sur l'élément considéré. L'invention sera mieux comprise et d'autres détails apparaîtront à l'aide de la description ci- dessous et des figures l'accompagnant: les figures la, lb,, 6 a, 6 b illustrent une étape du procédé selon l'invention, pour déterminer le module et l'orientation du gradient de la luminance dans un élément d'image; -la figure 7 représente le schéma synoptique d'un exemple de réalisation d'un dispositif pour la mise en oeuvre du procédé selon l'invention; -les figures 8 et 9 représentent un schéma synoptique plus détaillé de deux parties de cet exem- ple de réalisation; -les figures 10 à 14 représentent les organi- grammes de programmes de calcul mis en oeuvre dans une partie de cet exemple de réalisation. Le procédé selon l'invention est appliqué à une image qui a été préalablement analysée élément par élément, au moyen d'une caméra de télévision, par exemple, puis numérisée Chaque élément d'image est représenté par la valeur numérique de sa luminance. Une première étape du procédé selon l'invention consiste à déterminer le module et l'orientation du gradient de la luminance dans chaque élément de l'image, au moyen d'un procédé connu, tel que celui décrit par R NEVATIA et K R BABU dans l'article intitulé Linear feature extraction and description, Computer Graphics and Image Processing, vol 8, 1978. Ce procédé connu consiste à définir, autour de l'élément d'image courant, une fenêtre comportant par exemple 5 x 5 éléments; à constituer une matrice carrée L formée par les valeurs de luminance des éléments d'image situés à l'intérieur de cette fenêtre; et à calculer l produit de convolution Lx Gi pour i=l à s, correspondant à S valeurs Ri prédéter- minées de l'orientation g du gradient de luminance Par exemple, les valeurs Ri de l'orientation Q sont 00, 300, 600, 900, 1200, 1500 Les matrices Gi sont des matrices prédéterminées, de même dimension que la matrice L, c'est-à-dire 5 x 5 dans cet exemple Chaque matrice Gi correspond à une valeur Ri de l'orientation Q du gradient de luminance Le module du produit de convolution Lx Gi est maximal lorsque l'orientation du gradient de luminance dans l'élément d'image consi- déré et dans son voisinage, a la valeur Ri les coef- ficients des matrices Gi pour i= 1 à S sont choisis tels que le module de chacun des produits de convo- lution Lx Gi est proportionnel au module du gradient de luminance de l'élément d'image considéré et de son voisinage, avec un coefficient de proportionnalité identique pour toutes les matrices G Les figures la, lb, 6 a, 6 b, illustrent la mise en oeuvre de ce procédé connu, pour déterminer le module et l'orientation du gradient de luminance dans un élément d'image Une fenêtre comportant 5 x 5 éléments est centrée sur l'élément considéré Le centre géométrique de chaque élément d'image est représenté par une croix Un contour, représenté par une droite en pointillés, est supposée passer par le centre géométrique de l'élément considéré Les figures la, 2 a, 3 a, 4 a, 5 a, 6 a représentent la posi- tion du contour pour les 6 valeurs prédéterminées de l'orientation Q La valeur de Q est repérée par rapport à un axe vertical L'orientation O du gradient est orthogonale à l'orientation des contours de l'image Les figures lb, 2 b, 3 b, 4 b, 5 b, 6 b représen- tent les matrices Gi correspondant à ces valeurs d'orientation. Il est à remarquer que le contour ne passe pas toujours par le centre géométrique des éléments autres que l'élément considéré, par conséquent le calcul des coefficients de ces matrices doit tenir compte de ce fait Le contour sépare le plan de l'image en deux demi-plan Pl et P 2 * Les coefficients des matrices Gi sont positifs lorsqu'ils correspondent au demi-plan Pl; sont négatifs lorsqu'ils correspondents au demi- plan P 2; et sont nuls pour les éléments d'image dont le centre est situé exactement sur le contour. Les coefficients correspondant à des éléments non coupés par le contour et situés dans le demi-plan Pl, ont pour valeur A Les coefficients correspon- dants à des éléments non coupés par le contour et situés dans le demiplan P 2, ont pour valeur -A, o A est une valeur entière non nulle, par exemple 100 Les coefficients correspondant à des éléments d'image coupés en deux parties égales par le contour, sont nuls Les coefficients correspondant à des éléments d'image coupés en deux parties inégales, ayant une aire a dans le demi-plan Pl et une aire b dans le demi-plan P 2, ont une valeur: A x a,b arrondie à la valeur entière la plus proche. Une seconde étape du procédé selon l'invention consiste à déterminer, parmi les éléments d'image voisins de l'élément considéré, celui o la valeur absolue de la différence entre l'orientation du gra- dient de luminance et celle de l'élément considéré, modulo 900, est maximale Cette valeur maximale est appelée arrangement du gradient de luminance de 7 ' l'élément d'image considéré Dans un exemple de mise en oeuvre, les éléments voisins considérés sont l'élé- ment immédiatement suivant l'élément considéré, sur la même ligne, et l'élément homologue de l'élément considéré, sur la ligne immédiatement suivante, dans l'ordre d'analyse des éléments d'image par la caméra de prise de vues Naturellement, il est possible de prendre en compte d'autres éléments voisins pour déterminer celui o la valeur absolue de la différence des valeurs d'orientation est maximale. Une troisième étape du procédé selon l'inven- tion consiste à déterminer, pour chaque élément d'image, un premier paramètre de caractérisation de la texture, en calculant la moyenne quadratique du module du gradient de luminance dans une fenêtre centrée sur l'élément considéré; et à déterminer un second para- mètre de caractérisation de la texture, en calculant la moyenne quadratique de l'arrangement, dans une fenêtre centrée sur l'élément considéré Dans un exem- ple de mise en oeuvre cette fenêtre est la même pour le calcul de ces deux paramètres et a pour dimensions 17 x 17, par exemple. La figure 7 représente le schéma synoptique d'un exemple de réalisation d'un dispositif de carac- térisation des textures dans une image numérisée, pour la mise en oeuvre du procédé selon l'invention Cet exemple comporte: une mémoire d'image 2; un dispo- sitif 3 de calcul du module et de l'orientation du gradient; des moyens de commande 4; une mémoire 5 du module du gradient; une mémoire 6 de l'orientation du gradient; un dispositif 7 de calcul de l'arrangement une mémoire de l'arrangement, 10; un dispositif 8 de calcul de la moyenne quadratique de l'arrangement; et un dispositif 9 de calcul de la moyenne quadratique du module. Une borne d'entrée 1 est reliée à une entrée de la mémoire d'image 2 pour lui fournir une suite de valeurs numériques constituée des valeurs de lumi- nance des éléments d'une image analysée par une caméra de télévision, échantillonnée élément par élément et ligne par ligne, puis numérisée Une borne d'entrée est reliée à une entrée des moyens de commande 4 pour leur fournir des signaux de synchronisation qui accompagnent les valeurs de luminance Une sortie de la mémoire d'image 2 fournit des valeurs de luminance à une entrée du dispositif 3 pour calculer le module et l'orientation du gradient de luminance dans une fenêtre de dimensions 5 x 5 centrée sur l'élément d'image courant. Les éléments d'image sont traités successi- vement dans l'ordre d'analyse Le module et le gradient de la luminance ne sont pas calculés pour ceux appartenant aux deux premières lignes et aux deux dernières lignes de l'image, et pour ceux appartenant aux deux premières et aux deux dernières colonnes de l'image, car il n'est pas possible de centrer sur ces éléments une fenêtre de dimensions 5 x 5. Le dispositif 3 possède une borne de sortie 13 reliée à une entrée de données de la mémoire 5 et une borne de sortie 14 reliée à une entrée de données de la mémoire 6 Les moyens de commande 4 possèdent des sorties reliées, par des liaisons non représentées, à des entrées de tous les éléments de cet exemple de réalisation Ces sorties des moyens de commande 4 fournissent une séquence périodique de signaux de commande, avec une période correspondant à une image. Elles fournissent aussi des signaux d'horloge pour synchroniser les dispositifs de calcul 7, 8 et 9. Le dispositif 7 de calcul de l'arrangement possède une entrée reliée à une sortie de la mémoire 6 et possède trois sorties reliées respectivement à une entrée de commande de la mémoire 6, à une entrée de commande et à une entrée de données de la mémoire 10. Le dispositif de calcul 8 possède une entrée reliée à une sortie de la mémoire 10, une sortie reliée à une entrée de commande de la mémoire 10, et une sortie reliée à une borne de sortie 12 du dispositif de caractérisation, pour fournir une valeur P 2 du second paramètre de caractérisation. Le dispositif de calcul 9 possède une entrée reliée à une sortie de la mémoire 5 et deux sorties reliées respectivement à une entrée de commande de la mémoire 5 et à une borne de sortie 11 du dispositif de caractérisation, pour fournir une valeur Pl du premier paramètre de caractérisation. La figure 8 représente un schéma synoptique plus détaillé du dispositif de calcul 3, de la mémoire d'image 2, et d'un séquenceur 30 qui fait partie des moyens de commande 4 Le dispositif de calcul 3 comporte: un ensemble de 25 registres à décalage, 36, 37, comportant chacun 6 cellules stockant respec- tivement 6 valeurs de coefficients; un registre à décalage, 38, comportant 25 cellules stockant 25 valeurs de complément d'adresse; un dispositif 39 de calcul d'adresses; un ensemble de 25 paires de regis- tres: 41 et 42, 43 et 44,, 45 et 46; un ensemble de 25 multiplieurs 47, 48,, 49; un additionneur ; un ensemble de 6 registres 51 à 56; deux multi- plexeurs à 6 entrées et 1 sortie, 57 et 59; et un comparateur à 6 entrées, 58. Une entrée du dispositif 3, reliée à la sortie de la mémoire d'image 2, est reliée en parallèle à 25 registres: 42, 44,, 46 Le séquenceur 30 fournit une suite croissante d'adresses d'écriture à une entrée d'adresses d'écriture de la mémoire 2, et fournit un signal d'horloge à une entrée de commande d'écriture de la mémoire 2 Les valeurs de luminance sont inscrites dans la mémoire 2 à des adresses crois- santes, au fur et à mesure qu'elles sont disponibles sur la borne d'entrée 1 Une sortie du séquenceur 30 est reliée à une entrée d'horloge de lecture de la mémoire d'image 2. Une entrée d'adresse de lecture de la mémoire 2 est reliée à une sortie du dispositif 3 constituée par une sortie du dispositif 39 Une entrée du dispositif 3, reliée à une sortie du séquenceur 30, est consti- tuée par une première entrée du dispositif 39 Une seconde entrée du dispositif 39 est reliée à une sortie série du registre à décalage 38, qui est rebouclée sur une entrée série Une entrée de commande du registre 38 reçoit un signal d'horloge Hi fourni par une sortie du séquenceur 30. Chacun des registres à décalage 35,, 37 possède une entrée de commande recevant un signal d'horloge H 2 fourni par le séquenceur 30 et possède une sortie rebouclée sur une entrée série, et reliée à l'entrée de l'un des registres 41, 43,, 45, respectivement Ces derniers ont des entrées de commande CC 1 à CC 25 reliées respectivement à des sorties du séquenceur 30 par des liaisons repré- sentées Les registres de chaque paire de registres, 41-42, 43-44,, 45-46, ont deux sorties respecti- vement reliées à deux entrée de l'un des 25 multipli- cateurs 47, 48,, 49 Les sorties des multipli- cateurs 47, 48,, 49, sont reliées respectivement à entrées de l'additionneur 50 Une sortie de ce dernier est reliée en parallèle aux entrées de données des 6 registres 51,, 56 Ces registres possèdent des entrées de commande recevant respectivement des signaux de commande CC 26,, CC 31 fournis par le séquenceur 30, et possèdent des sorties reliées respectivement à 6 entrées du compateur 58 et à 6 entrées du multiplexeur 59. Le comparateur 58 possède une sortie reliée à des entrées de commande des multiplexeurs 57 et 59 Le multiplexeur 59 possède 6 entrées recevant en perma- nence 6 valeurs Rl,, R 6 codant respectivement 6 valeurs prédéterminées de l'orientation du gradient de luminance Les multiplexeurs 57 et 59 ont chacun une sortie reliée respectivement à la borne de sortie 14 et à la borne de sortie 13. Pour la détermination du module et de l'orien- tation du gradient de luminance en chaque élément d'image, le séquenceur 30 commande la mémoire 2 et le dispositif de calcul 3 pour calculer 6 produits de convolution correspondant à 6 valeurs d'orientation du gradient Pour chaque élément d'image, le séquen- ceur 30 fournit au dispositif 39 une adresse AD 1 qui est la même pour chacun des 6 produits de convolution et il fournit à l'entrée d'horloge de lecture de la mémoire 2 une suite de 25 impulsions Le séquenceur 30 fournit au registre à décalage 38, un signal d'horloge Hi constitué de 25 impulsions de même fréquence que les impulsions de l'horloge de lecture de la mémoire 2 Sous l'action du signal d'horloge Hi, le registre 38 fournit une suite de 25 valeurs de complément d'adresse, AD 2, à la seconde entrée du dispositif de calcul 32 Ce dernier additionne chacune des valeur de AD 2 à la valeur de AD 1, pour calculer respectivement les adresses de lectures des valeurs de luminance de éléments d'image situés dans une fenêtre de dimension 5 x 5 centrée sur l'élément d'image courant, la valeur de luminance de ce dernier étant stockée à l'adresse AD 1. Dans cet exemple, chaque image est analysée à raison de 720 éléments par ligne, et à raison de 576 lignes utiles La mémoire d'images 2 stocke les 2 trames entrelacées qui constituent chaque image Une fenêtre de dimensions 5 x 5 ne pouvant pas être centrée sur les éléments situés au bord de l'image, le séquenceur 30 ne fournit pas d'adresse AD 1 pour les éléments des 2 premières lignes, des 2 dernières lignes, des 2 premières colonnes, et des 2 dernières colonnes de l'image Les 25 valeurs de luminance lues dans la mémoire 2 sont inscrites successivement dans les registres 42, 44,, 46, sous l'action des signaux de commande CC 1, CC 2,, CC 25. Pour chaque élément d'image courant, chacun des 25 registres 36,, 37 fournit successivement 6 coefficients sous l'action de 6 impulsions succes- sives du signal d'horloge H 2 fourni par le séquenceur Pour chaque impulsion du signal H 2, les registres 41, 43,, 45 reçoivent respectivement les 25 coef- ficients d'un matrice Gi correspondant à une valeur possible de l'orientation du gradient Ces coeffi- cients sont inscrits dans ces registres 41, 43, sous l'action du signal d'horloge H 3 fourni par le séquenceur 30 Enfin, l'additionneur 50 fait la somme des résultats fournis par les 25 multiplicateurs 47, 48,, 49 et l'un des registres 51 à 56 stocke la valeur de cette somme sous l'action d'un signal de commande CC 26, ou CC 27, ou CC 28, ou CC 29, ou CC 30, ou CC 31 Pour chaque produit de convolution, c'est-à- dire pour chaque orientation, le séquenceur 30 commande un seul de ces registres Après le calcul de 6 produits de convolution les 6 registres 51 à 56 contiennent les résultats de ces produits. Le comparateur 58 est un circuit logique comparant les valeurs numériques appliquées sur ses 6 entrées et fournissant un mot binaire indiquant qu'elle est l'entrée recevant la valeur absolue la plus grande Ce mot binaire est appliqué à une entrée de commande du multiplexeur 57 et du multiplexeur 59. Le multiplexeur 59 transmet donc une valeur AM (I,J) qui est constituée par la plus grande valeur absolue parmi celles des 6 produits de convolution stockés dans les registres 51 à 56 Le multiplexeur 57 transmet une valeur OR (I, J) codant l'orientation correspondant au plus grand des 6 produits de convo- lution stockés dans les registres 51 à 56 I et J désignent respectivement la coordonnée horizontale et la coordonnée verticale de l'élément d'image courant, dans une repère cartésien orienté dans le sens du balayage d'analyse de l'image J est le rang de la ligne de l'élément courant et I est le rang de l'élément courant sur la ligne J. La réalisation du séquenceur 30 au moyen de circuits compteurs et décodeurs est à la portée de l'homme de l'art Les moyens de commande 4 comportent en outre des générateurs de signaux d'horloge qui ne sont pas représentés sur la figure 8 mais dont la réalisation est à la portée de l'homme de l'art. La figure 9 représente le schéma synoptique d'un exemple de réalisation des dispositifs de calcul 7, 8, 9, et des mémoires 5, 6 et 10 Les mémoires 6 et sont confondues en une seule mémoire 6-10 Les dispositifs 7 et 8 sont confondus en un seul dispo- sitif de calcul 7-8 et sont constitués par: un microprocesseur 65; une mémoire de programme 66; et une interface de sortie 67 Le microprocesseur 65 est relié par un bus de données, bi-directionnel, à une sortie de données de la mémoire 6-10, à une sortie de la mémoire de programme 66, et à une entrée de l'interface 67 Le microprocesseur 65 est relié par un -bus d'adresses à une entrée d'adresses de lecture et à une entrée d'adresses d'écriture de la mémoire 6-10, une entrée d'adresses de lecture de la mémoire de programme 66, et à une entrée de l'interface de sortie 67 Il est relié par un bus de commande à une entrée d'horloge de lecture et à une entrée d'horloge d'écri- ture de la mémoire 6-10, à une entrée d'horloge de lecture de la mémoire 66 et à une entrée de commande de l'interface 67. La mémoire 5 et la mémoire 6-10 possèdent une entrée d'adresses d'écriture et une entrée d'horloge d'écriture reliées respectivement à deux sorties du séquenceur 30 La mémoire 6-10 comporte deux parties égales permettant chacune de stocker les valeurs de l'orientation et de l'arrangement du gradient pour IS tous les éléments correspondant à 17 lignes d'images. Ces deux parties sont utilisées alternativement en écriture pour stocker les valeurs de l'orientation fournies par la borne de sortie 14 du dispositif 3, et en lecture pour fournir au dispositif de calcul 7-8 les valeurs de l'orientation du gradient, dans une fenêtre de 17 x 17 éléments d'image Ces deux parties sont sélectionnées alternativement au moyen d'un signal logique binaire constitué un des bits de l'adresse d'écriture fournie par le séquenceur 30 à la mémoire 6 Le microprocesseur 65 calcul la valeur de l'arrangement du gradient en chacun des éléments d'une fenêtre de dimension 17 x 17 et, simultanément, calcule la moyenne quadratique de l'arrangement dans cette fenêtre, en suivant un programme stocké dans la mémoire 66 Puis le microprocesseur 65 commande la sortie du résultat P 2 de ce calcul, en commandant l'interface de sortie 67 qui possède une sortie reliée à la borne de sortie 12. La figure 10 représente un organigramme du pro- gramme contenu dans la mémoire 66 Ce programme est le même pour chaque image à traiter Chacun des éléments d'image constitue successivement l'élément d'image courant, dans l'ordre o ces éléments d'image ont été analysés, à l'exception de certains éléments situés en bordure de l'image et pour lesquels il n'est pas possible de déterminer le module et l'orientation du gradient, ou pour lesquels il n'est pas possible de déterminer la moyenne quadratique du module ou de l'arrangement du gradient dans une fenêtre de dimen- sions 17 x 17. Le programme réalise tout d'abord le calcul de l'arrangement du gradient de la luminance pour tous les éléments de l'image à traiter Les valeurs de l'arrangement sont stockées dans la mémoire 6-10 Puis le programme réalise le calcul des coordonnées extrêmes d'une fenêtre de dimensions 17 x 17 centrée sur l'élément d'image courant Puis il réalise le calcul de la moyenne quadratique de l'arrangement dans cette fenêtre Puis il calcule les coordonnées extrêmes d'une fenêtre centrée sur un nouvel élément d'image, suivant le précédant dans l'ordre d'analyse des éléments d'image Puis il réalise le calcul de la moyenne quadratique de l'arrangement dans cette nouvelle fenêtre Ces deux calculs sont réitérés jusqu'à ce que tous les éléments d'image ait été traités, à l'exception de ceux situés en bordure. La figure 11 représente un organigramme de la partie de programme réalisant le calcul de l'arrange- ment pour tous les éléments d'une image à traiter Cet organigramme commence par l'initialisation à la valeur 3 des coordonnées I et J de l'élément d'image courant Puis il consiste à lire la valeur OR (I, J) de l'orientation du gradient au voisinage de l'élément courant, dans la mémoire 6-10 à une adresse corres- pondant aux coordonnées (I, J) Puis il consiste à lire la valeur OR (I + 1, J), de l'orientation du gradient dans l'élément d'image voisin suivant immédiatement l'élément courant sur la même ligne, dans la mémoire 6-10 à une adresse correspondant aux coordonnées (I + 1, J). Puis il consiste à calculer une valeur DIF 1 égale à la valeur absolue de la différence entre OR (I + 1, J) et OR(I, J) Si cette valeur absolue est supérieure ou égale à 900, le programme consiste ensuite à calculer une nouvelle valeur DIF 1 en prenant le complément à 1800 de la valeur DIF 1 obtenue précé- demment Dans les deux cas, le programme consiste ensuite à lire une valeur OR(I, J + 1) de l'orien- tation du gradient au voisinage de l'élément homolo- gue, de l'élément courant, sur la ligne immédiatement précédente, dans la mémoire 6-10 à une adresse corres- pondant aux coordonnées (I, J + 1). Le programme consiste ensuite à calculer une valeur DIF 2 égale à la valeur absolue de la différence _ entre OR (I, J + 1) et OR (I, J), puis à comparer DIF 2 à la valeur 900 Si DIF 2 est supérieure à 900, le programme consiste ensuite à calculer une nouvelle valeur DIF 2 en prenant le complément à 1800 de la valeur DIF 2 obtenue précédemment Dans les deux cas, le programme consiste ensuite à comparer DIF 1 et DIF 2. Si DIF 1 est supérieure ou égale à DIF 2, alors la valeur AR (I, J) de l'arrangement du gradient pour l'élément d'image courant est prise égale à DIF 1 Dans le cas contraire, elle est prise égale à DIF 2. Dans les deux cas le programme consiste ensuite à écrire la valeur AR (I, J) dans la mémoire 6-10, à une adresse correspondant aux coordonnées (I, J) Puis il consiste à comparer la valeur de I à la valeur 718 qui correspondant au rang de la dernière colonne d'éléments d'images o il a été possible de déterminer le module et l'orientation du gradient, compte tenu de la nécessité de centrer une fenêtre de dimension x 5 Si I n'est pas égal à 718, le programme consiste ensuite à incrémenter I et à réitérer les étapes précédentes à partir de la lecture de OR (I, J) dans la mémoire 6-10 Si I est égal à 718, la ligne en cours de traitement est terminée et le programme consiste ensuite à comparer la valeur de J à 574 qui est le rang de la dernière ligne sur laquelle il a été possible de déterminer le module et l'orientation du gradient Si J n'est pas égal à 574, le programme consiste ensuite à incrémenter J et à réitérer les étapes précédentes à partir de la lecture de OR (I, J) dans la mémoire 6-10 Si J est égal à 574, le calcul de l'arrangement pour tous les éléments de l'image est terminé Le programme consiste ensuite à calculer les coordonnées extrêmes d'une fenêtre de dimension 17 x 17 centrée sur un élément d'image courant. L'organigramme du programme réalisant ce calcul est représenté sur la figure 12 Il consiste tout d'abord à initialiser des variables IMIN et JMIN à la valeur 3 et une variable JMAX à la valeur 19 Ces valeurs correspondent à trois des coordonnées extrêmes de la fenêtre de dimension 17 x 17 centrée sur le premier élément d'image pour lequel il est possible de calculer la moyenne quadratique de l'arrangement. Pour chaque élément d'image, l'abcisse maxi- male des éléments d'image appartenant à la fenêtre a pour valeur IMAX et est calculée en additionnant 16 à la valeur IMIN, celle-ci étant la valeur minimale de l'abcisse des éléments de la fenêtre Puis le pro- gramme consiste à comparer la valeur IMAX à 718, la valeur 718 étant l'abcisse la plus grande pour laquelle il a été possible de calculer le module et l'orientation du gradient Si IMAX est inférieure à 718, c'est-à-dire si la fenêtre ne comporte que des éléments o la valeur du module et de l'orientation du gradient a pu être déterminée, le programme consiste ensuite à comparer la valeur JMAX de l'ordonnée maxi- male des éléments de la fenêtre, à la valeur 574, celle-ci correspondant à la dernière ligne pour laquelle il a été possible de déterminer le module et l'orientation du gradient. Si JMAX est inférieure ou égale à 574, la fenê- tre considérée ne comporte que des éléments d'image o il a été possible de déterminer le module et l'orien- tation du gradient, ce programme consiste alors à cal- culer la moyenne quadratique de l'arrangement dans cette fenêtre, définie par les valeurs IMIN, IMAX, JMIN, JMAX. Si IMAX est supérieur à 718, c'est-à-dire si la fenêtre considérée contient des éléments d'image o il n'a pas été possible de déterminer le module et l'orientation du gradient, la fenêtre considérée n'est pas utilisée pour le calcul de la moyenne quadratique de l'arrangement et le programme consiste ensuite à réinitialiser la valeur IMIN de l'abcisse minimale à la valeur 3, puis à calculer une nouvelle valeur de l'ordonnée minimale JMIN et une nouvelle valeur de l'ordonnée maximale JMAX en additionnant 17 respectivement aux valeurs précédentes JMIN et JMAX. Il consiste ensuite à comparer la valeur JMAX à 574. Si JMAX est inférieure ou égale à 574, le programme consiste ensuite à calculer la moyenne quadratique de l'arrangement dans la fenêtre définie par les valeurs IMIN, IMAX, JMIN, JMAX L'élément courant sur lequel est centré cette fenêtre a pour coordonnées: (IMIN + IMAX)/2 et (JMIN + JMAX)/2 La valeur du second paramètre de caractérisation ainsi obtenue caractérise cet élément courant. Si JMAX est supérieur à 574, il n'est pas possible de déterminer une autre fenêtre ne comportant que des éléments o le module et l'orientation du gradient ont pu être déterminés, par conséquent le traitement de l'image est terminé. A la fin du calcul de la moyenne quadratique de l'arrangement dans la fenêtre considérée le programme consiste à incrémenter d'une unité la valeur de IMIN, pour faire glisser la fenêtre vers l'élément d'image suivant sur la même ligne, puis à réitérer les opéra- tions précédentes, à partir du calcul de IMAX, en additionnant 16 à IMIN. La figure 13 représente un organigramme du calcul de la moyenne quadratique de l'arrangement dans la fenêtre définie par IMIN, IMAX, JMIN, et JMAX Pour ce calcul, le point courant à l'intérieur de la fenê- tre considérée a pour coordonnées (I,J) Ces coor- données sont tout d'abord initialisées par les valeurs IMIN et JMIN respectivement Une variable ACC, qui sera utilisée comme accumulateur, est initialisée à 0 Le programme consiste ensuite à lire la valeur AR (I, J) dans la mémoire 6-10, à une adresse correspon- dant aux coordonnées (I, J) Puis il consiste à addi- tionner le carré de cette valeur à la valeur ACC Le programme consiste ensuite à tester successivement les valeurs I et J pour savoir si elles dépassent les valeurs maximales IMAX et JMAX respectivement. Si I n'est pas égale à IMAX, le programme consiste à incrémenter I d'une unité puis à lire la valeur de AR (I, J) dans la mémoire 6-10 à l'adresse correspondant à la nouvelle valeur de I et à la valeur de J Si I est égale à IMAX, une ligne de la fenêtre considérée est terminée Le programme consiste ensuite à tester la valeur de J pour savoir si la fenêtre est terminée Si J n'est pas égale à JMAX, le progamme consiste à incrémenter J d'une unité puis à réitérer les opérations précédentes à partir de la lecture de AR (I, J) dans la mémoire 6-10. Si J est égale à JMAX, tous les éléments de la fenêtre considérée ont été pris en compte, le pro- gramme consiste alors à calculer la valeur P 2 du second paramètre de caractérisation, en prenant la racine carrée de la valeur ACC et en la divisant par 172 Puis le programme est poursuivi, comme représenté sur l'organigramme de la figure 10, en calculant les coordonnées extrêmes d'une autre fenêtre centrée sur l'élément d'image suivant l'élément considéré. Le dispositif de calcul 9, pour le calcul de la valeur Pl du premier paramètre de caractérisation, est analogue au dispositif de calcul 7-8 Le dispositif de calcul 9 comporte: un microprocesseur 60; une mémoire de programme 61; et une interface de sortie 62 reliée à une borne de sortie 11 pour lui fournir les valeurs Pl du premier paramètre de caractéri- sation La mémoire 5 comporte 2 parties identiques ayant chacune une capacité suffisante pour stocker les valeurs du module du gradient de luminance des élé- ments de 17 lignes d'images Ces deux parties sont utilisées alternativement en écriture et en lecture, la sélection de l'une de ces parties pour l'écriture et de l'autre partie pour la lecture est réalisée au moyen d'un signal logique binaire constitué par l'un des bit de l'adresse d'écriture fournie par le séquenceur 30 à la mémoire 5. Une entrée d'adresse d'écriture de la mémoire 5 reçoit une suite d'adresses fournies par une sortie du séquenceur 30 pour inscrire les valeurs AM ( 1, J) du module du gradient de la luminance des éléments d'image, fournies par la borne de sortie 13 du dispo- sitif 3 Une entrée d'horloge d'écriture de la mémoire est reliée à une sortie du séquenceur 30 pour rece- voir un signal d'horloge commandant l'écriture de ces valeurs Il est à noter que les adresses d'écriture et les signaux d'horloge d'écriture fournis par le séquenceur 30 sont les mêmes pour la mémoire 5 et pour la mémoire 6-10. Le microprocesseur 60 est relié par un bus de données à une sortie de données de la mémoire 5, à une sortie de données de la mémoire de programme 61, et à une entrée de l'interface de sortie 62 Il est relié par un bus d'adresses à une entrée d'adresses de lecture de la mémoire 5, à une entrée d'adresses de la mémoire de programme 61, et à une entrée de l'inter- * face de sortie 62 Il est relié aussi, par un bus de commande, à une entrée d'horloge de lecture de la mémoire 5, à une entrée d'horloge de lecture la mémoire 61, et à une entrée de commande de l'interface 62 Le microprocesseur 60 réalise une suite d'opéra- tions commandées par un programme stocké dans la mémoire de programme 61. Ce programme suit un organigramme général qui est identique à celui représenté sur la figure 10 et décrit précédemment, mais le calcul de la moyenne quadratique de l'arrangement est remplacé par le calcul de la moyenne quadratique du module du gra- dient. L'organigramme de ce programme de calcul de la moyenne quadratique du module est représenté sur la figure 14 Ce programme de calcul commence par une initialisation des coordonnées I et J de l'élément courant, avec les valeurs IMIN et JMIN respectivement, et l'initialisation à O d'une variable ACC utilisée comme accumulateur Il consiste ensuite à lire une valeur AM (I, J), du module du gradient de luminance de l'élément d'image de coordonnées (I, J) Cette lecture est réalisée à une adresse correspondant à (I, J), dans la mémoire 5 Puis le programme consiste à additionner le carré de la valeur AM (I, J) à la valeur ACC Il consiste ensuite à tester les valeurs de I et de J. Si I n'est pas égal à IMAX, la ligne à l'inté- rieur de la fenêtre n'est pas terminée, la valeur de I est alors incrémentée d'une unité puis les opérations précédentes sont réitérées à partir de la lecture de AM (I, J) Si I est égal à IMAX, la ligne est terminée à l'intérieur de la fenêtre Ensuite le programme consiste à comparer J à JMAX pour déterminer si la fenêtre considérée est terminée Si J n'est pas égal à JMAX, la fenêtre n'est pas terminée, la valeur de J est incrémentée d'une unité puis les opérations précé- dentes sont réitérées à partir de la lecture de AM (I, J). Si J est égal à JMAX, la fenêtre est terminée, et le programme se conclue par le calcul d'une valeur Pl du premier paramètre de caractérisation, en calcu- lant la racine carrée de ACC puis en divisant le résultat par 17 x 17 qui est le nombre d'éléments d'image dans chaque fenêtre La valeur Pl ainsi obte- nue caractérise la texture de l'élément d'image courant qui est au centre de la fenêtre et qui a pour coordonnées: (IMIN + IMAX)/2 et (JMIN + JMAX)/2 A la fin de ce calcul le microprocesseur 60 poursuit le programme représenté par l'organigramme de la figure 10 en calculant les coordonnées extrêmes d'une autre fenêtre, si le traitement de l'image n'est pas encore terminé. L'invention ne se limite pas aux exemples décrits et représentés ci-dessus, de nombreuses variantes sont à la portée de l'homme de l'art. Notamment il est possible de réaliser différemment les dispositifs de calculs 7, 8, et 9; par exemple en réalisant ces trois dispositifs de calculs au moyen d'un même microprocesseur, ou bien en les réalisant au moyen d'une logique câblée Les mémoires 5 et 6 peu- vent, elles aussi, avoir une structure différentes. Par exemple, elles peuvent ne pas comporter deux par- ties identiques utilisées alternativement en lecture et en écriture mais une seule, si le rythme des images à traiter est suffisemment lent pour permettre un arrêt du dispositif de calcul 3 pendant la durée nécessaire au dispositif de calcul 7, 8, 9 pour utiliser les données correspondant à 17 lignes d'image et qui sont stockées dans les mémoires 5 et 6 Ces variantes sont à la portée de l'homme de l'art. L'invention est applicable à la segmentation d'une image en régions de texture uniforme, c'est-à- dire constituées d'éléments ayant tous une même valeur pour le premier paramètre de caractérisation et une même valeur pour le second paramètre de caractéri- sation Les régions ainsi extraites sont utilisées ensuite, selon des procédés connus, par une recon- naissance d'objectifs, ou une interprétation d'images, ou un recalage d'images Les deux paramètres de caractérisation fournis par le procédé selon l'invention permettent une segmentation des images en différentes régions plus rapidement que les procédés connus D'autre part, le paramètre traduisant l'arrangement des gradients, c'est-à-dire la dif- férence entre l'orientation du gradient dans un élément d'image et dans les éléments voisins, prend en compte la rotation de l'image, ce qui permet d'obtenir une caractérisation des textures indépendamment de cette rotation de l'image, alors que les procédés connus sont très perturbés par une rotation de 2 > 4 l'image. Le dispositif selon l'invention est utilisable dans un dispositif de segmentation d'images, avec des moyens classiques pour comparer les valeurs des paramètres de caractérisation des éléments d'image, et discriminer ainsi des régions de textures uniforme. REVENDICATIONS 1 Procédé de caractérisation des textures dans une image numérisée, cette image étant analysée élément par élément et chaque élément d'image étant représenté par la valeur numérique de sa luminance, caractérisé en ce qu'il consiste, pour chaque élément d'image, à: déterminer le module et l'orientation du gradient de la luminance de l'élément considéré; à déterminer, parmi les éléments d'image voisins de l'élément considéré, celui tel que la valeur absolue de la différence entre l'orientation du gradient de luminance de l'élément considéré, modulo 900, et l'orientation du gradient de luminance de l'élément voisin, modulo 900, est maximale, cette valeur maximale étant appelée arrangement du gradient de luminance de l'élément d'image considéré; à déterminer un premier paramètre de carac- térisation de la texture de l'élément d'image consi- déré, en calculant la moyenne quadratique du module du gradient de luminance, dans une fenêtre centrée sur l'élément considéré; à déterminer un second paramètre de caracté- risation de la texture de l'élément d'image considéré, en calculant la moyenne quadratique de l'arrangement, dans une fenêtre centrée sur l'élément considéré. 2 Procédé selon la revendication 1, carac- térisé en ce que pour déterminer le module et l'orien- tation du gradient de la luminance de chaque élément d'image, il consiste à: calculer S produits de convolution Lx Gi pour i= 1 à S correspondant à S valeurs Ri d'orienta- tion prédéterminées, o L est une matrice bidimension- nelle formée par des valeurs de luminance d'un bloc d'éléments d'image entourant l'élément considéré, et o G est une matrice bidimensionnelle telle que la valeur absolue de Lx G est maximale lorsque l'orienta- tion du gradient de luminance dans le bloc d'éléments d'image a la valeur Ri; et telle que la valeur absolue de Lx Gi est proportionnelle au module du gradient de luminance, le coefficient de proportion- nalité étant le même pour toutes les matrices Gi pour i 1 à S; déterminer, parmi les S produits de convo- lution, celui ayant la plus grande valeur absolue, et en déduire une valeur proportionnelle au module du gradient, et en déduire la valeur de l'orientation du gradient. 3 Application du procédé selon l'une des revendications 1 ou 2, à la segmentation d'une image en régions ayant une texture uniforme. 4 Dispositif de caractérisation des textures dans une image numérisée, pour la mise en oeuvre du procédé selon la revendication 1, cette image étant analysée ligne par ligne et élément par élément au moyen d'une caméra, et la luminance de chaque élément étant convertie en une valeur numérique, caractérisé en ce qu'il comporte: une première mémoire ( 2) pour stocker des valeurs de luminance des éléments d'une image; des premiers moyens de calcul ( 3) pour déter- miner le module et l'orientation du gradient de lumi- nance de chaque élément d'image, à partir des valeurs de luminance stockées dans la première mémoire ( 2); une seconde mémoire ( 5) pour stocker des valeurs du module du gradient, calculées par les premiers moyens de calcul ( 3); des seconds moyens de calcul ( 9) pour déter- miner, pour chaque élément d'image, une valeur d'un premier paramètre de caractérisation de sa texture, égale à la moyenne quadratique du module du gradient de luminance des éléments d'image situés dans une fenêtre centrée sur l'élément considéré; et pour fournir cette valeur de paramètre à une borne de sortie ( 11); une troisième mémoire ( 6) pour stocker des valeurs de l'orientation du gradient, calculées par les premiers moyens de calcul ( 3); des troisièmes moyens de calcul ( 7) pour calculer la valeur absolue modulo 900, de la diffé- rence entre l'orientation du gradient de luminance dans chaque élément courant et l'orientation du gra- dient de luminance dans des éléments voisins de l'élément courant; des quatrièmes moyens de calcul ( 8) pour déterminer, pour chaque élément d'image, une valeur d'un second paramètre de caractérisation de sa tex- ture, égale à la moyenne quadratique des arrangements d'éléments d'image situés dans une fenêtre centrée sur l'élément considéré; et pour fournir cette valeur de paramètre à une borne de sortie ( 12). Utilisation du dispositif selon la reven- dication 4, dans un dispositif de segmentation d'une image en régions de texture uniforme.