TD7 : Stéréoscopie par corrélation

Le but du TD est de realiser un programme de stereoscopie par correlation prenant en entree deux images rectifiees, et donnant comme resultat une carte de disparite

  1. Recuperez le squelette du TD, et un exemple de paire stereo rectifiée : gauche, droite. Il doit compiler mais n'est pas fonctionnel. Exemple d'utilisation:
    ./stereo left_r.pgm right_r.pgm -56 -30 11
    
    Les sorties (carte de disparite et score) se trouvent dans disp.pgm et score.pgm
  2. Remarquez les deux #define en tete du fichier principal stereo.c. ZERO_MEAN permet d'utiliser le critere ZSSD au lieu de SSD. COURBE_SCORE permet de sortir la courbe des scores en un point de l'image 1 plutot que la carte de disparite. Regardez ce que declenchent ces #defines dans le code.
  3. Ecrivez la partie manquante de la fonction scorePoint de correlation.c. Pour la tester, compilez en definissant COURBE_SCORE pour avoir la courbe des scores au point (211,159), et tracez la courbe obtenue (cf notes plus bas pour l'utilisation de gnuplot ou de graph).
  4. Tracez la courbe avec et sans ZERO_MEAN, que remarquez-vous?
  5. Identifiez le correspondant du point (211,159)
  6. Tracez la courbe de score du point correspondant: il faut echanger les deux images, changer les coordonnees du point dans le source, et recalculer l'intervalle de disparite. Que remarquez-vous ?
  7. Ecrivez les parties manquantes des fonctions correlationPoint (recherche du meilleur correspondant) et correlationImages. correlationPoint renverra dispmax lorsque le meilleur score est obtenu en une des bornes de l'intervalle (expliquez pourquoi). Recompilez en enlevant le #define COURBE_SCORE
  8. Calculez la carte de disparite sur herve, avec et sans ZERO_MEAN, qu'observez-vous ?
  9. La validation aller-retour consiste a calculer une carte de disparite gauche-droite puis droite-gauche, puis a verifier la coherences de ces deux cartes de disparites
  10. Modifiez la fonction correlationPoint pour avoir une approximation a une precision sous-pixelique de la disparite.
  11. Question subsidiaire (difficile) : Optimisez l'algorithme pour utiliser la methode de la fenetre glissante.

Notes

Pour rendre le TD

Envoyez par mail le fichier stereo.tar.gz obtenu par la commande "make tar" sous forme d'attachement à l'adresse habituelle en précisant :


Frederic Devernay
Last modified: Fri Feb 6 18:01:15 CET 2004