Inside IT

Brainstorm: un’applicazione MATLAB open-source per l’analisi di dati MEG/EEG

La vista di un oggetto simile ad un serpente vicino ai vostri piedi invia segnali neurali all’amigdala, una struttura cerebrale piuttosto arcaica, che innesca una rapida risposta del tipo “lotta o fuggi”. Dopo pochi millisecondi la neocorteccia, di più recente evoluzione, esegue un’analisi più dettagliata dello stesso input sensoriale e determina che l’oggetto è, in realtà, un innocuo tubo da giardino.

L’imaging cerebrale, o neuroimaging, fornisce un supporto non invasivo a neuropsicologi e neuroscienziati per lo studio dei processi cerebrali, come il meccanismo di “lotta o fuga”. Questo settore multidiscplinare della scienza si è sviluppato rapidamente a partire dalla fine degli anni ’90. La risonanza magnetica funzionale (fMRI) può essere utilizzata per mappare l’attività cerebrale ma, con una risoluzione temporale di circa un secondo, non è utile per studiare il flusso dinamico delle operazioni eseguite dal cervello.

L’elettroencefalografia moderna (EEG) e la magnetoencefalografia (MEG) hanno una risoluzione temporale dell’ordine dei millisecondi e permettono ai ricercatori di monitorare l’attività neuronale alla velocità naturale del cervello. L’altro vantaggio di MEG e EEG è la loro sensibilità alla segnalazione neurale elettrochimica, consentendo ipotesi sperimentali dei meccanismi elettrofisiologici dell’attività cerebrale regionale. Infine, l’alta risoluzione temporale e la copertura sinottica dell’attività corticale offerta da MEG e EEG rilevano modelli di connettività funzionale tra le regioni del cervello.

La maggior parte delle funzioni cerebrali richiede il coordinamento di attività in più regioni del cervello che si assemblano in reti dinamiche. La risoluzione temporale dell’ordine del millisecondo di MEG e EEG è attualmente la migliore risorsa per i neuroscienziati di catturare la complessità dell’attività elettrofisiologica che emerge da molte regioni del cervello in modo simultaneo. Molti ricercatori ritengono, inoltre, che la maggior parte delle condizioni neurologiche e psichiatriche possano essere associate a forme alterate di connettività funzionale, come quelle che causano le crisi epilettiche.

La strumentazione per MEG ed EEG cattura l’attività elettrica dell’intero volume del cervello ad una tipica velocità di 1000 volte al secondo, ottenendo circa 100 MB di dati al minuto. La visualizzazione e la elaborazione dell’enorme quantità di dati è un’importante sfida per i neuroscienziati.

A complicare la sfida è la relativa disconnessione tra le comunità di neuroscienze e neuropsicologia e gli esperti di imaging che sviluppano metodi per la ricostruzione di immagini dai dati MEG e EEG. Questi fisici e ingegneri sviluppano strumenti avanzati e altamente tecnici che risultano essere difficili e la traduzione per i ricercatori in neuroscienze richiede tempo.

Per risolvere questa discrepanza, è stato creato Brainstorm, un software open-source sviluppato con MATLAB. Brainstorm consente ai neuroscienziati con nessuna esperienza di programmazione di visualizzare ed elaborare grandi volumi di dati MEG e EEG.

Nel corso degli ultimi dieci anni, Brainstorm è stato scaricato da più di diecimila ricercatori in tutto il mondo e citato in più di 250 articoli di riviste, tra cui alcune influenti come Nature Neuroscience, Science e  Proceedings of the National Academy of Sciences. La comunità di utenti di Brainstorm è costituita per il 70% da neuroscienziati (scienziati clinici, neuropsicologi e neuroscienziati cognitivi). Ricercatori in imaging e ingegneri specializzati in sviluppo di metodologie MEG e EEG costituiscono il restante 30%.

Perché MATLAB?

MATLAB offre diversi vantaggi rispetto ai linguaggi di programmazione tradizionali. In primo luogo, ad aver progettato Brainstorm sono fisici e ingegneri che poco sapevano di sviluppo del software. MATLAB ha reso le cose più semplici al fine di sviluppare un’applicazione scientifica sofisticata con una ricca interfaccia grafica. In secondo luogo, MATLAB è ampiamente utilizzato nella comunità scientifica. Come risultato, i ricercatori possono interagire direttamente con i propri dati utilizzando Brainstorm, contribuire con nuovi plug-in e scambiare idee e prototipi di codice con altri utenti Brainstorm.

Infine, MATLAB è un ambiente di sviluppo produttivo. La possibilità di eseguire il debug in modo interattivo e visualizzare i dati consente di prototipare rapidamente nuove funzionalità per Brainstorm. L’interfaccia di Brainstorm è scritta in Java, incorporata in MATLAB grazie alla stretta integrazione tra i due linguaggi. Per la maggior parte delle immagini, 2D e 3D, Brainstorm usa il sistema grafico di MATLAB, che semplifica la costruzione di scene complesse e interattive.

Gli utenti di Brainstorm possono scaricare e installare il software anche se non sono dotati di una licenza MATLAB; con MATLAB Compiler™ e MATLAB Builder™ JA si mette a disposizione una versione standalone del software che gira su Windows, Linux e sistemi MAC OS X.

Per gli sviluppi futuri, si sta considerando una stretta integrazione con l’ambiente Python, presente nella versione 2014b di MATLAB. La popolarità del linguaggio open-source Python sta crescendo rapidamente nel mondo accademico. La nuova generazione di studenti e ricercatori produce una grande varietà di script e librerie Python, di cui gli utenti MATLAB possono beneficiare.

