Accedi

È necessario avere un abbonamento a JoVE per visualizzare questo. Accedi o inizia la tua prova gratuita.

In questo articolo

  • Riepilogo
  • Abstract
  • Introduzione
  • Protocollo
  • Risultati
  • Discussione
  • Divulgazioni
  • Riconoscimenti
  • Materiali
  • Riferimenti
  • Ristampe e Autorizzazioni

Riepilogo

Descriviamo qui PyOKR, un metodo di analisi quantitativa semi-automatizzato che misura direttamente i movimenti oculari risultanti dalle risposte visive al movimento bidimensionale dell'immagine. Un'interfaccia utente basata su Python e un algoritmo di analisi consentono una maggiore produttività e misurazioni quantitative più accurate dei parametri di tracciamento oculare rispetto ai metodi precedenti.

Abstract

Lo studio delle risposte comportamentali agli stimoli visivi è una componente chiave per comprendere la funzione del sistema visivo. Una risposta notevole è il riflesso optocinetico (OKR), un comportamento innato altamente conservato necessario per la stabilizzazione dell'immagine sulla retina. L'OKR fornisce una solida lettura della capacità di tracciamento delle immagini ed è stato ampiamente studiato per comprendere i circuiti e la funzione del sistema visivo in animali di diversi background genetici. L'OKR si compone di due fasi: una fase di tracciamento lento in cui l'occhio segue uno stimolo fino al bordo del piano visivo e una fase veloce compensatoria saccada che ripristina la posizione dell'occhio nell'orbita. I metodi precedenti di quantificazione del guadagno, sebbene affidabili, sono laboriosi e possono essere soggettivi o derivati arbitrariamente. Per ottenere una quantificazione più rapida e riproducibile della capacità di tracciamento oculare, abbiamo sviluppato un nuovo programma di analisi semi-automatico, PyOKR, che consente la quantificazione del movimento di tracciamento oculare bidimensionale in risposta a qualsiasi stimolo direzionale, oltre ad essere adattabile a qualsiasi tipo di apparecchiatura di video-oculografia. Questo metodo fornisce il filtraggio automatizzato, la selezione delle fasi di tracciamento lento, la modellazione dei vettori oculari verticali e orizzontali, la quantificazione dei guadagni del movimento oculare rispetto alla velocità dello stimolo e l'organizzazione dei dati risultanti in un foglio di calcolo utilizzabile per confronti statistici e grafici. Questa pipeline di analisi quantitativa e semplificata, facilmente accessibile tramite l'importazione di PyPI, fornisce una misurazione rapida e diretta delle risposte OKR, facilitando così lo studio delle risposte comportamentali visive.

Introduzione

La stabilizzazione dell'immagine si basa su precise risposte oculomotorie per compensare il flusso ottico globale che si verifica durante l'automovimento. Questa stabilizzazione è guidata principalmente da due risposte motorie: il riflesso optocinetico (OKR) e il riflesso vestibolo-oculare (VOR)1,2,3. Il lento movimento globale attraverso la retina induce l'OKR, che suscita la rotazione riflessiva dell'occhio nella direzione corrispondente per stabilizzare l'immagine 1,2. Questo movimento, noto come fase lenta, è interrotto da saccadi compensatorie, note come fase veloce, in cui l'occhio si resetta rapidamente nella direzione opposta per consentire una nuova fase lenta. Qui, definiamo queste saccadi di fase rapida come movimenti di tracciamento oculare (ETM). Mentre il VOR si basa sul sistema vestibolare per suscitare movimenti oculari per compensare i movimenti della testa3, l'OKR viene avviato nella retina dall'attivazione di ON e dalla successiva segnalazione al sistema ottico accessorio (AOS) nel mesencefalo 4,5. A causa della sua dipendenza diretta dai circuiti retinici, l'OKR è stato spesso utilizzato per determinare la capacità di tracciamento visivo sia in ambito di ricerca che clinico 6,7.

