Logiciel de recherche pour les labosCas clients

Chaque projet présenté comme on lit un article : la question que se posait le labo, ce que j'ai construit, et ce que ça a changé. Quand je n'ai pas construit quelque chose moi-même, je le dis.

Labo Deplancke · EPFL · Suisse · 2023 → aujourd'hui

Un système embarqué pour un instrument qui évolue sans cesse

Question

Un nouveau système pour isoler et contrôler la bonne cellule par la pression, dans un protocole de séquençage d'ARN, sur un prototype dont les besoins changent à chaque expérience.

Ce que j'ai construit

J'ai reconstruit le code hérité en un système modulaire et entièrement conteneurisé, du firmware au traitement des données, du backend et de l'interface jusqu'aux pilotes. Les chercheurs déploient eux-mêmes leurs expériences sur l'appareil et lancent leurs scripts Python à distance depuis une application web.

Résultat

Une capacité que le labo n'avait pas, documentée et reproductible, que d'autres membres de l'équipe utilisent sans moi.

Technologies
  • NVIDIA Jetson
  • Python
  • C++
  • CAN
  • Bluetooth
  • Flask
  • Docker
Mon rôle

Seule ingénieure, conception et réalisation.

Labo Bonin · NERF / imec · Belgique · 2024 et 2025

Dix étudiants, un seul logiciel de stimulation visuelle

Question

Les expériences de stimulation visuelle des étudiants pouvaient-elles encore être comparées, alors que chacun utilisait une version un peu différente du même logiciel maison ?

Ce que j'ai construit

J'ai remanié et réconcilié deux branches divergentes depuis longtemps du logiciel Python / PsychoPy du labo, écrit à l'origine par un ingénieur parti depuis et mis à jour dans l'urgence pendant des années. J'ai aussi corrigé un bug de latence.

Résultat

Une seule version à nouveau, la latence corrigée, et les protocoles d'une dizaine d'étudiants qui ont continué de fonctionner tout du long.

Technologies
  • Python
  • PsychoPy
  • Git
Mon rôle

Seule ingénieure sur le remaniement et la réconciliation des branches. Je n'ai pas conçu le logiciel d'origine.

Labo Haesler · NERF / imec · Belgique · 2025

Une nouvelle sonde dans l'écosystème standard des neurosciences

Question

Une doctorante devait mettre en production un algorithme d'acquisition écrit en LabVIEW, sans enfermer la nouvelle sonde dans un format de données maison.

Ce que j'ai construit

Au lieu d'un format maison, un plugin Open Ephys en C++ (acquisition NI-DAQ), construit à partir du plugin modèle officiel et du plugin Neuropixels, comme le recommande Open Ephys. À côté, une application web de visualisation en temps réel.

Résultat

La sonde fonctionne dans Open Ephys comme n'importe quel appareil pris en charge, et la visualisation suit un grand nombre de canaux.

“I had the pleasure of working with Marine on a new cutting-edge neural implant I develop for neuroscience research. I needed a software solution to acquire data through a National Instruments setup and she suggested the perfect approach: leveraging the accessibility of the Open Ephys platform, she coded a plugin and GUI tailored to our specific needs. She showed excellent skills in balancing complex hardware constraints and great user experience. I highly recommend working with her!”

Paoline Coulson, doctorante à l'imec et au NERF · recommandation LinkedIn, en anglais
Technologies
  • C++
  • Open Ephys
  • NI-DAQ
  • Python
  • Panel
  • HoloViews
Code

NeuroLayerOEPlugin et haeslerVisualization, hébergés sur le GitHub de la doctorante du labo.

Mon rôle

Seule développeuse du plugin et de l'application de visualisation. En savoir plus sur les plugins Open Ephys sur mesure.

Labo Hochmann · CNRS · France · 2024

Qu'est-ce que l'apprentissage automatique apporte à une analyse existante ?

Question

Pouvait-on analyser ensemble les données de plusieurs types d'expériences d'oculométrie menées avec de jeunes enfants, et l'apprentissage automatique dirait-il au labo quelque chose que sa propre méthode ne disait pas ?

Ce que j'ai construit

Un ensemble de notebooks JupyterLab mettant en œuvre plusieurs approches d'apprentissage automatique, que j'ai choisies et conçues, comparées à l'analyse existante du labo.

Résultat

Une comparaison dont le labo pouvait se servir pour interroger sa propre méthode.

Technologies
  • Python
  • Jupyter
  • scikit-learn
  • PyTorch
Mon rôle

Seule ingénieure ; j'ai choisi les approches à tester.

Labo Kloosterman · NERF / imec · Belgique · 2019 → 2023 (salariée)

Avant le freelance : les neurosciences en boucle fermée et en temps réel

Question

Comment décoder l'activité neuronale enregistrée par des sondes Neuropixels assez vite pour agir dessus pendant l'expérience elle-même ?

Ce que j'ai construit

Avec l'équipe de Falcon, une plateforme open source de décodage neuronal en temps réel, j'ai construit le sous-système des nœuds de traitement, le système de build CMake et le dépôt de plugins. J'ai aussi écrit le plugin falcon-output, qui envoie les données d'Open Ephys vers Falcon, travaillé sur la prise en charge du Neuropixels PXI, contribué à SpikeInterface, et j'ai été la seule développeuse du logiciel de suivi des animaux et de pilotage des expériences à distance du labo.

Résultat

Un décodage en boucle fermée et en temps réel utilisable au labo, plus l'intégration continue, les tests et une documentation exécutable pour les paquets internes du labo.

Technologies
  • C++
  • CMake
  • Python
  • PyQt
  • Open Ephys
  • Neuropixels

Des spinoffs, avant et après leur création

J'ai aussi travaillé avec de jeunes sociétés issues de labos : une étude de faisabilité sur le spike sorting en temps réel, un logiciel de bureau pour lancer et visualiser une analyse d'IRM, et la validation de données de capteurs pour une startup medtech. Leurs noms restent confidentiels.

Disponibilité du code Le code public est lié ci-dessus. Les autres projets sont fermés, par accord avec le labo ou la société.

Vous reconnaissez votre labo ?

Parlez-moi de votre code et de ce qui coince. Le premier regard est gratuit.

M'écrire

Utile à préciser

  • Votre labo et votre discipline
  • Le ou les langages : Python, C++, MATLAB…
  • Combien de personnes utilisent le code
  • Une échéance éventuelle : article, instrument, financement