Le code est distribué sous licence libre GPL v3+ et le texte sous licence Creative Commons CC By-Sa, conformément aux demandes du concours.
PyTalk a été développé par Eliot CASSIDY et Antonin JOUVE, élèves faisant la spécialité NSI en 1ère Général.
La vidéo de présentation du projet se trouve sur ce lien.
PyTalk est un logiciel de traduction en temps réel de la langue des signes. Ce programme a été développé dans le cadre de la 1ère édition du concours trophées NSI. La présentation technique du projet peut-être trouvé dans les fichiers du projet.
UPDATE : Ce projet a été récompensé du prix pour le meilleur projet NSI des premières de la région PACA (que vous pouvez voir ici)
Pour installer les bibliothèques nécéssaires au fonctionnement du projet, éxécutez :
pip3 install -r requirements.txt
Si une des versions spécifiés dans requirements.txt est introuvable, essayez en installant la version la plus récente.
Python 3.9 a été utilisé pour ce projet. Veuillez télécharger et éxécuter ce programme en utilisant cette version. Notez qu'il est impératif de mettre python 3.9 dans le PATH pour que le programme fonctionne correctement.
Voici une liste non exhaustif des librairies utilisées et leur utilité dans ce projet :
Librairies | But |
---|---|
MediaPipe | Reconnaitre des points de la main et du visage en temps réel |
Numpy | Stockage des points dans des tableaux numpy. |
OpenCV | Gestion de la webcam |
Sklearn | Machine learning basique |
TensorFlow | Machine learning complet permettant, entre autre, d'entrainer le modèle |
Tkinter | Interface graphique |
Avant de lancer le script n'oubliez pas d'éxécuter :
cd src
Pour lancer le script, éxécutez :
python main.py
Pour entrainer le modèle sur votre propre liste de mot, veuillez modifier cette liste Pour modifer le nombre de frame et de vidéo par mot, veuillez modifier ces valeurs. Notez que baisser ces valeurs diminuera la fiablité de la reconaissance.
Si il y a un problème d'instalation ou d'éxécution, verifez d'avoir :
- Python et de l'avoir déclaré dans le PATH
- pip :
python -m pip install --upgrade pip
pour mettre à jour - Définis correctement la webcam en modifiant se valeur
Si le problème perciste, n'hésitez pas à nous en faire part dans l'onglet problème. Nous essayerons d'être actif et de mettre à jour ce projet. Notez également que ce programme nécésite une machine relativement puissante pour faire tourné le logiciel en temps réel.
Nous avons pour ambition de continuer à suivre et à maintenir ce projet. Pour des soucis de temps liés à la date limite du concours, nous n'avons pas pu implémenter toutes les fonctionnalités que nous avions imaginé. Voici une liste non exhaustive des mises à jour que nous souhaiterons faire :
- Ajouter une option graphique pour entraîner son modèle avec ses propres mots
- La retranscription d'une conversation en texte en temps réel
- Une fois que le logiciel à reconnu un mot, le dire à haute voix à l'aide d'un text-to speech
- Faire une version web de ce programme est le hoster en permanence (pas assez d'argent mais on a commencé)
- Corriger certains bug graphique pouvant survenir
Si vous avez d'autres pistes d'amélioration, veuillez nous en faire part dans l'onglet idée
Nous tenons tout d'abords à remercier les membres ayant participé à l'organisation du Trophée NSI. Ce concours était une occasion de se surpasser et de gerer un projet dans son intégrité. Puis, nous remercions grandement les professeurs de NSI qui nous ont aiguillé et aidé à de nombreuses reprises. Enfin, nous avons une pensée particulière aux amis.es qui nous on apporté de précieux retours et conseils.