L'OKR è stato ampiamente studiato come strumento per valutare la capacità visiva di base 2,6,8, lo sviluppo del DSGC 9,10,11,12, le risposte oculomotorie13 e le differenze fisiologiche tra i background genetici7. L'OKR viene valutato in animali con testa fissa presentati con uno stimolo in movimento14. Le risposte oculomotorie vengono in genere catturate utilizzando una varietà di strumenti video e i movimenti di tracciamento oculare vengono catturati come forme d'onda OKR nelle direzioni orizzontale e verticale9. Per quantificare la capacità di tracciamento, sono state descritte due metriche principali: il guadagno di tracciamento (la velocità dell'occhio rispetto alla velocità dello stimolo) e la frequenza ETM (il numero di saccadi di fase veloci in un determinato intervallo di tempo). Il calcolo del guadagno è stato utilizzato storicamente per misurare direttamente la velocità angolare dell'occhio per stimare la capacità di inseguimento; Tuttavia, questi calcoli sono laboriosi e possono essere derivati arbitrariamente sulla base di metodi di raccolta video-oculografici e successiva quantificazione. Per una valutazione OKR più rapida, il conteggio della frequenza ETM è stato utilizzato come metodo alternativo per misurare l'acuità di tracciamento7. Sebbene ciò fornisca una stima abbastanza accurata della capacità di tracciamento, questo metodo si basa su una metrica indiretta per quantificare la risposta di fase lenta e introduce una serie di distorsioni. Questi includono un bias dell'osservatore nella determinazione delle saccadi, una dipendenza da risposte saccadiche temporalmente coerenti in una determinata epoca e l'incapacità di valutare l'entità della risposta di fase lenta.

Al fine di affrontare queste preoccupazioni con gli attuali approcci di valutazione OKR e per consentire una quantificazione approfondita dei parametri OKR ad alto rendimento, abbiamo sviluppato un nuovo metodo di analisi per quantificare le forme d'onda OKR. Il nostro approccio utilizza una piattaforma software accessibile basata su Python chiamata "PyOKR". Utilizzando questo software, la modellazione e la quantificazione delle risposte in fase lenta degli OKR possono essere studiate in modo più approfondito e con una maggiore parametrizzazione. Il software fornisce valutazioni quantitative accessibili e riproducibili delle risposte a una miriade di stimoli visivi e anche un tracciamento visivo bidimensionale in risposta al movimento orizzontale e verticale.

Protocollo

Tutti gli esperimenti sugli animali eseguiti presso la Johns Hopkins University School of Medicine (JHUSOM) sono stati approvati dall'Institutional Animal Care and Use Committee (IACUC) presso il JHUSOM. Tutti gli esperimenti eseguiti presso l'Università della California, San Francisco (UCSF) sono stati eseguiti in conformità con i protocolli approvati dall'UCSF Institutional Animal Care and Use Program.

1. Raccolta dei dati comportamentali

  1. Registra i movimenti oculari OKR utilizzando il metodo di video-oculografia preferito per generare dati d'onda (ad esempio, una serie temporale dell'angolo di sguardo dell'occhio in coordinate sferiche).
    NOTA: I dati rappresentativi raccolti presso JHUSOM sono stati ottenuti utilizzando la chirurgia di impianto della testa e la video-oculografia, come precedentemente descritto 9,13 (Figura 1). I dati rappresentativi raccolti dall'UCSF sono stati ottenuti attraverso l'intervento chirurgico di impianto della testa e il metodo della video-oculografia, come descritto in precedenza10 (Figura 7).
    1. Prendere nota dei parametri di stimolo e registrazione: frequenza dei fotogrammi di registrazione, velocità e direzione dello stimolo e periodi di tempo tra e dopo le epoche di stimolo. Per gli stimoli sinusoidali, notare anche l'ampiezza e la frequenza dell'onda di stimolo.
  2. Esportare i dati delle onde raccolti come file . File CSV contenente i dati delle onde orizzontali e verticali (azimut ed elevazione).
    1. Organizza i dati dell'ondata come file . File CSV con due colonne contenenti dati orizzontali (epxWave) e dati verticali (epyWave).

2. Installazione del software di analisi

  1. Scarica e installa Python.
    1. Per la supervisione del grafo, installa Spyder tramite Anaconda.
    2. Per assicurarti che i grafici funzionino correttamente in Spyder, vai su Strumenti > Preferenze > Console Ipython > Grafica > Backend grafico. Impostare Inline su Automatico.
  2. Crea un nuovo ambiente Anaconda con Python.
  3. Installa PyOKR tramite PyPi con pip install PyOKR per installare la versione più recente insieme alle dipendenze del pacchetto (File di codifica supplementare 1 e File di codifica supplementare 2)
  4. Se si utilizza un computer Windows, eseguire da PyOKR import OKR_win as o e poi o.run().
  5. Se si utilizza un computer Mac, eseguire da PyOKR import OKR_osx as o e poi o.run().

