[go: up one dir, main page]

FR2623642A1 - Method of segmenting vascular angiographic images by vectorial tracking of axes and servo-controlled detection of contours - Google Patents

Method of segmenting vascular angiographic images by vectorial tracking of axes and servo-controlled detection of contours Download PDF

Info

Publication number
FR2623642A1
FR2623642A1 FR8716156A FR8716156A FR2623642A1 FR 2623642 A1 FR2623642 A1 FR 2623642A1 FR 8716156 A FR8716156 A FR 8716156A FR 8716156 A FR8716156 A FR 8716156A FR 2623642 A1 FR2623642 A1 FR 2623642A1
Authority
FR
France
Prior art keywords
points
point
search
axes
branch
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR8716156A
Other languages
French (fr)
Other versions
FR2623642B1 (en
Inventor
Rene Collorec
Jean-Louis Coatrieux
Christine Toumoulin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thomson Recherche
Original Assignee
Thomson Recherche
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thomson Recherche filed Critical Thomson Recherche
Priority to FR8716156A priority Critical patent/FR2623642B1/en
Publication of FR2623642A1 publication Critical patent/FR2623642A1/en
Application granted granted Critical
Publication of FR2623642B1 publication Critical patent/FR2623642B1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20036Morphological image processing
    • G06T2207/20044Skeletonization; Medial axis transform
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30004Biomedical image processing
    • G06T2207/30101Blood vessel; Artery; Vein; Vascular

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Apparatus For Radiation Diagnosis (AREA)

Abstract

The method of segmenting angiographic images according to the invention consists, in a preliminary phase, in extracting from the image a skeleton of the network formed by a series of related points corresponding to the axes of the vessels, then, from this skeleton, carrying out a servo-controlled detection of the contours of the vessels by using the fact that a contour exists on each side of an axis and that these contours are also series of related points directly linked to the series of points constituting the axes: a dynamic programming is implemented in order to search, from matrices of gradients with dimensions limited to search areas close to the axis, the paths corresponding to the contours in the corresponding cost matrices resulting from the summing of the values of gradients. Application to the effective segmentation of angiographic images, especially images obtained by digital radiography, for constructing 2D databases which can be used for the reconstruction of 3D networks.

Description

Procédé de segmentation d'images angiographiques
vasculaires par suivi vectoriel d'axes
et détection de contours asservie
L'invention se rapporte au domaine du traitement d'images médicales, et en particulier aux images numériques angiographiques obtenues par les systèmes de radiologie numérique.
Angiographic image segmentation method
vascular by axis vector tracking
and slave contour detection
The invention relates to the field of medical image processing, and in particular to digital angiographic images obtained by digital radiology systems.

La segmentation des images issues d'un système de radiologie, notamment numérique, consiste a extraire de l'image les éléments d'informations utiles. Pour les images angiographiques des réseaux vasculaires, cette segmentation doit permettre de retrouver dans l'image les artères et veines du réseau. The segmentation of images from a radiology system, including digital, consists of extracting the image of useful information items. For angiographic images of vascular networks, this segmentation must allow to find in the image the arteries and veins of the network.

Dans ce domaine, plusieurs méthodes ont déjà été développées pour réaliser la segmentation d'images angiographiques. Une première méthode - décrite par NGUYEN T.V. -SKLANSKY J. "A fast skeieton-Finder for coronary
Arteries", IEEE Comp. Society, n0 742, vol.1, pages 481-483,
October 1986 - utilise, pour rechercher les pixels caractéristiques, deux fenêtres de dimensions limitées, l'une de côtés parallèles aux axes de l'image, l'autre de côtés orientés à 450 de ceux de la première. Ces deux fenêtres sont déplacées sur toute l'image, et les maxima, c'est-à-dire les niveaux de gris les plus élevés, sont recherchés dans ces fenêtres suivant quatre directions (deux directions par fenêtre).Si le nombre de maxima suivant une direction donnée est suffisant, ces maxima sont validés comme faisant partie de la "crête" d'un vaisseau.
In this field, several methods have already been developed to perform the segmentation of angiographic images. A first method - described by NGUYEN TV -SKLANSKY J. "A fast skeieton-Finder for coronary
Arteries ", IEEE Comp, Society, No. 742, vol.1, pages 481-483,
October 1986 - uses, to look for characteristic pixels, two windows of limited size, one of sides parallel to the axes of the image, the other of sides oriented at 450 of those of the first. These two windows are moved over the entire image, and the maxima, that is to say the highest gray levels, are searched in these windows in four directions (two directions per window). If the number of maxima following a given direction is sufficient, these maxima are validated as part of the "crest" of a vessel.

La crête correspond à ce que l'on peut également appeler l'axe du vaisseau dans l'image. Les contours sont obtenus par application de masques, et la comparaison entre les éléments de contours et les éléments d'axe permet d'éliminer un certain nombre de fausses détections.The ridge is what can also be called the axis of the vessel in the image. The contours are obtained by applying masks, and the comparison between the contour elements and the axis elements makes it possible to eliminate a certain number of false detections.

Une autre méthode - décrite par HOFFMANN K. R et ai dans un article intitulé "Automated tracking of the vascular tree in DSA images using a sqiiare-box region of search, algorlthm", SPIE vol.626, Medicine XIV pages 326-33, 1986 consiste à détecter les points d'un vaisseau par balayage du périmètre d'un carré centré sur un point déjà connu d'un vaisseau. Pour l'initialisation, le premier point est indiqué par l'utilisateur. La dimension de la fenêtre est variable suivant le niveau de gris du point courant. Les bifurcations sont recherchées sur le périmètre du carré, à l'extérieur de la structure en cours d'étude.Les vaisseaux détectés sont marqués par des points espacés de manière variable, et la largeur des vaisseaux est obtenue par comparaison du profil réel de l'image du vaisseau avec le profil de la projection d'un élément cylindrique modélisant le vaisseau
D'une manière générale, ces méthodes conduisent à l'extraction de points caractéristiques, considérés comme des points d'axe ou des points de contour, qui n'ont pas obligatoirement de liens les uns avec les autres, si ce n'est lorsque l'on cherche une suite de maxima suivant une direction donnée dans une fenêtre prédéterminée. L'inconvénient de ces systèmes est qu'ils produisent donc des structures discontinues, et qu'il est nécessaire ensuite de les traiter, au moyen de calculs complexes, pour les rendre continus.De plus, les éléments détecteurs de contours sont généralement peu fiables et il est nécessaire, compte tenu du nombre de points, de chercher des cohérences pour aboutir à une définition à peu près correcte des coordonnées des points des vaisseaux, pour reconstituer le réseau vasculaire.
Another method - described by HOFFMANN K. R et al. In an article entitled "Automated tracking of the vascular tree in DSA images using a sqiiare-box region of search, algorlthm", SPIE vol.626, Medicine XIV pages 326-33, 1986 consists in detecting the points of a vessel by scanning the perimeter of a square centered on an already known point of a vessel. For initialization, the first point is indicated by the user. The size of the window is variable according to the gray level of the current point. Bifurcations are searched on the perimeter of the square, outside the structure being studied. The detected vessels are marked by variably spaced points, and the width of the vessels is obtained by comparison of the actual profile of the vessel. image of the vessel with the profile of the projection of a cylindrical element modeling the vessel
In a general way, these methods lead to the extraction of characteristic points, considered as axis points or contour points, which do not necessarily have links with each other, except when we look for a sequence of maxima in a given direction in a predetermined window. The disadvantage of these systems is that they therefore produce discontinuous structures, and that it is then necessary to treat them, by means of complex calculations, to make them continuous. Moreover, the edge detecting elements are generally unreliable. and it is necessary, considering the number of points, to seek coherences to arrive at an approximately correct definition of the coordinates of the points of the vessels, to reconstitute the vascular network.

L'invention a pour objet un procédé de segmentation d'images angiographiques, qui n'a pas les inconvénients sus-mentionnés et qui,# de par sa conception, conduit nécessairement à une .structure continue et fermée. Cette structure ne comporte pas de trous, même aux bifurcations. The subject of the invention is a method for segmenting angiographic images, which does not have the aforementioned disadvantages and which, by design, necessarily leads to a continuous and closed structure. This structure has no holes, even at bifurcations.

Selon l'invention, les principales caractéristiques du procédé de segmentation d'images angiographiques vasculaires sont les suivantes
- les axes des vaisseaux sont déterminés par un suivi vectoriel produisant une suite de points connexes
- le suivi de contour est directement lié aux axes déterminés dans la phase précédente, en partant de l'hypothèse que, de part et d'autre de l'axe, il existe un contour ; le suivi de contour à partir de cette ligne centrale conduit également à des suites de points connexes
- le lien étroit entre les axes et les contours, chaque contour étant affecté à un axe parfaitement identifié, permet dans une phase finale la rectification de la position des axes.
According to the invention, the main features of the method of segmentation of vascular angiographic images are as follows
- Vessel axes are determined by vector tracking producing a sequence of related points
- Contour tracking is directly related to the axes determined in the previous phase, starting from the assumption that, on either side of the axis, there is an outline; contour tracking from this center line also leads to related points suites
- The close link between the axes and the contours, each contour being assigned to a perfectly identified axis, allows in a final phase the correction of the position of the axes.

Ce procédé permet d'obtenir une très bonne précision dans les données extraites, et permet donc de constituer une base de données fiable, notamment pour la reconstruction tridimensionnelle des vaisseaux à partir d'un petit nombre d'images de projection. This method makes it possible to obtain a very good accuracy in the extracted data, and thus makes it possible to constitute a reliable database, in particular for the three-dimensional reconstruction of the vessels from a small number of projection images.

De plus, le procédé selon l'invention extrait de manière automatique et précise les vaisseaux à partir d'une radiographie numérique, sans prétraitement de l'image. In addition, the method according to the invention automatically and accurately extracts the vessels from a digital radiography, without pretreatment of the image.

Bien entendu, le procédé de segmentation selon l'invention met en oeuvre; pour certaines de ses phases; des algorithmes déjà décrits En particulier, le procédé selon l'invention utilise également une fenêtre pour la détection de points de l'axe, mais seulement pour un ensemble de points de départ. Par ailleurs, un algorithme de recherche d'un contour par programmation dynamique a déjà été décrit - par exemple par POPE. D . L et ai, dans un article intitulé "Left ventricular
Birder Recognition Using a Dynamic search algorithm, Radiology nb 155, pages 513-518, 1985 -. Le procédé selon l'invention utilise également une programmation dynamique pour la recherche des contours mais qui s'appuie sur les lignes centrales.
Of course, the segmentation method according to the invention uses; for some of its phases; In particular, the method according to the invention also uses a window for detecting points of the axis, but only for a set of starting points. Moreover, an algorithm for finding a contour by dynamic programming has already been described - for example by POPE. D. L et al, in an article entitled "Left ventricular
Birder Recognition Using a Dynamic Search Algorithm, Radiology No. 155, pp. 513-518, 1985 -. The method according to the invention also uses a dynamic programming for contour search but which relies on the central lines.

Le procédé selon l'invention est optimisé, notamment
- par affinement du critère du choix de la direction de l'exploration d'un vaisseau, du calcul, et des tests
- par l'intégration d'une procédure automatique de détection des points germes sur toute structure connexe à celle étudiée
- par la contrainte de maintien du suivi de contour par rapport à la ligne centrale
- par la connexité obtenue tant pour les axes des vaisseaux que pour les contours
- par l'affectation de tout contour à une branche parfaitement identifiée
- et la possibilité de rectification de la position de l'axe qui en découle.
The method according to the invention is optimized, in particular
- by refinement of the criterion of the choice of the direction of the exploration of a vessel, the calculation, and the tests
- by the integration of an automatic procedure for the detection of seed points on any structure related to that studied
- by the constraint of maintaining contour tracking with respect to the central line
- by the connectivity obtained both for the axes of the vessels and for the contours
- by assigning any contour to a perfectly identified branch
- And the possibility of rectification of the position of the axis that follows.

Selon l'invention, un procédé de segmentation d'images angiographiques numérisées pour l'extraction des axes et des contours de réseaux vasculaires, est caractérisé en ce qu'il comporte
- une première phase au cours de laquelle un squelette du réseau est extrait, par une méthode de suivi vectoriel des lignes centrales des vaisseaux, ou axes, recherchant, à partir de points isolés reconnus comme appartenant au réseau par vérification d'un critère Ex et affectés chacun d'une direction, le ou les points connexes suivants, dans un nombre limité de directions prédéfinies fonction de la direction affectée au point courant, et qui satisfont un critère prédéfini Cd fonction des niveaux de gris d'un ensemble de points prédéfinis,
- et une phase de détection asservie des contours s appuyant sur le squelette du réseau obtenu dans la phase précédente pour rechercher, de part et d'autre des axes, un contour également formé de suites de points connexes, correspondant à des points de transition importante du niveau de gris recherchés dans des zones prédéfinies de l'image.
According to the invention, a method of segmentation of digitized angiographic images for extraction of the axes and contours of vascular networks, is characterized in that it comprises
a first phase during which a skeleton of the network is extracted, by a vector tracking method of the central lines of the vessels, or axes, searching, from isolated points recognized as belonging to the network by verification of an Ex criterion and each having a direction, the following one or more related points, in a limited number of predefined directions depending on the direction assigned to the current point, and which satisfy a predefined criterion Cd function of the gray levels of a set of predefined points,
and a phase of dependent detection of contours based on the skeleton of the grating obtained in the preceding phase to search, on either side of the axes, an outline also formed of sequences of related points, corresponding to important transition points grayscale search in predefined areas of the image.

L'invention sera mieux comprise et d'autres caractéristiques apparaîtront à l'aide de la description qui suit en référence aux figures annexées. The invention will be better understood and other characteristics will become apparent with the aid of the description which follows with reference to the appended figures.

- Les figures 1 et 2 schématisent les différentes étapes du procédé de segmentation d'images selon l'invention;
- la figure 3 est un schéma explicatif montrant les directions d'investigation
- la figure 4 est un autre schéma explicatif illustrant les données utiles au suivi du vaisseau
- la figure 5 illustre le critère de choix de la direction
- la figure 6 illustre les vecteurs retenus pour l'établissement d'une matrice de gradients
- les figures 7a et 7b illustrent les formes des ^ zones de recherche de contours, autour d'un segment d'axe, selon l'inclinaison du segment
- la figure 8 illustre, dans le cas le plus simple le chaînage des éléments de contours
- la figure 9 illustre également le chaînage des éléments de contours dans un cas où les zones de recherche ne sont pas jointives
- la figure 10 illustre le ~ traitement du premier segment d'une branche.
FIGS. 1 and 2 schematize the various steps of the image segmentation method according to the invention;
FIG. 3 is an explanatory diagram showing the directions of investigation
FIG. 4 is another explanatory diagram illustrating the data useful for monitoring the vessel
- Figure 5 illustrates the criterion of choice of direction
FIG. 6 illustrates the vectors selected for establishing a gradient matrix
FIGS. 7a and 7b illustrate the shapes of the contour search zones, around an axis segment, according to the inclination of the segment
FIG. 8 illustrates, in the simplest case, the chaining of the contour elements
FIG. 9 also illustrates the chaining of the contour elements in a case where the search zones are not joined.
FIG. 10 illustrates the treatment of the first segment of a branch.

La description qui suit du procédé de segmentation d'images angiographiques selon l'invention donnée à titre d'exemple non limitatif fait référence aux figures 1 et 2 respectivement pour les étapes de traitement relatives à ltextraction du "squelette" du réseau vasculaire, et pour les étapes de traitement relatives au suivi des contours. The following description of the angiographic image segmentation method according to the invention given by way of non-limiting example refers to FIGS. 1 and 2 respectively for the treatment steps relating to the extraction of the "backbone" of the vascular network, and for the processing steps relating to contour tracking.

Une image obtenue par angiographie numérique, résultant du balayage d'une zone analysée par un faisceau de rayons X, est une suite de points de niveau de gris variable, par exemple entre O et 256 si les niveaux de gris sont donnés sur 8 bits. An image obtained by digital angiography, resulting from the scanning of an area analyzed by an X-ray beam, is a series of points of variable gray level, for example between 0 and 256 if the gray levels are given on 8 bits.

Ces rayons sont en effet absorbés différemment suivant les tissus traversés. Cette image est organisée en lignes, d'indice variable i, et en colonnes, d'indice variable j. D'une manière générale, la segmentation d'images angiographiques vasculaires par suivi vectoriel des axes selon l'invention consiste à extraire de cette image angiographique numérique un "squelette" qui par hypothèse est continu, et qui correspond aux axes des vaisseaux du réseau vasculaire. Puis, en partant de l'hypothèse que, de part et d'autre de chaque axe. il existe un contour du vaisseau correspondant, on recherche les contours associés par une détection asservie.These rays are indeed absorbed differently depending on the tissues crossed. This image is organized in rows, of variable index i, and in columns, of variable index j. In general, the segmentation of vascular angiographic images by vector tracking of the axes according to the invention consists in extracting from this digital angiographic image a "skeleton" which, by hypothesis, is continuous, and which corresponds to the axes of the vessels of the vascular network. . Then, starting from the assumption that, on both sides of each axis. there is a contour of the corresponding vessel, we search the associated contours by a slave detection.

Pour la création du squelette, une phase d'initialisation permet de rechercher des points dans l'image ayant une bonne probabilité d'appartenir au squelette. Du fait de la méthode d'analyse, les points appartenant au squelette sont des points de niveau de gris "maximum", c'est-à-dire dont les points voisins, lors d'un balayage d'une ligne ou d'une colonne, ont des niveaux de gris qui lui sont inférieurs. For the creation of the skeleton, an initialization phase makes it possible to look for points in the image having a good probability of belonging to the skeleton. Because of the analysis method, the points belonging to the skeleton are points of "maximum" gray level, that is to say whose neighboring points, during a scan of a line or a column, have gray levels that are lower.

Dans la description qui suit le niveau de gris associé à un point est soit le niveau absolu de gris du pixel correspondant, soit la moyenne des niveaux de gris des pixels d'un voisinage, par exemple 3x3, centré sur ce pixel; cette deuxième mesure est préférable pour s'affranchir de défauts dus au bruit. In the following description, the gray level associated with a point is either the absolute gray level of the corresponding pixel, or the average of the gray levels of the pixels of a neighborhood, for example 3 × 3, centered on this pixel; this second measurement is preferable to overcome noise defects.

Pour l'initialisation, la première phase consiste donc à rechercher des maxima sur une ligne (ou sur une colonne de l'image). Un premier balayage d'une ligne i (ou d'une colonne j) permet de détecter les points de niveau de gris maximum, qui ont donc une certaine probabilité d'appartenir à un vaisseau. For initialization, the first phase consists of looking for maxima on a line (or on a column of the image). A first scan of a line i (or of a column j) makes it possible to detect the points of maximum gray level, which therefore have a certain probability of belonging to a vessel.

