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

Traitement d'images Discussion :

Comment détecter le mouvement d'une caméra


Sujet :

Traitement d'images

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    112
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 112
    Points : 58
    Points
    58
    Par défaut Comment détecter le mouvement d'une caméra
    Bonjour,

    Je me plonge sur la question suivante : déterminer la vitesse ABSOLUE d'un ensmble de cibles , et donc la nécéssité d'estimer la vitesse de la caméra

    Pourriez-vous SVP, m'aiguillez sur des algorithme qui permettent de calculer la vitesse de la caméra.

    Merci

  2. #2
    En attente de confirmation mail
    Inscrit en
    Octobre 2007
    Messages
    285
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Octobre 2007
    Messages : 285
    Points : 348
    Points
    348
    Par défaut
    Connaitre le déplacement de la caméra en fonction de l'image qu'elle retourne, et en déduire sa vitesse ?
    Sans connaissance à priori d'une partie du système, il est difficile, je dirais même impossible, de connaître la vitesse de déplacement du capteur.
    Le système possède trop de variables...

    Quelques pistes montrant la complexité :
    - Détection du mouvement :
    - est-ce la caméra qui à bougé ?
    - est-ce un objet ?
    On peut répondre à cette question en détectant un mouvement global de l'image, à supposer que dans le champ, il y a une zone fixe (ligne d'horizon, décor, ...)
    Et encore, dans ce contexte, on s'apperçoit que les objets plus près bouge plus que les objets éloignés.

    Maintenant, la vitesse :
    la vitesse est donnée en mètre/seconde, hors la caméra peut nous donner le déplacement d'un objet en pixel par seconde...

    Donc pour pouvoir connaître le déplacement de la caméra, il faut poser des contraintes ou tout du moins, connaître des informations extérieures tel que :
    position de la caméra par rapport aux objets, champs de prise de vue, fréquence d'acquisition, ....

    Il est possible de t'aider un peu, mais il faut que tu nous donnes toutes les contraintes du système que tu peux connaître.

    Pour info, sur ce type de système, la position et/ou la vitesse de déplacement de l'objet supportant la caméra est calculé à l'aide d'un capteur externe.

  3. #3
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Points : 9 860
    Points
    9 860
    Par défaut
    Bonjour,

    effectivement, tu ne pourras le faire que si tu as des connaissances "à priori" sur ton environnement.
    Ce que tu souhaites faire, c'est retrouver la calibration de la caméra. Dans calibration, cela comprend aussi la position. Une fois que tu l'auras, tu pourras faire tes différents calculs.

    Donc, dans quel environnement de travail es tu ?
    S'il est quelconque... je crois que c'est impossible.
    S'il est spécifique, fais un état de l'art du domaine et prend la méthode la plus adaptée à ton problème...
    Consignes aux jeunes padawans : une image vaut 1000 mots !
    - Dans ton message respecter tu dois : les règles de rédaction et du forum, prévisualiser, relire et corriger TOUTES les FAUTES (frappes, sms, d'aurteaugrafe, mettre les ACCENTS et les BALISES) => ECRIRE clairement et en Français tu DOIS.
    - Le côté obscur je sens dans le MP => Tous tes MPs je détruirai et la réponse tu n'auras si en privé tu veux que je t'enseigne.(Lis donc ceci)
    - ton poste tu dois marquer quand la bonne réponse tu as obtenu.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    112
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 112
    Points : 58
    Points
    58
    Par défaut
    Bonjour,

    Merci pour vos suggestion, et désolé pour le retard .. en fait je n'ai aucune conaissance à priori sur les images

    J'ai finalement découpé mon image en sous-image (25 en tout), je fait l'hypothèse que la caméra bouge de moins de 10 pixel d'une trame à l'autre, et je calcule le différence entre niveaux de gris entre chaque imagette et celle qui lui correspond dans la trame suivante ... je décalle l'imagette de la trame suivante , a gauche et a droite , en haut et en bas ... et je sauvegarde le vecteur vitesse ( déplacement) qui minimise cette différence ... ça donne d'assez bon résultat

    si vous avez des suggestions moins brutales , je suis preneur

  5. #5
    Modérateur
    Avatar de ToTo13
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Janvier 2006
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 793
    Points : 9 860
    Points
    9 860
    Par défaut
    Bonjour,

    si tu n'as aucune connaissance à priori... c'est pas facile...

    Une petite idée qui me passe comme ça par la tête, serait de faire un flot optique... je m'explique :
    - normalement les flots optiques ne fonctionnent que pour une caméra fixe, dans ce cas là il te donne le vecteur vitesse de chaque éléments.
    - mais si tu parviens à détecter des objets que l'on peut classer comme fixe (tronc d'arbre, bâtiments, ...) tu peux regarder le vecteur vitesse de ces objets qui te donneront une estimation du mouvement de la caméra.

    Tu n'as vraiment AUCUNE information sur les vidéos (ville, campagne, ...).
    Consignes aux jeunes padawans : une image vaut 1000 mots !
    - Dans ton message respecter tu dois : les règles de rédaction et du forum, prévisualiser, relire et corriger TOUTES les FAUTES (frappes, sms, d'aurteaugrafe, mettre les ACCENTS et les BALISES) => ECRIRE clairement et en Français tu DOIS.
    - Le côté obscur je sens dans le MP => Tous tes MPs je détruirai et la réponse tu n'auras si en privé tu veux que je t'enseigne.(Lis donc ceci)
    - ton poste tu dois marquer quand la bonne réponse tu as obtenu.

  6. #6
    Expert éminent sénior

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 603
    Détails du profil
    Informations personnelles :
    Âge : 66
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 603
    Points : 17 913
    Points
    17 913
    Billets dans le blog
    2
    Par défaut
    j'ai fait ca en relatif a un moment donne..

    Pour passer de maniere "smooth" d'une image a l'autre, c'est mieux Kalman qu'une interpolation lineaire...
    "Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".

    Consultant indépendant.
    Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
    C, Fortran, XWindow/Motif, Java

    Je ne réponds pas aux MP techniques

Discussions similaires

  1. Comment détecter la fin d'une ligne en C ?
    Par radouane_as dans le forum Débuter
    Réponses: 10
    Dernier message: 08/06/2007, 18h13
  2. Comment détecter la fermeture d'une fenêtre?
    Par Masmeta dans le forum C++Builder
    Réponses: 1
    Dernier message: 18/01/2007, 16h02
  3. Comment détecter l'ouverture d'une session, sans dll ?
    Par yosthegost dans le forum Delphi
    Réponses: 4
    Dernier message: 24/05/2006, 19h58
  4. [Servlet] Comment détecter la fin d'une session HTTP
    Par cocula dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 18/04/2005, 17h27
  5. Comment détecter la frappe d'une touche ?
    Par Bubonik software dans le forum C
    Réponses: 17
    Dernier message: 11/12/2003, 21h52

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