Brevet FR2465220A1 — publié le 19810320

La présente invention a pour objet un dispositif pour l'identification et la détermination de paramètres d'objets situés sur une surface plane. De façon plus précise, l'invention concerne un dispositif qui permet l'identification d'objets plans dis- posés sur une surface plane et la détermination de certains paramètres liés à chacun de ces objets tels que leur périmètre, leur surface, etc..., ces objets pouvant avoir une forme quelconque et une disposition quelconque sur ladite surface, deux objets étant séparés par une zone de ladite surface présentant une densité optique différente de celle desdits objets. Le dispositif objet del'invention est du type dans lequel on éclaire la surface sur laquelle sont dispo- sés lesdits objets, et on détecte à l'aide de photodétec- teurs ou composants analogues, les variations spatiales de l'intensité du faisceau lumineux ayant traversé ladite surface, c'est-à-dire qu'on détecte les variations de densité optique de ladite surface dues à la présence desdits objets. Plus précisément, on utilise une ou plu- sieurs lignes de photodétecteurs que l'on déplace globale- ment et par pas parallèlement à la longueur de la surface une ligne recouvrant toute la largeur de la surface. Si pour chaque pas de la ou des lignes de photodétecteurs, on recueille successivement le signal délivré par chaque photo- détecteur, on obtient une "carte" de la densité optique de la surface, la carte étant constituée par la juxtaposition de surfaces élémentaires affectées d'une densité optique moyenne correspondant à l'énergie lumineuse reçue par une photodiode. Les coordonnées de chaque mesure sont définies par le rang de chaque photodiode et la position de la ligne de photodiode par rapport à la surface. L'invention concerne le traitement de ces différentes mesures pour identifier chaque objet et pour en déterminer certains para- mètres tels que leur prérimètre, leur surface, etc... Il existe de nombreux domaines o il est intéres- sant de faire une telle identification et de déterminer la valeur de tels paramètres, surtout lorsque ces objets sont en très grand nombre sur la surface et qu'ils ont des dimensions très réduites, Un exemple est constitué par l'analyse chromosomique. Les analyses chromosomiques constituent actuelle- ment un examen essentiel dans un grand nombre de sciences humaines et de disciplines, biologiques (génétrique clini- que, carcinologie, radio-pathologie, pédiatrie, etc...). Les analyses chromosomiques chez l'homme sont fondées sur une technique qui utilise une culture de lymphocytes sanguins, maintenue 48 heures en présence de l'antigène pHA (phytohaémagglutinine)et stoppée au bout de ce délai par l'introduction de colchicine. Un choc hypotonique permet alors de faire gonfler les cellules en cours de division (au stade métaphase de la mitose), séparant ainsi au mieux leurs chromosomes les uns des autres. Au moment de la récolte, les quelques gouttes de culture sont étalées sur la lame porte-objet, et les cellules qu'elles contiennent épandent leurs chromosones à la surface de la lame. Cependant, sur la totalité de la surface d'une préparation ainsi réalisée, le pourcentage des métaphases ayant leurs chromosones bien dispersés est extrêmement faible, par rapport à l'ensemble des images non intéressantes, constituées en particulier par les noyaux de cellules non divisées et les mitoses inachevées. Une première tâche du biologiste consiste donc dans un examen des différents échantillons pour sélectionner ceux qui présentent une métaphase ayant ses chromosomes bien dispersés. Cette sélection des images convenables se fait au microscope en deux étapes: une première sélection grossière, suivie d'une sélection plus fine. Cette recher- che est extrêmement longue et fastidieuse. Bien entendu, d'autres applications peuvent être envisagées. Pour résoudre ces problèmes, un premier objet de l'invention est de réaliser un dispositif du type décrit ci-dessus qui ne comporte qu'un minimum de fonctions mémoire pour traiter les informations recueillies en vue de calculer la valeur des différents paramètres. Un second objet de l'invention est de réaliser un dispositif du type décrit précédemment dans lequel la détermination de la valeur des différents paramètres asso- ciés aux différents objets à identifier est obtenue à l'aide d'un seul balayage de la surface à explorer à l'aide d'une matrice-colonne de photodétecteurs. Un troisième objet de l'invention est de réaliser un dispositif du type décrit précédemment dans lequel on met en oeuvre un algorithme dit de connexité. En d'autres termes, il s'agit d'un dispositif qui permet d'identifier avec un risque très réduit d'erreurs les différents objets placés sur ladite surface quelles que soient leur forme et leur orientation sur cette surface. Un quatrième objet de l'invention est de réaliser un dispositif du type décrit précédemment dans lequel on peut effectuer le calcul de la valeur desdits paramètres associés auxdits objets en temps réel. Un cinquième objet de l'invention est de réaliser un dispositif du type décrit ci-dessus gràce auquel on peut détecter non seulement les objets mais également des "inclusions" dans ces objets, c'est-à-dire des portions de surface de ces objets o la densité optique est différente de celle de l'objet dans lequel elle se trouve. On comprend qu'une telle caractéristique est particulièrement intéres- sante dans le cas de l'analyse chromosique. Un sixième objet de l'invention est de réaliser un dispositif du type décrit ci-dessus dans lequel on peut régler le jeu de seuils d'opacité optique pour adapter le dispositif au problème particulier à résoudre. On connaît déjà par le brevet français 71 39422 déposé le 3 novembre 1971 au nom du demandeur un "Procédé et dispositif de sélection automatique d'images de chromo- somes en cours de métaphase". Selon ce procédé, on balaye la surface à l'aide d'un alignement de photodétecteurs, ce qui donne un quadrillage optique de la surface. Pour chaque rectangle, on obtient ainsi une densité optique que l'on compare à un seuil pour affecter à chaque rectangle une valeur binaire. On applique à ce quadrillage un algorithme de décision permettant de reconnaître parmi les rectangles affectés de la valeur binaire 1 par exemple,une dispersion spatiale caractéristique. Donc ce procédé ne permet pas une individualisa- tion des objets. En outre, le dispositif de mise en oeuvre nécessite un grand nombre de positions de mémoire pour appliquer l'algorithme. On connaît également un dispositif d'identifica- tion d'objets ou d'images qui met en oeuvre un algorithme dit de connexité, c'est-à-dire un algorithme qui permet de savoir si un rectangle de la ligne N appartient ou non à un objet qu'on a déjà commencé à identifier lors du balayage des lignes précédentes. A partir de ces informa- tions, on peut déterminer pour chaque objet certains paramètres de celui-ci. La présente invention a pour objet un dispositif pour l'identification d'objets situés sur une surface et la détermination de paramètres desdits objets, ledit dispo- sitif étant du type comprenant un alignement de photodétec- teurs aptes à être déplacés transversalement au-dessus de ladite surface pour découper optiquement ladite surface en surfaces élémentaires limitées par un contour polygonal, ces surfaces étant disposées selon des lignes correspon- dant audit alignement et des colonnes et étant susceptibles d'être repérées par des coordonnées, des moyens pour mesu- rer la-densité optique de chaque surface élémentaire et pour associer à chaque surface élémentaire une valeur binai- re selon ladite densité optique par rapport à un double seuil de densités optiques de référence, et des moyens pour détecter si des surfaces élémentaires affectées d'une même valeur binaire ont de proche en proche selon les lignes et/ou les colonnes au moins un côté commun, ces dites sur- faces élémentaires étant alors dites "connexes" et corres- pondant à un même objet, ledit dispositif se caractérisant en ce qu'il comprend: - des moyens pour mémoriser simultanément la valeur binaire et les coordonnées d'au plus deux lignes consécutives et d'au moins une ligne et de deux surfaces élémentaires de la ligne suivante, - des moyens pour affecter une même référence aux surfaces élémentaires appartenant au même objet, - des moyens pour comparer successivement par étape lesdites valeurs binaires de chaque surface élémen- taire de la ligne N à celles des surfaces élémentaires de la ligne N-1 mémorisées et de la surface élémentaire précédente de la ligne N, et pour affecter à chaque surface élémentaire de ladite ligne - déterminée comme connexe à au moins une surface élémentaire précédemment analysée la même référence que celle de la ou des surfaces élémen- taires connexes précédemment analysées, - des moyens propres de mémorisation de la valeur instantanée des paramètres de chacun desdits objets, - des moyens pour adresser successivement dans lesdites mémoires propres les informations nécessaires au calcul de chaque paramètre pour les surfaces élémentaires définies à chaque étape de comparaison comme connexes aux surfaces élémentaires dont les informations ont déjà été mémorisées dans ladite mémoire propre, et - des moyens de calcul et de mémorisation associés à chaque mémoire propre pour déterminer successi- vement la valeur instantanée desdits paramètres correspon- dant à l'introduction progressive desditessurfaces élémen- taires et pour indiquer la valeur finale dudit paramètre associé à ou aux surfaces connexes adressées à une même mémoire propre lorsque ladite mémoire propre ne reçoit plus d'adressage durant la comparaison des surfaces élémentaires d'une ligne. Bien entendu il ne faut pas prendre, dans cette définition, les mots "lignes" et "colonnes" au sens strict. Les surfaces élémentaires sont contigues et peuvent avoir des formes variées: rectangles, hexagones... les mots "lignes" et "colonnes" correspondent respectivement à la direction de l'alignement des photodétecteurs et à la direction de déplacement de cet alignement. De même, les "coordonnées" d'une surface élé- mentaire sont données par le rang du photodétecteur dans l'alignement et par la position de l'alignement par rapport à la surface à explorer. Il découle de la définition précédente que lors du balayage de la ligne N par exemple, on donne une même adresse aux surfaces élémentaires de même valeur binaire et qui sont détectées comme connexes à certaines surfaces élémentaires précédemment balayées. Au cours du balayage en lignes et en colonne, on stocke dans une même mémoire les informations relatives des surfaces élémentaires qu'on a affectées de la même référence. Cette adresse peut par exemple être constituée par l'origine des surfaces élémen- taires connexes, c'est-à-dire par une surface élémentaire non connexe aux surfaces élémentaires précédemment balayées. Bien entendu, il se peut que l'on découvre en cours de balayage que deux ensembles connexes considérés jusqu'alors comme distincts, c'est-à-dire comme ayant des origines différentes ne formant en fait qu'un seul et même ensemble connexe. Dans ce cas, on réunit dans une- même mémoire les coordonnées des surfaces élémentaires considérées jusqu'alors comme appartenant à des ensembles distincts et on leur affecte une adresse commune. Il va de soi que le calcul des divers paramètres portera sur le regroupement des surfaces élémentaires. Il faut cependant observer que même dans ce cas, il n'y a pas de "retour en arrière" du balayage de la surface à explorer. Il faut également comprendre que par "référence", il ne s'agit pas forcément d'une adresse constituée par un nombre fixe. Il faut comprendre qu'il s'agit d'un élément d'identification des surfaces élémentaires appartenant à un même objet. Cette référence numérique peut varier lors du balayage de lignes différentes pour assurer une meilleure gestion des mémoires propres, comme cela est connu de l'homme de l'art. Il faut ajouter que parmi les paramètres,l'un de ceux-ci peut être le numéro de ligne de la dernière surface élémentaire appartenant à un objet donné. Il consti- tue alors un élément de localisation de l'objet sur la surface. Cela est particulièrement vrai lorsque ces objets sont de dimensions très réduites, la connaissance de la position d'un point de l'objet permettant alors de locali- ser l'objet. En outre, ce paramètre peut constituer la réfé- rence finale d'un objet lorsqu'on utilise des références variables pour repérer les surfaces élémentaires des différentes lignes appartenant à un même objet. Enfin, la détermination de la connexité peut porter sur les surfaces élémentaires affectées de la valeur binaire 1 et sur les surfaces élémentaires affectées de la valeur binaire O. Un tel mode de mise en oeuvre est intéressant lorsqu'il s'agit de prendre en compte des inclusions internes par exemple pour calculer la surface d'un objet compte tenu des inclusions. De toute façon l'invention sera mieux comprise à la lecture de la description qui suit de modes de réalisation de l'invention donnés à titre d'exemples non limitatifs. La description se réfère aux figures annexées sur lesquelles: - la figure 1 est une vue générale du dispositif complet sous une forme simplifiée, - la figure 2 est un schéma montrant un exemple de réalisation de l'ensemble de traitement des données pour la mise en oeuvre de l'algorithme de connexité, et - sur les figures 3a à 6b des schémas illustrant la mise en oeuvre d'un algorithme de connexité préféré. Sur la figure 1, on trouve une vue simplifiée de l'ensemble d'identification et de détermination de paramètres. La référence 2 désigne la surface sur laquelle sont placés les objets ou le plus souvent une image de cette surface. D'un côté de la surface 2, on trouve une 246522-0 source lumineuse 4 et de l'autre côté une bande 6 de photodétecteurs 8 alignés qui sont par exemple des photodiodes (il y en a par exemple 1024). Des moyens schématisés par la référence 10 permettent de balayer à l'aide des photodiodes l'ensemble de la surface 2. Ces moyens peuvent être constitués par une table mobile selon deux direction orthogonales, les photodiodes étant fixes. Ces moyens peuvent également servir à déplacer la bande 6 de photodiodes selon la direction Y uniquement, la bande 8 faisant alors toute la largeur de la surface selon la direction X. C'est cette solution qui est adoptée dans la suite de la description. Dans tous les cas, il s'agit d'un déplacement relatif par pas qui définit par l'inter- médiaire des photodétecteurs un quadrillage. Aux moyens de déplacement 10 est associé un moyen de codage de posi- tion 12 qui donne le numéro N des lignes (selon la direction Y). La position selon la direction X est donnée par le rang n de la photodiode. Le signal électrique délivré par chaque photodio- de a une amplitude qui est représentative de la densité optique de la surface élémentaire correspondant à la photodiode pour la position donnée de la bande 6. Ces signaux sont par exemple mis sous forme numérique et cor- rigés dans le circuit de traitement 14 après être passés dans l'électronique 16 associée aux photodiodes 8. Ces signaux sont ensuite introduits dans un circuit à double seuil 18 qui, pour chaque signal d'entrée, délivre un signal binaire 0 ou 1 selon le niveau du signal d'entrée par rapport à une densité optique de référence. Au cours du balayage, on obtient donc successivement pour chaque surface élémentaire une valeur binaire correspondant à sa densité optique et des informations n et N constituant les coordonnées de la surface élémentaire considérée. Un ensemble 20, qui sera explicité ultérieurement, assure la mise en oeuvre de l'algorithme de connexité ainsi que le calcul des différents paramètres associés aux différents objets, c'est-à-dire aux différents ensembles de surfaces élémentaires connexes. Dès à présent, on peut indiquer que ce traitement peut être appliqué aux surfaces élémentaires ayant la valeur binaire 1 et aux surfaces élémentaires ayant la valeur binaire 0. Un mini-calculateur 22 est relié au reste du dispositif par un coupleur 24 pour un traitement supplémen- taire des résultats, Un micro- calculateur est également utilisé a plusieurs fonctions il sert à effectuer les calculs des paramètres associés à chaque objet détecté; il sert à la mise en oeuvre de l'algorithme de connexité; enfin, il sert au séquencement des différentes opérations et en particulier au déplacement de la bande 6 de photo- diodes et au passage d'une photodiode à la suivante. En choisissant une fréquence de séquencement convenable, on peut effectuer les calculs de paramètres en temps réel. En fait, l'ensemble 20 peut être totalement ou en partie constitué par ce micro-calculateur. En se référant à la figure 2, on va décrire plus en détail la structure du dispositif de traitement 20, incluant la mise en oeuvre de l'algorithme de connexité et le calcul des paramètres associés. On décrira ultérieure- ment en détail un exemple d'algorithme de connexité. Pour la présente description, il suffit de savoir que la mise en oeuvre de cet algorithme ne nécessite que la connaissance simultanée des valeurs binaires et des surfaces élémen- taires n-i et n des lignes adjacentes N-1 et N. Le circuit comprend une logique de connexité 30 qui reçoit la valeur binaire associée aux surfaces élémentaires à l'inter- section des lignes N-1, N et des colonnes n-1, n. On trouve également une mémoire dite de référence 32 reliée à la logique 30 de connexité. La mémoire 32 reçoit une information correspondant aux coordonnées de la surface élémentaire en cours d'analyse. Par exemple, on analyse la surface n, N. Cette mémoire 32 contient la valeur binaire des surfaces élémentaires de la ligne précédente N-1 avec les adresses (associées à chaque objet) déjà affectées à chaque surface élémentaire de la linge N-i. La logique de connexité 30 est également reliée à une mémoire 34 qui contient les instructions pour la mise en oeuvre de l'algorithme de connexité. Comme on l'a indiqué, le dispositif objet de l'invention fait appel dans sa réalisation concrète à un micro-calculateur. La séparation en blocs peut donc être considérée comme un peu arbitraire. Il faut surtout y voir les fonctions qui sont mises en oeuvre. L'homme de l'art saura aisément les concrétiser. Par exemple, on peut considérer que les valeurs binaires associées aux surfaces élémentaires de la ligne N-1 et à la surface élémentaire n-i de la ligne N sont directement prélevées dans la mémoire 32, seule l'information binaire correspondant à la surface élémentaire n, N et venant du circuit à seuil 18 étant appliquée à l'entrée proprement dite de la logique de connexité 30. Comme on l'a déjà indiqué, le dispositif comprend des ensembles différents pour le calcul de chaque paramètre. Sur la figure 2, on a envisagé le calcul de deux paramètres K et R. L'ensemble de calcul du paramètre K comprend une mémoire 36 pour stocker les valeurs du paramètre K pour chaque objet, c'est-à-dire pour chaque ensemble de surfaces élémentaires connexes en cours d'analyse. Il faut qu'il y ait autant de mémoires individuelles que d'objets différents susceptibles d'appartenir à une même ligne. On choisira un nombre de mémoires individuelles correspondant au nombre le plus probable d'objets présents simultanément sur une même ligne. Bien entendu, chaque mémoire individuelle doit avoir un nombre suffisant de positions pour stocker la valeur numérique du paramètre ainsi que la référence de l'objet. Chaque ensemble de calcul de paramètre comprend également une unité arithmétique et logique 38 pour effectuer les calculs et une mémoire d'instruction 40 cor- respondant à la détermination du paramètre K. Les blocs 38 et 40 font partie du micro-calculateur. Après que la logique de connexité a analysé une surface élémentaire et lui a affecté une adresse, cette adresse et les informations convenables liées à cette surface Elémentaire sont envoyées vers les mémoires 36,36'.. correspondant aux paramètres. Cette information nouvelle permet de poursuivre le calcul de la valeur des paramètres pour l'objet ayant la référence considérée. Le type d'informations transmises dépend bien sûr du paramètre à calculer. Par exemple, dans le cas du calcul de la surface, il s'agit d'incrémenter d'une unité des compteurs joutant le rôle de mémoire. Lorsque le balayage d'un objet est terminé, on vide les mémoires propres ayant permis le calcul des para- mètres correspondant à cet objet. On va maintenant décrire un exemple préféré d'algorithme de connexité. Cet algorithme peut être mis en oeuvre soit avec des surfaces élémentaires Si carrées (figure 3a ou 3b), soit avec des surfaces élémentaires Si hexagonales (figure 3c). Il est nécessaire de donner certaines définitions pour mieux faire comprendre cet algorithme. On appelle surfaces voisines ou encore points voisins deux points dont la distance est inférieure à une valeur fixée dv. Elle est liée au pas de et à la forme des surfaces élémentaires. Sur la figure 3a, on a d. = d xV2 v e et il y a huit points voisins. Sur la figure 3b, on a dv = de et on quatre points voisins. Sur la figure 3c, on a dv = de et on a six points voisins. On appelle connexe C (t), dans un ensemble I (t), un sous-ensemble d'éléments X de I (t) tels que - tous les X ont même valeur binaire - pour tout couple (X, Y) de C (t), il existe une suite finie Xi vérifiant les relations X1= X; Xn Y i E 1,n; X. f C (t) i l 1,n-1; Xi et Xi+i sont voisins Une telle suite Xi est appelée chemin de C (t) I (t) représentera, en fait, l'ensemble des points de l'image acquis à-l'instant t. Frontière d'une image A chaque instant, on ne connait, par définition de I(t), que des chemins qui y sont entièrement inclus; on a donc accès aux seuls connexes C(t) dans I(t). Sur la figure 4a qui correspond à l'acquisition à l'instant t1, on voit que les connexes P et Q sont séparés. Au contraire sur la figure 4b (à l'instant t2 avec t2 > t1), on voit que les connexes P et Q sont en fait réunis, c'est-à-dire qu'ils ne forment qu'un seul et même connexe. Soit un connexe dont on a vu les points et calculé les paramètres, toute l'information le concernant est maintenant inutile pour la suite du traitement. A chaque instant, on a uniquement besoin de l'information concernant l'ensemble des connexes, dans I(t) dont on a pas encore acquis tous les voisins. Ce sont les connexes pouvant être modifiés par l'arrivée des points suivants. On les appellera "connexes en cours". Ceci amène à définir la "frontière" de l'image à l'instant t: F(t) qui est l'ensemble des points de I (t) dont on a pas encore acquis tous les voisins. Sur la figure 5a (surfaces carrées), la frontière F(t) comporte n+1 surfaces élémentaires ou points. Sur la figure 5b (surfaces élémentaires hexagonales) la frontière F(t) comporte n points. Dans tous les cas, chaque ligne comprend n surfaces élémentaires, c'est-à-dire que l'on a n photodiodes. L'information nécessaire au fonctionnement de l'algorithme est de deux types: - une information de "connexité" qui associe à chaque point de F(t) son "connexe en cours", dans I(t), inscrite dans la mémoire de référence ML, - une information sur chaque connexe en cours la valeur de ses paramètres à l'instant t, accessible dans la mémoire de calcul des paramètres MP. On note CF(t) = C(t)flF (t) l'ensemble des points du connexe C (t) appartenant à la frontière F(t). Par définition pour tout connexe en cours CF(t); O. Chaque connexe en cours C(t) sera représenté par un de ses points, noté w, choisi dans F (t) donc dans CF(t). On appellera ce point l'origine de C(t). A tout point P de F(t), on associe une adresse dans ML, correspon- dant à sa position dans la frontière. A cette adresse P, on associe, dans ML, l'adresse w de l'origine de P, donc le connexe C(t) auquel il appartient. A cette adresse w dans MP sont écrites les valeurs des paramètres de C(t). Ainsi dans ML, peut-on accéder à l'origine de chaque point de F (t) donc à sa composante connexe; puis, dans MP, aux paramètres de ce connexe. Une manière simple de définir w est de se donner une relation d'ordre total S sur F(t), donc sur CFt(), et de prendre w = Sups C(t) Organisation de la mémoire de référence ML Si on écrit directement dans ML, à l'adresse de chaque point celle deson origine ML(M) = w (M). Toute modifi- cation d'origine d'un connexe nécessite autant d'écritures qu'il a de points dans F(t). Ceci est incompatible avec un traitement en temps réel. Pour n'effectuer qu'une seule écriture, on procède ainsi: lors d'un changement d'origine, seule l'ancienne origine O1 est reliée à la nouvelle 02 = w ML(O1) = 02 On dispose ainsi à chaque instant d'une suite Oi, de points de F(t), liant chaque point M de F(t) à son origine M + ML(M) = 01 ML (M) = 02 >....... + MLk(M) = k = W+W si M a subi k-1 changements d'origine. Les origines étant définies par w=Sup CF(t) et s F par construction de ML on a pour tout point M de F(t) ML(M) > M et pour les Oi, liant M à son origine w s - M connexes différents; on a donc deux origines w et w'. Sur la figure 6b qui correspond à l'instant t, les deux connexes C1 et C2 sont devenus un seul et même connexe C(t) et donc la même origine w pour les Pi(C2) et les Mi(Cl). Définition de l'ordre S Soit P le dernier point acquis et P' le point donc il prend la place dans ML (et dans Ft). La liaison P' -> ML(P') doit être remplacée par P + ML(P) = (P). S'il existe dans F(t) des antécédents R de P': ML(R) = P' il faut pour ces points réécrire, dans ML, la liaison R +... + (R) qui passait par P'. Pour éviter ces écri- tures, on choisit pour S l'ordre de sortie des points de F(t) P',est alors l'Infs F(t) et ne peut avoir d'antécédent. On peut maintenant définir l'origine de C(t) comme le dernier point de CF(t) à sortir de F(t). Choix du mode de balayage On utilise de préférence un balayage va-etvient (sens de balayage alterné) dans une même ligne. L'origine d'un connexe change alors dans deux cas: - A l'acquisition d'un point reliant deux connexes précédem- ment des joints, - A l'acquisition du premier point du connexe dans une nouvelle colonne. Dans les deux cas, on montre que le point Qi à l'arrivée duquel on écrit ML(Oi-1) = 0i sortira de F(t) après le point Qi+l (s'il existe) o on écrit ML(Oi) =Oi+l. Donc pour tous MEF(t) (d'ordre k) M + 01 + 02 +... Ok =. Il existe une suite Qi ML(Qi) = 0 et Qi > Qi+l 1l,k-1 (Q1=M). i s C'est l'existence de cette suite, due au mode de balayage choisi et à la géométrie des chemins de connexité qui permettra, par la suite, de calculer en un nombre fixe d'opérations l'origine de chaque point. On va maintenant décrire le fonctionnement de l'algorithme ainsi défini. 1) Détermination de l'origine du nouveau point P Soient (wj) les origines des voisins (Pj) connexes de P: w(p) = Sups(wj,P). Connaissant le balayage à cet instant, les comparaisons au sens de S se ramènent à des comparaisons entre adresses dans ML. 2) Calcul des j P a un voisin dans la dernière ligne et de 1 à 3 dans l'avant-dernière (selon la forme de la surface élémen- taire). Le voisin de la dernière ligne est le dernier point traité avant P; son origine vient d'être calculée. Seule l'origine du point Q, de l'avant dernière ligne venant d'entrer dans le voisinage de P n'est pas directement accessible (les autres ont été calculées aux deux étapes précédentes). Il faut aller la chercher dans ML, avec autant de lectures k qu'il y a d'indirections Q + O1 + 02 4....+ Ok = MLk(Q) =c". Grâce à l'existence de la suite Qi, on évite ce nombre indéterminé de lectures en effectuant le traitement suivant: A l'entrée de chaque point dans le voisinage du dernier point acquis, dans l'avant dernière ligne (en particulier pour les Qi), on effectue les opérations suivantes: Lecture de ML(Qi), ML2 (Qi) et ML3 (Qi) et écriture de ML3 (Qi) à l'adresse ML (Qi). Etant donné l'ordre d'apparition des Qi, on obtient les opérations suivantes: Lecture Lecture Lecture Ecriture 0k -> k = c" w ML(w≥ w Qk-l+ Ok-1 + Ok=- c ML(Ok-1) = w Qk-2- Ok-2)+ k-1 + c ML(Ok-2) = w ee......eee.. ......eeeeeieelee...e..e.el...eeeelee Q =Q1 01 +02 +W ML(01) =c" On connaît ainsi l'origine de Q en trois lectures..DTD: et une écriture. 3) Modifications de la mémoire de liaison Pour chaque wj différente de w on écrit ML(wj) = w. 4) Calcul des paramètres Dans les cas de changement d'origine, on regroupe les paramètres rangés aux adresses wj, dans la mémoire de référence, avec ceux contenus à l'adresse w. Dans tous les cas, on incrémente les paramètres à l'adresse w, en fonction de P et de son voisinage, selon le paramètre calculé. ) Fin d'objet Si p'l point sortant de F(t) n'est pas connexe au nouveau point P, et si ML(P') = P', c'est alors le dernier point d'un connexe dont les paramètres sont rangés en MP(P'). On peut maintenant calculer pour chaque connexe, c'est-à-dire pour chaque objet, l'ensemble de ses paramètres "locaux". Ce sont les paramètres dont la variation, à l'arri- vée de chaque nouveau point est uniquement fonction du voisinage immédiat de ce point: - Surface, périmètre, nombre d'inclusions (trous), convexité (dans trois ou quatre directions selon la maille), centre de-gravité, polygones d'encadrements (rectangles, octogones ou hexagones). On pourra se reporter aux articles suivants: J. Serra Lectures on image analysis by mathematical mor- phology (cours de morphologie mathématique de l'Ecole des Mines) F. Veillon Une méthode en un passage de calcul simultané de propriétés morphométriques d'objets dans des images. Congrès AFCET-IRIA, 1978 - Tome 1, pp.411-420. A partir de ces paramètres de base, on peut en calculer d'autres en utilisant la connaissance à la fin de chaque connexe, du connexe dans lequel il est inclus. Ainsi, pour le périmètre extérieur obtenu en otant au périmètre celui de chacune de ses inclusions, on calcule ainsi: - - Surface totale (inclusions comprises), péri- mètre extérieur, nombre total d'inclusions. Si on se donne accès aux niveaux de gris du voisinage du dernier point, on calcule aussi: - Surface pondérée, niveau de grismoyen, gra- dient moyen sur chaque connexe et sur l'ensemble de ses inclusions. Il découle de la description de l'exemple parti- culier précédent qu'il faut mémoriser une ligne de surfaces élémentaires et deux surfaces élémentaires d'une autre ligne, On pourrait également utiliser une mémoire supplé- mentaire contenant les informations relatives à une ligne complète. En appliquant un algorithme de connexité différent, on pourrait ne pas faire fonctionner.le dispositif en utilisant seulement quatre surfaces élémentaires, mais en travaillant directement sur des segments de surfaces élémentaires. De plus, dans l'exemple particulier décrit, un objet est repéré (adresse) par son origine. Si l'on considère les coordonnées de cette origine (par exemple le numéro de la ligne), cette donnée peut être considérée comme un nouveau paramètre de l'objet qui permet d'identifier celui-ci. 18 2465220 REVENDICATIONS 1. Dispositif pour l'identification d'objets situés sur une surface et la détermination de paramètres desdits objets, ledit dispositif étant du type comprenant un alignement de photodétecteurs aptes à être déplacés transversalement au-dessus de ladite surface pour découper optiquement ladite surface en surfaces élémentaires limitée par un contour polygonal, ces surfaces étant disposées selon des lignes correspondant audit alignement et des colonnes et étant susceptibles d'être repérées par des coordonnées, des moyens pour mesurer la densité optique de chaque surface élémentaire et pour associer à chaque surface élémentaire une valeur binaire selon ladite densité optique par rapport à une densité de référence, et des moyens pour détecter si des surfaces élémentaires affectées d'une même valeur binaire ont de proche en proche selon les lignes et/ou les colonnes au moins un côté commun, ces dites surfaces élémentaires étant alors dites "connexes" et correspondant à un même objet, ledit dispositif se caractérisant en ce qu'il comprend: - des moyens pour mémoriser simultanément la valeur binaire et les coordonnées d'au plus deux lignes consécutives et d'au moins une ligne et de deux surfaces élémentaires de la ligne suivante, - des moyens pour affecter une même référence aux surfaces élémentaires appartenant au même objet, - des moyens pour comparer successivement par étape lesdites valeurs binaires de chaque surface élémen- taire de la ligne N à celles des surfaces élémentaires de la ligne N-1 mémorisées et de la surface élémentaire précé- dente de la ligne N, et pour affecter à chaque surface élémentaire de ladite colonne déterminée comme connexe à au moins une surface élémentaire précédemment analysée la même référence que celle de la ou ou des surfaces élémentaires connexes précédemment analysées, des moyens propres de mémorisation de la valeur instantanée des paramètres de chacun desdits objets, - des moyens pour adresser successivement dans lesdites mémoires propres les informations nécessaires au calcul de chaque paramètre pour les surfaces élémentaires définies à chaque étape de comparaison comme connexes aux surfaces élémentaires dont les informations ont déjà été mémorisées dans ladite mémoire propre, et - des moyens de calcul et de mémorisation associés à chaque mémoire propre pour déterminer successivement la valeur instantanée desdits paramètres correspondant à. l'introduction progressive desdites surfaces élémentaires et pour indiquer la valeur finale dudit paramètre associé à ou aux surfaces connexes adressées à une même mémoire propre lorsque ladite mémoire propre ne régoit plus d'adres- sage durant la comparaison des surfaces élémentaires d'une ligne. 2, Dispositif selon la revendication 1, caracté- risé en ce que l'un desdits paramètres est constitué par les coordonnées d'une surface élémentaire de chaque objet, ces coordonnées servant à localiser l'objet correspondant sur ladite surface. 3. Dispositif selon l'une quelconque des revendi- cations 1 et 2, caractérisé en ce que l'application de la détermination de la connexité des surfaces élémentaires porte sur les surfaces élémentaires affectées de la première valeur binaire et sur les surfaces élémentaires affectées de la deuxième valeur binaire, ce qui permet d'identifier des inclusions dans un objet. 4. Dispositif selon l'une quelconque des revendi- cations 1 à 3, caractérisé en ce que lesdites mémoires propres sont vidées de la valeur du paramètre lorsque la totalité de l'objet correspondant a été balayé.