Brevet FR2983998A1 — publié le 20130614

L'invention est relative à un procédé de recons- truction 3D d'une scène faisant appel à des capteurs asynchrones. ARRIERE PLAN DE L'INVENTION Il est connu de procéder à des reconstructions en trois dimensions à partir d'images prises par au moins deux caméras synchronisées prenant des images de la même scène. Les premiers algorithmes de stéréovision sont apparus dans les années 1970. Des progrès significatifs ont été proposés ces dernières années. Ces progrès portent sur des algorithmes d'appariement de plus en plus efficaces. Les capteurs optiques utilisés comportent des ré- cepteurs élémentaires (par exemple des pixels d'une camé- ra) arrangés matriciellement pour voir la scène selon des angles solides respectifs distincts, et capturent des images de la scène à des intervalles réguliers (en général plusieurs images par seconde). Chaque image est alors représentée par un tableau de valeurs (une par récepteur élémentaire) chacune représentative d'une caractéristique physique d'un signal reçu de la scène par le capteur élémentaire correspondant, par exemple une intensité lumineuse. Plus précisément, de tels capteurs optiques génè- rent, à chaque pas de temps tk, et pour chaque récepteur élémentaire placé en x,y, des informations fk(x,y)--= 5(t,tk)- f(x,y,t). où f est l'intensité lumineuse perçue par le récepteur placé en x, y, et 8 est le symbole de Kronecker. L' information renvoyée par un tel capteur est alors la matrice ou trame ik -=tfk(x,y)},xeN,y e M , où N, M sont les dimensions de la matrice, cette informatio étant envoyée à chaque pas de temps. Puis l'algorithme d'appariement recherche dans ces informations des motifs pouvant être dûs à un même élé- ment de la scène et apparie entre eux les capteurs élé- mentaires correspondants. Connaissant la position de ces récepteurs élémentaires ainsi appariés, il est facile de retrouver par triangulation le point de la scène qui a été vu par ces deux récepteurs élémentaires, et donc de l'intégrer dans la reconstruction 3D de la scène Chaque image peut représenter une taille de plusieurs mégaoctets, ce au rythme de plusieurs images par seconde (typiquement 24 images par seconde), ce qui représente un débit considérable. Les algorithmes de re- construction 3D procèdent alors à une recherche de motifs dans les images prises par les différents capteurs au même instant en vue d'apparier entre eux des motifs correspondant à un même élément de la scène. Ces algorithmes requièrent des logiciels gourmands en puissance et en temps de calcul, qui ne sont pas envisageables pour des applications en temps réel. OBJET DE L'INVENTION L'invention a pour objet un procédé de reconstruc- tion 3D d'une scène permettant une mise en oeuvre en temps réel avec des moyens de calcul raisonnables. RESUME DE L'INVENTION En vue de la réalisation de ce but, on propose un procédé de reconstruction 3D d'une scène, comportant : la mise en oeuvre d'au moins deux capteurs com- portant chacun une série de récepteurs élémentaires ar- rangés pour observer la scène selon des angles solides respectifs distincts et qui sont chacun sensibles à une caractéristique physique d'un signal reçu par ledit récepteur en provenance de la scène ; la mise en oeuvre d'un algorithme de reconstruc- tion 3D comportant une étape d'appariement de récepteurs de chacun des capteurs exploitant des signaux générés par les capteurs ; Selon l'invention, le procédé comporte l'utilisation des capteurs qui sont chacun adaptés à émettre un flux asynchrone d'évènements qui sont chacun indicatifs d'une modification du signal reçu par l'un des récepteurs élémentaires à un instant donné, l'appariement consistant à apparier entre eux des évènements générés par chacun des capteurs en sélectionnant des évènements temporellement proches. L'utilisation de tels capteurs permet de diminuer spectaculairement le débit d'information issu des capteurs et simplifie considérablement l'appariement. L'appariement d'évènements temporellement proches revient de fait à apparier les récepteurs sur chacun des capteurs ayant généré les évènements ainsi appariés. L'appariement est très simple à mettre en oeuvre, avec des moyens de traitement modestes. Le procédé de reconstruction 3D de l'invention peut être mis en oeuvre avec des moyens raisonnables, par exem- ple un simple ordinateur personnel équipé de cartes d'acquisition idoines. DESCRIPTION DES FIGURES L'invention sera mieux comprise à la lumière des figures des dessins annexées, parmi lesquelles : - La figure 1 est un schéma illustrant les plans focaux de deux capteurs asynchrones observant une même scène selon l'invention ; - La figure 2 est un chronogramme d'évènements dé- tectés par les capteurs de la figure 1; - La figure 3 est un schéma illustrant les plans focaux de trois capteurs asynchrones observant une même scène selon l'invention ; - La figure 4 est un chronogramme d'évènements dé- tectés par les capteurs de la figure 3. DESCRIPTION DETAILLEE DE L'INVENTION Dans le mode de mise en oeuvre ci-dessous détaillé, en référence à la figure 1, on filme une scène à l'aide de deux capteurs Cl et C2 comportant chacun une caméra CCD ou CMOS (appelées gauche et droites respectivement). Chaque caméra comporte MxN pixels, assimilés chacun à un capteur élémentaire. Chaque pixel voit la scène selon un angle solide donné et est sensible à l'intensité lumineuse reçue dans cet angle solide. Sur la figure 1 sont illustrés les plans focaux des deux capteurs Cl et C2. Cependant, dans le cadre de l'invention, les caméras ne sont pas utilisées de façon classique. Plutôt que d'utiliser la caméra pour lui faire générer des trames Ik={fk(x,y)},xeN,yeMà intervalles réguliers dont chaque information élémentaire est représentative de l'intensité lumineuse reçue par chaque pixel à l'instant tk, on s'intéresse ici à une information dérivée, en l'occurrence le sens de variation de l'intensité lumineuse reçue par chacun des pixels. On s'intéresse ainsi à . a la quantité e(x,y,t) ' -- sign at vc,y,t) qui peut prendre deux va- leurs : -1 si l' intensité lumineuse du signal reçu par le pixel diminue, et 1 si l' intensité lumineuse du signal reçu par le pixel augmente. On échantillonne cette quan- tité pour des instants tk d' échantillonnage : ek(x,y)- 8(t,tk)- signi (x,y,t) où 8 est le symbole de Kronecker. at Ainsi, cet évènement est indicatif d' une augmenta- tion (+1) ou d' une diminution (-1) de l' intensité lumineuse perçue par le pixel Pxy situé en x, y au temps tk. Une telle information peut par exemple être générée par un post-traitement de l' information d' intensité lumi- neuse reçue issue de chacun des pixels de la caméra qui est implanté sur une carte de traitement numérique associée à la caméra et qui est implantée soit dans la caméra proprement dite, soit dans l' ordinateur à laquelle la ca- méra est reliée. L' information matricielle Ik = {fk (x, y )} , x e N, y E M habi- tuellement générée par de telles caméras et exploitées pour la reconstruction 3D dans les procédés connus est alors remplacée selon l' invention par une information ma- tricielle Ek (x, y )1 ,x E N,y e M Une telle information matricielle est nettement moins gourmande en espace mémoire qu'une image classique, puisque chaque donnée de l' information matricielle est facilement contenue dans un seul octet. Cependant, plutôt que de transmettre les informa- tions sous forme matricielle, il est possible, selon un aspect particulièrement avantageux de l' invention de transmettre un flux asynchrone d' évènements Ei, chaque évènement étant identifié par : - des données permettant l'identification du pixel dont la quantité e a changé de valeur, en l'occurrence ici les coordonnées x,y du pixel Pxy correspondant ; l'instant du changement de valeur ; - un indicateur de la modification du signal per- çu par le pixel, prenant en l'occurrence ici la valeur atteinte (-1 ;1) par la quantité e lors de ce changement (ci-après appelée valeur de l'évènement). Ce flux asynchrone peut se représenter par la nota- tion suivante : >cpy"t"el; x2,y2,t2,e2 ; x3,y3,t3,e3; où E1=[xl,y1,t1,el] est le premier évènement, et En [xn, yn, tn, en] est le n-ième évènement. Ce flux asynchrone est ici généré par la carte électronique assurant le post-traitement des données de la caméra. Les informations d'identification de chaque évènement sont d'une taille mémoire modeste et peuvent être envoyées de façon séquentielle. Ces informations ne sont bien sûr envoyées que si un évènement E a effective- ment été généré, ce qui diminue considérablement le débit nécessaire. En l'absence d'évènement (par exemple scène fixe et caméra fixe), rien n'est envoyé. On a donc ainsi créé un signal asynchrone, pouvant être transmis au moyen d'une simple liaison série, mais contenant suffisamment d'informations pour permettre une reconstruction 3D de la scène, ainsi que cela va être maintenant détaillé. A cet effet, un procédé d'appariement très simple est mis en oeuvre selon l'invention à partir des évène- ments générés par les deux capteurs Cl,C2 dont les camé- ras filment la même scène. Le principe de cet appariement consiste à faire l'hypothèse qu'il est très probable que des évènements temporellement proches générés par les deux caméras sont relatifs à un même motif ou point de la scène. On va donc chercher à apparier deux évènements temporellement proches générés par le capteur de gauche et le capteur de droite. On aura ainsi réalisé un appariement tant spatial que temporel. Cependant, si à un instant donné, un changement d'intensité lumineuse dû par exemple à un mouvement dans la scène affecte tel ou tel pixel sur les deux caméras et génère le cas échéant des évènements pour chacun des capteurs, il est peu probable que les instants d'occurrence de ces évènements coïncident exactement entre eux. Tout d'abord, les caméras présentent un temps de latence pour réagir et générer les évènements, qui varie d'ailleurs souvent pour chacun des pixels. Ensuite, des délais peuvent subvenir dans la génération de l'information et sa transmission. Il s'avère ainsi hasardeux d'apparier des évènements sur la base uniquement d'une coïncidence tem- porelle exacte d'évènements générés par les deux caméras. Il est cependant possible de sélectionner, pour chaque évènement E1 généré par la caméra de gauche (nommé évènement de gauche, ou évènement source, et dont on voit le pixel correspondant P1 sur la figure 1), un ensemble d'évènements (ici les évènements E2,E;,E2, générés par la caméra de droite (nommés évènements de droite et dont on voit les pixels correspondants P2,11,13":2) qui sont inter- venus dans une fenêtre temporelle AT donnée autour de l'instant d'occurrence de l'évènement de gauche comme ce- la est illustré à la figure 2. On sélectionne ainsi le ou les évènements de droite temporellement proches de l'évènement source. Evidemment, plus la fenêtre temporelle est petite, moins l'ensemble ainsi déterminé contient d'évènements de droite. Cette sélection préliminaire permet de ne retenir qu'un nombre réduit d'évènements de droite dont l'un sera apparié avec l'évènement de gauche. Le cas échéant, un seul évènement de droite est sélectionné. On a alors réalisé l'appariement recherché. Si ce n'est pas le cas, il s'agit alors de filtrer les évènements de droite pour ne retenir que celui qui correspond à l'évènement de gauche considéré. Pour cela, on applique au moins l'une des procédures de tri suivantes : - on calcule pour chacun des évènements de droite sélectionnés la distance entre le pixel correspondant et la ligne épipolaire L1 dans le plan focal de la caméra de droite qui correspond au pixel PI lié à l'évènement de gauche. On élimine alors tous les évènements de droite dont la distance ainsi déterminée est supérieure à une borne D donnée. De préférence, la distance considérée est une distance euclidienne ; - on élimine tous les évènements de droite sélec- tionnés n'ayant pas la même valeur que celui de gauche. Ainsi, si l'évènement de gauche correspond à une augmentation d'intensité lumineuse, on ne retiendra que les évènements de droite correspondant également à une aug- mentation d'intensité lumineuse ; on élimine tous les évènements de droite sélec- tionnés ayant déjà fait l'objet d'un appariement, selon l'application du principe d'unicité. De préférence, les procédures de tri sont appliqués dans l'ordre indiqué, jusqu'à ne plus retenir qu'un seul évènement de droite. Ces procédures de sélection et de tri sont très peu coûteuses en taille mémoire et temps de calcul, et peuvent dont être facilement mises en oeuvre en temps réel avec des moyens raisonnables, par exemple un simple ordinateur personnel. L'appariement de deux évènements permet donc de déterminer l'appariement des deux pixels correspondants ainsi que l'instant où ces deux pixels doivent être appariés. Une triangulation classique permet alors de déter- miner la position du point de la scène qui a été vu par les deux pixels ainsi appariés. Selon un mode de mise en oeuvre particulièrement avantageux, on utilise au moins trois capteurs pour ob- server la même scène, comme illustré à la figure 3. L'explication qui suit est relative à l'utilisation de trois capteurs C1,C2,C3 mais elle se généralise aisément à plus de trois capteurs. L'utilisation d'au moins trois capteurs permet une discrimination fine des évènements. Il faut pour cela connaître les matrices fondamentales FAB, Fm, FBC liant chaque paire de capteurs. La mise en oeuvre de la sélection temporelle, comme il est dit auparavant, permet de retenir un certain nom- bre d'évènements générés par chacun des capteurs et sus- ceptibles de correspondre au même point de la scène. Par exemple ici, pour l'évènement El de pixel P1 dans le plan de Cl, ont été sélectionnés les évènements E2,E;,E2de pixels respectifs P2,P2,/1 dans le plan de C2, et les évènements E3,E,E3de pixels respectifs /13,P3WI dans le plan C3. Pour déterminer lequel des évènements E2,E;,E2" et E3,4,E3) correspondent à l'évènement El, il suffit de dé- terminer dans le plan de C1 à l'aide des matrices fonda- mentales les lignes épipolaires correspondant à chacun de ces évènements dans le plan de Cl. Le pixel P1 correspon- dant à l'évènement est alors à l'intersection de deux lignes épipolaires (ici les lignes L12 et L13) générées par deux évènements (ici les évènements E2 et E3 de pixels P2 et P3). Réciproquement, on constate que le pixel P2 est à l'intersection des lignes épipolaires L23 et L21 générées par les évènements E1 et E3 dans le plan de C2, et que le pixel P3 est à l'intersection des lignes épipolaires L31 et L32 générées par les évènements E1 et E2 dans le plan de C3. Cette propriété permet de déterminer très rapide- ment dans les évènements sélectionnés temporellement ceux qui doivent être appariés. L'invention n'est bien sûr pas limitée à ce qui vient d'être décrit, mais englobe au contraire toute va- riante entrant dans le cadre défini par les revendica- tions. Pour mettre en oeuvre la procédure d'appariement, on pourra appliquer ces procédures de tri décrites dans l'ordre indiqué, ou dans un autre ordre. D'autres tris peuvent bien sûr être effectués, du moment que l'on appa- rie entre eux des évènements temporellement proches. On pourra bien sûr utiliser d'autres capteurs que des caméras classiques dont le signal est traité pour délivrer des évènements relatifs à des modifications d'intensité lumineuse reçue par les pixels. On pourra par exemple utiliser des capteurs tels que ceux qui sont dé- crits dans l'article « A 128x128 120 dB 151as latency asynchronous temporal contrast vision sensor », P. Lichtsteiner, C. Posch, T. Delbruck, IEEE Journal of Solid State Circuits, Vol. 43, No 2, Février 2008. Ce type de capteur comporte des récepteurs qui, de façon in- dépendante et en continu, quantifient des changements relatifs d'intensité lumineuse pour générer des évènements. Le capteur délivre par construction un flux asynchrone d'évènements et est tout à fait adapté au procédé de l'invention. Bien que dans l'exemple décrit le signal perçu par les récepteurs des capteurs est une intensité lumineuse, on pourra bien sûr utiliser des capteurs sensibles à d'autres signaux en provenance de la scène, comme par exemple un rayonnement infrarouge, une intensité sonore, un écho radar... Bien que la modification du signal perçu par les récepteurs élémentaires est ici quantifiée de façon basique (une première valeur pour une augmentation du signal, et une deuxième valeur pour une diminution du signal), on pourra bien sûr quantifier ces modifications de façon plus élaborée, par exemple par niveaux de gris ou de couleur par niveaux d'intensité lumineuse, au prix d'une augmentation modeste de la taille mémoire de l'indicateur de l'évènement. Bien sûr, les récepteurs élémentaires peuvent être de véritables récepteurs, disposés pour former ensemble un capteur dont le champ visuel comporte autant de pixels que de récepteurs élémentaires. Cependant, les récepteurs élémentaires peuvent être virtuellement crées en isolant informatiquement des zones élémentaires de la surface du capteur sensible audit signal pour chacune desquelles on détecte une modification d'une caractéristique physique du signal reçu dans ladite zone, et en générant autant de signaux que de zones individualisées. En particulier, si l'ensemble des récepteurs forment un même capteur peut affecter géométrie, non forcément plane. Par exem- ple, l'ensemble des récepteurs peut être disposé selon une sphère. Dans de telles géométries, la ligne épipolaire liée à un évènement détecté par un autre capteur affectera plus généralement la forme d'une géodésique. Bien évidemment, le procédé de l'invention s'applique à une scène mobile avec des capteurs fixes aussi bien qu'à une scène fixe avec des capteurs mobiles, par exemples vibrants. Enfin, le procédé de l'invention se généralise im- médiatement à l'utilisation de plus de deux capteurs asynchrones. REVENDICATIONS1. Procédé de reconstruction 3D d'une scène, com- portant : la mise en oeuvre d'au moins deux capteurs (C1, C2) comportant chacun une série de récepteurs élémen- taires arrangés pour observer la scène selon des angles solides respectifs distincts et qui sont chacun sensibles à une caractéristique physique d'un signal reçu par ledit récepteur en provenance de la scène ; la mise en oeuvre d'un algorithme de reconstruc- tion 3D comportant une étape d'appariement de récepteurs élémentaires de chacun des capteurs exploitant des signaux générés par les capteurs ; caractérisé en ce que le procédé comporte l'utilisation des capteurs qui sont chacun adaptés à émettre un flux asynchrone d'évènements (Ei) qui sont chacun indicatifs d'une modification du signal reçu par l'un des récepteurs élémentaires à un instant donné, l'appariement consiste à apparier entre eux des évène- ments générés par chacun des capteurs en sélectionnant des évènements temporellement proches. 2. Procédé selon la revendication 1, dans lequel chaque évènement comprend les données suivantes : des données permettant d'identifier le récep- teur élémentaire ayant généré l'évènement ; un indicateur de la modification du signal perçu par ledit récepteur élémentaire et prenant au moins une première valeur si le signal reçu par le récepteur élémentaire a augmenté, et une deuxième valeur s'il a di- minué ;l'instant d'occurrence de la modification du signal. 3. Procédé selon la revendication 2, dans lequel l'appariement comprend la sélection, pour un évènement 5 source généré par le premier capteur à un instant d'occurrence donné, de tout évènement généré par le deuxième capteur et ayant eu lieu dans une fenêtre tempo- relle de la largeur (AT) donnée autour de l'instant (t) d'occurrence de l'évènement source. 10 4. Procédé selon la revendication 3, dans lequel- les capteurs présentent un plan focal, et dans lequel pour chaque évènement sélectionné, on calcule une distance entre un point du plan focal du deuxième capteur correspondant au récepteur élémentaire ayant généré ledit 15 évènement sélectionné et une ligne épipolaire dans ledit plan focal associée au récepteur élémentaire du premier capteur ayant généré l'évènement source, puis on élimine tous les évènements sélectionnés dont la distance ainsi déterminée est supérieure à une borne D donnée. 20 5. Procédé selon la revendication 3, dans lequel on élimine tous les évènements sélectionnés dont l'indicateur n'a pas la même valeur que l'évènement source. 6. Procédé selon la revendication 3, dans lequel on 25 élimine tous les évènements sélectionnés ayant déjà fait l'objet d'un appariement. 7. Procédé selon la revendication 1, dans lequel on met en oeuvre au moins trois capteurs asynchrones (C1,C2,C3) puis, après sélection temporelle, on retient un 30 évènement généré par chacun des capteurs de sorte que chacun desdits évènements retenus se trouve àl'intersection des lignes épipolaires générées par les autre évènements retenus dans le plan focal correspon- dant. 8. Procédé selon la revendication 1, dans lequel les capteurs comprennent des caméras de type CCD ou CMOS associées à un post-traitement adapté à générer le flux asynchrone. 9. Procédé selon la revendication 1 dans lequel les capteurs sont du type comportant des récepteurs qui, de façon indépendante et en continu, quantifient des changements relatifs d'intensité lumineuse pour générer des évènements, de sorte à délivrer un flux asynchrone d'évènements.15