|
||
---|---|---|
locales | ||
Tuffy_Bold.ttf | ||
config.toml | ||
frame_opencv.py | ||
readme.md | ||
requirements.txt | ||
serialutils.py | ||
stopi2.sh | ||
stopi_station.jpg |
readme.md
Stopi2
Branche gphoto / réflexe numérique
Ceci est la branche qui restaure la possibilité d'utiliser des périphériques compatibles gphoto.
Seconde version du script python stopi destiné à être utilisé avec une télécommande picote.
Cette version utilise opencv, libcamera et gphoto.
Elle fonctionne avec une webcam, un module vidéo Picamera (v1,v2 ou v3) ou un réflexe numérique.
Encore une fois, l'objectif est de créer un logiciel simple et minimaliste dans son interface, dont les caractéristiques sont les suivantes :
- Affichage des images en plein écran sans interface : toutes les fonctions utilisent quelques touches du clavier.
- Pelure d'oignon entre la dernière image et le flux vidéo.
- Un seul fichier de configuration permet de régler les options (résolution, images/secondes, mirroir vertical/horizontal, )
- Auto configuration de la camera au démarrage (exposition et balance des blancs)
- Pilotage de certains réglages de la caméra depuis la télécommande/clavier (balance des blancs, rotation de l'image, mise au point (picam V3), exposition...)
- Prévisualisation de l'animation
- Exportation vidéo avec ffmpeg
- Interface localisée (anglais et français disponible pour le moment.)
Banc de test
Ce script a été testé avec une webcam compatible V4L2, une "showmewebcam" à base de rpi 0 et d'un module caméra v2 (8Mp), et un ordinateur classique sous Debian, ainsi qu'avec un RPI 4B munis d'un module Picamera V3.
Voici un récapitulatif des tests effectués :
Machine \ Type de Caméra | Webcam | Showmewebcam | RPI Caméra module V1 (5MP) | RPI Caméra module V3 (12MP) | Réflexe numérique (Nikon D3000/D40x) |
---|---|---|---|---|---|
Raspberry Pi 3B+ (Debian 12) | ✓ | ✓ | ✓ | ✓ | ✓ |
Raspberry Pi 4B (Debian 12) | ✓ | ✓ | ✓ | ✓ | ✓ |
PC Linux (Debian, Manjaro) | ✓ | ✓ | N/A | N/A | ✓ |
Documentation
La documentation est disponible dans le wiki.
Feuille de route
Des fonctions supplémentaires sont prévues :
- Mise à jour de la traduction FR
- Réflexe numérique: utilisation du liveview de l'appareil (si je trouve un modèle compatible pour le développement)
Contributions
Les contributions et rapports de bugs sont les bienvenus !
Installation
Dans un terminal :
- (Utilisateurs Windows) Activer le sous système Linux version 2 (WSL2) et installer Debian.
- Installer les dépendances suivantes :
# Avec une distribution basée sur Debian (Ubuntu, Mint...) sudo apt install --no-install-recommends --no-install-suggests git ffmpeg python3-pip python3-venv libtiff5-dev libopenjp2-7 libopenjp2-7-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.6-dev tk8.6-dev libharfbuzz-dev libfribidi-dev libxcb1-dev python3-tk python3-dev libopenblas-dev libatlas-base-dev libhdf5-dev libhdf5-serial-dev libatlas-base-dev libjasper-dev v4l-utils
- (Optionnel) Pour installer un environnement graphique minimal sur une installation console :
sudo apt install --no-install-recommends --no-install-suggests openbox xserver-xorg xinit pcmanfm gmrun lxterminal hsetroot unclutter plymouth plymouth-themes
- (Optionnel) Pour installer un environnement graphique minimal sur une installation console :
- Cloner le dépôt dans le dossier de votre choix :
git clone https://git.arthus.net/arthus/stopi2.git
- Aller dans répertoire du projet :
cd stopi2
- Créer un environnement virtuel (venv) Python :
python -m venv ./
- Mise à jour de l'environnement pypi: '
MAKEFLAGS="-j$(nproc)" pip install -vvv --upgrade pip setuptools wheel
- (Optionnel) Dans le cas de l'utilisation d'une "raspicam", il faudra ajouter le paramètre
--system-site-packages
pour avoir accès au module picamera2, et installer la librairie correspondantepython3-picamera2
.
- Mise à jour de l'environnement pypi: '
- Activer l'environnement virtuel avec
source bin/activate
- Installer les dépendances python (~150Mo) :
MAKEFLAGS="-j$(nproc)" pip install -r requirements.txt
- Activer l'éxécution du script :
chmod +x stopi2.sh
- Lancer le script :
./stopi2.sh
Voir le wiki pour plus de détails
Fonction par touches
L'idéal est d'utiliser une télécommande picote mais le logiciel est aussi pilotable via un clavier/clavier numérique.
Fonction | Boutton | Clavier |
---|---|---|
Capturer une image | 🟢 | touche Espace ou 0 sur le clavier numérique |
Supprimer une image | 🔴 | touche Suppr, touche Backspace ou touche - sur le clavier numérique |
Lecture de l'animation | Alt + 🟢 | touches Entrée |
Exporter l'animation | Alt + 🔴 | touche E ou * sur le clavier numérique |
Image suivante | 🔵 | touche flèche droite ou 6 sur le clavier numérique |
Image précédente | 🟡 | touche flèche gauche ou 4 sur le clavier numérique |
Aller à la dernière image | Alt + 🔵 | touche flèche bas ou 2 sur le clavier numérique |
Aller à la première image | Alt + 🟡 | touche flèche haut ou 8 sur le clavier numérique |
Activer/Désactiver onionskin | ⚫ | touche O ou / sur le clavier numérique |
Quitter le logiciel | n/a | touche Échap, Alt-F4 ou Ctrl-C |
Réglages de la caméra (compatible showmewebcam seulement) | ||
Réinitialiser la caméra | Alt + ⚫ | touche R ou 9 sur le clavier numérique |
Changer le mode de balance des blancs | ① | touche W ou 7 sur le clavier numérique |
Changer le mode d'exposition | Alt + ① | touche X ou 1 sur le clavier numérique |
Afficher seulement le flux vidéo | ② | touche L ou 3 sur le clavier numérique |
Rotation de 180° de la capture vidéo | Alt + ② | touche F ou 5 sur le clavier numérique |
Si vous utilisez une télécommande picote avec un encodeur rotatif (ou potar), les fonctions suivantes sont également disponibles :
Fonction | Boutton | Clavier |
---|---|---|
Mise au point - | ↶ | touche A |
Mise au point + | ↷ | touche Z |
Mode anti-flicker | Alt+↶ | touche Q |