La phase suivante est alors l'éventuelle validation de ces maxima détectés après une séquence de test : à partir de la moyenne des niveaux de gris dans une zone peu vascularisée de l'image, le "niveau local" de gris, est calculé pour les différents maxima détectés dans la phase préalable par différence avec cette moyenne, et en tenant compte éventuellement des niveaux des points voisins. La moyenne MOY préalablement calculée peut être par exemple 118 pour une échelle de gris à 256 niveaux. The next phase is then the possible validation of these maxima detected after a test sequence: from the average of the gray levels in a less vascularized area of the image, the "local level" of gray is calculated for the different maxima detected in the previous phase by difference with this average, and possibly taking into account the levels of the neighboring points. The averaged average MOY can be for example 118 for a gray scale with 256 levels.

Le niveau local du point détecté peut être défini de la manière suivante

Figure img00060001
The local level of the detected point can be defined as follows
Figure img00060001

M(i,j+k) étant le pixel situé sur la ligne i et sur la colonne j+k et N(i,j+k) étant son niveau absolu de gris ; on tient ainsi compte des points voisins de la même ligne dans les colonnes précédente et suivante. M (i, j + k) being the pixel located on the line i and on the column j + k and N (i, j + k) being its absolute level of gray; we thus take into account the neighboring points of the same line in the previous and next columns.

Les points de niveau de gris maximum sont retenus seulement si
- NIV1 est croissant sur un nombre prédéterminé de points consécutifs, sur une ligne,
- NIV1 devient décroissant ensuite,
- il n'y a pas de maximum détecté préalablement dans un voisinage VOIS prédéterminé de ce point.
The maximum gray level points are retained only if
- NIV1 is increasing on a predetermined number of consecutive points, on a line,
- NIV1 becomes decreasing afterwards,
there is no previously detected maximum in a predetermined VOIS neighborhood of this point.

Un maximum retenu n'appartient au squelette du réseau que s'il satisfait alors un critère d'appartenance résultant de l'étude d'un voisinage de ce maximum, ou plutôt de l'étude des voisinages de ce maximum dans les différentes directions possibles à partir de ce point : un maximum est retenu comme appartenant à la ligne d'axe du réseau si la moyenne des niveaux de gris de h points dans une direction d'investigation
o est supérieure à un seuil, S; "h " caractérise l'horizon
o d'investigation, et S est fonction de la moyenne, MOY, d'un coefficient correcteur s- prédéterminé dans l'image, et de l'écart type g du niveau de gris dans une zone peu vascularisée de l'image A partir d'un maximum retenu dans la phase préalable, M(i,j) de niveau N(i,j), les 8 directions d'investigation possibles sont représentées sur la figure 3 et notées Do à D7 avec leurs coefficients directeurs dans le sens i,m# (lignes) et dans le sens j,nx (colonnes).
A maximum retained belongs to the skeleton of the network only if it satisfies then a criterion of belonging resulting from the study of a neighborhood of this maximum, or rather of the study of the neighborhoods of this maximum in the various possible directions from this point: a maximum is retained as belonging to the axis line of the network if the average of the gray levels of h points in an investigation direction
o is greater than a threshold, S; "h" characterizes the horizon
o of investigation, and S is a function of the mean, MOY, of a s-predetermined correction coefficient in the image, and of the standard deviation g of the gray level in a zone of little vascularity of the image. of a maximum retained in the previous phase, M (i, j) of level N (i, j), the 8 possible directions of investigation are represented in FIG. 3 and denoted Do to D7 with their directional coefficients in the direction i, m # (lines) and in the direction j, nx (columns).

Le critère d'appartenance au squelette, calculé dans la direction D (x = O à 7) de coefficients directeurs mx et nx
x est alors

Figure img00070001
The skeleton criterion, calculated in the direction D (x = 0 to 7) of the mx and nx coefficients
x is then
Figure img00070001

