espace

Maîtrise d'informatique - Module 11
Vision par ordinateur - Cours



Chapitre 4 :

  • 1. Cas général de la stéréovision.
  • 2. Le calibrage.
  • 3. L'appariement.
  • 4. La triangulation.
  • 5. Deux exemples.

  • Dans le chapitre 3, nous nous sommes placés dans un cas de stéréovision élémentaire. Nous allons reprendre différents points du chapitre 3, et donner leur généralisation. Nous conclurons en donnant quelques exemples de stéréovision utilisés dans le milieu industriel.

    1. Cas général de la stéréovision.

    1.1. Description du montage général.

    On souhaite connaître Z pour chaque point de la scène, éclairé et visible sur ces deux images numériques stéréoscopiques.

    Il y a en général deux caméras distinctes. Les repères des caméras ne sont pas liés au repère OXYZ. Pour passer de OXYZ à Ogxgygzg, ou à Odxdydzd, il faut donc effectuer :

    1.2. Correspondance entre points objets et pixels d'une image.

    On suppose que les images sont nettes.

    À ce niveau, on a fait dans le chapitre 3 l'hypothèse simplificatrice suivante :

    Cette hypothèse est fausse. En fait, il s'agit d'une projection perspective et non, comme on l'avait supposé, d'une projection orthogonale.

    1.2.a. Centre optique d'une caméra.

    C'est équivalent à :

    1.2.b. Projection perspective.

    Pour trouver le pixel I correspondant à un point objet P, on prend l'intersection de la droite PN avec un plan obtenu par translation de D le long de l'axe optique du plan de la rétine.

    On appelle pour cette raison N (point nodal objet) le centre optique de la caméra, noté C.

    Cette transformation est appelée projection perspective. Une propriété élémentaire de la projection perspective est qu'entre deux segments identiques, le segment le plus proche de la caméra a une image plus grande :

    Exemple d'un cube :

    Les propriétés de la projection perspective (exemple : point de fuite) sont nombreuses et compliquées. Nous n'en parlerons pas dans ce cours (voir un cours de DEA sur la "géométrie projective").

    1.2.c. Discrétisation.

    De manière générale, un pixel a une forme plus ou moins rectangulaire :

    L'éclairement reçu par le pixel vaut :

    Le niveau de gris Ei,j du pixel vaut: Ei,j = f(), f croissante.

    2. Le calibrage.

    2.1. Relation mathématique entre points objets et pixels.

    On s'intéresse par exemple à l'image gauche.

    2.1.a. Translation + rotation.

    Il faut connaître 6 paramètres (3 angles pour la matrice M, 3 coordonnées pour le vecteur  ), appelés "paramètres extrinsèques" de la caméra.

    2.1.b. Projection perspective.

    Les expressions de xI et de yI en fonction de x, y et z sont les suivantes :

    2.1.c. Discrétisation.

    Si O correspond à (i0, j0), alors I correspond à (i, j) tel que :



    (4.4)


    (4.5)

    Problème :

    Astuce :

    Remarques :

    2.1.d. Conclusion : matrice perspective.

    Grâce aux calculs précédents :

    N est une matrice 3 x 3.

    On l'écrit plutôt :

    T est une matrice à 3 lignes et 4 colonnes, appelée "matrice perspective" de la caméra. Ses 12 coefficients dépendent des 12 paramètres de la caméra :

    Par ailleurs :

    Remarque :

    Cela signifie que T est déterminable à un facteur près. On peut fixer un coefficient à 1 :

    Il ne reste que 11 coefficients inconnus, dépendant des 12 paramètres de la caméra.

    2.2. Détermination des paramètres de calibrage.

    On doit déterminer les 12 paramètres de la caméra.

    En général, on se contente de déterminer la matrice T (c'est-à-dire 11 coefficients) pour chaque caméra.

    Il suffit de connaître 6 points Pk de la scène, leurs coordonnées, et les pixels qui leur sont associés.

    On peut montrer que ces points ne doivent pas tous être coplanaires.

    À l'IRIT, on utilise une grille de calibrage, sur laquelle il est facile de prendre des repères :

    3. L'appariement.

    3.1. La contrainte épipolaire : cas général.

    Si on cherche le pixel Id correspondant à un pixel Ig de l'image gauche, on peut dire que Id appartient nécessairement à une droite de l'image droite, appelée "droite épipolaire" associée à Ig, et qui est l'intersection du plan IgCgCd et de l'image droite.

    Comme il y a symétrie entre les deux images, on construit ainsi des paires de droites épipolaires, qui passent toutes par un des épipôles Eg et Ed.

    Dans la pratique :

    3.2. Appariement dense et appariement non dense.

    Lors des séances de TP :

    Grâce à la texture, il est possible d'effectuer un appariement dense. En revanche, si l'image n'est pas texturée, ce quotient peut être très faible.

    Exemple :

    En général, on apparie les contours, les arêtes, les angles, lorsqu'on fait de l'appariement non dense.

    La tendance actuelle est d'effectuer plutôt de l'appariement dense, car les performances des calculateurs ne cessent d'augmenter.

    4. La triangulation.

    On a les relations suivantes :

    On sait qu'un point P =correspond à cette paire de pixels, en coordonnées projectives. On veut connaître X, Y et Z.

    Le système composé des équations (4.12) et (4.13) a une solution et une seule : P, le point cherché. L'expression mathématique des coordonnées de P est un peu complexe, et nous ne la donnerons pas ici.

    Dans le prochain paragraphe, nous allons citer deux exemples de stéréovision provenant du milieu industriel.

    5. Deux exemples.

    5.1. Robot mobile.

    5.1.a. Description.

    Le robot doit connaître le relief de son environnement pour pouvoir s'y déplacer.

    5.1.b. Difficulté.

    Lorsque le robot se déplace, les paramètres extrinsèques sont modifiés, et il faut les recalculer à chaque déplacement :

    Exemple :

    5.2. Images satellitaires.

    5.2.a. Description.

    5.2.b. Difficultés.

    Entre les deux images, des nuages peuvent apparaître.

    Plus gênant : entre les deux prises de vue, tout se passe comme si les sources lumineuses avaient également bougé, ce qui rend l'appariement délicat.

    Exemple :


    Ces pages ont été réalisées par Jean-Denis Durou et Anne-Marie Pocquet.
    Pour tout commentaire, envoyer un mail à durou@irit.fr ou à pocquet@irit.fr.