3. Analisi dei dati delle onde

  1. Inizializzazione dell'analisi e importazione dei file
    1. Eseguire o.run() in uno script .py per aprire l'interfaccia utente.
    2. In File, utilizzare la funzione Apri o il comando Ctrl+O [comando iOS] per aprire un browser che consentirà all'utente di selezionare il file wave desiderato.
    3. In File, utilizzare il pulsante Esporta cartella o il comando Ctrl+E per aprire un browser di cartelle che consentirà la selezione di una cartella di output in cui verranno esportate le analisi finali.
    4. Immettere il nome del file di analisi finale nel file di output in un formato consigliato, ad esempio AnimalGenotype_AnimalNumber_Analysis.
    5. Impostare il programma per un singolo animale utilizzando il comando Imposta oggetto in File o il comando Ctrl+S per inizializzare il set di dati per un singolo animale.
  2. Definizione dei parametri del file wave
    1. Per iniziare a impostare i parametri dello stimolo, definire la direzionalità in Seleziona direzione stimolo selezionando una delle quattro direzioni cardinali. Per gli stimoli sinusoidali, selezionarne uno che contenga (Orizzontale) o (Verticale) di conseguenza, con la direzione cardinale che definisce la direzione iniziale dell'onda sinusoidale.
    2. Impostare il tipo di stimolo in Seleziona tipo di stimolo come Unidirezionale, Oscillatorio o Obliquo.
    3. Dopo aver impostato la direzionalità, importare il proprio set di dati sulla posizione dello stimolo (Importa i propri dati vettoriali di stimolo) o generare automaticamente un vettore basato sui parametri (Genera vettore di stimolo dai parametri). Se si importa un vettore di stimolo, procedere con 3.2.3.1 e quindi andare al passaggio 3.3. Se si genera un vettore di stimolo, procedere con i passaggi successivi.
      1. Se si importano i propri dati vettoriali, importare i valori di distanza dello stimolo (cioè una serie temporale che descrive la distanza di spostamento dello stimolo tra ogni frame di acquisizione adiacente) nello stesso formato descritto nel passaggio 3.2.1. Inoltre, analizza l'intero set di dati come un'unica epoca piuttosto che suddividerlo in singole epoche, poiché la funzionalità per il sottoinsieme del valore di stimolo importato non è stata aggiunta a partire da PyOKR v1.1.2.
    4. In Parametri stimolo, impostare i parametri dello stimolo utilizzato per la raccolta dei dati.
      1. Imposta la durata dell'assenza di stimoli all'inizio (testa) e alla fine (coda) di una determinata prova con testa e coda.
      2. Imposta la quantità di tempo in cui viene mostrato uno stimolo, la quantità di tempo di assenza di stimolo dopo e il numero di epoche totali all'interno di una determinata prova con rispettivamente la durata dell'epoca, la lunghezza del post-stimolo e il numero di epoche.
      3. Per gli stimoli unidirezionali e obliqui, impostare la velocità dello stimolo in gradi al secondo con Velocità orizzontale e Velocità verticale.
      4. Impostare la velocità di acquisizione della fotocamera di raccolta con Acquisisci frequenza fotogrammi.
      5. Per gli stimoli sinusoidali, generare l'onda sinusoidale per modellare stimoli oscillatori con frequenza e ampiezza.
    5. Dopo la parametrizzazione, creare il modello appropriato dalle informazioni di stimolo inserite sopra con Genera vettore di stimolo dai parametri.
    6. Selezionare una data epoca per lo stimolo immesso utilizzando Seleziona epoca per scorrere il file d'onda totale.
  3. Selezione supervisionata delle fasi di tracciamento
    1. Per identificare le regioni di tracciamento lento, selezionare automaticamente le saccadi di fase veloce con la regolazione preliminare facendo clic su Dati non filtrati o Dati filtrati, che etichetteranno le potenziali saccadi in base alle variazioni di velocità massima.
    2. In Dati non filtrati, verificare che le saccadi siano selezionate correttamente con un punto blu. Se la selezione automatica non è accurata, rimuovere manualmente i punti con il pulsante sinistro del mouse (LMB) o aggiungere punti con il pulsante destro del mouse (RMB). Quando le saccadi di fase veloce sono state selezionate in modo adeguato, salvare i punti con il pulsante centrale del mouse (MMB) e chiudere il grafico.
    3. Se si desidera applicare un filtro automatico, impostare una soglia Z-Score e fare clic su Dati filtrati per filtrare automaticamente le saccadi. Se necessario, utilizzare la stessa supervisione manuale descritta al punto 3.3.2 per rimuovere qualsiasi rumore.
    4. Dopo aver selezionato correttamente la saccadide, premere Regolazione punto per selezionare la regione da rimuovere. Modificare i punti superiore e inferiore tramite uno schema di controllo simile a quello descritto in precedenza nel passaggio 3.3.2. Modifica i punti superiori (verdi) con il tasto LMB o RMB e modifica i punti inferiori (rossi) con MAIUSC+LMB o MAIUSC+RMB. Quando i punti sono posizionati correttamente, usa l'MMB per salvare i punti.
      NOTA: se si utilizza un Mac, la regolazione del punto inferiore e superiore si trova in due pulsanti separati e segue lo stesso schema di controllo descritto al punto 3.3.2.
  4. Analisi delle fasi di slow-tracking
    1. Impostare l'ordine del modello polinomiale utilizzando Imposta ordine polinomiale per definire il modello polinomiale che verrà adattato alle singole fasi lente.
      NOTA: Per gli stimoli unidirezionali o obliqui, il valore predefinito è 1 poiché la linearità è necessaria per calcolare il guadagno di tracciamento. Per gli stimoli sinusoidali, è necessario un ordine superiore per modellare la curva dell'onda, con un valore predefinito di 15.
    2. Per analizzare la traccia, selezionare Analisi finale per generare i modelli di fase lenta (Figura 2) per le fasi lente selezionate (vedere Figura 2A-D) e calcolare le distanze, le velocità e i guadagni di tracciamento medi nell'epoca (Figura 2E).
    3. Per visualizzare il grafico bidimensionale (2D) o tridimensionale (3D) delle regioni selezionate, selezionare rispettivamente Visualizza grafico 2D o Visualizza grafico 3D .
    4. Selezionare Aggiungi epoca per salvare i valori raccolti generati nel passaggio 3.4.2. Per visualizzare tutti i valori aggiunti per un determinato animale e le medie delle prove raccolte, selezionare Visualizza set di dati corrente.
    5. Dopo aver aggiunto un'epoca, scorrere il resto del file con Seleziona epoca, seguendo i passaggi da 3.3.1 a 3.4.4.
    6. Una volta che un file wave è stato completamente analizzato, ripeti questo processo per tutti gli altri file per un determinato animale aprendo nuovi file, impostando i parametri appropriati e analizzandoli di conseguenza. Ripetendo i passaggi 3.2.1-3.4.5 per ogni file, generare un set di dati finale contenente tutti i dati delle onde per un determinato animale.
  5. Esportazione finale dei dati
    1. Al termine dell'analisi dei dati per un determinato animale, con tutte le direzioni o gli stimoli analizzati, esportare il set di dati tramite Esporta dati.
      NOTA: Il set di dati grezzo verrà esportato in base al nome del file di output e salvato lungo il percorso impostato dalla cartella di output come CSV contenente i dati delle singole epoche con la media totale per ciascun parametro di stimolo.
    2. Dopo aver esportato un singolo animale, reinizializzare il set di dati con CTRL+S e quindi ripetere tutti i passaggi precedenti per analizzare un nuovo animale.
    3. Se necessario, riorganizzare tutti i dati di output raccolti per più animali per un'analisi più semplice utilizzando il comando Ordina dati nella scheda Analisi .
      NOTA: Questa funzione compilerà e ordinerà tutti i valori medi per tutti i file di animali analizzati memorizzati all'interno della cartella di output per consentire una più facile generazione di grafici e confronti statistici. L'ordinamento dipende dalla denominazione dei file a partire dalla v1.1.2. Utilizzare lo schema di denominazione consigliato come descritto nel passaggio 3.1.4 per ogni file (ad esempio, WT_123_Analysis).

