QuiRecrute.fr

← Toutes les offres

Offre en cours. Toujours en ligne sur le site de l'employeur lors de notre dernier relevé, le 16 octobre 2026.

Stage - Accélération GPU d'algorithmes de traitement d'images satellites

Magellium Artal Group

  • Ramonville-Saint-Agne (31)
  • Stage
  • Publiée aujourd'hui

Mots-clés de l'annonce

  • C++
  • Bac+5

L'offre

Pour ces projets concernant son activité de conception de systèmes segment sol, Magellium propose le stage suivant intitulé :

Accélération GPU d’algorithmes de corrélation et de ré-échantillonnage d’images satellites

CONTEXTE

Les chaînes de traitement des segments sol d’observation de la Terre transforment les données brutes acquises par les satellites en produits image exploitables par les utilisateurs. Au niveau L1, ces chaînes réalisent les corrections radiométriques et géométriques des images. C’est la partie géométrique qui concentre l’essentiel du temps de calcul : corrélation entre images ou entre bandes spectrales pour affiner la localisation, puis ré-échantillonnage des images dans leur géométrie finale.

Avec l’augmentation de la résolution des capteurs, du nombre de bandes spectrales et de la fréquence de revisite, les volumes de données à traiter ne cessent de croître, tout comme les exigences sur les délais de mise à disposition des produits. Les algorithmes de corrélation et de ré-échantillonnage développés par Magellium sont aujourd’hui implémentés en C++ et exécutés sur CPU : ils sont devenus le principal levier pour réduire les temps de traitement.

Les processeurs graphiques (GPU) offrent une puissance de calcul massivement parallèle, mais en tirer pleinement parti ne se résume pas à traduire un code existant : il faut repenser les algorithmes en fonction de l’architecture matérielle (hiérarchie mémoire, accès irréguliers aux données, images plus grandes que la mémoire disponible, précision numérique…).

SUJET

L’objectif du stage est de concevoir des versions GPU hautes performances des algorithmes de corrélation et de ré-échantillonnage d’images, afin de réduire significativement leur temps de calcul. En vous appuyant sur les implémentations C++ actuelles des outils Magellium comme référence fonctionnelle, vous proposerez, développerez et évaluerez des solutions algorithmiques adaptées au GPU, en garantissant des résultats numériquement conformes à ceux de la version CPU.

Le choix de la technologie de programmation GPU (CUDA, OpenCL…) fera partie de l’étude et sera discuté avec l’équipe, en tenant compte des performances atteignables, de la portabilité entre matériels et de la facilité d’intégration dans les outils existants.

Analyse et conception

  • Prendre en main les implémentations C++ existantes des algorithmes de corrélation et de ré-échantillonnage, et en comprendre les principes.

  • Mettre en place un banc de mesure de performance (temps de calcul, débit, occupation mémoire) et établir les performances de référence des outils CPU actuels.

  • Réaliser un état de l’art des approches GPU pour ces traitements :

  • corrélation : mesures de similarité sur fenêtres glissantes (ZNCC) et recherche de pic sous-pixellique

  • ré-échantillonnage : noyaux d’interpolation (bilinéaire, bicubique, sinus cardinal…) et accès mémoire irréguliers induits par les déformations géométriques.

  • Concevoir les solutions GPU : parallélisation et réorganisation des calculs, exploitation de la hiérarchie mémoire, gestion des transferts CPU/GPU et traitement d’images de grande taille (tuilage, flux de données).

Développement

  • Développer les versions GPU des algorithmes de corrélation et de ré-échantillonnage.

  • Optimiser les noyaux de calcul : organisation des accès mémoire, utilisation de la mémoire partagée et des textures, recouvrement des calculs et des transferts, compromis entre précision et performance.

  • Intégrer les versions GPU dans les outils existants en conservant une interface commune avec les versions CPU (choix de l’implémentation à l’exécution, repli sur CPU en l’absence de GPU).

  • Mettre en place des tests unitaires et de non-régression comparant les sorties GPU et CPU.

Évaluation et documentation

  • Valider la conformité numérique des résultats GPU par rapport aux résultats CPU de référence (précision, impact du calcul en simple précision).

  • Comparer les performances des solutions GPU à celles des outils CPU existants sur des jeux de données réels de missions spatiales, et analyser le comportement en fonction de la taille des données et des paramètres des algorithmes.

  • Documenter les choix de conception, rédiger un bilan des performances obtenues et formuler des recommandations pour la suite (industrialisation, extension à d’autres algorithmes).

PERSPECTIVE

Dans la continuité de ce stage, un poste en CDI pourra être proposé au candidat.

Étudiant(e) en dernière année d’école d’ingénieur ou de master (Bac+5) dans le domaine de l’informatique, du calcul haute performance ou du traitement d’images.

Vous maîtrisez la programmation en C++ et avez une première expérience de la programmation parallèle, idéalement sur GPU (CUDA ou équivalent).

Des connaissances en traitement d’images (interpolation, corrélation, filtrage) ainsi qu’un intérêt pour l’observation de la Terre et les missions satellites optiques seront appréciés.

Rigueur, curiosité et goût pour l’optimisation et l’algorithmique seront vos principaux atouts pour mener à bien ce stage.

Chez Magellium Artal Group, la diversité et l'inclusion sont fondamentales pour notre fonctionnement et ancrées dans nos valeurs. Nous respectons la diversité de nos employés, leurs expériences, leurs origines, leurs handicaps, et offrons des chances égales à tous. Tous différents, tous compétents !

Mots clés : GPU, CUDA, C++, Calcul haute performance, Traitement d’images, Ré-échantillonnage, Corrélation, Observation de la Terre.

Postuler chez Magellium Artal Group

La candidature se fait sur le site de Magellium Artal Group. QuiRecrute ne reçoit aucune donnée.