M(i,j) est un maximum appartenant au squelette si au moins l'un des Ex, pour x = O à 7 est supérieur au seuil
x
S = MOY + s < r .
M (i, j) is a maximum belonging to the skeleton if at least one of the Ex, for x = 0 to 7 is greater than the threshold
x
S = MOY + s <r.

A partir de ces pixels validés, la phase d'initialisation se poursuit pour la détermination de l'orientation du vaisseau auquel appartient ce point validé.  From these validated pixels, the initialization phase continues for determining the orientation of the vessel to which this validated point belongs.

Soit DxO(mO,nO) la direction qui maximise E ; il est
x logique d'émettre l'hypothèse que le vaisseau suit au voisinage immédiat du pixel M(i,j) l'orientation de la droite dx ayant comme une de ses directions Dxo et comme autre direction D 8) Le suivi du vaisseau se fait alors en deux étapes, suivant les deux directions opposées de la droite dx
Ces deux directions sont donc gardées en mémoire, avec le maximum validé comme appartenant au réseau.
Let DxO (mO, nO) be the direction that maximizes E; he is
x logic to hypothesize that the vessel follows in the immediate vicinity of the pixel M (i, j) the orientation of the line dx having as one of its directions Dxo and as another direction D 8) The tracking of the vessel is done then in two steps, following the two opposite directions of the right dx
These two directions are thus kept in memory, with the maximum validated as belonging to the network.

A partir d'au moins un maximum validé, l'étape suivante de la phase d'initialisation est la création d'un fichier dit de points "germes". En effet pour obtenir le squelette continu du réseau vasculaire, il est nécessaire de disposer d'au moins un point "germe" par branche. Ce fichier de points "germes" est obtenu de la manière suivante : à partir d'un maximum validé, et par une exploration systématique du périmètre d'une fenêtre centrée sur ce maximum, le traitement consiste à rechercher tous les maxima, comme dans la première étape de la phase d'initialisation ; les maxima détectés doivent ensuite être validés, en utilisant le même test par rapport au seuil. From at least one validated maximum, the next step of the initialization phase is the creation of a so-called "seed" point file. Indeed to obtain the continuous skeleton of the vascular network, it is necessary to have at least one point "germ" per branch. This file of points "sprouts" is obtained in the following way: starting from a validated maximum, and by a systematic exploration of the perimeter of a window centered on this maximum, the treatment consists in looking for all the maxima, as in the first step of the initialization phase; the maxima detected must then be validated, using the same test with respect to the threshold.

Toute structure voisine du maximum d'origine est ainsi marquée par un point "germe". Chacun de ceux-ci est ensuite pris comme centre d'une nouvelle fenêtre, etc . . Cette méthode, utilisant le caractère arborescent du réseau garantit le marquage de toutes les branches du réseau par au moins un point "germe" à partir d'un seul maximum détecté dans la première étape de la phase d'initialisation, lors de l'analyse d'une seule ligne, ou d'une seule colonne. Any structure close to the maximum of origin is thus marked by a point "germ". Each of these is then taken as the center of a new window, etc. . This method, using the arborescent nature of the network guarantees the marking of all the branches of the network by at least one "seed" point from a single maximum detected in the first step of the initialization phase, during the analysis. one line, or one column.

Ce fichier de points "germes" étant créé, l'étape suivante de la phase d'initialisation consiste éventuellement à effectuer un classement hiérarchique de ces points "germes". Le but de ce classement est d'éviter l'arrêt de l'exploration d'un vaisseau important, suite à la rencontre d'une branche secondaire, alors que cette branche secondaire aurait déjà été détectée. De plus il est intéressant de permettre à l'utilisateur de faire apparaître les axes des vaisseaux principaux avant les axes des vaisseaux secondaires.Le critère de classement utilisé pour cette. hiérarchisation des points "germes" est le niveau de gris d'un voisinage centré sur chacun des points "germes". Ce voisinage a une dimension prédéterminée, c'est-à-dire qu'il comporte un certain nombre de points voisins du maximum validé, et les points "germes" sont alors classés dans un fichier en fonction du niveau de gris de ce voisinage. Ainsi, à la fin de cette opération le fichier définitif comporte une liste ordonnée de points classés selon les valeurs décroissantes des niveaux de gris des voisinages. This file of points "seeds" being created, the next step of the initialization phase possibly consists in a hierarchical ranking of these points "germs". The purpose of this classification is to avoid stopping the exploration of an important vessel, following the meeting of a secondary branch, while this secondary branch has already been detected. Moreover, it is interesting to allow the user to show the axes of the main vessels before the axes of the secondary vessels. The classification criterion used for this. Hierarchy of points "germs" is the gray level of a neighborhood centered on each of the points "germs". This neighborhood has a predetermined dimension, that is to say it has a number of points close to the validated maximum, and the points "seeds" are then classified in a file according to the gray level of this neighborhood. Thus, at the end of this operation the final file includes an ordered list of points classified according to the decreasing values of the gray levels of the neighborhoods.

Ces points seront les origines successives utilisées lors de la phase de suivi des vaisseaux, comme il sera expliqué cl-après.These points will be the successive origins used during the tracking phase of the vessels, as will be explained below.

La phase d'initialisation étant terminée, la phase de suivi des vaisseaux par leurs axes, destinée à établir le fichier du squelette de l'axe vasculaire peut alors commencer. The initialization phase being completed, the tracking phase of the vessels by their axes, intended to establish the skeletal file of the vascular axis can then begin.

Pour cette phase, illustrée par la figure 4 on utilise la propriété suivante : l'image d'un élément de vaisseau est approximativement équivalente à la projection d'une portion de cylindre, et elle est donc caractérisée par une ligne de crête des niveaux de gris comprise entre deux flancs de pentes sensiblement égales. Pour le suivi des vaisseaux, c'est-à-dire pour passer d'un point courant au point suivant, l'analyse utilise cette propriété. A chacun des points courants, deux décisions peuvent être prises
- soit l'arrêt de l'exploration si on arrive à l'extrémité d'un vaisseau,
- soit la poursuite du suivi du vaisseau, ce qui impose un critère de choix de la direction de déplacement pour arriver su point suivant.
For this phase, illustrated in FIG. 4, the following property is used: the image of a vessel element is approximately equivalent to the projection of a cylinder portion, and is therefore characterized by a peak line of gray between two flanks of substantially equal slopes. For vessel tracking, that is, to move from a current point to the next point, the analysis uses this property. At each of the current points, two decisions can be taken
- either the stop of the exploration if one arrives at the end of a vessel,
- or further tracking the vessel, which imposes a criterion for choosing the direction of travel to arrive at the next point.

Soit M(i,3)P 1 le pixel retenu a l'itération précédente, et soit M(1,3)P le pixel retenu a l'itération juste terminée: la direction (Dxo) P 1 a permis de passer du point déterminé à l'étape p-l au point déterminé à l'étape p.L'exploration du voisinage pour la recherche du point suivant du vaisseau n'est effectuée que suivant trois directions ~ la direction Dxo précédente et les directions D et Dxd respectivementà
xg xd respectlveme#t à gauche et à droite par rapport à la direction précédente Dxo, et dont les coefficients directeurs sont parfaitement déterminés connaissant Dxo : Dxd(md##dJ et D#g (m g ,n g) Cette limitation dans la recherche tient compte du fait qu'il ne peut y avoir un changement de direction brutal le long d'un vaisseau d'un pixel au pixel suivant.
Let M (i, 3) P 1 be the pixel retained at the previous iteration, and let M (1,3) P be the pixel retained at the iteration just completed: the direction (Dxo) P 1 made it possible to move from the point determined in step p1 at the point determined in step p.Exploration of the neighborhood for the search of the next point of the vessel is performed only in three directions ~ the previous direction Dxo and directions D and Dxd respectivelyà
xg xd respectlveme # t left and right with respect to the previous direction Dxo, and whose coefficients are perfectly determined knowing Dxo: Dxd (md ## dJ and D # g (mg, ng) This limitation in the search holds the fact that there can not be a sudden change of direction along a ship from one pixel to the next pixel.