Risultati

Per convalidare il metodo di analisi sopra descritto, abbiamo quantificato il guadagno di tracciamento OKR su tracce d'onda raccolte da topi wild-type e da un mutante knockout condizionale con un deficit di tracciamento noto. Inoltre, per testare la più ampia applicabilità del nostro metodo di analisi, abbiamo analizzato tracce derivate da una coorte separata di topi wild-type acquisiti utilizzando un diverso metodo di raccolta video-oculografica. Il filtraggio automatico delle saccadi facilita l'elaborazione e l'anali...

Discussione

PyOKR offre diversi vantaggi per lo studio delle risposte visive riflesse nei movimenti oculari. Queste includono l'accuratezza, l'accessibilità e le opzioni di raccolta dei dati, oltre alla capacità di incorporare la parametrizzazione e le velocità di stimolo variabili.

La valutazione diretta del guadagno di tracciamento oculare fornisce una caratterizzazione accurata del movimento oculare che è una metrica quantitativa più diretta rispetto al tradizionale conteggio manuale delle saccadi...

Divulgazioni

Gli autori non hanno conflitti di interesse.

Riconoscimenti

Questo lavoro è stato supportato da R01 EY032095 (ALK), VSTP pre-doctoral fellowship 5T32 EY7143-27 (JK), F31 EY-033225 (SCH), R01 EY035028 (FAD e ALK) e R01 EY-029772 (FAD).

