Spike2 intègre des fonctionnalités avancées pour le traitement des données de forme d'onde et d'horodatage. Les formes d'onde peuvent être modifiées et des informations passées entre différents types de canal, par exemple en marquant les temps de caractéristiques de forme d'onde détectées ou en convertissant les données d'événement en formes d'onde pour les analyses de contenu fréquentiel.
Traitements de canal
Un traitement de canal est une opération appliquée de façon dynamique à des données de forme d'onde. L'utilisateur voit les données traitées mais les données d'origine ne sont aucunement modifiées. Des traitements multiples peuvent être appliqués et supprimés à tout moment.
Les traitements incluent : rectification, lissage, DC remove, pente, time shift, sous-échantillonnage, interpolation, appariement de fréquences d'échantillonnage de canal, filtre médian et amplitude efficace.
Application des traitements en ligne ou hors ligne.
Duplication de canaux pour un affichage simultané des données brutes et traitées.
Données EMG avec canaux dupliqués représentant des traitements de rectification et de lissage
Canaux virtuels
Les canaux virtuels comportent des formes d'onde calculées à partir de canaux existants, tels qu'il sont définis par les expressions fournies par l'utilisateur. Les calculs peuvent être de simples sommes, produits, différences ou ratios de canaux ou ils peuvent utiliser des fonctions mathématiques. Comme pour les traitements de canal, ils sont appliqués de façon dynamique en ligne comme hors ligne.
Définition de données à l'aide d'opérations et valeurs arithmétiques.
Entrez manuellement des expressions ou créez-les à l’aide des menus déroulants.
Affichage des résultats de l'arithmétique pratiquée sur les formes d'onde multi-canal.
Utilisation de l'interpolation cubique spline si les canaux ont des fréquences d'échantillonnage différentes.
Générez un affichage ‘forme d’onde’ d’événements de fréquence en appliquant un lissage au moyen de fonctions gaussienne, sinusoïdale, triangulaire ou rectangulaire, ou encore par interpolation de fréquences instantanées.
Création de données échantillonnées de façon uniforme à partir de mesures échantillonnées de façon non uniforme.
Appliquez des fonctions arithmétiques (carré, racine carrée, cube, valeurs absolues, rectification à une seule alternance) et trigonométriques (sin, cos, tan, arc tan).
Génération de formes d’onde : sinusoïdale, carrée, triangulaire, en dent de scie, enveloppe.
Canal virtuel utilisé pour calculer la magnitude de 3 forces perpendiculaires
Canaux de mémoire
Les canaux de mémoire sont des versions temporaires de n'importe quel type de canal de données Spike2. Les données qu'ils contiennent sont détenues dans la mémoire pour permettre un accès et des modifications rapides. Les informations détenues peuvent être des copies de canal, des caractéristiques de forme d'onde détectées ou des informations entrées par l'utilisateur. Ces canaux sont perdus lorsque le fichier est fermé mais ils peuvent à tout moment être écrits sur le fichier de façon permanente si vous souhaitez les conserver.
Création de jusqu'à 300 canaux de mémoire dans un fichier de données.
Importation de données compatibles entre différents types de canal.
Importation des temps de pic, creux ou passage de seuil à partir de données de forme d'onde.
Extraction de sections de forme d'onde sur la base des marqueurs et des temps.
Addition et suppression manuelles des données.
Contrôle complet possible grâce au langage de script intégré.
Importation de pics de pression artérielle vers un canal de mémoire
Filtrage numérique
Les filtres numériques FIR (Finite Impulsation Response) et IIR (Infinite Impulsation Response) peuvent être appliqués aux données de forme d'onde.
Les deux types sont définis à l’aide de dialogues interactifs avec les fonctions suivantes :
Visualisation de la réponse de filtre et pré-visualisation de l'effet avant l'application du filtre.
Sauvegarde et restauration des filtres en vue d'une utilisation ultérieure.
Manipulation des caractéristiques du filtre par glissement ou édition des valeurs de filtrage.
Les type de filtre FIR incluent : passe-haut, passe-bas, passe-bande et coupe-bande (1, 1 ½ et 2 bandes), différentiateurs avec contrôle des extrémités de bande de fréquence et de la raideur de la fréquence de coupure. Les filtres FIR sont inconditionnellement stables et n’imposent pas de délai de phase, de sorte que les crêtes et creux ne bougent pas lorsque les données sont filtrées.
Les filtres de type IIR incluent les filtres en T ponté et résonateurs, ainsi que passe-haut, passe-bas, passe-bande et coupe-bande, se basant sur le modèle des filtres analogiques Butterworth, Bessel et Chebyshev. Les filtres IIR permettent des extrémités de bande de fréquence plus raides et des crevasses plus étroites par rapport aux filtres FIR (à volumes de calcul équivalents).
Filtrage numérique FIR
Traitement de données à l'aide du langage de script
En plus des commandes permettant de mettre en œuvre toutes les fonctions intégrées de traitement de données décrites ci-dessus, le langage de script Spike2 permet un accès complet aux données, organisées sous forme de tableaux de valeurs de forme d'onde ou de temps de marqueur. On trouve dans le langage de script de nombreuses commandes et fonctions mathématiques visant à être utilisées avec des tableaux, matrices et valeurs individuelles. Les résultats peuvent ensuite être replacés dans un fichier de données, dans un autre type de vue ou produits en sortie en vue d'analyses complémentaires. Les commandes les plus courantes incluent :
ChanData()
Remplit un tableau avec une forme d'onde ou des temps d'événement
ChanMeasure()
Effectue des mesures spécifiées à partir d'un canal
ArrFFT()
Conduit une analyse spectrale sur des vues de résultat ou un tableau de données
ArrFilt()
Applique un filtre FIR à un tableau
ArrSort()
Trie un tableau et peut (en option) en classer d'autres de la même manière
ArrSpline()
Interpole un tableau sur un autre à l'aide de splines cubiques
MATDet()
Calcule le déterminant d'une matrice
MATSolve()
Résout un ensemble d'équations linéaires
MATTrans()
Transpose une matrice
PCA()
Analyse en composantes principales (décomposition en valeurs singulières)
Exp()
Fonction exponentielle sur un nombre ou un tableau
Log()
Logarithme décimal sur un nombre ou un tableau
Exemple de page d'aide de commande de script
Le langage de script intègre également une fonction permettant de convertir des événements au format forme d’onde. Une fonctionnalité similaire est certes disponible par l’intermédiaire des canaux virtuels, mais la commande EventToWaveform () offre l’avantage de permettre un lissage de la forme d’onde résultante au moyen d’une forme définie par l’utilisateur et pouvant être asymétrique.
Matériel CED
Le traitement en ligne dans Spike2 nécessite que les données soient enregistrées à l’aide de l’une des interfaces de laboratoire de la famille 1401. Le système 1401 et Spike2 peut capturer des données de façon continue tout en les traitant et en les analysant, ainsi qu’en contrôlant le dispositif expérimental et en générant les stimuli de sortie.
Traitement de forme d'onde généré par un script. Intégration de l'activité nerveuse normalisée sur une ligne de base.