IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

OpenCV Discussion :

Encore de la stéréo


Sujet :

OpenCV

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 25
    Par défaut Encore de la stéréo
    Bonjour,

    Je relance encore un sujet sur la stéréo désolé. Si mon projet marche à la fin je ferai un topic parce que c'est quand même pas simple ^^.

    Je cherche à faire de la 3D alors pour ça je sais déja qu'il y a plusieurs étapes :

    1) je calibre les caméras avec les chessboard et les fonction cvFindChessboardCorners, cvCalibrateCamera2... à la fin je me retrouve avec pour chaque caméra une matrice intrinsèque, une matrice de distortion, les points de l'image et les points de l'objet

    2) Après ça je dois transformer mes images afin que les lignes épipolaires se retrouvent parallèles (i.e les épipoles à l'infini) j'ai deux choix :
    a) soit j'utilise les matrices de distortions et intrinsèques calculées précédemment donc je me place dans le cas calibré : je vais utiliser la fonction cvStereoCalibrate et j'obtiens la matrice R de rotation entre mes deux caméras
    b) soit j'utilise les matrices de points de l'image pour retrouver la matrice fondamentale F et je suis dans le cas non calibré : je vais utiliser la fonction cvStereoRectifyUncalibrate et j'obtiens les matrices d'homographies

    Je ne suis pas trop sur mais je crois que l'on obtient la matrice R en faisant :

    R= matriceintrinseque_gauche^(-1) * Hgauche * matriceintrinsèque_gauche

    Mais je suis pas sur du tout de ça


    quoiqu'il en soit une fois que j'ai eu R j'ai cherché la nouvelle map avec la fonction : cvInitUndistortRectifyMap

    et je l'ai affiché avec remap .

    Alors déja est ce que ce raisonnement est bon??
    Pourrais -je avoir des précisions sur comment on obtient R à partir des deux matrices d'homographies.

    Mon code compile et fonctionne (Merci snowpy )

    Voila ce que j'obtiens :
    ça c'est l'image de départ gauche


    ça c'est l'image de départ droite


    je cherche les coins comme ça :



    et j'obtiens la calibration pour chaque caméra avec les matrices intrinsèques :



    voila la j'ai fini l'étape 1 détaillée précédemment alors déja est-ce que vous voyez des trucs étranges?? (moi je sais pas trop ce que je dois voir...)

    comme j'étais pas sur de ce que j'avais la je me suis mis dans le cas non calibré et j'ai juste utilisé les points trouvés dans l'image :

    à la fin de l'atpe 2 et après remap j'obtiens ça :
    je pense pas que ça soit bon ...

    est ce que vous avez une idée d'ou ca peut venir...moi je pense du R.

    Je peux poster le code si vous voulez mais la déja c'est un long message

    Merci beaucoup d'avance !!

  2. #2
    Membre chevronné
    Inscrit en
    Mars 2010
    Messages
    439
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 439
    Par défaut
    http://books.google.com/books?id=seA...uction&f=false

    page 412 il te décrit au fur et à mesure toutes les étapes à réaliser et il t'explique même pourquoi ^^

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 25
    Par défaut
    Merci beaucoup

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 25
    Par défaut
    J'ai utilisé le code fourni dans le bouquin que tu m'as conseillé snowpy et voila ce que j'obtiens (toujours avec les deux mêmes images de départ)...

    j'avoue que c'est un peu troublant. Je me suis demandé si j'avais pas donné des champi à l'ordinateur

    Qu'est ce que vous en pensé?? :


    les deux images rectifiés

    la disparité


    avec la deuxième méthode en calculant la matrice fondamentale séparément :


    et la disparité



    (en tout cas c'est jolie !!! )

  5. #5
    Membre chevronné
    Inscrit en
    Mars 2010
    Messages
    439
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 439
    Par défaut
    tu fais de l'art avec openCV c'est bien

    tes premiers résultats semblaient plus proche de ce que tu devais trouver

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 25
    Par défaut
    Je crois que je vais ouvrir une expo

    Je pense que le problème viens des images de départ
    je vais essayer en prenant juste une petite translation entre mes deux images.

Discussions similaires

  1. Programmer encore en VB 6 c'est pas bien ? Pourquoi ?
    Par Nektanebos dans le forum Débats sur le développement - Le Best Of
    Réponses: 85
    Dernier message: 10/03/2009, 14h43
  2. choix sgbdr (encore!)
    Par _Gabriel_ dans le forum Décisions SGBD
    Réponses: 9
    Dernier message: 23/03/2004, 10h39
  3. TEdit (encore)
    Par dj.motte dans le forum C++Builder
    Réponses: 5
    Dernier message: 23/12/2002, 19h02
  4. TPalette (encore)
    Par Flipper dans le forum Langage
    Réponses: 3
    Dernier message: 28/11/2002, 23h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo