Chargement de l'article en cours ... ChronoPhys est un logiciel gratuit permettant de réaliser des chronophotographies en Sciences-Physiques. Le logiciel tire parti des fonctionnalités proposées par les librairies Matplotlib et OpenCV pour traiter la vidéo et réaliser le pointage. Entièrement codé de zéro, le développement du logiciel a tiré son inspiration des différents logiciels actuellement utilisés dans les classes en Sciences-Physiques. Il se positionne dans leur lignée et vise à satisfaire le cahier des charges général suivant : Multiplateforme (Linux, Windows, Mac OSX à partir des sources) ; Gratuit et disponibilité du code source sous licence GNU GPLv3 ; Fonctionnalités et interface relativement proches des logiciels actuellement disponibles ; Compatibilité étendue au niveau des extensions et codecs vidéos pris en charge ; Basé sur Python et utilisation de librairies telles que Matplotlib et OpenCV (qui laissent de très nombreuses ouvertures en terme de fonctionnalités) ; Interface permettant une progression guidée lors de la réalisation de la chronophotographie, avec des étapes clairement définies et des “checkpoints”. C’est en gardant ces grands principes en tête que ChronoPhys a été développé. Il est à présent disponible au téléchargement ici sous forme d’exécutable et le code source est disponible sur Framagit : Code source Important, à lire ! Vu que je ne suis pas expert en la matière, le développement d’un tel logiciel demande énormément d’investissement personnel et de temps (le tout accompagné d’au moins plusieurs dizaines de litres de café…). Le logiciel restera donc en phase de test un certain temps. De nombreux bugs et aberrations pourront être rencontrés lors de l’utilisation du logiciel ou de la lecture du code source. Par la mise à disposition gratuite de ce logiciel, j’espère obtenir des retours d’utilisateurs sans lesquels le développement et le maintien ne pourra perdurer. N’hésitez donc pas à me contacter ici pour tout bug rencontré ou idée d’amélioration. Interface du logiciel L’interface de ChronoPhys est composée de 3 zones principales : Zone 1 : espace de travail où le pointage sera réalisé. Zone 2 : espace de contrôle des images ( play, pause, reculer, avancer) et une loupe pour aider au pointage. Zone 3 : espace de paramétrage de la chronophotographie (repère, étalonnage, style) et de visualisation des données de mesure. L’interface a volontairement été développée afin que les élèves puissent avoir un fil directeur pour le paramétrage et la réalisation de la chronophotographie. Ainsi, toutes les étapes essentielles sont successivement surlignées en vert. Réaliser une chronophotographie La présente section détaille les étapes à suivre pour réaliser une exploitation chronophotographique à l’aide de ChronoPhys. Commencer par ouvrir une vidéo (n’excédant pas 150 images et de taille raisonnable…) en cliquant sur le bouton : Les formats acceptés nativement sont MP4, AVI, WMV et MOV. Si vous voulez tester un autre format n’étant pas affiché dans la boîte de dialogue du logiciel, vous pouvez toujours essayer d’utiliser l’option “All files” à la place de “Video”. En ce qui concerne les codecs, la plupart des codecs usuels ont été testés tels que xvid ou x264. Pour tout problème rencontré, merci de me contacter ici. Nouveauté des versions 0.3 et 0.4 Vous pouvez aussi enregistrer une vidéo directement depuis un périphérique (smartphone/tablette doté d’un navigateur web ou webcam). Pour cela, cliquer sur un des boutons suivants : Selon le périphérique choisi, la fenêtre d’acquisition de la vidéo s’ouvre (à gauche, pour utiliser un smartphone/une tablette, à droite pour configurer la webcam) : L’acquisition à l’aide d’un smartphone ou d’une tablette ne fonctionnera que si le périphérique et l’ordinateur éxécutant ChronoPhys sont sur le même résseau local ! Un partage de connexion à l’aide du smartphone ou la création d’un point d’accès wifi sur l’ordinateur fonctionne. Nouveauté de la version 0.3 Une fois la vidéo choisie (fichier ou enregistrement avec un périphérique), une fenêtre s’ouvre et permet d’adapter les caractéristiques de la vidéo (orientation, résolution, nombre d’image total). Choisir un nombre d’images raisonnable pour le pointage puis cliquer sur “OK”. La première image apparaît dans l’espace de travail. La boîte de choix du repère se colore alors en vert. Plusieurs orientations sont disponibles et après en avoir choisi une, positionner l’origine directement sur l’image dans l’espace de travail et cliquer sur le bouton “Valider”. Pour réaliser l’étalonnage, il faut dans un premier temps sélectionner l’option “Premier point” et cliquer sur l’image afin de positionner le premier point au niveau d’une extrémité de la référence choisie. Sélectionner ensuite l’option “Second point” et cliquer sur la seconde extrémité de la référence choisie. Indiquer enfin dans la zone de saisie la valeur correspondante en mètre. Après avoir cliqué sur “Valider”, le logiciel affiche l’équivalence entre pixels et mètres et met à jour les libellés des graduations des axes. Optionnellement, il est possible de modifier la mise en forme selon les préférences de chacun dans la dernière boîte. Le bouton “Valider et passer aux mesures” est alors coloré en vert et il est possible de passer aux mesures. Nouveauté des versions 0.6 Il est aussi possible de choisir le nombre de points lorsque l’on souhaite suivre plusieurs systèmes ou parties d’un système. Le second onglet s’active et fait apparaître un tableau qui contiendra les coordonnées dans le temps et l’espace de chaque point. Cliquer sur l’image dans l’espace de travail afin de prendre le premier point. On pourra s’aider de la loupe () afin d’affiner le pointage. Si vous ne souhaitez pas commencer le pointage dès la première image, il est possible d’utiliser la fonctionnalité “avancer” () ou de cliquer directement sur la ligne du tableau correspondant à l’image souhaitée. Une fois l’acquisition réalisée, plusieurs exports des données sont possibles : Copier dans le presse-papier (tableau) : les données sont réparties en lignes (avec entête) et chaque colonne est séparée par une tabulation. Elles peuvent directement être collées dans un tableur existant ou dans Regressi par exemple ; Copier dans le presse-papier (liste Python) : les données sont stockées dans le presse-papier sous forme de listes Python ; Enregistrer au format CSV : un fichier est enregistré à l’emplacement choisi. Ce dernier est exploitable à l’aide d’un simple éditeur de texte, un tableur ou Regressi. Enregistrer au format PY : enregistre, à l’emplacement choisi, un code Python minimaliste contenant les données et permettant de tracer la trajectoire du système suivi. Enregistrer au format PNG : enregistre, à l’emplacement choisi, une capture d’écran de l’espace de travail actuel (avec image en fond, axes, points et étalonnage). Nouveauté des versions 0.6 Il est aussi possible d’obtenir une représentation graphique directement depuis ChronoPhys en cliquant sur le bouton “Afficher le graphique”. La fenêtre suivante s’affiche et permet de construire la représentation graphique : Futurs développements En parallèle de la recherhce de bugs majeurs, l’ajout de nouvelles fonctionnalités est d’ors et déjà envisagé. À venir donc : Version 0.3 Acquisition en direct d’un smartphone Version 0.4 Acquisition en direct d’une webcam Version 0.6 Double pointage et fenêtre de représentation graphique À venir Calcul d’incertitudes À venir Suivi automatique du système choisi (après détourage) à l’aide d’OpenCV Si vous souhaitez soumettre des idées de nouvelles fonctionnalités, des corrections ou signaler des bugs, n’hésitez surtout pas à me contacter ici.