Pointage

Accueil

Introduction

Afin de remplacer certains logiciels comme regressi ou avimeca, que je trouve trop 'usine à gaz', et surtout, qui ne sont pas disponibles sur Linux..

J'ai donc codé un logiciel en python qui permet de pointer, sur une vidéo convertie en suite d'images, la position d'un objet, afin de pouvoir calculer la trajectoire, la vitesse, l’accélération, etc...

Sommaire

Caractéristiques

Ce logiciel basique permet de pointer une position par image, cette position est donnée dans un repère orthonormé, dont la norme et le sens des axes peuvent être modifiés. L'enregistrement se fait dans un fichier CSV, qui pourra, ensuite, être utilisé dans un tableur comme LibreOffice Calc, afin de faire les calculs souhaités.

fichier

Le logiciel est codé en python 3, natif pour les utilisateurs linux. Sur windows, il faut installer python avant. pointage.py

utilisation

pré-traitement

Le programme ne supporte pas les vidéos, n'ayant pas trouvé de moyen simple de les gérer en python. Ainsi il faut donc convertir la vidéo en une séquence d'images. Afin de convertir la vidéo en une suite d'images, on peut utiliser ffmpeg qui est un puissant logiciel de manipulation de vidéo.

Voici la ligne de commande qui permet de convertir 'file.mp4' en une suite d'images :

  $ ffmpeg -i file.mp4 output_%04d.png

Je vous conseille de placer la vidéo dans un dossier vide, d’exécuter la ligne de commande, puis de déplacer la vidéo ailleurs, afin de ne laisser que les photos dans le dossier. (ce qui sera indispensable plus tard)

Si la vidéo est trop longue par rapport au moment que vous voulez pointez, et que vous ne voulez pas recouper la vidéo avec un logiciel de montage, vous pouvez, dans le dossier d'image, supprimer les photos avant et après le moment que vous jugez intéressant.

lancement du logiciel

Le logiciel se lance avec python, par exemple, depuis un terminal linux avec la commande suivante :

  $ python3.5 pointage.py

Une fois lancé le logiciel vous demandera d'abord quel est le dossier contenant les images.

Attention, le dossier ne doit contenir que les images !

Il demandera ensuite le nom du fichier CSV dans lequel vous voulez enregistrer les données.

Présentation de l'Interface

L'interface ressemble donc à cela :

On voit donc, en bleu le terminal, où certaines infos pourront vous être demandés.

En rouge sera affiché l'image courante, à la taille réelle (1 pixel pour 1 pixel). Sur cette image courante, il y a une croix rouge que l'on peut déplacer à la souris, ou avec les flèches pour être plus précis.

En vert est affiché un détail de la zone autour de la croix, afin d’être plus précis.

Initialisation du repère

Afin de faciliter le traitement, le programme propose de faire "un produit en croix", c'est à dire une conversion de pixel en 'm' ou cm, ou km, etc.. (ou pouces, si vous êtes ce genre de personne)

Concrètement, lorsque vous appuyer sur A, vous définissez le point A sur l'image, et de même pour le point B. Appuyer ensuite sur la touche D, puis, dans le terminal, vous pourrez saisir la valeur que vous attribuez à la distance AB.

Ensuite, vous pourrez déterminez l'origine, en positionnant la croix et en appuyant sur la touche O, le terminal vous demandera ensuite si l'axe des ordonnées pointe vers le haut (h) ou le bas (b) puis l'axe des abscisses vers la gauche (g) ou vers la droite (d).

Une fois ceci fait, votre repère est initialisé.

Pointage

Pour pointer une position, placer la croix à l'endroit que vous souhaitez, ajustez éventuellement avec les flèches directionnelles, puis appuyez sur la touche Entrée.

Attention ! il n'y a pas la possibilité de revenir en arrière !

Le logiciel passe ensuite à la photo suivante, et ainsi de suite, jusqu’à la fin des photos.

Le logiciel permet de passer outre certaines photos, en appuyant sur espace, ce qui n'enregistrera pas de points.

Sortie de l'application

Une fois que les photos ont toutes été pointées, vous pourrez quitter le logiciel avec la touche Q, ce qui enregistrera automatiquement les données dans le fichier CSV.

Démonstration


dernière mise à jour : 02/02/2021