Il flusso di lavoro di ricerca di Brainstorm

In un tipico studio MEG e EEG, viene testato un numero di soggetti tra 1 e 100, in più condizioni sperimentali. I dati EEG vengono raccolti dagli elettrodi fissati sulla testa del soggetto e i dati MEG vengono raccolti mediante sensori posti all’interno di un casco rigido.

Per analizzare i risultati di questi esperimenti, i ricercatori utilizzano insiemi di dati multimodali: MEG o EEG, la posizione 3D dei sensori e l’anatomia della testa del soggetto (il suo volume), quest’ultimo tipicamente ottenuto con risonanza magnetica (MRI).

In un flusso di lavoro standard, il primo passo è quello di importare i dati MRI insieme alle superfici che rappresentano la corteccia cerebrale e lo scalpo. Lo spazio MEEG/EEG è coregistrato con la MRI allineando i sensori sulla superficie dello scalpo del soggetto.

Successivamente, le registrazioni MEG/EEG vengono esaminate e preprocessate. Il visualizzatore di dati di Brainstorm permette agli utenti di navigare in modo efficiente attraverso lunghe registrazioni, regolare il guadagno delle tracce, segnare eventi di interesse, e marcare segmenti rumorosi e altre interferenze.

Poiché non esiste un formato di file standard per i dati EEG/MEG, è stata sviluppata una routine specifica per i formati più comuni e si sta continuando ad aggiungere supporti per nuovi formati.

La pre-elaborazione dei dati grezzi coinvolge soprattutto la rimozione di componenti di dati provenienti da fonti di rumore e artefatti. I dati sono solitamente contaminati da rumore proveniente dal sistema di acquisizione stesso (rumore del sensore), dall’ambiente (linee a 50/60 Hz, dispositivi di stimolazione, vibrazioni) e dal soggetto (movimenti, battiti cardiaci, respirazione). A seconda del tipo e della quantità di rumore, una combinazione di filtri di frequenza e proiettori spaziali permette di ridurre efficacemente il rumore.

Dopo la pre-elaborazione, i ricercatori importano segmenti di dati di interesse nel database di Brainstorm, che crea un insieme di file .mat che memorizzano le variabili MATLAB strutturate di più tipi. In una tipica configurazione basata sulla correlazione di eventi, i dati sono organizzati in segmenti correlati a eventi di stimolo, come la percezione di suoni o immagini.

Si inizia così la ricostruzione dell’attività cerebrale dai dati misurati. In questa fase, Brainstorm utilizza una modellazione in avanti con metodi agli elementi al contorno (BEM) per calcolare un modello di testa mappando le correnti neurali e le misurazioni del sensore. Il ricercatore poi utilizza le avanzate capacità di modellazione inversa di Brainstorm per individuare le fonti corticali che hanno prodotto un set specifico di EEG/MEG.

Una volta che i segnali neuronali sono accessibili sia a livello dei sensori che di sorgente, l’analisi più avanzata può essere effettuata per esplorare gli effetti specifici per l’attività sperimentale. La decomposizione spettrale e tempo-frequenza, le misure di connettività funzionale tra le regioni del cervello, meccanismi di accoppiamento incrociato e inferenza statistica sono alcuni tipi di approcci usati con le immagini e i segnali all’interno di Brainstorm.

Tutte le caratteristiche di Brainstorm sono accessibili utilizzando gli input da tastiera e mouse. Dopo la prototipazione della pipeline su un gruppo di dataset, i ricercatori in genere hanno bisogno di ripetere le stesse operazioni per decine o centinaia di set di dati simili. Brainstorm offre uno strumento grafico flessibile per questo scopo: l’utente seleziona i file da elaborare ed elenca tutte le operazioni da applicare sequenzialmente sui file selezionati, e Brainstorm automaticamente genera uno script di MATLAB. Lo script può essere eseguito così com’è, può essere mantenuto come file di log o personalizzato con operazioni aggiuntive non disponibile in Brainstorm.

Il coinvolgimento della comunità per lo sviluppo di Brainstorm

Poiché Brainstorm è open-source ed espandibile, gli utenti sono invitati a contribuire con il proprio codice MATLAB per sostituire o integrare le operazioni di Brainstorm già esistenti, compreso il filtraggio, le analisi statistiche, la modellazione in avanti e inversa… In alcuni casi, il codice proveniente dalla comunità viene ottimizzato prima di essere incorporato in Brainstorm.

I corsi di formazione che vengono condotti in tutto il mondo sono un’ulteriore fonte di nuove idee. L’anno scorso sono stati organizzati corsi per circa 900 utenti in Europa, Asia, Nord America e Medio Oriente. Queste sessioni, da un lato offrono uno strumento per conoscere meglio Brainstorm, dall’altro rappresentano l’oppoortunità di conoscere e incontrare gli utenti di Brainstorm, conoscere i loro bisogni, le loro ricerche e capire quali aspetti di Brainstorm risultano confusi o difficili per poter migliorare le versioni future del software.

Brainstorm è sempre in fase di miglioramento. Gli sviluppi futuri consentiranno ai ricercatori di utilizzare il software per visualizzare e analizzare non solo dati provenienti da MEG/EEG, ma anche da fNIRS, fMRI, TAC e PET, il tutto in un unico ambiente.

 

Fonte: Brainstorm: A MATLAB Based, Open-Source Application for Advanced MEG/EEG Data Processing and Visualization

By François Tadel and Sylvain Baillet, McConnell Brain Imaging Centre, McGill University;
John C. Mosher, Cleveland Clinic Epilepsy Center, Case Western Reserve University;
and Richard M. Leahy, University of Southern California

Published by
Raffaele Salvemini