Stage M2 - Ingénieur développement logiciel (C++/Python/Qt) H/F

Détail de l'offre

Informations générales

Entité de rattachement

Le CEA est un acteur majeur de la recherche, au service des citoyens, de l'économie et de l'Etat.

Il apporte des solutions concrètes à leurs besoins dans quatre domaines principaux : transition énergétique, transition numérique, technologies pour la médecine du futur, défense et sécurité sur un socle de recherche fondamentale. Le CEA s'engage depuis plus de 75 ans au service de la souveraineté scientifique, technologique et industrielle de la France et de l'Europe pour un présent et un avenir mieux maîtrisés et plus sûrs.

Implanté au cœur des territoires équipés de très grandes infrastructures de recherche, le CEA dispose d'un large éventail de partenaires académiques et industriels en France, en Europe et à l'international.

Les 20 000 collaboratrices et collaborateurs du CEA partagent trois valeurs fondamentales :

• La conscience des responsabilités
• La coopération
• La curiosité
  

Référence

2024-34400  

Description de l'unité

Le.a stagiaire, recruté.e par EXPLEO REGIONS, rejoindra le Service de Recherche Biomédicale en Neurotechnologies à CLINATEC.

CLINATEC est un centre de Recherche Biomédicale piloté par le CEA-LETI à Grenoble en partenariat avec le CHU de Grenoble et l'UGA, regroupant en un même lieu technologues, biologistes et cliniciens.

CLINATEC a pour mission de développer puis optimiser le transfert de solutions innovantes vers les patients, en partenariat avec les industriels.

Description du poste

Domaine

Mathématiques, information  scientifique, logiciel

Contrat

Stage

Intitulé de l'offre

Stage M2 - Ingénieur développement logiciel (C++/Python/Qt) H/F

Sujet de stage

Développement en Python/C++ d'une librairie de traitement des données BCI

Durée du contrat (en mois)

6 mois

Description de l'offre

CLINATEC travaille sur un grand projet d’Interface Cerveau-Machine (BCI) qui a pour objectif de développer et réaliser la validation clinique de la technologie WIMAGINE [1] de mesure et de décodage de l’activité cérébrale. Cette technologie est utilisée aujourd’hui dans le cadre de plusieurs essais cliniques, pour faire la preuve qu’un sujet tétraplégique peut piloter un exosquelette à partir de son activité cérébrale [2] ou pour permettre la restauration de la marche chez un patient paraplégique grâce à une Interface Cerveau Moelle épinière [3].

Pour soutenir son développement, Clinatec propose un stage M2 Ingénieur(e) développement logiciel (C++/Python/Qt).
[1] C. Mestais, G. Charvet, F. Sauter-Starace, M. Foerster, D. Ratel, and AL. Benabid, “WIMAGINE: Wireless 64-Channel ECoG Recording Implant for Long Term Clinical Applications”, IEEE Trans Neural Syst Rehabil Eng. 2015 Jan;23(1):10-21
[2] Benabid, Alim Louis, et al. "An exoskeleton controlled by an epidural wireless brain–machine interface in a tetraplegic patient: a proof-of-concept demonstration." The Lancet Neurology 18.12 (2019): 1112-1122.
[3] Lorach et al., “Walking naturally after spinal cord injury using a brain-spine interface” Nature. 2023 Jun; 618(7963):126-133.doi: 10.1038/s41586-023-06094-5.

Les codes de traitement de données BCI/BSI ont été développés en MATLAB par plusieurs générations de doctorants/post-docs. Ils sont composés de trois codes en parallèle :
• Le code du logiciel de décodage en temps réel ABSD
• Une librairie de fonctions extraites d’ABSD appelée BCItools, servant de base aux développements de scripts de test (offline ou pseudo-online) pour les membres de l’équipe traitement du signal.
• Un code « light » de décodeur temps réel, capable de tourner sur une plateforme embarquée, et développé en C++ par les équipes du LIST dans le cadre du projet NEMO-BMI.

Ces trois codes ont vécu en parallèle, subissant des modifications parfois indépendantes. Toute modification commune nécessite la mise à jour des trois codes.

Le but de ce stage est de ré-implémenter les fonctions clés du décodage BCI sous forme d’une librairie Python/C++ unique.

Elle servira de base au développement de scripts de simulation d’entraînement et de décodage pour les tests offlines, ainsi que de fonctions élémentaires pour le redéveloppement du logiciel de décodage en temps-réel.

A terme, cela permettra de faciliter et d’accélérer les développements futurs, grâce à une centralisation des codes de base. Cela permettra aussi de s’affranchir de MATLAB et de ses problèmes de licences, tout en donnant accès aux librairies Python, devenues maintenant le standard du machine Learning.

 

Moyens / Méthodes / Logiciels

C++/Matlab

Profil du candidat

Ce stage s'adresse à un élève ingénieur (H/F) en dernière année de formation en développement logiciel.

Il est nécessaire de maitriser Python, C++, et MATLAB.

Des bases en traitement du signal et machine Learning sont souhaitées.

Le.la stagiaire évoluera au sein d’une équipe pluridisciplinaire dans le cadre du centre de recherche biomédicale CLINATEC®. Des qualités de travail en équipe sont requises.

Localisation du poste

Site

Grenoble

Localisation du poste

France, Auvergne-Rhône-Alpes, Isère (38)

Ville

  GRENOBLE

Critères candidat

Diplôme préparé

Bac+5 - Diplôme École d'ingénieurs

Formation recommandée

Ingénieur développement logiciel

Possibilité de poursuite en thèse

Non

Demandeur

Disponibilité du poste

10/02/2025