N03 : L’IRM Fonctionnelle

Matin Yousefabadi

Introduction à l’imagerie par résonance magnétique fonctionnelle (IRMf)

L’imagerie par résonance magnétique fonctionnelle (IRMf) est une technique de neuro-imagerie non invasive qui a révolutionné notre compréhension du cerveau. Elle est principalement utilisée pour observer et mesurer l’activité cérébrale et constitue un outil précieux pour la recherche en neurosciences. Elle est principalement utilisée pour observer et mesurer l’activité cérébrale, ce qui en fait un outil précieux pour la recherche en neurosciences. L’IRMf fonctionne selon le principe que le flux sanguin cérébral et l’activation neuronale sont couplés. Lorsqu’une zone du cerveau est plus active, elle consomme plus d’oxygène et, pour répondre à cette demande accrue, le flux sanguin vers la zone active augmente également. Ce phénomène est connu sous le nom de réponse hémodynamique.

Les notions de base : L’IRMf

1. Le principe d’opération :

  • Contraste dépendant du niveau d’oxygénation du sang (BOLD) : l’IRMf utilise principalement le contraste BOLD, qui repose sur les différentes propriétés magnétiques du sang oxygéné et désoxygéné. Le sang oxygéné (qui est moins magnétique) et le sang désoxygéné (qui est plus magnétique) affectent différemment le signal RM, ce qui permet de détecter les changements du flux sanguin liés à l’activité neuronale.

2. La procédure d’imagerie :

  • Non invasive et sécuritaire : l’IRMf utilise un champ magnétique puissant et des ondes radio pour générer des images détaillées du cerveau. Contrairement à d’autres techniques d’imagerie, elle n’implique pas d’exposition au rayonnement ionisant, ce qui la rend sécuritaire pour un usage répété.
  • Résolution temporelle et spatiale : Tout en offrant une résolution spatiale relativement élevée (capacité à détecter l’endroit où l’activité se produit dans le cerveau), l’IRMf a une résolution temporelle modeste (capacité à détecter le moment où l’activité se produit). Cela est dû au temps nécessaire pour que la réponse hémodynamique se produise après l’activité neuronale.

3. Les données d’IRMf :

  • Les données d’IRMf : Les données brutes de l’IRMf se présentent généralement sous la forme d’images ou de volumes en 3D. Ceux-ci sont acquis au fil du temps, ce qui donne un ensemble de données 4D (espace 3D + temps).

Les applications de l’IRM en recherches neuroscientifiques

1. La cartographie neurologique :

  • Identification des zones fonctionnelles : l’IRMf est largement utilisée pour cartographier les zones fonctionnelles du cerveau. Il s’agit notamment de localiser les régions responsables des fonctions motrices, du langage, de la vision et d’autres processus cognitifs.

2. Comprendre les syndromes et les maladies neurologiques :

  • Diagnostic et traitement des maladies : Les chercheurs utilisent l’IRMf pour étudier les fonctions cérébrales des personnes souffrant de divers troubles neurologiques et psychiatriques, ce qui facilite le diagnostic et les stratégies de traitement.

3. Les études cognitives et comportementales : 

  • Aperçu des processus cognitifs : l’IRMf permet aux scientifiques d’observer le cerveau pendant qu’il traite l’information, ce qui donne un aperçu des processus cognitifs complexes tels que la mémoire, l’attention et la résolution de problèmes.

4. La neuroplasticité:

  • Suivi des changements au fil du temps : l’IRMf peut être utilisée pour étudier les changements de l’activité cérébrale au fil du temps, ce qui permet de comprendre la neuroplasticité, c’est-à-dire la capacité du cerveau à se réorganiser en formant de nouvelles connexions neuronales.

Des limitations et des défis:

1. Les mesures indirectes :

  • La réponse BOLD est une mesure indirecte de l’activité neuronale, qui s’appuie sur les variations du flux sanguin plutôt que sur la mesure directe des potentiels d’action neuronale.

2. La résolution temporelle :

  • la réponse hémodynamique et naturellement lente, et ceci limite la précision temporelle de l’IRMf

3. Les artefacts et le bruit :

  • Les données de l’IRMf peuvent être affectées par différents types de bruits et d’artefacts, y compris les mouvements du patient et les processus physiologiques tels que la respiration et le rythme cardiaque.

4. Le coût et l’accessibilité :

  • L’IRMf est une technique coûteuse qui nécessite un équipement et une expertise spécialisés, ce qui limite son accessibilité.

