FR 2647997 A1 19901207 FR 8907304 A 19890602 Procédé et dispositif de reconstruction tridimensionnelle d'obJets, à partir d'images de projections prises sous incidences quelconques. L'invention se rapporte au domalne de la vislon passlve trlnoculalre, pour la reconstructlon en trois dlmenslons d'objets, notamment filaires, a partir d'images de projection de ces objets. Elle est basée sur une méthode de reconstructlon b partir de trois vues prises sous incidences quelconques. Dans le domaine médical, par exemple pour la reconstruction de réseaux vasculaires à partir d'lmages de projection, ou dans d'autres domaines pour la détermination de trajectoires de mobiles ou de partlcules dans l'espace, par exemple pour la détermination des structures atomiques en cristallographie, il est nécessalre de pouvoir reconstruire des objets en trols dlmensions à partir d'images de projection prises en deux dimensions. Classlquement, le système d'acquisition des images peut être modélisé par une transformation perspective : reconstruire l'information en trois dimenslons à partir de deux ou trois images est alors un problème qul peut se décomposer en trois étapes - calibrstlon du système de prises de vues - mlse en correspondance de points homologues dans les images de projection - reconstructlon tridimensionnelle de l'objet à partir des points homologues et des matrices de transformation établies à l'étape de callbration. De nombreuses solutlons ont été proposées pour réaliser la phase de mise en correspondance. Ces solutions diffèrent essentlellement par le type de primitives à apparier (points, contours, régions, graphes), par les contraintes imposées, et par le type d'algorithme mis en oeuvre pour assurer la cohérence globale des appariements locaux (corrélation, programmation dynamique, prédiction, vériflcatlon etc...). Pour diminuer la complexité de la recherche des points homologues dans les différentes vues, des contraintes sont utilisées pour restreindre la généralité des scènes - La contrainte d'unicité suppose que chaque point d'une image a au plus un point homologue dans les autres images, ce qui interdit la superposition des contours - L'hypothèse de continuité des disparités suppose que plusieurs points dans un même voisinage possèdent des dispari- tés volslnes, ce qui suppose implicitement que les variations en profondeur de la scène sont "douces" (ce qui n'est le cas que des surfaces continues) - La conservation de tordre des points le long des droi- tes épipolaires qui est souvent utlllsée pour la programmation dynamique. L'idée est que l'ordre d'apparltlon des objets dans les différentes vues est identique lorsque les vues sont prises sous des angles peu différents (vues stéréoscoplques). Cette hypothèse peut s'avérer fausse pour des objets transparents ou pour des angles de vue très différents - L'utilisation d'attributs et de fonctions de ressemblance entre les primitives décrivant les différentes images qui impose les mêmes restrictions : même pour de faibles différences d'incidences, les attributs, par exemple la luminance d'un point, ne sont généralement pas invariants, surtout pour des objets filaires transparents. - Une autre contrainte dlte contralnte "éplpolalre" est utilisée afin de gulder l'appariement des primitives "points de contours" : en tenant compte de la géométrie des imageurs, il est posslble de montrer que l'homologue dans une image I2 d'un point P1 appartenant à une Image I1 se trouve sur une droite L2, appelée droite épipolaire, conjuguée d'une drolte L1 appartenant à l'image I1. La recherche des points homologues devlent alors monodimenslonnelle car la recherche est effectuée le long d'une drolte. Les méthodes utilisant trois vues utilisent cette contrainte épipolaire pour lever l'ambiguïté qui existe lorsque que l'on n'utilise que deux vues. Alnsl pour un point donné de l'image I1, une méthode trois vues fournit en général une liste de triplets de points potentlellement homologues, et pour choisir parmi ces triplets, les méthodes connues utilisent les contraintes précédemment exposées pour guider les choix, notamment les attributs des points correspondants. Dans certaines méthodes l'orientation et la longueur des segments de contours sont utilisées. Mals ces contraintes restrelgnent les types d'objets que l'on peut reconstruire, et nécessitent le choix d'incidences particulières. En partlculler, il est très difficile de reconstruire des objets transparents par de telles méthodes. L'invention a pour objet un procédé, et le dispositif correspondant, de reconstruction tridimensionneUe d'objets à partir d'images de projectlon utilisant un mlnimum de contraln- tes, et permet donc de reconstruire des objets en trois dlmensions quelle que soit la nature de la scène et quel que solt le choix des incidences de prises de vues afin de gagner en généralité et en précision, le procédé permettant des angles de prises de vues très différents qui améliorent la reconstruction. Selon l'invention deux contraintes seulement ont été retenues : la première est la contrainte épipolaire, de type déterministe pour la recherche de triplets de points potentielie- ment homologues ; la seconde fait l'hypothèse de connexlté des contours dans les trois vues, c'est-å-dlre que toute suite de points connexes dans une image correspond à une suite connexe de points de contours dans les autres projections d'une part, et en trois dimensions d'autre part. I1 ressort de ce qul précède que ces deux contraintes sont très peu restrictives. Selon l'invention, un procédé de reconstruction tridimen- slonnelle d'objets à partir d'images de projection prises sous incidences quelconques, comportant une phase préalable de calibration des systèmes de projection ayant donné lieu à trois images de projection prises sous des angles de vue différents, une première phase dans laquelle les trois images de projection d'un objet sont segmentées, des suites de points connexes formant des contours étant extraites des images segmentées puls structurées en branches, et une seconde phase de recherche de triplets de points potentiellement homologues dans les contours issus de la segmentation de trois images, est caractérisé en ce que dans une troisième phase, des tables d'hypothèses d'appariements de branches sont construites de la manière sulvante : tous les triplets de points potentiellement homologues détectés dans la phase de recherche sont classés selon des hypothèses correspondantes d'appariement de branches auxquelles les points de ces triplets appartiennent, pour construire pour chaque branche une table d'hypothèses d'appariements dans laquelle sont conservés les coûts d'affectation de chaque triplet de points potentlellement homologues, fonctlon de critères de qualité des appariements en ce que, dans une quatrième phase, une gestion globale des hypothèses est effectuée pour rechercher, pour chaque branche, l'hypothèse ou la sulte d'hypothèses correcte d'appariement avec des branches ou portions de branches de chacune des deux autres images et en ce que, dans une phase finale, après vérification de la cohérence des appariements, l'objet en 3 dimensions est reconstrult à partir des branches appariées et de matrlces de calibration établles dans la phase préalable. L'invention s également pour objet le dispositif de reconstructlon tridimensionnelle destlné à la mlse en oeuvre de ce procédé. L'invention sera mieux comprlse et d'sutres caractéristiques apparaîtront à l'aide de la descrlptlon qui suit en référence aux flgures annexées. Les figures la et lb illustrent la correspondance entre un point de l'espace 3D et sa projection en 2D, respectivement dans. un système à rayons X et dans un système optlque. La figure 2 Illustre la géométrie épipolaire. La flgure 3 illustre le principe de reconstruction en 3D à partir de 3 vues. Les flgures 4a, 4b et 4c représentent les contours squelettisés d'un même objet à reconstruire en 3D, respectivement dans 3 vues, I1, I2, 13 et illustrent le principe étendu à 3 vues de la géométrie X. Les figures Sa, 5b, 5c, 5d illustrent la formation des branches dans une Image squelettisée. La figure 6 représente les trois vues I1, I2, 13 squelettlsées et structurées en branches. La figure 7 est la table d'hypothèses associée à une branche B1 de la vue de référence. La figure 8 représente une table des hypothèses structurée en graphe pour la recherche de chemin optimal par programmaton dynamique. La flgure 9 illustre la prise de décision pour la recherche du chemin optimal dans le graphe par un algorithme de programmation dynamique X. La figure 10 illustre la table des hypothèses organlsée en blocs. La figure 11 illustre le flltrage des blocs. La figure 12 est un organlgramme du procédé de reconstruction 3D suivant l'invention. Le procédé de reconstruction trldlmenslonnelle d'objets selon l'invention utillse comme indiqué ci-dessus trois images de projection prises sous incidences quelconques pour déterminer les coordonnées des points de de l'objet dans l'espace trois dimensions. Les trois images de projection sont fournies par des capteurs quelconques (camera à transfert de charge, caméra infrarouge, source de rayons X). En ce qul concerne le choix des Incidences de prises de vues, la seule limitation est que les normales aux trois plans images ne solent pas coplanaires. L'étape préalable, classique, du procédé de reconstructlon est la calibration du système, c'est-à-dire l'estimation des douze coefficients de la matrice M1 qul permet de passer des coordonnées en trois dimensions d'un point P (x, y, z) dans un référentiel X, Y, Z, aux coordonnées du point correspondant P1, projection de P dans l'image I1, de coordonnées (u1,v1) dans un référentiel de l'image U1, V1. Cette callbratlon est fonction du système de prises de vues ; les figures la et lb illustrent respectivement le cas d'une source S de rayons X, placée pour l'obtention de l'image I1 à l'emplacement S1 de l'espace, et le cas d'un système optique dans lequel l'image li est obtenue avec la source optique placée au centre optique C1. La matrlce de transformation M1 à 3 lignes et 4 colonnes est telle que où t est la coordonnée homogène qui s'élimine grâce à la dernière ligne. De mème des matrices M2 et M3 de callbration du système de prise de vues relient P(x, y, z) à respectivement P2(u2, v2) et P3(u3, V3) projections de P dans les plans images I1 et I2. Dans une première étape, les images de projection sont segmentées et le contour squelettisé, de manière classique. Les suites de points formant alors le squelette sont structurées en branches (suites des points connexes sans bifurcation, nl intersection). Pour la mise en correspondance des points, la géométrie épipolaire permet de restreindre la recherche, a priori bidimensionnelle d'un point P2 dans I2, homologue de P1 dans I1, à une recherche monodimensionnelle, La flgure 2 illustre cette géométrie épipolaire : étant donné un point P1 de l'image Il, le point P de l'espace dont il est la projection se trouve sur la drolte S1 P1. Le point P2 homologue doit donc se trouver sur la projection de la drolte S1 P1 sur le plan de l'image 12. La drolte L21 ainsi obtenue est appelée épipolaire conjuguée du point P1 de I1 Une autre manière de déterminer cette drolte s'obtient en remarquant que si P1 et P2 sont des points homologues, alors les points S1, S2, P, P1, et P2 sont coplanaires. La droite L21 est alors l'intersection du plan des points mentlonnés ci-dessus avec le plan image I2. Inversement tous les points de la drolte L21 ont leurs homologues sur une droite L12 intersection du plan épipolaire avec l'image I1 qui passe par P1. Tous les plans épipolaires s'appuient sur la drolte S1 S2 2 Si E1 et E2 sont les points dtintersection des plans images respectivement I1 et I2 avec la drolte S1 S2, toutes les droites épipolaires de Il passent par l'épipole E1 et toutes les éplpolaires de I2 passent par l'épipole E2. La flgure 3 illustre le principe du procédé de reconstruction à partir de trois vues. Soient S1, S2 et S3 les trois sources utilisées (ou les trois centres optiques dans le cas de caméras) la détermination des coordonnées du point de l'espace 3D est obtenue en recherchant les coordonnées de l'intersection P de S1 P1, S2 P2 , et S3 P3, les points P1, P2, et P3 étant des points reconnus comme potentiellement homologues. En général cette intersection n'est pas exacte et le calcul des coordonnées du point P est fait au sens des molndres carrés. Un indicateur de la validité de l'appariement proposé peut être calculé à partir des distances entre les droites prises deux à deux d12 = dist(S1P1, S2P2) d13 = dist(S1P1, S3P3) d23 = dist(S2P2, S3P3). Un critère mesurant la qualité de l'appariement est alors C1 = (d12 + d13 + d23)/3. De plus, si tl, t2 et t3 sont les tangentes locales aux contours aux points P1, P2 et P3, les couples (S1, t2), et (S2, t2), et (S3, t3) engendrent trois faisceaux de plans sécants en une droite tangente au point P sl l'appariement des trois points P1, P2 et P3 est exact. Les vecteurs unltalres n1, n2, n3 normaux aux plans décrits ci-dessus dolvent donc être coplanaires. Un autre crltére permettant de mesurer la qualité de l'appariement, en vue de générer le point P, est donc C2 det(nl, n2,n3). Par ailleurs, sl on dispose de trois images binaires I2, 13 dans lesquelles les contours des objets ont été squelettisés comme représenté par la figure 4, P1 étant un point de l'image de référence I1, son point homologue dans I2 se trouve sur l'épipolaire L21 associée à P1 et sur l'épipolaire L31 dans l'image 13. Si I'on suppose que la droite L21 coupe deux contours dans I2, alors il y aura deux candidats homologues possibles susceptlbles de correspondre à P1 dans I2, P2 et P'2 comme représenté à la figure 4. Les homologues respectifs de P2 et P'2 dans la vue 13 sont sur les droites L32 et L'32. Classiquement, pour lever l'ambiguïté, la position du point homologue de P1 dans la vue 13 est prédite à partir de la géométrie épipolalre: : ce point dolt se trouver à l'intersection de la droite épipolaire L31 associée à P1 dans l'image I3 et de la droite épipolaire, L32 ou L'@@, associée à P2 ou à P'2 dans 12. Les points prédits sont P3 à l'intersection de L31 et L32, et P'3 à l'intersection de L31 et de L'32. Si le point prédit correspond à un point de la structure, l'hypothèse est conservée, sinon elle est rejetée. Le principe de la méthode connue telle qu'elle est décrite ci-dessus est qu'à l'issue de cette étape il ne subslste qu'un seul triplet P1, P2, P3 de points homologues pour chaque point d'un contour pris comme référence. En pratique il subsiste de nombreuses ambiguïtés qul proviennent des erreurs de segmentation, des imprécisions de la callbration, ou simplement de la présence malencontreuse d'un point de la structure en un point prédit. De plus, pour tenlr compte des imprécisions, les Intersectlons sont normalement recherchées dans le voisinage de plu sleurs pixels, 5 par exemple, ce qui multlplle le nombre d'ambl guïtés. Selon une caractéristique essentielle de l'invention toutes les hypothèses de triplets de points potentiellement homologues sont conservées,et à chacune on associe une mesure de la quallté de l'appariement en utlllsant les critères précisés cl-dessus, notamment les coplanarités. La méthode trois vues appllquée point par point nécessite donc un traitement permettant de gérer l'ensemble des hypothèses ainsi conservées, avec pour objectif l'optimisation des différentes assocIations faites, en utlllsant l'hypothèse de continuité des contours. Selon l'invention, chaque image binaire squelettlsée est découpée en branches. Une branche est, comme indiqué ci-dessus, une sulte de points connexes ne comportant nl bifurcation, ni crolsement. La figure Sa représente le contour d'un objet squelettisé dans une image. La flgure 5b représente la structuratlon de ce méme objet en branches tous les points de crolsement ou de bifurcation étant des extrémités de branches. Chaque branche a été référencée par une lettre, A, B, C, D, E, F, G. Chaque branche par exemple la branche B représentée sur la figure 5c est alors échantillonnée en ne gardant qu'un point tous les clnq points puisque l'analyste est faite dans des voisinages de 5 points autour du point courant. La figure Sd illustre cet échantillonnage, la branche B est représentée par 14 échantillons sur cet exemple. Selon l'invention, au lieu d'un appariement point par point le procédé selon l'invention met en oeuvre un appariement utilisant les primitives branches : Une branche est caractérisée par les coordonnées des points des extrémités, PXL-début, PXL-fin, la liste des points PXL1, PXL2, etc.. PXLn, la liste réduite des échantillons E1, E2...Ek, et, pour chaque branche X une table des hypothèses Tab(X) est formée. Pour la construction des tables d'hypothèses, le procédé se déroule de la manlère suivante à chaque branche de la vue de référence, soit I1 dans l'exemple représenté, une table d'hypothèses regroupant les différentes hypothèses possibles de correspondance de points est établie avec l'indication des branches auxquelles ces points appartiennent. La figure 6 représente trois vues, li, I2, I3 structurées en branches, et la figure 7 Illustre la formation de la table d'hypothèses pour la branche B1 de l'image I1. A partir des échantillons 1, 2, 3.. k = 14.de la branche B1, on dresse la liste complète des hypothèses d'appariements de points P1, P2, P3 retenues par la méthode 3 vues, ces hypothèses étant rangées en fonction des branches auxquelles appartiennent les points homologues P1, P2 et P3. La colonne J de ce tableau contient donc les différentes hypothèses d'appariement exlstantes pour l'échantillon de rang j de la branche B1. La ligne i du tableau permet de voir pour quels échantillons l'hypothèse H1 d'association : branche B1 - branche X2 - branche Y3 apparaît, les cases correspondantes étant non vides, X2 et Y3 appartenant respectivement aux ensembles de branches définies dans I2 et dans I3. A chaque case Hi(j) du tableau, non vide, est associé le coût d'affectation C1,j correspondant à la qualité de l'appariement calculé comme indiqué précédemment à partir des critères de qualité C1 et C2. Apparier tous les points de la branche B1 revlent donc à choisir pour chaque colonne j du tableau une hypothèse Hl. L'intérêt d'une telle démarche est de pouvoir prendre la décision d'apparlement de la branche B1 compte tenu d'une connaissance globale de toutes les hypothèses possibles pour chaque échantillon, et non pas échantillon par échantillon. A titre d'exemple, sur le tableau d'hypothèses de la flgure 7, pour l'échantillon 3 de cette branche, deux triplets de points ont été trouvés par la méthode trois vues : l'un conduit à apparier ce point de la branche B1 1 å des points des branches A2 et C3, le coût calculé de l'appariement correspondant étant 0.7, l'autre condult b apparier le point de la branche B1 à des points des branches B2 et B3 avec un coût 0,1. La table des hypothèses regroupant tous les apparlements possibles étant établie, une étape ultérieure permet de gérer ces hypothèses dans leur ensemble pour déterminer quel appariement dolt autre retenu. Dans un premier mode de réalisation de l'invention, la phase de gestion des hypothèses est effectuée par programmation dynamique. Choisir une case de chaque colonne de la table d'hypothèses pour une branche donnée peut être analysé comme un problème de recherche de chemin optimal à travers un graphe valué, et peut donc se résoudre par un algorlthme de programmation dynamique. Les noeuds du graphe à chaque étape j associée à un échantillon de rang j dans la branche sont les cases non vides de la table d'hypothèses pour cet échantillon J. Comme représenté sur la figure 8 où la table d'hypothèse est structurée en graphe, on ajoute à ce graphe une racine fictive de départ (D) reliée à tous les noeuds de l'étape 1 (échantillon 1), et une racine fin (E), reliée à tous les noeuds de la dernière étape (échantillon 14 sur la flgure 8). hypothèse de connexité des branches permet de définir les prédécesseurs (å l'étape j-1) "autorlsés" du noeud Hi(J) (c'est-à-dire de l'hypothèse I à l'étape J). Les contraintes Imposées sont les suivantes, (P1, P2, P3) étant le triplet hypothèse correspondant au noeud Hi(j), et X2 la branche à laquelle appartent P2 dans limage I2, et Y3 la branche à laquelle appartent P3 dans l'image I3 : - Première contrainte : si l'hypothèse Hi existe déjà à l'étape (j-1) alors c'est l'unique prédécesseur possible pour l'hypothèse Hi(j) ; les hranches X2 et Y3 sont poursuivies. - Deuxième contrainte : ai la contrainte précédente n'est pas vérifiée et s'il existe à l'étape (J-1) au moins un noeud utilisant la branche X2 et un autre utilisant Y3, alors tous les noeuds à l'étape (j-1) utlllsant X2 ou Y3 sont acceptés comme prédécesseurs possibles pour le noeud Hi(j). - Troisième (respectivement quatrième) contralnte : sl nl l'une, nl l'autre des contraintes précédentes n'est vérifiée, et s'il existe à l'étape (j-1) au moins un noeud utilisant X2 (respectivement Y3), et s'il n'existe aucun noeud utilisant Y3 (respectivement X2) alors les seuls noeuds utlllsant X2 (respectivement Y3) sont acceptés comme prédécesseurs du noeud Hi(j). - cinquième contrainte : sl aucun des cas précédents n'est vérifié, alors tous les noeuds de l'étape (j-1) sont acceptés comme prédécesseurs du noeud Hi(j). Cet ensemble de contraintes successives condult à sélectionner en priorité les hypothèses dans lesquelles la continuité des branches est la mieux préservée, les autres hypothèses n'étant conservées qu'à défaut de solution continue. Ces contraintes définissent les arcs du graphe. Ensulte chaque arc reliant le noeud Hk(j-1) à Hl(J) est évalué par un coût Cl déflnl de la manière suivante - si k est différent de i : Ci = Somme(Cil) pour 1 = j à j+Ni, où Ni déslgne le nombre d'apparitions de lthypothèse H1 dans la table, et Cil les valeurs des coûts affectées à l'hypothèse Hi(j). - sl k = i, Ci = O (pas de changement d'hypothèse). Le princlpe de programmation dynamique est que l'on peut trouver le meilleur chemin du noeud de départ D jusqu'à un noeud Hi(j) de l'étape j si l'on connaît tous les meilleurs chemins, de D aux prédécesseurs de H1(j) b l'étape j-1. La figure 9 illustre la prise de décision pour la recherche du chemin optimal : supposons que le noeud Hi(j) ait trois prédécesseurs, Hk(j-1) Hi(j-1) et Hm(j-1) et que l'on connsisse le meilleur chemin de D, début, à chacun d'eux, de coûts optimaux respectifs #k(j-1), #l(j-1), et #m(j-1), alors le meilleur chemin du début D Hi(j) sera de coût # k(j) tel que #k(j)=min(#k(j-1)+C1; #1(j-1)+Ci;#m(j-1)+Ci) =Ci+min(#k(j-1);#l(j-1);#m(j-1) A chaque étape on observe donc autant de chemins qu'il y a de noeuds 9 cette étape, jusqu'au dernier noeud (E) où le mellleur chemin est décidé. L'algorithme suppose bien entendu des conditions initiales et à l'étape 1 pour Hl(l), on choisira comme coût inl- tial > i(1) = Cl. La méthode décrite permet de trouver la solution optimale, au sens du critère choisi, au problème d'apparlement de la branche, sous la contrainte de l'existence d'une solution continue. Ce procédé ne permet donc pas d'associations multiplets. Dans un deuxième mode de réalisation la gestion des hypothèses telles qu'obtenues dans un tableau du type de celui représenté sur la figure 7 est effectuée globalement par recherche et "filtrage" des solutlons posslbles dans la table des hypothèses. L'idée est de construire la liste exhaustive de toutes les solutions possibles dans la table des hypothèses, ce qui aboutit éventuellement à plus d'une solution pour l'appariement d'une branche. Ceci augmente la généralité de la méthode puisque la programmation dynamique ne fournit qu'une solution dite "optimalle" ; cette solution autorise le traltement des occlusions et fournit toutes les solutions parallèles en cas d'ambiguïté ; les solutions trouvées sont ensuite filtrées, c'est-à-dire triées par un jeu de règles. Un tel procédé permet de passer facilement d'une application à une autre en ajoutant de échantillon de B1 au dernier. Afin d'éviter une "exploslon combinatoire" entrainant un nombre trop important de possibili- tés, la recherche se fait en trois étapes. Dans une première étape, on cherche à éliminer les hypothèses impossibles; si H est l'hypothèse associant à B1les branches X2 et Y3 des images I2 et 13 et apparaissant dans la table de l'échantillon j à l'échantillon j + Ni - dans une première phase, les hypothèses "isolées" sont éliminées, c'est-à-dire que si Ni est inférieur ou égal à un nombre d'échantillons prédéterminé, alors l'hypothèse H1 est rejetée de la table - dans une seconde phase, une élimination des hypothèses de coût moyen trop élevé est effectuée : si la somme des couts nécessaires rapportée au nombre d'échantillons du bloc correspondant est supérieure à un seull prédéterminé, alors l'hypothèse H1 correspondante est rejetée de la table - dans une troisième phase une élimination des hypothèses entamant partiellement les branches est effectuée : si j est différent de 1 et si j + N1 est différent de k (indice du dernler échantillon) si la branche X2 est utilisée partiellement seulement, en son mllieu, et s1 la branche Y3 est utilisée partlellement, seulement en son milieu, alors l'hypothèse Hl est rejetée de la table. Cette première étape conduit donc à l'élimination d'hypothèses estimées "impossibles". La figure 11 illustre les blocs hachurés éliminés dans cette première étape et donc isole les blocs qui subsistent. Les hypothèses H1(Bl, A2, A3). et H3(B1, B2, C3) sont éliminées car les blocs correspondants ne comportent que deux échantillons, le seuil retenu étant 3 échantlllons dans cet exemple ; l'hypothèse H7(Bl, G2, B3) de coût moyen 0.6 est également éliminée, le seull prédéterminé retenu pour le coût moyen étant 0,5 dans cet exemple. Dans une seconde étape, le procédé permet de rechercher les chemins posslbles dans la table. Pour cela, à partir des blocs présents pour l'échantillon j les successeurs autorlsés d'un bloc H1 sont les blocs Hk tels que - les blocs se suivent : Fin(Hi)-Deb(Hk) est inférieur à un seul, Fin(H1) étant le dernler échantillon pour lequel l'hypothèse Hi apparaît et Deb(Hk) étant le premier échantillon pour lequel l'hypothèse Hk apparaît : Fin(Hi)-Deb(Hk)##2 - la continuité entre les branches est préservée ; pour cela les contraintes déjà décrltes ci-dessus dans le cadre du mode de réalisation utilisant la programmation dynamique sont également utilisées - les branches successives sont "proches", c'est-à-dire que la distance calculée dans un plan image 2D entre le dernier échantillon où l'hypothèse Hl apparaît et le premier échantillon où l'hypothèse apparaît H k est faible Dlstance (Fin(Hi)-Deb(Hk))##3, la distance étant définie comme le mlnimum des distances entre les points de l'image dans 12 et dans I3. A l'issue de cette seconde étape, une liste de suites de blocs est dressée. Les suites sont telles que le dernler échantlllon du dernler bloc coïncide avec le dernier échantillon de la branche traitée (l'échantlllon 14 de la branche B1 dans l'exemple représenté). A la fin de cette étape, il y a donc autant de solutions posslbles qu'il y a de listes de blocs. Du fait des imprécisions, notamment de la calibratlon et des intersections, des solutions "parasites" peuvent être présentes. La troisième étape du procédé est donc un filtrage élimi- nant les solutions ayant un cout total trop élevé, en prenant successivement les coûts totaux calculés selon les deux critères mentionnés cl-dessus. Une solution est rejetée si son coût total est supérieur à deux fois le coût minimal du "meilleur" chemin. Ce filtrage élimine également les solutlons dites non "symétrl- ques" : une solution d'appariement (B1, X2, Y3) pour B1 à partir de l'image de référence I1 doit avoir une solution symétrique (X2, B1, Y3) pour apparler X2 à partir de l'image I2 prise comme référence et une solution symétrique (Y3, X2, B1) pour apparier Y3 à partir de l'image 13 prise comme référence. A la fin du filtrage il ne reste plus que la solution correcte pour l'appariement des branches. La phase suivante conslste alors à partir de cet apparlement à reconstruire les branches en trois dlmenslons. La figure 2 met en évidence les différentes phases du procédé de reconstruction tridimensionnelle de contours d'objets selon l'invention. Pour chacune des trois images de gris d'un objet prises selon des angles de vues différents la première phase, effectuée selon l'une des méthodes connues est la segmentation de l'image, puls l'extraction des contours dans l'image segmentée et leur structuratlon en branches. La phase suivante, particulière å l'invention consiste à établir pour chacune des branches de chacune des images une table d'hypotheses regroupant toutes les hypothèses d'appariement de cette branche avec des branches prises dans les deux autres images ; ces hypothèses d'appariement de branches sont construites å partir de l'ensemble des triplets de points reconnus comme homologues possibles selon la méthode 3 vues, chacun des points d'un triplet appartenant aux branches formant une hypothèse; un coût fonction de critères de qualité de l'appariement est affecté å chaque triplet de points retenu. La table d'hypothèses d'une branche comprend donc autant de lignes que d'hypothèses d'appariement, autant de colonnes que d'échantlllons retenus dans une liste réduite de points caractérisant la branche, et å chaque crolsement ligne colonne, le coût de l'affectation correspondante. La phase suivante est la gestion des tables d'hypothèses, solt par programmatlon dynamique, solt par recherche et filtrage des solutlons possibles prises dans leur ensemble. La phase suivante est alors la reconstruction des contours de l'objet en trois dimensions å partir des branches correspondantes. L'invention n'est pas limitée aux modes de réalisation précisément décrits cl-dessus. En particulier, il est possible dans la phase de gestion des hypothèses, de conserver dans une table annexe les hypothèses éliminées et d'y associer un code caractérisant la ralson de l'élimination, pour permettre d'éventuels retours en arrière au cas où le déroulement normal du procédé ne permettrait pas de retentir une hypothèse d'apparliement. La structure très modulaire du traitement effectué permet d'ajouter des flltrages supplémentaires. Par exemple, pour des vues prises sous des angles peu différents (vues stéréoscopiques ), des contraintes supplémentaires toujours vérifiées pour des contours prls sous des angles de vues peu différents peuvent être prises en compte ; elles se traduisent par un flltrage supplémentaire des hypothèses pour lesquelles ces contraintes ne sont pas vérifiées. I1 est également possible de compléter le controle global des appariements en vérifiant la cohérence des appariements pour des branches voisines et réduire ainsi le nombre d'amblguïtés dans certains cas. Ainsi qu'il ressort de la description cl-dessus aucune connaissance préalable de l'objet n'a été utilisée, par exemple le fait que la structure serait arborescente, pour l'imagerie d'un réseau filaire, angiographlque par exemple. REVENDICATIONS 1. Procédé de reconstruction tridlmensionnelle d'objets à partir d'images de projection prises sous Incidences quelconques, comportant une phase préalable de calibration des systèmes de projection ayant donné lieu à trois images de projectlon prises sous des angles de vue différents, une première phase dans laquelle les trois images de projection d'un objet sont segmentées, des suites de points connexes formant des contours étant extraites des images segmentées puis structurées en branches et une seconde phase de recherche de triplets de points potentiellement homologues dans les contours Issus de la segmentatlon de trois images, caractérisé en ce que dans une troisième phase des tables d'hypothèses d'appariements de branches sont construites de la manière suivante : tous les triplets de points potentiellement homologues détectés dans la phase de recherche sont classés selon des hypothèses correspondantes d'apparlement de branches auxquelles les points de ces triplets appartiennent, pour cons trulre pour chaque branche une table d'hypothèses d'appariements dans laquelle sont conservés les coûts d'affecta tion de chaque triplet de points potentiellement homologues, fonction de critères de qualité des appariements; en ce que, dans une quatrième phase, une gestion globale des hypothèses est effectuée pour rechercher, pour chaque branche, l'hypothèse ou la suite d'hypothèses correcte d'apparlement avec des branches ou portions de branches de chacune des deux autres images et en ce que, dans une phase finale, après vérification de la cohérence des apparlements, l'objet en 3 dimensions est reconstruit å partir des branches appariées et de matrices de calibration établles dans la phase préalable. 2. Procédé selon la revendication 1, caractérisé en ce que la recherche des triplets de points potentiellement homologues dans les contours Issus de la segmentatlon des images est effectuée suivant des droites en utilisant la géométrle épipolaire. 3. Procédé selon l'une des revendications 1 et 2, caractérisé en ce que la gestion des tables d'hypothèses est effectuée par programmation dynamique pour rechercher la mellleure parmi toutes les hypothèses d'appariements pour une branche donnée, au sens d'un critère prédéfinl. 4. Procédé selon la revendicatlon 3, caractérisé en ce qu'un graphe est établl à partir de la table d'hypothèses associée à une branche en utilisant la contrainte de connexité des contours dans les trois images de projectlon pour déterminer les hypothèses prédécesseurs posslbles pour l'échantillon j-1 de la branche d'une hypothèse H1 pour l'échantillon ]. 5. Procédé selon la revendication 4, caractérisé en ce que le graphe est valué en utilisant les coûts d'affectation fonc tlon de critères de qualité des appariements des points des triplets, et en ce que le meilleur chemin dans le graphe caracté rlsant l'appariement de la branche avec des branches ou portions de branches des autres Images est obtenu en recherchant dans le graphe le chemin de coût minimal. 6. Procédé selon l'une des revendications 1 et 2, caractérisé en ce que a gestion des tables d'hypothèses est effectuée par recherche de toutes les hypothèses d'appariements possibles en éliminant les hypothèses rencontrées pour un nombre d'échantillons successifs inférieur å un premier seuil, les hypothèses pour lesquelles le coût d'affectation moyen est supérieur å un second seuil, et les hypothèses se répétant seulement sur des portlons bornées de branches puis en recherchant les suites possibles d'hypothèses couvrant tous les échantlllons de la branche en utilisant la contralnte de connexité des contours. 7. Procédé selon la revendication 6, caractérisé en ce que, lorsque plusleurs suites possibles d'hypothèses subsistent après utilisation de la contralnte de connexlté des contours une phase de filtrage élimine les suites d'hypothèses de coût supérleur à un seuil et les suites d'hypothèses qul ne se retrou vent pas lorsque les branches de référence pour l'établissement des tables d'hypothèses sont prises dans les autres images de projection. 8. Procédé selon la revendication 1, caractérisé en ce que durant la phase de gestion des hypothèses, les hypothèses éliminées sont stockées avec l'information relative à la raison de leur élimination, et éventuellement reprlses lorsqu'à l'issue de la sélection, aucune hypothèse n'est retenue. 9. Procédé selon la revendication 1, caractérisé en ce que la phase de vérification de la cohérence des appariements entre branches vérifie la cohérence des appariements entre branches voisines. 10. Procédé selon l'une quelconque des revendications 4 et 6, caractérisé en ce que la contrainte de connexité des contours conduit à sélectionner les hypothèses dans lesquelles la conti nuité des branches est la mieux préservée.