Dans l'étape de suivi du vaisseau, le point M(i,j) ne peut donc être suivi que par ] 'un des trois points voisins situés dans ces trois directions, soit M(i+m0, j+n0), M(i+md,j+n#) et M(l+m ,j+n ), respectivement marqués M1, M2 et
g g
M3 sur la figure 4.
In the step of tracking the vessel, the point M (i, j) can only be followed by one of the three neighboring points situated in these three directions, ie M (i + m0, j + n0), M (i + md, j + n #) and M (l + m, j + n), respectively labeled M1, M2 and
gg
M3 in Figure 4.

Les critères suivants sont donc utilisés pour déterminer le suivi du vaisseau
- critère d'arrêt de l'exploration : pour chacune des trois directions x définies précédemment, Dxo, Dxg et DXd, une amplitude moyenne des niveaux de gris d'un certain nombre de points situés dans cette direction, soit ho points (c'est-à-dire jusqu'à l'horizon ho), est calculée selon le même critère Ex que précédemment, dans l'étape d'initialisation (voir formule 1 ci-dessus). L'arrêt de l'exploration est décidé si les moyennes calculées dans les trois directions sont toutes inférieures au seuil S.L'arrêt de l'exploration est également décidé s'il existe un point déjà exploré et différent du point ## MP 1(i,) dans un voisinage de dimensions 3x3 centré sur le point MP(i,j) c'est-à-dire si on rencontre une bifurcation ou un croisement avec un axe déjà détecté.
The following criteria are therefore used to determine vessel tracking
- criterion for stopping the exploration: for each of the three directions x defined previously, Dxo, Dxg and DXd, an average amplitude of the gray levels of a certain number of points situated in this direction, ie ho points (c ' that is to say up to the horizon ho), is calculated according to the same criterion Ex as previously, in the initialization step (see formula 1 above). The stop of the exploration is decided if the averages calculated in the three directions are all lower than the threshold S.The stop of the exploration is also decided if there exists a point already explored and different from the point ## MP 1 (i,) in a neighborhood of dimensions 3x3 centered on the point MP (i, j), that is to say if one encounters a bifurcation or a crossing with an axis already detected.

- choix de la direction : le critère retenu pour le choix de la direction, illustré par la figure 5, tient compte de la propriété des vaisseaux de se projeter suivant une ligne de crête des niveaux de gris compris entre deux flancs de pentes sensiblement égales; le critère de décision est formé d'une composante fonction des niveaux de gris de l'axe du vaisseau et d'une composante fonction de la différence entre les niveaux de gris de part et d'autre de l'axe, sur les bords des vaisseaux.  choice of direction: the criterion chosen for the choice of direction, illustrated by FIG. 5, takes into account the property of the vessels to project along a peak line of the gray levels comprised between two flanks of substantially equal slopes; the decision criterion consists of a gray-level function component of the vessel axis and a function component of the difference between the gray levels on either side of the axis, on the edges of the vessels.

Pour cela le critère est fonction des niveaux de gris des points situés dans la direction d'investigation et dans deux directions qui lui sont parallèles à une distance prédéterminée de l'axe.For this, the criterion is a function of the gray levels of the points situated in the direction of investigation and in two directions which are parallel to it at a predetermined distance from the axis.

La figure 5 illustre pour la première direction d'investigation Dx, les deux directions orthogonales D(x+2)mod 8 et D(x+6)mod 8 et les parallèles à une certaine distance de l'axe suppose.FIG. 5 illustrates, for the first investigation direction Dx, the two orthogonal directions D (x + 2) mod 8 and D (x + 6) mod 8 and the parallels at a distance from the assumed axis.

Le critère calculé pour le choix de la direction est alors

Figure img00110001

où - h est, comme précédemment, l'horizon d'investigation
o dans la direction d'investigation, variable selon le niveau de gris du point courant ou d'un voisinage, c'est-à-dire fonction de l'épaisseur du vaisseau, et lo est un paramètre: 1 = i à ho;
o o
- m et n sont les coefficients directeurs de la direction pour laquelle le critère est calculé,
- i' = i+m'.np et j' = j+n'.np ; i" = i+m".np et jll = i+m".np, où m', n' et m", n" sont respectivement les coefficients directeurs selon les deux directions orthogonales à la direction testée,
- h1 est l'horizon fixe d'investigation sur les bords supposés du vaisseau de part et d'autre de l'axe à une distance np de l'axe, et 11 est un paramètre: li 11 à hi. The criterion calculated for the choice of direction is then
Figure img00110001

where - h is, as before, the horizon of investigation
o in the direction of investigation, variable according to the gray level of the current point or of a neighborhood, that is to say function of the thickness of the vessel, and lo is a parameter: 1 = i to ho;
oo
m and n are the directional coefficients of the direction for which the criterion is calculated,
i '= i + m'.np and j' = j + n'.np; i "= i + m" .np and jll = i + m ".np, where m ', n' and m", n "are respectively the directional coefficients according to the two directions orthogonal to the tested direction,
- h1 is the fixed horizon of investigation on the supposed edges of the vessel on either side of the axis at a distance np from the axis, and 11 is a parameter: li 11 to hi.

- k est un coefficient de pondération prédéterminé. k is a predetermined weighting coefficient.

Cet algorithme est dit algorithme réalisant un suivi vectoriel des axes car il tient compte de pixels situés sur des vecteurs de même direction que la direction testée pour le vaisseau, le long de l'axe supposé et le long des bords. h
o l'horizon d'exploration dans le sens de l'sxe est fonction du niveau de gris du point courant, et h1 représentant le module du vecteur sur les bords, pour vérifier la symétrie du vaisseau par rapport à l'axe, est un horizon fixe comportant, par exemple quatre à six pixels.
This algorithm is called vector tracking algorithm because it takes into account pixels located on vectors in the same direction as the direction tested for the ship, along the assumed axis and along the edges. h
o the horizon of exploration in the direction of the sxe is a function of the gray level of the current point, and h1 represents the modulus of the vector on the edges, to verify the symmetry of the vessel with respect to the axis, is a fixed horizon comprising, for example four to six pixels.

La direction retenue, parmi les 3 possibles, est celle qui maximise le critère Cd. The chosen direction, among the 3 possible, is that which maximizes the criterion Cd.

Cet algorithme est peu sensible au bruit et aux irrégularités dues par exemple à la mauvaise répartition du produit de contraste dans les vaisseaux. Il permet de combler des absences d'informstion dans le cas de vaisseaux fins et faiblement contrastés, et il explore la structure sur un horizon de plusieurs points, 4 à 10 points par exemple, avant de décider du déplacement d'un pas sur l'image ; le pixel sélectionné n'a pas nécessairement le niveau de gris le plus grand parmi ceux des trois pixels possibles mais, compte tenu de l'élaborstion du critère, il est celui qui est le plus probablement situé sur l'axe du vaisseau. La procédure est répétée pour la recherche du point suivant sur l'axe du vaisseau. This algorithm is not very sensitive to noise and irregularities due for example to the poor distribution of the contrast medium in the vessels. It makes it possible to fill information gaps in the case of fine and low-contrast vessels, and it explores the structure on a horizon of several points, 4 to 10 points for example, before deciding on the displacement of a step on the picture ; the selected pixel does not necessarily have the largest gray level among those of the three possible pixels but, given the elaborstion of the criterion, it is the one most probably located on the axis of the vessel. The procedure is repeated for finding the next point on the vessel axis.

Lorsque l'arrêt de ltexploration sur une branche est décidé, le point "germe" suivant, dans la liste ordonnée des points "germes", est pris comme base pour l'exploration d'une nouvelle branche du réseau vasculaire, si un axe déjà détecté ne se trouve pas dans son voisinage. La direction prise au début du suivi d'une nouvelle branche à partir d'un point germe est l'une de celles (opposées) mises en mémoire avec le point germe, dans la phase d'initialisation. When the stop of the exploration on a branch is decided, the next point "germ", in the ordered list of the points "seeds", is taken as base for the exploration of a new branch of the vascular network, if an axis already detected is not in its vicinity. The direction taken at the beginning of the tracking of a new branch from a seed point is one of those (opposite) stored in memory with the seed point, in the initialization phase.

On obtient ainsi, lorsque le fichier des points germes est épuisé, l'ensemble des pixels constituant le squelette, c'est-à-dire les points d'axes du réseau vasculaire dans l'image. Thus, when the file of seed points is exhausted, all the pixels constituting the skeleton, that is to say the axis points of the vascular network in the image.

Cette base de données étant constituée, la phase suivante du procédé consiste à structurer cette base de façon à utiliser au mieux les données résultant de la structure du réseau, à savoir la connexité et la variation faible de direction sur chaque branche formant le réseau. Une propriété importante du suivi vectoriel des axes est en effet, comme indiqué ci-dessus, de produire une suite de points connexes. Le parcours d'une branche ne nécessite que l'exploration d'un voisinage restreint à une fenêtre 3x3 dans la mesure où par hypothèse les axes n'ont qu'un pixel d'épaisseur et sont constitués par la ligne qui joint une suite de pixels connexes. This database being constituted, the next phase of the method consists in structuring this database so as to make the best use of the data resulting from the structure of the network, namely the connectivity and the weak variation of direction on each branch forming the network. An important property of the vector tracking of the axes is indeed, as indicated above, to produce a series of related points. The path of a branch requires only the exploration of a neighborhood restricted to a 3x3 window insofar as, by hypothesis, the axes are only one pixel thick and consist of the line joining a sequence of related pixels.

La structuration de la base de données retenue pour la recherche des contours est une décomposition en branches. The structuring of the database used for the search of contours is a decomposition into branches.

Chaque branche se termine à l'extrémité d'un vaisseau, que quele point courant n'a pas de successeur, et débute à une bifurcation, c'est-à-dire où le point courant a deux successeurs. La décomposition est un peu plus complexe que la décomposition en segments (un segment est ici un élément d'axe compris entre deux bifurcations ou croisement) : le choix du chemin à la rencontre d'une bifurcation ou d'un croisement est fonction d'un critère tenant compte de la direction relative du segment suivant et du niveau de gris du début de celui-ci.Each branch ends at the extremity of a vessel, that the current point has no successor, and begins at a junction, that is to say, where the current point has two successors. The decomposition is a little more complex than the decomposition into segments (a segment is here an element of axis between two bifurcations or crossing): the choice of the path to meet a bifurcation or a crossing is a function of a criterion taking into account the relative direction of the next segment and the gray level of the beginning thereof.

Mais, les branches étant de longueurs plus importantes que les segments, le suivi de contour sans rupture est -facilité. Le processus de décomposition en branches peut être détaillé de la manière suivante
- dans un phase d'initialisation, l'origine du tronc commun est détecté par recherche dans une zone prédéterminée de l'image du squelette à niveau de gris le plus élevé (les angiographies sont prises suivant des angles connus, l'arbre sur une vue a donc toujours une position similaire);
- en parcourant la- branche incluant le tronc commun, des bifurcations sont alors détectées : chacune est le début d'une branche
- à la fin du parcours de la première branche la première bifurcation est reprise pour le parcours de la branche suivante et chaque nouvelle bifurcation est à nouveau mémorisée
- en itérant ce processus, tout l'arbre est décomposé en branches de proche en proche.
But since the branches are of longer length than the segments, contour tracking without breaking is easy. The decomposition process into branches can be detailed as follows
in an initialization phase, the origin of the common core is detected by searching in a predetermined area of the image of the highest gray level skeleton (the angiographies are taken at known angles, the tree on a view therefore always has a similar position);
- by traversing the branch including the common core, bifurcations are then detected: each is the beginning of a branch
- at the end of the course of the first branch the first fork is taken again for the course of the next branch and each new fork is memorized again
- by iterating this process, the whole tree is decomposed into branches from near to near.

La phase suivante du procédé de segmentation d'images angiographiques vasculaires selon l'invention est alors la détection asservie des contours, par programmation dynamique, à partir des axes formés par le squelette. L'axe d'un vaisseau fournit en effet une information capitale sur les contours: l'axe se trouve nécessairement entre deux contours. La zone de recherche des contours peut donc être restreinte au voisinage du squelette. Les méthodes classiques c'est-à-dire l'application de masques, de type dérivée première ou dérivée seconde, ne sont pas suffisantes pour éviter des interruptions dans les contours. Par contre l'utilisation de la programmation dynamique garantit la continuité des contours, comme le procédé utilisé dans la phase précédente garantissait la continuité des axes. The next phase of the vascular angiographic image segmentation method according to the invention is then the controlled detection of contours, by dynamic programming, from the axes formed by the skeleton. Indeed, the axis of a vessel provides vital information about the contours: the axis is necessarily between two contours. The contour search area may therefore be restricted to the vicinity of the skeleton. The classical methods, ie the application of masks, of the first derived or second derivative type, are not sufficient to avoid interruptions in the contours. On the other hand, the use of dynamic programming guarantees the continuity of the contours, as the process used in the previous phase ensured the continuity of the axes.

La programmation dynamique, définie en général, est une méthode algorithmique permettant par approches successives de trouver la solution optimale d'une partie du problème global, l'élargissement de la partie analysée conduisant à un nouveau chemin optimal à partir de la solution précédente. Pour la détection asservie des contours, l'algorithme de programmation dynamique repose sur la recherche d'un parcours optimal dans une matrice de gradients dont la dimension est fonction de la taille d'un segment, et qui comporte des valeurs représentatives des variations des niveaux de gris dans des directions compatibles avec celles de l'axe de la branche analysée.A partir de cette matrice de gradients, on crée une matrice de coûts dont les valeurs résultent du cumul des informations sur des chemins définis dans la matrice de gradients, en passant d'une ligne à la suivante par la voie qui maximise le coût cumulé ; puis le chemin optimal dans la matrice de coûts est détecté, il correspond au contour. The dynamic programming, defined in general, is an algorithmic method allowing by successive approaches to find the optimal solution of a part of the global problem, the widening of the analyzed part leading to a new optimal path starting from the previous solution. For the controlled detection of contours, the dynamic programming algorithm is based on the search for an optimal path in a matrix of gradients whose dimension depends on the size of a segment, and which includes values representative of the variations of the levels. of gray in directions compatible with those of the axis of the analyzed branch. From this matrix of gradients, a cost matrix is created whose values result from the accumulation of information on paths defined in the gradient matrix, in moving from one line to the next by the route that maximizes the cumulative cost; then the optimal path in the cost matrix is detected, it corresponds to the contour.

La première étape de cette phase de détection de contours est donc la création des matrices de gradients : MGRAD(x,y), à partir des informations stockées pour une branche telle que définie ci-dessus, une matrice de gradients étant définie pour chaque segment de la branche
Une branche est découpée en segments élémentaires de longueurs N5 pixels, NS étant variable suivant la courbure de la branche. Les coordonnées de début et de fin de chaque segment sont mémorisées. La "direction" de chaque segment est définie par les coordonnées cartésiennes de ses extrémités. Cette division en segments permet d'obtenir des zones de recherche de contours dans lesquelles la direction de l'axe varie peu et qui ont des dimensions convenables pour les calculs ultérieurs, comme expliqué ci-après.
The first step of this phase of contour detection is thus the creation of gradient matrices: MGRAD (x, y), from the stored information for a branch as defined above, a gradient matrix being defined for each segment of the branch
A branch is cut into elementary segments of length N5 pixels, NS being variable according to the curvature of the branch. The start and end coordinates of each segment are stored. The "direction" of each segment is defined by the Cartesian coordinates of its extremities. This division into segments makes it possible to obtain contour search zones in which the direction of the axis varies little and which have dimensions that are suitable for subsequent calculations, as explained below.

Compte tenu de la structure du réseau, une branche a son origine en un point de bifurcation détecté sur la ligne centrale du réseau. Suivant l'orientation de ce vaisseau dans l'espace à trois dimensions par rapport au plan image, la bifurcation réelle peut en fait se trouver en arrière, en avant, ou sur le côté du vaisseau réel donnant naissance à la branche. En conséquence la détection des bords, ou contours, à la naissance de la branche est particulièrement délicate et sera effectuée comme expliqué ci-après d'une manière particulière. Given the structure of the network, a branch has its origin in a bifurcation point detected on the central line of the network. Depending on the orientation of this vessel in three-dimensional space with respect to the image plane, the actual bifurcation may actually be behind, forward, or on the side of the actual vessel giving rise to the branch. Consequently, the detection of edges, or contours, at the birth of the branch is particularly delicate and will be performed as explained below in a particular manner.

Indépendamment de ce problème d'initialisation, la matrice de gradients comporte les paramètres suivants : du fait que le contour est toujours sensiblement parallèle à l'sue du vaisseau, le gradient est fonction de la variation du niveau de gris d'une part, et de la direction du squelette d'autre part. Regardless of this initialization problem, the gradient matrix has the following parameters: since the contour is always substantially parallel to the vessel's sue, the gradient is a function of the variation of the gray level on the one hand, and of the skeleton direction on the other hand.

Pour répondre à la première condition, le calcul du gradient est effectué sur une espace élémentaire ayant trois pixels de côté.To meet the first condition, the gradient calculation is performed on an elementary space having three side pixels.

La direction de ce gradient peut varier dans des proportions importantes notamment du fait de la présence de bifurcations ou de croisements de vaisseaux. Les valeurs de ce paramètre ne sont alors plus représentatives des variations des niveaux de gris induites par la branche étudiée mais sont en fait une combinaison de deux vecteurs
- un vecteur V1 lié à la branche en cours d'étude
- un vecteur V2 représentatif du contour du vaisseau extérieur à cette branche.
The direction of this gradient can vary in significant proportions, particularly because of the presence of bifurcations or vessel crosses. The values of this parameter are then no longer representative of the variations in the gray levels induced by the studied branch but are in fact a combination of two vectors
a vector V1 linked to the branch under study
a vector V2 representative of the contour of the vessel outside this branch.

La dimension du domaine utilisé pour le calcul du gradient (3 pixels x 3 pixels) rend illusoire la recherche d'une grande précision sur la direction du gradient obtenu, et donc de la contribution exacte du vecteur lié à la branche étudiée. Il est cependant intéressant de réduire l'influence du vecteur V2 qui tend à faire diverger le contour- par rapport à l'axe. Pour résoudre ce problème, les valeurs de la matrice de gradient sont les valeurs algébriques des projections des gradients sur la perpendiculaire au segment représentatif de l'axe. La figure 6 montre l'axe du vaisseau et un segment AB sur cet axe, le gradient G au point M(l,j), et la projection GP de ce gradient sur la perpendiculaire à l'axe du vaisseau, dont la valeur algébrique est mise en mémoire dans la matrice de gradients. The dimension of the domain used for the calculation of the gradient (3 pixels x 3 pixels) renders illusory the search for a great precision on the direction of the gradient obtained, and therefore on the exact contribution of the vector related to the branch studied. It is however interesting to reduce the influence of the vector V2 which tends to make the contour deviate with respect to the axis. To solve this problem, the values of the gradient matrix are the algebraic values of the projections of the gradients on the perpendicular to the segment representative of the axis. FIG. 6 shows the axis of the vessel and a segment AB on this axis, the gradient G at the point M (1, j), and the projection GP of this gradient on the perpendicular to the axis of the vessel, whose algebraic value is stored in the gradient matrix.

Ce paramètre étant défini, une autre étape préalable consiste à définir la zone de recherche du contour, à partir d'un segment donné. Cette zone de recherche est différente suivant l'inclinaison du segment analysé dans le plan de l'image. En effet cette zone est définie à partir des composantes du segment et à partir de la largeur maximale d'un vaisseau du réseau vasculaire en cours d'étude.Les figures 7a et 7b montrent les deux configurations possibles des espaces de recherche du contour autour du segment élémentaire analysé: sur la figure 7a, iB-3A est supérieur à iB-iA, alors que sur la figure 7b, iB#iA est supérieur 3B-iA. Si EC est l'écart maximal entre l'axe et le contour, c 'est-à-dire la largeur de l'espace de recherche d'un côté du segment, et si LG est la longueur de l'espace de recherche, les coordonnées x et y de la matrice de gradient MGRAD(x,y) sont telles que O < y < LG et O < x < EC.LG est égal à (3B-3A) . éventuellement avec une correction dans le cas de la figure 7a et LG est égal à (iB-iA) éventuellement avec une correction dans le cas de la figure 7b. La correction sera définie ci-après.  This parameter being defined, another preliminary step consists in defining the search zone of the contour, starting from a given segment. This search area is different according to the inclination of the segment analyzed in the plane of the image. Indeed this zone is defined from the components of the segment and from the maximum width of a vessel of the vascular network being studied. Figures 7a and 7b show the two possible configurations of the search spaces of the contour around the analyzed elementary segment: in FIG. 7a, iB-3A is greater than iB-iA, whereas in FIG. 7b, iB # iA is greater than 3B-iA. If EC is the maximum deviation between the axis and the contour, that is the width of the search space on one side of the segment, and if LG is the length of the search space, the x and y coordinates of the gradient matrix MGRAD (x, y) are such that O <y <LG and O <x <EC.LG is equal to (3B-3A). possibly with a correction in the case of Figure 7a and LG is equal to (iB-iA) possibly with a correction in the case of Figure 7b. The correction will be defined below.

La matrice de gradients MGRAD(x,y) contient autant de valeurs qu'il y a de points dans chaque zone de recherche de contours, et les coordonnées (i,j) des pixels centres des espaces élémentaires (3x3) de calcul des gradients dans le plan image sont stockés. The matrix of gradients MGRAD (x, y) contains as many values as there are points in each contour search zone, and the coordinates (i, j) of the center pixels of the elementary spaces (3x3) of calculation of the gradients in the image plane are stored.

Pour chaque côté du segment, on dispose d'une matrice de gradients de LG lignes et de EC colonnes contenant des valeurs fonctions de la probabilité de présence d'un contour au point (x,y) correspondant aux coordonnées (i,3) de l'image. Le problème à résoudre est alors de définir une méthode permettant de déterminer le contour le plus probable. La programmation dynamique permet de décomposer la recherche du meilleur chemin au travers de la matrice de gradients en une série de processus décisionnels élémentaires donnant le pas à effectuer . pour passer d'une ligne de la matrice à la suivante. For each side of the segment, we have a matrix of gradients of LG lines and EC columns containing function values of the probability of presence of a contour at the point (x, y) corresponding to the coordinates (i, 3) of the image. The problem to solve is then to define a method to determine the most likely contour. Dynamic programming breaks down the search for the best path through the gradient matrix into a series of basic decision-making processes that take the step to be taken. to move from one row of the matrix to the next.

La première étape de l'algorithme consiste donc å construire une matrice de coûts, MCOUT(x,y), à partir de la matrice de gradient MGRAD(x,y). Cette construction est effectuée de la manière suivante
- des chemins élémentaires sont établis entre la première et la seconde ligne de la matrice de gradients avec une déviation latérale maximale autorisée de l pixel
- chaque point de la deuxième ligne de la matrice de coûts prend la valeur cumulée correspondant au chemin de plus fort coût entre les trois chemins possibles
- le processus est répété de la ligne 2 à la ligne 3 etc.. et ce jusqu'à la dernière ligne de la matrice de gradient de cet espace de recherche.
The first step of the algorithm is therefore to construct a cost matrix, MCOUT (x, y), from the gradient matrix MGRAD (x, y). This construction is carried out as follows
elementary paths are established between the first and the second line of the gradient matrix with a maximum allowed lateral deviation of the pixel
each point in the second row of the cost matrix takes the cumulative value corresponding to the path of the highest cost between the three possible paths
the process is repeated from line 2 to line 3 and so on until the last line of the gradient matrix of this search space.

L'étape suivante est alors la construction du chemin optimal d'un élément de contour. Cette construction se fait dans le sens inverse du cumul des valeurs dans la matrice de coûts
- à partir de la dernière ligne de la matrice de coûts on cherche le maximum correspondant au chemin optimal
- la recherche du chemin jusqu'à la ligne précédente se fait en sélectionnant de proche en proche le maximum parmi les trois points les plus proches
- la procédure est renouvelée jusqu la première ligne de la matrice de coûts. Elle est arrêtée si l'on atteint la colonne extérieure de la matrice de coûts
- les coordonnées de fin de chemin optimal sont mémorisées.
The next step is then to construct the optimal path of a contour element. This construction is in the opposite direction of the accumulation of values in the cost matrix
- from the last line of the cost matrix we look for the maximum corresponding to the optimal path
- The search for the path to the previous line is done by selecting from one to the next the maximum among the three nearest points
- the procedure is repeated up to the first line of the cost matrix. It is stopped if the outer column of the cost matrix is reached
- the optimum end-of-path coordinates are stored.

Les opérations décrites ci-dessus permettent de rechercher, dans une zone de recherche prédéfinie, le chemin optimal d'un élément de contours. Il reste alors une étape ultérieure qui consiste à relier entre eux les éléments de contours ainsi détectés. Cette opération est le chaînage des éléments de contours. Plusieurs cas sont à distinguer selon le rang du segment dans la branche. Pour simplifier l'exposé on décrit d'abord ci-après le cas d'un segment intermédiaire de la branche
La division d'une branche en segments ordonnés avait pour but de réduire les dimensions du graphe de recherche du chemin optimal et de faciliter le maintien de la contrainte sur les positions relatives des axes et des contours.En effet si les segments sont trop longs, c'est-à-dire si la décomposition est insuffisante, l'hypothèse selon laquelle un élément de contour existe de part et d'autre de l'axe n'est plus vérifiée obligatoirement, notamment lorsque la direction du vaisseau varie notablement ; si le segment est trop long la direction du segment, seulement définie par ses extrémités, serait telle que les deux contours se trouveraient sur une même zone de recherche. Mais, du fait de cette décomposition, il est nécessaire alors de "chaîner" les contours sans créer de discontinuités aux points de raccordement.
The operations described above make it possible to search in a predefined search area for the optimal path of an outline element. There then remains a subsequent step of connecting together the contour elements thus detected. This operation is the chaining of the contour elements. Several cases are to be distinguished according to the rank of the segment in the branch. In order to simplify the description, the case of an intermediate segment of the branch is first described below.
The division of a branch into ordered segments was intended to reduce the dimensions of the search graph of the optimal path and to facilitate the maintenance of the constraint on the relative positions of the axes and contours. Indeed, if the segments are too long, that is to say, if the decomposition is insufficient, the assumption that a contour element exists on either side of the axis is no longer necessarily verified, especially when the direction of the vessel varies significantly; if the segment is too long the direction of the segment, only defined by its extremities, would be such that the two outlines would be on the same search area. But, because of this decomposition, it is necessary then to "chain" the contours without creating discontinuities at the connection points.

Du fait de la méthode de détection des axes constituant le squelette du réseau vasculaire, tout segment a un successeur excepté si l'on se trouve à l'extrémité d'un vaisseau. Par conséquent les coordonnées de fin d'un segment correspondent aux coordonnées de début du segment suivant. De ce fait, il devra en être de même pour les contours, un élément de contour ayant nécessairement une coordonnée de fin identique à la coordonnée de début de l'élément de contours correspondant au segment suivant. Because of the method of detection of the axes constituting the skeleton of the vascular network, any segment has a successor except if one is at the end of a vessel. Therefore, the end coordinates of a segment correspond to the start coordinates of the next segment. Therefore, it will be the same for the contours, a contour element necessarily having an end coordinate identical to the start coordinate of the contour element corresponding to the next segment.

Le cas le plus simple pour le chaînage des segments et des contours correspondants, est représenté sur la figure 8: les zones de recherche de contours sont jointives du fait que leurs largeurs sont parallèles (sur la figure 8 dans le sens de l'axe des i). Dans ce cas pour les segments successifs Si et le ledébut du contour associé à une zone de recherche d'un côté de Si+1 est la fin du contour associé à la zone de recherche précédente du même côté de Si : DSi+1 = FSI et il en est de même pour les zones de recherche de l'autre côté des segments. The simplest case for the chaining of the segments and the corresponding contours is shown in FIG. 8: the contour search zones are joined because their widths are parallel (in FIG. 8 in the direction of the axis of the contours). i). In this case for the successive segments Si and the edge start of the contour associated with a search zone on one side of Si + 1 is the end of the contour associated with the previous search zone on the same side of Si: DSi + 1 = FSI and it is the same for the search areas on the other side of the segments.

Le cumul des valeurs dans la matrice de coûts,
MCOUT(x, y) se fait normalement en sens inverse du parcours de la branche, c'est-à-dire en partant de l'extrémité de la branche. Ainsi, sur la figure 8 le cumul des valeurs se fera de FS. à DS. (de la fin au début du segment), le parcours de la
I i branche étant effectué de DS. à FS ; il en est de même pour le
I i segment Si+1 (cumul de FSi+1 à DSi+i et parcourt de DSi+1 à FS1+1). La dernière ligne de la matrice MGRADi+i liée au segment Si+1 correspond à la verticale passant par DSi+1.
Cumulative values in the cost matrix,
MCOUT (x, y) is normally in the opposite direction of the path of the branch, that is to say starting from the end of the branch. Thus, in FIG. 8 the sum of the values will be FS. to DS. (from the end to the beginning of the segment), the route of the
I i branch being performed from DS. at FS; it is the same for the
I i segment Si + 1 (cumulative FSi + 1 to DSi + i and goes from DSi + 1 to FS1 + 1). The last line of the matrix MGRADi + i linked to the segment Si + 1 corresponds to the vertical passing through DSi + 1.

Compte tenu de la procédure utilisée, le maximum sur la dernière ligne de la matrice MCOUT. ne se trouve pas nécessairement confondu avec la fin du contour associé au segment précédent, FC.. Le maximum sur la ligne ymax-l de MCOUTi+1 peut également être à plus de 1 point à gauche ou à droite de FC..Given the procedure used, the maximum on the last line of the MCOUT matrix. is not necessarily confused with the end of the contour associated with the previous segment, FC .. The maximum on the line ymax-l of MCOUTi + 1 can also be more than 1 point to the left or right of FC.

Mais la continuité du contour est privilégiée : le chemin dans la matrice de coût caractérisant le contour peut donc pour deux segments successifs être légèrement différent du chemin optimal, la contrainte de connexité des points du chemin étant maintenue sur tout le parcours.But the continuity of the contour is preferred: the path in the cost matrix characterizing the contour can therefore for two successive segments be slightly different from the optimal path, the connectivity constraint of the points of the path being maintained throughout the path.

Par ailleurs lorsque la direction du segment de varie par rapport à celle du segment précédent Si de telle façon que l'on passe de #i > bj pour Si, à a i < #j pour Si+1, comme représenté sur la figure 9 (ou inversement de # i < # j à #i > #j), les deux zones de recherche passant par les extrémités des segments ne sont plus jointives limites parallèles å j pour Si et parallèles à i pour Si+1. Dans ce cas
- le point de fin de contour associé à Si, FCi n'est pas sur la première ligne de la matrice de gradients MGRADi, qui est la ligne passant par FSi,
- d'un côté du segment, la position du point de contour associé à Si, FCi, début du contour associé à Si+1, DCi+1, entraîne la réduction du nombre de lignes de MGRADî+i de L
LG = (jmax-jmin)+AL avec bL < O.
On the other hand, when the direction of the segment varies with respect to that of the preceding segment Si so that we pass from #i> bj for Si, to ai <#j for Si + 1, as represented in FIG. or conversely from # i <# j to #i>#j), the two search zones passing through the ends of the segments are no longer contiguous parallel limits å j for Si and parallel to i for Si + 1. In that case
the end point of contour associated with Si, FCi is not on the first line of the gradient matrix MGRADi, which is the line passing through FSi,
on one side of the segment, the position of the contour point associated with Si, FCi, beginning of the contour associated with Si + 1, DCi + 1, leads to the reduction of the number of lines of MGRADi + i of L
LG = (jmax-jmin) + AL with bL <O.

- Par contre, de l'autre côté, la position du point de fin de contour associée à Si, F'C1, nécessite une augmentation du nombre de lignes de MGRAD' d'une valeur fl L', pour que
F'C. soit inclus dans la zone de recherche associée au segment suivant Si+1:
LG = (jmax-jmln) + ss L avec tL > O.
On the other hand, on the other hand, the position of the end of contour point associated with Si, F'C1, requires an increase in the number of lines of MGRAD 'of a value fl L', so that
F'c. is included in the search box associated with the following segment Si + 1:
LG = (jmax-jmln) + ss L with tL> O.

Pour résoudre ce problème de continuité des contours, les perfectionnements suivants sont apportés
- Lors de la phase de cumul des valeurs dans MCOUT si, à la ligne FS. , il n'y a pas de point suffisamment consistant avec la présence d'un contour, cette ligne est rejetée. Il en est de même pour les lignes suivantes jusqu'à la rencontre d'une valeur de gradient projeté supérieure à un seuil : toutes les lignes suivantes sont alors prises en considération.
To solve this problem of continuity of contours, the following improvements are made
- During the accumulation phase of the values in MCOUT if, on the FS line. there is no sufficiently consistent point with the presence of an outline, this line is rejected. The same is true for the following lines until a projected gradient value exceeds a threshold: all the following lines are then taken into consideration.

- Lors du parcours du chemin, si celui-ci approche l'extrémité d'une ligne (x = xmax - 1) dans MCOUT(x,y), le contour est considéré comme sortant du champ du fait d'une courbure. Le dernier point validé est pris comme point terminal du contour Ci,FCi et comme point initial du contour Ci+1,DCi+l, et ce point définit également la dernière ligne de la matrice MGRAD. (comme représenté sur la figure 8). - When traversing the path, if it approaches the end of a line (x = xmax - 1) in MCOUT (x, y), the contour is considered as leaving the field because of a curvature. The last validated point is taken as the end point of the contour Ci, FCi and as the initial point of the contour Ci + 1, DCi + 1, and this point also defines the last line of the matrix MGRAD. (as shown in Figure 8).

La description ci-dessus explique le suivi des contours pour des segments quelconques des branches à l'exception des premiers. En effet leurs origines sont des bifurcations dont les positions sont définies de manière imprécise par le suivi des axes lors de l'obtention du squelette ; le début réel des contours peut être soit au bord du vaisseau donnant naissance à une branche, soit superposé à une partie de ce vaisseau, ceci suivant les directions relatives du vaisseau dans ltespace 3D et dans le plan de projection. En conséquence la détection des contours est plus fiable à une certaine distance des bifurcations. The above description explains contour tracking for any segments of the branches except the first ones. Indeed their origins are bifurcations whose positions are defined imprecisely by the tracking of the axes when obtaining the skeleton; the actual start of the contours can be either at the edge of the vessel giving rise to a branch, or superimposed on a part of this vessel, this according to the relative directions of the vessel in the 3D space and in the projection plane. As a result, contour detection is more reliable at a distance from bifurcations.

Pour cette raison, et seulement pour le premier segment de chaque branche, le procédé ci-dessus est conservé, à l'exception du sens de cumul des valeurs et du sens de parcours du chemin dans la matrice de coût qui sont inversés par rapport à ceux décrits ci-dessus, comme indiqués sur la figure 10 qui représente une branche Bn avec son axe et ses contours et une branche Bm prenant naissance au point de bifurcation Bif sur l'axe de Bn : pour S1 le cumul des valeurs se fait à partir de vers la fin du segment FS i et cette opération ne commence qu'à partir de la première ligne où MGRAD contient au moins une valeur de gradient projeté supérieure à un seuil et donc caractérisant éventuellement un point de contour.Par contre le parcours du chemin dans MCOUT est effectué à partir du début de contour associé à S 2,DC2 même si celui-ci ne coïncide pas exactement avec FC1 (maximum du cumul), pour les raisons exposées ci-dessus. For this reason, and only for the first segment of each branch, the above method is retained, except for the direction of cumulation of the values and direction of the path in the cost matrix that are inverted with respect to those described above, as shown in FIG. 10, which represents a branch Bn with its axis and contours and a branch Bm originating at the point of bifurcation Bif on the axis of Bn: for S1 the accumulation of values is done at from the end of the segment FS i and this operation starts only from the first line where MGRAD contains at least one projected gradient value greater than a threshold and therefore possibly characterizing a contour point. path in MCOUT is carried out from the beginning of contour associated with S 2, DC2 even if this one does not coincide exactly with FC1 (cumulation maximum), for the reasons explained above.

On obtient ainsi du fait de la méthode des contours continus directement liés aux axes définis dans la phase préalable. Thus, due to the method of the continuous contours directly related to the axes defined in the prior phase.

Une étape finale éventuelle peut alors consister à corriger la position des axes en fonction des contours ainsi détectés, notamment si dans un traitement d'images ultérieur les données relatives aux axes sont utilisées, par exemple pour une reconstruction en trois dimensions du réseau vasculaire à partir d'images de projection, les données utiles de ces images de projection étant limitées aux axes. Pour cette étape finale, il suffit de décaler l'axe d'un nombre de pixels tels qu'il se situe en position médiane par rapport aux deux contours précédemment définis. A possible final step may then be to correct the position of the axes according to the contours thus detected, especially if in a subsequent image processing the data relating to the axes are used, for example for a three-dimensional reconstruction of the vascular network from projection images, the useful data of these projection images being limited to the axes. For this final step, it is sufficient to shift the axis of a number of pixels such that it is in the middle position with respect to the two previously defined outlines.

Un tel procédé réalise une segmentation fiable et très efficace des images radiographiques pour toutes les applications d'analyse de réseaux vasculaires, par hypothèse continus.  Such a method achieves a reliable and highly efficient segmentation of X-ray images for all vascular network analysis applications, which is assumed to be continuous.

Claims (12)

REVENDICATIONS 1. Procédé de segmentation d'images angiographiques numérisées pour l'extraction des axes et des contours de réseaux vasculaires, caractérisé en ce-qu'il comporte 1. A method of segmentation of digitized angiographic images for extraction of the axes and contours of vascular networks, characterized in that it comprises - une première phase au cours de laquelle un squelette du réseau est extrait par une méthode de suivi vectoriel des lignes centrales des vaisseaux, ou axes, recherchant, à partir de points isolés reconnus comme appartenant au réseau par vérification d'un critère Ex et affectés chacun d'une direction, le ou les points connexes suivants, dans un nombre limité de directions prédéfinies fonction de la direction affectée au point courant, et qui satisfont un critère prédéfini Cd fonction des niveaux de gris d'un ensemble de points prédéfinis, a first phase during which a skeleton of the network is extracted by a vector tracking method of the central lines of the vessels, or axes, searching, from isolated points recognized as belonging to the network by verification of an Ex criterion and affected each of a direction, the following one or more related points, in a limited number of predefined directions depending on the direction assigned to the current point, and which satisfy a predefined criterion Cd function of the gray levels of a set of predefined points, - et une phase de détection asservie des contours s'appuyant sur le squelette du réseau obtenu dans la phase précédente pour rechercher, de part et d'autre des axes, un contour également formé de suites de points connexes, correspondant à des points de transition importante du niveau de gris, recherchés dans des zones prédéfinies de l'image. and a phase of controlled detection of contours based on the skeleton of the grating obtained in the preceding phase to search, on either side of the axes, an outline also formed of sequences of related points corresponding to transition points gray level, searched in predefined areas of the image. 2. Procédé selon la revendication 1, caractérisé en ce que la phase d'extraction du squelette comporte une phase d'initialisation au cours de laquelle est constitué un ensemble de points germes marquant de façon certaine toutes les branches du réseau, ces points étant reconnus comme appartenant au squelette du réseau si, dans au moins une direction, définie par le point testé et l'un de ses voisins, le critère Ey est 2. Method according to claim 1, characterized in that the phase of extraction of the skeleton comprises an initialization phase during which is formed a set of germ points clearly marking all the branches of the network, these points being recognized as belonging to the backbone of the network if, in at least one direction, defined by the tested point and one of its neighbors, the criterion Ey is
Figure img00220001
Figure img00220001
où h, horizon d'investigation paramétré par 1, est égal à un nombre prédéfini de pixels dans la direction d'investigation D where h, horizon of investigation parameterized by 1, is equal to a predefined number of pixels in the direction of investigation D x de coefficients directeurs mx et nx, i et j sont les coordonnées du point courant M(i,j) dans l'image, et N(i,j) son niveau de gris ; la direction qui maximise Ex étant affectée au point connexe du point courant dans cette- direction reconnu comme appartenant au squelette du réseau. x of directional coefficients mx and nx, i and j are the coordinates of the current point M (i, j) in the image, and N (i, j) its gray level; the direction which maximizes Ex being assigned to the connected point of the current point in that direction recognized as belonging to the skeleton of the network.
3. Procédé selon la revendication 2, caractérisé en ce que les points testés pour la constitution de l'ensemble des points germes sont, dans une phase initiale des pixels correspondant à des maxima de niveau de gris le long d'une droite dans l'image, puis les pixels correspondant à des maxima de niveau de gris ~ sur le pourtour de fenêtres successivement centrées sur les points germes précédemment retenus, toutes les branches du réseau étant ainsi marquées au moins d'un point germe. 3. Method according to claim 2, characterized in that the test points for the constitution of the set of seed points are, in an initial phase of the pixels corresponding to maxima of gray level along a line in the image, then the pixels corresponding to maxima of gray level ~ on the perimeter of windows successively centered on the germ points previously retained, all the branches of the network thus being marked at least by a seed point. 4. Procédé selon la revendication 3, caractérisé en ce qu'un point courant est retenu comme correspondant à un maximum de niveau de gris le long d'une portion de ligne ou de colonne d'image pour un maximum du niveau local de gris, ce niveau local étant défini comme la moyenne des niveaux absolus, de gris de trois pixels consécutifs sur la ligne ou la colonne, éventuellement diminué du niveau moyen d'une zone peu vascularisée de l'image, ce niveau local étant croissant sur un nombre prédéterminé de pixels consécutifs, puis devenant décroissant après le pixel retenu. A method according to claim 3, characterized in that a current point is retained as corresponding to a gray level maximum along an image line or column portion for a maximum of the local level of gray, this local level being defined as the average of the absolute levels, of gray of three consecutive pixels on the line or the column, possibly diminished of the average level of a zone little vascularized of the image, this local level being increased on a predetermined number consecutive pixels, then becoming decreasing after the pixel retained. 5. Procédé selon l'une des revendications 2 à 4, caractérisé en ce que l'ensemble des points germes est classé par valeurs décroissantes des niveaux de gris de voisinages centrés sur ces points germes, pour former un fichier ordonné des points germes. 5. Method according to one of claims 2 to 4, characterized in that the set of seed points is classified by decreasing values of neighboring gray levels centered on these seed points, to form an ordered file of seed points. 6. Procédé selon la revendication 1, caractérisé en ce que le suivi des axes pour l'obtention du squelette est réalisé en sélectionnant, à partir d'un point précédemment retenu, seulement trois directions de recherche possibles : la direction 6. Method according to claim 1, characterized in that the tracking of the axes for obtaining the skeleton is achieved by selecting, from a previously selected point, only three possible search directions: the direction Do afffectée au point courant précédent et les deux directions les plus voisines de part et d'autre de la direction Do, soientDo afffectée at the previous point and the two nearest directions on both sides of the direction Do, Dg et Dd, le point connexe suivant s'il existe étant nécessairement dans l'une de ces trois directions, la suite des points connexes étant interrompue par reconnaissance d'uneDg and Dd, the following related point, if any, necessarily being in one of these three directions, the sequence of related points being interrupted by recognition of a
Figure img00240001
Figure img00240001
est inférieur à un seuil S pour les trois directions de recherche possibles, où h est l'horizon d'investigation égal à is less than a threshold S for the three possible search directions, where h is the investigation horizon equal to o un nombre prédéfini de pixels dans la direction d'investigation D de coefficients directeurs mx et n I i et j les coordonnées a predefined number of pixels in the direction of investigation D of direction coefficients mx and n I i and j the coordinates x du point courant et N(l+mxl,i+nxl) le niveau de gris des pixels successifs de coordonnées (i+m#l,j+n#l).  x from the current point and N (l + mx1, i + nx1) the gray level of successive pixels of coordinates (i + m # l, j + n # 1).
7. Procédé selon la revendication 6, caractérisé en ce que la poursuite du suivi, lorsque le critère E est supérieur 7. Method according to claim 6, characterized in that the continuation of the follow-up, when the criterion E is greater x au seuil S pour au moins l'une des trois directions, conduit à la sélection du point connexe suivant parmi les trois points possibles, en utilisant un critère de choix fonction d'une part de la persistance d'un niveau de gris important caractérisant l'axe d'une crête de vaisseau dans la direction d'investigation et d'autre part d'une symétrie suffisante de part et d'autre de la direction d'investigation, sur les bords des vaisseaux, parallèlement à la direction d'investigation. x at the threshold S for at least one of the three directions, leads to the selection of the next connected point among the three possible points, using a criterion of choice function on the one hand the persistence of a significant gray level characterizing the axis of a ship's crest in the direction of investigation and, on the other hand, of a sufficient symmetry on either side of the direction of investigation, on the edges of the vessels, parallel to the direction of investigation. 8. Procédé selon la revendication 7, caractérisé en ce que le point connexe suivant est retenu dans la direction qui maximise le critère Cd tel que 8. Method according to claim 7, characterized in that the next connected point is held in the direction which maximizes the criterion Cd such that
Figure img00240002
Figure img00240002
h étant l'horizon d'investigation paramétré par 1 dans la h being the investigation horizon parameterized by 1 in the o o direction d'investigation de coefficients directeurs m et n, h étant un horizon fixe paramétré par 11; (m',n') et (m",n") étant les coefficients directeurs des directions orthogonales à la direction d'investigation, et i', j', i", j" étant tels que o o direction of investigation of directional coefficients m and n, h being a fixed horizon parametrized by 11; (m ', n') and (m ", n") being the directional coefficients of the directions orthogonal to the direction of investigation, and i ', j', i ", j" being such that i' = i+m'.np ; i" = i+m".np ;  i '= i + m'.np; i "= i + m" .np; jt = j+n'.np ; j" = j+n".np où np est l'écart en nombre de pixels entre la ligne d'axe et les lignes des bords, i et j étant les coordonnées du point de départ du test.  jt = j + n.np; j "= j + n" .np where np is the number of pixels between the axis line and the edge lines, where i and j are the coordinates of the starting point of the test.
9. Procédé selon la revendication 1, caractérisé en ce que pour chacun des points du squelette du réseau, une base de données comporte ses coordonnées, le niveau de gris calculé par la moyenne des niveaux dans un voisinage centré sur ce point, et la direction qui lui est affectée, et en ce que cette base de données est structurée en branches définies entre une extrémité et une origine pour la branche principale et entre une extrémité et un point de bifurcation pour les autres branches, le critère de détermination de la continuation d'une branche à un point de bifurcation ou de croisement tenant compte des directions affectées aux points suivants par rapport à la direction précédente, et des niveaux de gris de ces points suivants. 9. Method according to claim 1, characterized in that for each of the points of the skeleton of the network, a database has its coordinates, the gray level calculated by the average of the levels in a neighborhood centered on this point, and the direction assigned to it, and in that this database is structured in branches defined between one end and one origin for the main branch and between one end and a branch point for the other branches, the criterion for determining the continuation of a branch at a junction or crossing point taking into account the directions assigned to the following points in relation to the preceding direction, and the gray levels of these following points. 10. Procédé selon la revendication 9, caractérisé en ce que la détection asservie des contours s'appuyant sur le squelette du réseau met en oeuvre une programmation dynamique pour la recherche de ces contours dans des zones de dimensions variables situées de part et d'autre des axes du réseau. 10. Method according to claim 9, characterized in that the slave detection contours based on the skeleton of the network implements a dynamic programming for the search of these contours in areas of varying sizes located on either side axes of the network. 11. Procédé selon la revendication 10, caractérisé en ce que, pour la mise en oeuvre d'une programmation dynamique, chaque branche est divisée en segments de longueur variable suivant la courbure locale de la branche, et de coordonnées de début et de fin connues, 11. The method of claim 10, characterized in that, for the implementation of a dynamic programming, each branch is divided into segments of variable length according to the local curvature of the branch, and known start and end coordinates , - en ce que les zones de recherche de part et d'autre de l'axe ont comme longueur la longueur des segments et comme largeur une largeur variable en fonction du niveau de gris moyen du segment et supérieure à l'écart maximum entre l'axe et le contour, in that the search zones on either side of the axis have the length of the segments as length and the width as a variable width according to the average gray level of the segment and greater than the maximum distance between the segment; axis and contour, - en ce qu'une matrice de- gradients représentatifs des varaitions de gris des points, ou de leurs voisinages, relativement à la direction du segment est établie pour chaque zone de recherche, in that a matrix of gradients representative of the gray variations of the points, or their neighborhoods, relative to the direction of the segment is established for each search area, - en ce qu 'une matrice de coûts résultant du cumul des valeurs de gradients, le long des chemins élémentaires d'une ligne de la matrice de gradients à la suivante, selon le chemin de plus fort coût et avec une déviation latérale maximale autorisée de un point est établie, in that a cost matrix resulting from the accumulation of gradient values, along the elementary paths of one line of the gradient matrix to the next, according to the path of the highest cost and with a maximum authorized lateral deviation of a point is established, - et en ce que le chemin optimal est suivi à partir du maximum de la dernière ligne de la matrice de coûts jusqu la première ligne, en sélectionnant à chaque étape le maximum parmi les trois points les plus proches de la ligne précédente, la procédure étant arrêtée éventuellement avant la première ligne lorsque le point se trouve appartenir à la limite de la zone de recherche. and in that the optimal path is followed from the maximum of the last row of the cost matrix to the first line, by selecting at each step the maximum of the three points closest to the preceding line, the procedure being stopped before the first line when the point is at the edge of the search area. 12. Procédé selon la revendication 11, caractérisé en ce que pour un segment quelconque d'une branche, à l'exception d'un premier segment de branche ayant pour origine un point de bifurcation, le sens du cumul dans la matrice de gradients pour construire la matrice de coûts part de l'extrémité du segment pour aller vers son origine, le sens de construction du chemin optimal caractérisant le contour partant de la ligne de la matrice associée au début du segment pour arriver à la ligne de la matrice associée à son extrémité, ces sens de cumul et de recherche du chemin optimal étant inversés pour les premiers segments des branches pour tenir compte des incertitudes liées aux bifurcations.  12. Method according to claim 11, characterized in that for any segment of a branch, with the exception of a first branch segment originating from a bifurcation point, the direction of accumulation in the gradient matrix for constructing the cost matrix starts from the end of the segment to go to its origin, the direction of construction of the optimal path characterizing the contour starting from the line of the matrix associated with the beginning of the segment to arrive at the line of the matrix associated with its end, these senses of accumulation and search of the optimal path being reversed for the first segments of the branches to take into account the uncertainties related to the bifurcations.
FR8716156A 1987-11-23 1987-11-23 METHOD FOR SEGMENTATION OF VASCULAR ANGIOGRAPHIC IMAGES BY VECTOR TRACKING OF AXES AND CONTROLLED CONTOUR DETECTION Expired - Lifetime FR2623642B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR8716156A FR2623642B1 (en) 1987-11-23 1987-11-23 METHOD FOR SEGMENTATION OF VASCULAR ANGIOGRAPHIC IMAGES BY VECTOR TRACKING OF AXES AND CONTROLLED CONTOUR DETECTION

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR8716156A FR2623642B1 (en) 1987-11-23 1987-11-23 METHOD FOR SEGMENTATION OF VASCULAR ANGIOGRAPHIC IMAGES BY VECTOR TRACKING OF AXES AND CONTROLLED CONTOUR DETECTION

Publications (2)

Publication Number Publication Date
FR2623642A1 true FR2623642A1 (en) 1989-05-26
FR2623642B1 FR2623642B1 (en) 1990-03-09

Family

ID=9357036

Family Applications (1)

Application Number Title Priority Date Filing Date
FR8716156A Expired - Lifetime FR2623642B1 (en) 1987-11-23 1987-11-23 METHOD FOR SEGMENTATION OF VASCULAR ANGIOGRAPHIC IMAGES BY VECTOR TRACKING OF AXES AND CONTROLLED CONTOUR DETECTION

Country Status (1)

Country Link
FR (1) FR2623642B1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2666673A1 (en) * 1990-09-06 1992-03-13 Gen Electric Cgr METHOD FOR DETERMINING THE CHARACTERISTICS OF A VASCULAR STRUCTURE.
EP0521559A1 (en) * 1991-07-03 1993-01-07 Koninklijke Philips Electronics N.V. Contour extraction in multi-phase, multislice cardiac MRI studies by propagation of seed contours between images
EP0573115A1 (en) * 1992-06-03 1993-12-08 Laboratoires D'electronique Philips S.A.S. Contour-extracting image processing system and earth sensor incorporating the same
EP0668570A1 (en) * 1994-02-16 1995-08-23 Laboratoires D'electronique Philips S.A.S. Image processing method for locally determining the center and half-length of contrasting objects on a background and apparatus to carry out the method
EP0840252A1 (en) * 1996-10-16 1998-05-06 Koninklijke Philips Electronics N.V. Digital image-processing method for the automatic extraction of ribbon-like objects
WO1999052068A1 (en) * 1998-04-03 1999-10-14 Koninklijke Philips Electronics N.V. Image processing method and system involving contour detection steps
WO2001059707A1 (en) * 2000-02-11 2001-08-16 The Government Of The United States Of America, As Represented By The Secretary, Dept. Of Health And Human Services Vessel delineation in magnetic resonance angiographic images
WO2002041781A3 (en) * 2000-11-27 2003-11-13 Ge Med Sys Global Tech Co Llc Method and apparatus for analysis of blood vessel images
WO2003030101A3 (en) * 2001-10-03 2004-03-25 Retinalyze As Detection of vessels in an image

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
8TH INTERNATIONAL CONFERENCE ON PATTERN RECOGNITION, vol. 1, 1986, pages 481-483, IEEE; T.V.NGUYEN et al.: "A fast skeleton-finder for coronary arteries" *
IEEE TRANSACTIONS ON MEDICAL IMAGING, vol. MI-3, no. 3, septembre 1984, pages 131-141, IEEE, New York, US; J.H.C.REIBER et al.: "Coronary artery dimensions from cineangiograms - Methodology and validation of a computer-assisted analysis procedure" *
IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, vol. PAMI-5, no. 1, janvier 1983, pages 8-13, IEEE, New York, US; C.W.K.GRITTON et al.: "Boundary location from an initial plan: The bead chain algorithm" *
RADIOLOGY, vol. 155, no. 2, mai 1985, 71st Scientific Assembly and Annual Meeting, Chicago, 17-22 novembre 1985, pages 513-518, RSNA; D.L.POPE et al.: "Left ventricular border recognition using a dynamic search algorithm" *
SPIE, vol. 626, Medicine XIV/PACS IV, 1986, pages 326-333; K.R.HOFFMANN et al.: "Automated tracking of the vascular tree in DSA images using a double-square-box region-of-search algorithm" *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2666673A1 (en) * 1990-09-06 1992-03-13 Gen Electric Cgr METHOD FOR DETERMINING THE CHARACTERISTICS OF A VASCULAR STRUCTURE.
EP0475818A1 (en) * 1990-09-06 1992-03-18 General Electric Cgr S.A. Process for determining features of a vascular structure
EP0521559A1 (en) * 1991-07-03 1993-01-07 Koninklijke Philips Electronics N.V. Contour extraction in multi-phase, multislice cardiac MRI studies by propagation of seed contours between images
EP0573115A1 (en) * 1992-06-03 1993-12-08 Laboratoires D'electronique Philips S.A.S. Contour-extracting image processing system and earth sensor incorporating the same
FR2692060A1 (en) * 1992-06-03 1993-12-10 Philips Electronique Lab Contour extractor type image processing device and earth sensor comprising such an extractor.
EP0668570A1 (en) * 1994-02-16 1995-08-23 Laboratoires D'electronique Philips S.A.S. Image processing method for locally determining the center and half-length of contrasting objects on a background and apparatus to carry out the method
EP0840252A1 (en) * 1996-10-16 1998-05-06 Koninklijke Philips Electronics N.V. Digital image-processing method for the automatic extraction of ribbon-like objects
WO1999052068A1 (en) * 1998-04-03 1999-10-14 Koninklijke Philips Electronics N.V. Image processing method and system involving contour detection steps
WO2001059707A1 (en) * 2000-02-11 2001-08-16 The Government Of The United States Of America, As Represented By The Secretary, Dept. Of Health And Human Services Vessel delineation in magnetic resonance angiographic images
US7003144B2 (en) 2000-02-11 2006-02-21 The United States Of America As Represented By The Department Of Health And Human Services Vessel delineation in magnetic resonance angiographic images
WO2002041781A3 (en) * 2000-11-27 2003-11-13 Ge Med Sys Global Tech Co Llc Method and apparatus for analysis of blood vessel images
US6829379B1 (en) 2000-11-27 2004-12-07 Ge Medical Systems Global Technology Company, Llc Methods and apparatus to assist and facilitate vessel analysis
WO2003030101A3 (en) * 2001-10-03 2004-03-25 Retinalyze As Detection of vessels in an image

Also Published As

Publication number Publication date
FR2623642B1 (en) 1990-03-09

Similar Documents

Publication Publication Date Title
EP0587232B1 (en) Still image coding device
EP0668570B1 (en) Image processing method for locally determining the center and half-length of contrasting objects on a background and apparatus to carry out the method
EP0840252B1 (en) Digital image-processing method for the automatic extraction of ribbon-like objects
EP2356493B1 (en) Method for geologically modeling seismic data by trace correlation
EP0945830B1 (en) Image processing method including multidimensional image segmentation stages and medical imaging apparatus using the same
EP0880108A1 (en) Image processing method including a chaining step and medical imaging apparatus including means for carrying out this method
EP0627693B1 (en) Apparatus for segmenting images composed of textures
WO2016177963A1 (en) Method, computer program and system for controlling a movement of a moving agent within a networked environment
FR2685089A1 (en) METHOD OF AUTOMATICALLY DETECTING PARTICULARITIES FOR NAVIGATION WITH SONAR OF SIDE SCAN, WITH ADAPTATION OF SONAR IMAGES.
FR2590702A1 (en) METHOD FOR BRIDGING BETWEEN CONTOUR ELEMENTS IN AN IMAGE
WO2005031262A1 (en) Distance-estimation method for a travelling object subjected to dynamic path constraints
EP0635806A1 (en) Method for processing digital pictures for locally determining centre and width of objects having the form of bands contrasting with background
FR2623642A1 (en) Method of segmenting vascular angiographic images by vectorial tracking of axes and servo-controlled detection of contours
WO2009150236A1 (en) Method and device for image processing, particularly for medical image processing
FR2964765A1 (en) METHOD OF SEARCHING SHORTEST PATH WITH HEURISTIC
FR2689270A1 (en) Three-dimensional tracking from maximum to posterior (MAP).
EP3105693B1 (en) Method for defining a self-assembling unit of a block copolymer
EP0592029B1 (en) Still image coding device and corresponding decoding device
FR2759474A1 (en) METHOD FOR RECOGNIZING IN A PRELIMINARY CATALOG STARS DETECTED BY A STELLAR SENSOR
EP3614306B1 (en) Method for facial localisation and identification and pose determination, from a three-dimensional view
WO2004013714A2 (en) Method for determining a value given to different parameters of a system
FR2881862A1 (en) METHOD AND DEVICE FOR DETERMINING ROUTE WITH POINTS OF INTEREST
EP0228926B1 (en) Method for searching pairs of parallel lines in an image
WO2011055224A1 (en) Device and method for detecting and monitoring the inner and outer contours of the lips
EP1901555A1 (en) Image deinterlacing system.

Legal Events

Date Code Title Description
ST Notification of lapse