Des outils communement utilises pour l’analyse des données d’IRMf :

  1. SPM (Statistical Parametric Mapping) :
    • Principalement basé sur MATLAB, SPM est un outil largement utilisé pour analyser les données d’imagerie cérébrale. Il se concentre sur l’analyse statistique des fonctions cérébrales à l’aide de méthodes basées sur le voxel.
  2. FSL (FMRIB Software Library) :
    • FSL est un ensemble de progiciels  complets d’outils d’analyse pour les données d’imagerie cérébrale FMRI, MRI et DTI. Elle est connue pour ses pipelines de prétraitement robustes et ses capacités d’analyse statistique avancée.
  3. AFNI (Analysis of Functional NeuroImages) :
    • AFNI est une suite de programmes en C pour le traitement, l’analyse et l’affichage de données d’IRM fonctionnelle (IRMf). Il est particulièrement performant dans l’analyse des séries temporelles pour examiner les changements dans l’activité cérébrale.
  4. FreeSurfer :
    • FreeSurfer est principalement utilisé pour le traitement et l’analyse de données de neuroimagerie structurelle et fonctionnelle provenant d’IRM. Il excelle dans la segmentation du cerveau et la reconstruction de la surface corticale.
  5. nilearn (Python) :
    • Nilearn est un module Python pour l’apprentissage statistique rapide et facile des données de neuro-imagerie. Il s’appuie sur scikit-learn et convient aux approches d’apprentissage automatique en neuro-imagerie.

Le prétraitement des données d’IRMf :

Le prétraitement des données IRMf est essentiel pour améliorer la qualité des données, normaliser les données d’une session à l’autre et d’un sujet à l’autre, supprimer les artefacts dus aux mouvements du sujet et aux processus physiologiques, et optimiser l’interprétation du signal BOLD, garantissant ainsi la précision et la fiabilité des analyses ultérieures.

Les étapes du prétraitement des données d’IRMf:

  1. Correction de la synchronisation des  planches :
    • Corriger la différence de temps dans l’acquisition de l’image entre les différentes planches imagées du cerveau. Cette étape est importante car toutes les coupes ne sont pas acquises simultanément.
  2. Correction du mouvement :
    • Corriger les mouvements de la tête du sujet pendant l’examen. Même de petits mouvements peuvent affecter de manière significative la qualité des données.
  3. Normalisation spatiale :
    • Transformer toutes les images cérébrales en un espace commun (souvent un modèle cérébral standard comme le modèle MNI), ce qui permet d’effectuer des comparaisons entre les sujets.
  4. Lissage :
    • Applique un filtre spatial aux données afin d’augmenter le rapport signal/bruit. Le lissage rend les données moins bruyantes mais peut aussi brouiller les détails les plus fins.
  5. Filtrage temporel :
    • Supprimer les fluctuations qui ne sont pas liées à la réponse hémodynamique du cerveau, telles que le bruit à haute fréquence ou les dérives à basse fréquence du signal.
  6. Détection et correction des artefacts :
    • Identifier et corriger les artefacts physiologiques tels que les battements cardiaques et la respiration, ainsi que d’autres événements sporadiques susceptibles de fausser les données.
  7. Co-registrement :
    • Aligner les images fonctionnelles avec les images structurelles (comme les scans pondérés en T1) pour assurer une localisation précise de l’activité cérébrale.

L’analyse de l’IRMf avec R

Dans cette section, nous nous concentrerons sur la manière dont vous pouvez visualiser et travailler avec des données d’IRMf dans R.

Bien que les données d’IRMf puissent être enregistrées dans des formats bruts tels que DICOM ou PAR/REC spécifique au scanner, les types les plus courants pour l’analyse sont les formats traités tels que le NIfTI, largement utilisé, qui stocke les données et informations sur le volume cérébral, et BIDS, une structure de répertoire standardisée facilitant le partage des données et la compatibilité avec divers outils d’analyse. Le choix du bon type dépend de l’étape de l’analyse et des besoins de compatibilité, mais NIfTI et BIDS sont généralement préférés pour les données traitées en raison de leur flexibilité et de leur adoption généralisée. Pour ce tutoriel, nous utilisons les formats de fichiers NIFTI.

Vous pouvez télécharger ici un exemple de données IRMf enregistrées au format NIFTI.

1. Chargement des progiciels necessaires :

install.packages(c("oro.nifti", "fmri", "neurobase", "fslr"))
library(oro.nifti)
library(fmri)
library(neurobase)
library(fslr)

2. Chargement des donnees d’IRMf :

# Load a NIfTI file
fmri_data <- readNIfTI("path/to/your/fmri.nii")

# Check the dimensions and structure
dim(fmri_data)  # Check dimensions (x, y, z, time)
# As you can see fMRI has 4 dimensions which are 3D space + time.
str(fmri_data)  # View data structure

