Changer de langue :   English version   Version française  

jdhp.org

Cette page contient certains de mes projets et travaux open source en informatique, électronique et robotique.

Ceci n'est pas une liste exhaustive, de nombreux projets professionnels ne peuvent pas être partagées ici.


Un référentiel est disponible pour les utilisateurs de Gnu/Linux Debian et d'Ubuntu. Il permet de simplifier l'installation de la plupart des logiciels présentés sur cette page. Cliquez ici pour plus d'informations.

Contenu

Projets Académiques Open Source  

PyWI  

PyWI est une bibliothèque de traitement du signal écrite en Python utilisée pour supprimer le bruit de fond d'image à l'aide de transformées en ondelettes.
Le projet PyWI dispose d'un site web dédié à l'adresse suivante : http://www.pywi.org.
Fichiers sources : Explorer ce projet sur Github  
Télécharger : Sources  

PyArm  

Vidéo
Pyarm est un simulateur utilisé dans le cadre d'expériences sur l'apprentissage du contrôle moteur humain avec un modèle de bras anthropomorphique.
Le modèle physique utilisé est décrit dans ce rapport technique (sources).

Pyarm a été utilisé à l'Institut des Systèmes Intelligents et de Robotique pour conduire des expériences sur les systèmes adaptatifs. Ces expériences sont décrites dans l'article suivant "Learning cost-efficient control policies with XCSF: generalization capabilities and further improvement" par Didier Marin, Jérémie Decock, Lionel Rigoux and Olivier Sigaud.
Cette contribution scientifique a été publié dans les "Actes de la 13e conférence annuelle sur le calcul génétique et évolutionnaire (GECCO'11)", la principale conférence internationale sur le calcul génétique et évolutionnaire.
Ces expériences ont également été présentées en français aux Sixièmes journées francophones MFI/JFPDA.
Ces articles peuvent être téléchargés ici pour la version anglaise et pour la version française.
Fichiers sources : Explorer ce projet sur Github  

Botsim.org  

Image
Botsim.org est un simulateur de robots utilisé dans le cadre de travaux sur des algorithmes bio-inspirés (apprentissage artificiel, algorithmes évolutionnaires, apprentissage par renforcement, ...).

Nos motivations : utiliser des méthodes bio-inspirées pour générer in-silico des formes de vie artificielles originales et performantes dans l'accomplissement d'une tache donnée (se déplacer, modifier son environnement, survivre, ...).

Plus particulièrement, Botsim.org a été écrit pour:
  1. reproduire les expériences et les résultats du projet Golem: optimiser la morphologie et le contrôle de robots en simulation via des méthodes bio-inspirées (algorithmes évolutionnaires et réseaux de neurones) puis matérialiser ces organismes auto-générés à l'aide d'une imprimante 3D;
  2. améliorer le contrôle de robots existants en générant un grand nombre de simulations in-silico;
  3. reproduire certaines expériences de l'équipe Inria Flowers sur la curiosité artificielle.

Botsim.org utilise la bibliothèque opensource Bullet pour simuler la physique.

Le projet Botsim.org dispose d'un site web dédié à l'adresse suivante : www.botsim.org.
Fichiers sources : Explorer ce projet sur Github  
Télécharger : Sources  

Principaux Projets Personnels  

Snippets  

Image
Une collection de centaines de snippets, c'est à dire des petits morceaux de codes que j'ai écrit pour tester un aspect spécifique d'un langage de programmation, d'une bibliothèque de programmation, d'un format de description, d'un protocole, etc.
Ici vous trouverez des exemples de code pour:
Langages de programmation
C/C++, Java, Python, scripts Shell, Octave (un clone de Matlab), Javascript
Programmation Unix
appels systèmes Unix/Linux en C et création de paquets Debian
Bibliothèques de programmation scientifique
bibliothèques de calcul scientifique GSL (GNU Scientific Library) (C) et Scipy (Python), bibliothèque de programmation mathématique GLPK (GNU Linear Programming Kit) (programmation linéaire et programmation en nombre entiers), bibliothèques d'algèbre linéaire Eigen (C++) et Numpy (Python), bibliothèques de visualisation de fonctions et de données scientifiques Matplotlib (Python) et Gnuplot, bibliothèque de visualisation de données scientifiques en 3D Mayavi
Calcul parallèle et calcul haute performance
bibliothèque de programmation parallèle en mémoire distribuée MPI (Message Passing Interface) et bibliothèque de programmation parallèle en mémoire partagée OpenMP
Bibliothèques de traitement d'images
bibliothèque de traitement d'images et de reconnaissance de formes OpenCV (C/C++ et Python) et bibliothèque de traitement d'images PIL (Python Imaging Library)
API généralistes
bibliothèques généralistes Boost (C++)
Outils de programmation
moteurs de production multi-langages Gnu Make, CMake et Ant
XML et développement web
SAX (Simple API for XML) pour Java, C++ et Python, langages HTML5, CSS, XML, DOM, Xpath, Xinclude, Xquery, SVG, XSD (XML Schema) et XSLT
Systèmes embarqués
plate-formes Android (Google), programmation de micro-contrôleurs Atmel AVR (en C), bibliothèques de manipulation des GPIO du Raspberry Pi, programmation sur Arduino
Bibliothèques d'interface graphiques
bibliothèques d'interfaces graphiques GTK+ (C et Python), Qt (C++ et Python), Swing (Java), SWT (Standard Widget Toolkit) (Java) et TKinter (Python)
Bibliothèques 2D, 3D et multimédia
moteur physique (simulations mécaniques) Bullet, bibliothèque de rendu 3D Open Scene Graph, bibliothèque de rendu 2D Cairo en C et Python, bibliothèque multimédia SDL (Simple DirectMedia Layer) en C et Python (Pygame), bibliothèque multimédia C++ SFML
Autres
Design patterns en C++ et Java, langage LaTeX, outil de CAO OpenScad, formats de fichier DBM et JSON, Pickle, ...
Fichiers sources : Explorer ce projet sur Github  
Télécharger : Sources  

PyAX-12  

Image
PyAX-12 est une librairie qui permet de contrôler des servomoteurs Dynamixel AX-12 directement depuis un ordinateur (via une brique USB2Dynamixel). Elle peut être utilisée pour dépasser les limites des contrôleurs types CM-5 ou pour remplacer les logiciels propriétaires fournis par Robotis. PyAX-12 est écrite en Python.
Fichiers sources : Explorer ce projet sur Github  
Télécharger : Sources  

VoR12  

Image
Le projet VoR12 est une caméra mobile qui utilise deux servomoteurs Dynamixel AX-12 et la bibliothèque de traitement d'image OpenCV pour effectuer des expériences de suivi d'objets.
Fichiers sources : Explorer ce projet sur Github  
Télécharger : Sources  

Projets Secondaires  

Bioloid  

Vidéo
Quelques exemples d'utilisation de la libdynamixel pour contrôler un bioloid.
Télécharger : Sources  

PyDuplicateFileManager  

PyDuplicateFileManager recherche les fichiers et les répertoires dupliqués dans une arborescence.
Fichiers sources : Explorer ce projet sur Github  

Objets 3D  

Image
Une collection de plans de conception d'objets imprimables en 3 dimensions (réalisés avec OpenSCAD).
Télécharger : Sources  

Circuits Imprimés  

Image
Une collection de plans de conception de circuits imprimés prêts à être fabriqués (réalisés avec KiCad).
Télécharger : Sources  

Autres projets non répertoriés  

De nombreux autres projets sont disponibles sur mon compte github !