Cette page est en cours de rédaction.
Apportez votre aide…

Pymecavideo

Pymecavideo est un logiciel libre sous licence GPL 3 écrit en Python, basé sur la bibliothèque Qt4 et FFmpeg. Il permet, à partir d'une vidéo (quelconque) de déterminer les coordonnées des points que l'on peut pointer.

Dans le cadre d'un enseignement de physique, ceci permet d'étudier la relativité des référentiels et de calculer les énergies cinétiques, potentielles. À ce titre, il remplace facilement Avimeca ou Regavi, logiciels propriétaires ne tournant que sous Microsoft Windows.

Couplé à un logiciel de visualisation de données, comme Qtiplot, on peut visualiser les vecteurs du mouvements.

Pymecavideo exporte les données en csv ou copie dans le presse-papier (pour Qtiplot par exemple). Permet aussi de changer le référentiel du mouvement. Le logiciel crée une nouvelle vidéo, en translation par rapport au référentiel choisi. Il est possible de regarder le mouvement de la balle dans le référentiel du vélo http://outilsphysiques.tuxfamily.org/pmwiki.php/Oppl/Pymecavideo.

Note : pymecavideo est disponible en français, anglais et espagnol.

Novembre 2015 : la version 6.3 est sortie

Il suffit d'installer le paquet DEB disponible sur le site de l'éditeur : http://outilsphysiques.tuxfamily.org/pmwiki.php/Oppl/Pymecavideo et le paquet gnuplot pour la création des graphiques.

Il existe un dépôt non officiel debian maintenu par Ofset contenant le .deb de la dernière version 3.0. Ce paquet fonctionne sur ubuntu avec python 2.5. Voir à ce lien pour ajouter le dépôt et la clés sur votre système.
On peut installer PyMecaVideo avec la Logithèque Ubuntu depuis Natty Narwhal sans avoir à faire d'autres manipulations. Pour information le paquet dans Ubuntu 14.04 s'appelle python-mecavideo
Pour information, le paquet s'appelle dans Ubuntu 20.04 python3-mecavideo
Après l'avoir installer on peut avoir besoin de créer le répertoire "~/.local/share/data/pymecavideo/videos_recodees".

En cas d'erreur

Le lancement de pymecavideo provoque souvent un message d'erreur :

Traceback (most recent call last):
  File "/usr/bin/pymecavideo", line 5, in <module>
    pymecavideo.run()
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 1350, in run
    windows = StartQT4(None,os.path.abspath(filename),opts)
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 78, in __init__
    self._dir()
  File "/usr/lib/python2.6/dist-packages/pymecavideo/__init__.py", line 409, in _dir
    os.mkdir(d)
OSError: [Errno 2] Aucun fichier ou dossier de ce type: '/home/steph/.local/share/data//pymecavideo'

La solution est simple : il faut rectifier un chemin dans le programme

gksudo gedit /usr/lib/python2.6/dist-packages/pymecavideo/__init__.py

tu modifies la ligne suivante qui se trouve vers 373

pymecavideo_rep=os.path.join(datalocation,"pymecavideo")

par

pymecavideo_rep = os.path.join(home, '.config', 'mecavideo')

solution testée efficacement avec pymecavideo v4 et Ubuntu 9.04 - Jaunty Jackalope

En cas d'erreur d'importation du module open-cv

ImportError: No module named cv

il faut s'assurer que opencv-python est installé

et dans les fichiers cadreur.py et detect.py, il faut remplacer les lignes

import cv
import cv2.cv as cv

par

import cv2 as cv

résolution de bug testée sur kubuntu 18.04 LTS et pyMecaVideo v 6.2

Pymécavideo ne fait que la mesure de points image par image sur une vidéo. Il faut donc commencer par enregistrer votre video avec un logiciel externe (wxAstroCapture est parfait pour cela mais un logiciel plus basique comme cheese fait l'affaire).

Fonctionnement général

  • On ouvre la vidéo à étudier
  • On définit l'échelle : on peut avancer sur l'image que l'on veut puis on clique sur le bouton Définir l'échelle. on indique la longueur de la référence et on sélectionne à la souris les deux extrémités de la référence.
  • On peut aussi choisir l'origine et le sens des axes en cochant Activer les fonctionnalités avancées
  • On choisir le nombre de point à étudier : cela permet d'enregistrer plusieurs points sur chaque image. Par exemple, sur un lancer de boule de pétanque depuis le sol, il n'y a qu'un point (la boule) à pointer ; par contre si on lache cette boule depuis un vélo, on sélectionnera deux points (la boule et le cadre du vélo).
  • On clique sur chaque point image par image.
  • Au fur et à mesure, le tableau de valeur se contruit. On peut aussi visualiser les trajectoires des points sélectionnés par rapport au repère ou les uns par rapport aux autres.

FIXME

  • pymecavideo.txt
  • Dernière modification: Le 11/09/2022, 11:41
  • par moths-art