3. Visualisation des donnees d’IRMf : 

  • Visualisation a partir des planches : 
# Display a single slice
ortho2(fmri_data, xyz = c(40, 40, 20))  # Visualize slice at coordinates (40, 40, 20)
  • Visualisation en serie temporelle : 
    • En IRMf, un voxel est un minuscule morceau de cerveau en 3D, comme un pixel dans une image. Il mesure les variations du flux sanguin liées à l’activité cérébrale, ce qui nous donne une image détaillée de ce qui se passe où et quand.
# Extract time series from a specific voxel.
voxel_time_series <- fmri_data[25, 30, 15, ]

# Plot the time series
plot(voxel_time_series, type = "l", xlab = "Time", ylab = "BOLD Signal")

Un exemple d’une étude : les réponses neuronales aux stimuli visuels

Dans une étude de neuro-imagerie, une expérience d’IRMf a été menée pour étudier les réponses du cerveau à des stimuli visuels. L’étude a utilisé un paradigme en blocs dans lequel les participants ont vu des images d’un bébé à des intervalles fixes. Plus précisément, chaque participant a été exposé à l’image d’un bébé pendant 15 secondes, suivies d’un intervalle de 15 secondes pendant lequel aucune image n’était affichée (écran noir). Cette séquence a été répétée pendant 10 cycles, soit une durée totale de l’expérience de 300 secondes, ou 5 minutes.

L’ensemble de données voxels.csv qui l’accompagne contient des séries temporelles de données provenant de 10 voxels cérébraux sélectionnés d’un participant, fournissant un aperçu ciblé de l’activité cérébrale localisée au cours de l’expérience. Les données sont structurées de manière à faciliter l’analyse des schémas de réponse du cerveau en relation avec le stimulus visuel. En outre, l’ensemble de données comprend une colonne de stimuli qui indique le moment où les stimuli visuels ont été présentés au participant. Dans cette colonne, une valeur de 1 indique la présence de l’image du bébé à l’écran, tandis qu’une valeur de 0 indique une phase où aucune image n’a été montrée (écran noir). Les données de l’IRMf ont été enregistrées toutes les secondes, il y a donc 300 pas de temps dans les données.

Certainement ! Voici quelques questions que vous pourriez poser aux étudiants en rapport avec chaque partie du code R fourni, afin de tester leur compréhension de l’analyse et de la visualisation des données en R :

Chargement des données

  1. Écrivez le code R pour charger un fichier CSV nommé “voxels.csv” dans une variable appelée voxels_data. Expliquez ce que fait chaque partie de la commande.

Inspection des données

  1. Comment afficher les premières lignes du jeu de données voxels_data dans R ? Pourquoi cette étape est-elle importante avant de procéder à l’analyse des données ?
  2. Quelle fonction utiliseriez-vous pour comprendre la structure de voxels_data ? Quel type d’informations cette fonction fournit-elle ?

Preparation des données

  1. Dans le cadre de l’analyse des données, pourquoi est-il important de préparer ou de nettoyer vos données avant de procéder à l’analyse statistique ? Donnez un exemple d’étape de préparation des données que vous pourriez avoir à effectuer pour cet ensemble de données.

Analyse statistique

  1. Écrivez un extrait de code pour calculer la corrélation entre la série temporelle de chaque voxel et les stimuli. Expliquez comment la fonction apply est utilisée dans ce contexte.
  2. Que fait la fonction cor() ? Dans ce contexte spécifique, qu’est-ce que nous essayons de découvrir en utilisant cor() ?

Visualisation et représentations graphiques de données

  1. Créez un diagramme à barres en R à l’aide de ggplot2 qui affiche les coefficients de corrélation pour chaque voxel. Expliquez comment vous avez défini l’esthétique des x et des y dans votre graphique.
  2. Pourquoi la visualisation est-elle importante dans l’analyse des données, en particulier dans le contexte de cette étude de neuro-imagerie ?

Fichiers à télécharger :

  1. voxels.csv

Références et lectures complémentaires : 

Pour des informations plus détaillées et des techniques avancées d’analyse statistique de l’IRMf à l’aide de R, les ressources suivantes sont recommandées :

  1. Validation des méthodes d’IRMf
  2. Tutoriel sur la modélisation des données d’IRMf à l’aide d’un modèle linéaire général. – Un exemple très complet d’analyse statistique de l’IRMf à l’aide de R

License

Icon for the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License

N03 : L’IRM Fonctionnelle Copyright © 2024 by Matin Yousefabadi is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License, except where otherwise noted.

Share This Book