Materiali

NameCompanyCatalog NumberComments
C57BL/6J  miceJackson Labs664
Igor ProWaveMetricsRRID: SCR_000325
MATLABMathWorksRRID: SCR_001622
Optokinetic reflex recording chamber - JHUSOMCustom-builtN/AAs described in Al-Khindi et al.(2022)9 and Kodama et al. (2016)13 
Optokinetic reflex recording chamber - UCSFCustom-builtN/AAs described in Harris and Dunn, 201510
PythonPython Software FoundationRRID: SCR_008394
Tbx5 flox/+ miceGift from B. BruneauN/AAs described in Al-Khindi et al.(2022)9 
Tg(Pcdh9-cre)NP276Gsat/MmucdMMRRCMMRRC Stock # 036084-UCD; RRID: MMRRC_036084-UCD

Riferimenti

  1. Stahl, J. S. Using eye movements to assess brain function in mice. Vision Res. 44 (28), 3401-3410 (2004).
  2. Kretschmer, F., Tariq, M., Chatila, W., Wu, B., Badea, T. C. Comparison of optomotor and optokinetic reflexes in mice. J Neurophysiol. 118, 300-316 (2017).
  3. Bronstein, A. M., Patel, M., Arshad, Q. A brief review of the clinical anatomy of the vestibular-ocular connections - How much do we know. Eye. 29 (2), 163-170 (2015).
  4. Simpson, J. I. The accessory optic system. Ann Rev Neurosci. 7, 13-41 (1984).
  5. Hamilton, N. R., Scasny, A. J., Kolodkin, A. L. Development of the vertebrate retinal direction-selective circuit. Dev Biol. 477, 273-283 (2021).
  6. Dobson, V., Teller, D. Y. Visual acuity in human infants: a review and comparison of behavioral and electrophysiological studies. Vision Res. 18 (11), 1469-1483 (1978).
  7. Cahill, H., Nathans, J. The optokinetic reflex as a tool for quantitative analyses of nervous system function in mice: Application to genetic and drug-induced variation. PLoS One. 3 (4), e2055 (2008).
  8. Cameron, D. J., et al. The optokinetic response as a quantitative measure of visual acuity in zebrafish. J Vis Exp. (80), e50832 (2013).
  9. Al-Khindi, T., et al. The transcription factor Tbx5 regulates direction-selective retinal ganglion cell development and image stabilization. Curr Biol. 32 (19), 4286-4298 (2022).
  10. Harris, S. C., Dunn, F. A. Asymmetric retinal direction tuning predicts optokinetic eye movements across stimulus conditions. eLife. 12, 81780 (2015).
  11. Sun, L. O., et al. Functional assembly of accessory optic system circuitry critical for compensatory eye movements. Neuron. 86 (4), 971-984 (2015).
  12. Yonehara, K., et al. Congenital Nystagmus gene FRMD7 is necessary for establishing a neuronal circuit asymmetry for direction selectivity. Neuron. 89 (1), 177-193 (2016).
  13. Kodama, T., Du Lac, S. Adaptive acceleration of visually evoked smooth eye movements in mice. J Neurosci. 36 (25), 6836-6849 (2016).
  14. Stahl, J. S., Van Alphen, A. M., De Zeeuw, C. I. A comparison of video and magnetic search coil recordings of mouse eye movements. J Neurosci Methods. 99 (1-2), 101-110 (2000).

Ristampe e Autorizzazioni

Richiedi autorizzazione per utilizzare il testo o le figure di questo articolo JoVE

Richiedi Autorizzazione

Esplora altri articoli

Riflesso OptocineticoOKREye TrackingSistema VisivoStabilizzazione dell ImmaginePyOKRAnalisi Semi AutomaticaVideo OculografiaFase di Slow TrackingFase Sacca VeloceGuadagno del Movimento Oculare

This article has been published

Video Coming Soon

JoVE Logo

Riservatezza

Condizioni di utilizzo

Politiche

Ricerca

Didattica

CHI SIAMO

Copyright © 2025 MyJoVE Corporation. Tutti i diritti riservati