Find research datasets worth reusing
Search datasets from major research repositories and use ShareScore to quickly assess how well each record supports discovery, access, and reuse.
10
datasets available to search
ShareScore release 0.7.1
Dataset results
10 results for “brain-machine interface”
Dataset for "Brain-machine interface learning is facilitated by specific patterning of distributed cortical feedback"
<p><strong>Dataset for the manuscript entitled: Brain-machine interface learning is facilitated by specific patterning of distributed cortical feedback.</strong></p> <p><strong><em>DOI of the manuscript:</em> <a href="https://doi.org/10.1126/sciadv.adh1328">10.1126/sciadv.adh1328</a></strong></p> <p><em><strong>Abstract of the manuscript:</strong></em></p> <p>Neuroprosthetics offer great hope for motor-impaired patients. One obstacle is that fine motor control requires near-instantaneous, rich somatosensory feedback. Such distributed feedback may be recreated in a brain-machine interface using distributed artificial stimulation across the cortical surface. Here, we hypothesized that neuronal stimulation must be contiguous in its spatiotemporal dynamics in order to be efficiently integrated by sensorimotor circuits. Using a closed-loop brain-machine interface, we trained head-fixed mice to control a virtual cursor by modulating the activity of motor cortex neurons. We provided artificial feedback in real time with distributed optogenetic stimulation patterns in the primary somatosensory cortex. Mice developed a specific motor strategy and succeeded to learn the task only when the optogenetic feedback pattern was spatially and temporally contiguous while it moved across the topography of the somatosensory cortex. These results reveal new properties of sensorimotor cortical integration and set new constraints on the design of neuroprosthetics.</p> <p><strong><em>Description of the variables in the data storage dictionary:</em></strong></p> <ol> <li>cursor_positions: sequence of the virtual cursor position over a session</li> <li>range_of_rewardable_cursor_position: range of cursor positions that can be rewarded. Upper threshold excluded. Lower threshold included. </li> <li>cursor_times: timing of the cursor positions provided by the cursor_positions data, in the same clock as spike and lick times. </li> <li>lick_times: timing of all recorded licks. </li> <li>reward_times:timing of the opening of the valve that releases the water reward. </li> <li>master_spike_times: time of the spikes of the master neurons.</li> <li>master_spike_shape: spike shape of each spike stored in master_spike_times. The shipe shapes are shown for 3s (30kHz sampling rate), for each 4 electrode of the corresponding tetrode.</li> <li>neighbor_spike_times': same as master_spike_times for neighbor neurons.</li> <li>neighbor_spike_shape': same as master_spike_shape for neighbor neurons. </li> </ol> <p><em><strong>General structure of the data set:</strong></em></p> <p>Each variable is a hierarchical tree of lists: [<em>Protocol</em>][<em>Mouse</em>][<em>Session</em>]. </p> <p><em>Protocol</em> takes one of the following values: 0: Bar feedback | 1: Full shuffle | 2: No Feedback | 5: Playback Structured Feedback | 7: Spontaneous activity | 8: Barrel Shuffle | 9: Frame shuffle.</p> <p><em>Mouse </em>and <em>Session</em> iterate through respectively the mice that were involved in the protocole, and the sessions, generally 5 in total.</p> <p><em><strong>Python code to load the hdf5 File</strong></em></p> <p>The code below relies on libraries available on a standard, mac anaconda install of the jupyter notebook system on the 25/03/2024. It provides with several nested lists of Numpy arrays.</p> <p>For instance, to access the series of cursor positions of Mouse M during session number S of Protocole P, index as follows: </p> <p>CP = cursor_positions_DATA[P][M][S]</p> <p># 1 - Load the libraries</p> <p> import h5py<br> import numpy as np<br> import pylab as pl</p> <p> filename = "./data.h5"<br> f = h5py.File(filename, "r")</p> <p># 2 - Extraction of the cursor position, time, lick and reward time, as well as the activity of the master and neighbor neurons. </p> <p> cursor_positions = f['cursor_positions']</p> <p> cursor_positions_DATA = []<br> for Protocole in range(9):<br> DATA_protocole = []<br> P = f[cursor_positions[Protocole][0]]<br> for Mouse in range(16): <br> # Loop through the mice, and collect <br> M = f[P[Mouse][0]]<br> if not(list(M) == [0,1]) and (len(M) == 5):<br> DATA_mouse = []<br> for Session in range(5):<br> S = f[M[Session][0]]<br> bfr = np.array(S)<br> DATA_mouse.append(bfr) <br> DATA_protocole.append(DATA_mouse)<br> cursor_positions_DATA.append(DATA_protocole)</p> <p> </p> <p> cursor_times = f['cursor_times']</p> <p> cursor_times_DATA = []<br> for Protocole in range(9):<br> DATA_protocole = []<br> P = f[cursor_times[Protocole][0]]<br> for Mouse in range(16): <br> # Loop through the mice, and collect <br> M = f[P[Mouse][0]]<br> if not(list(M) == [0,1]) and (len(M) == 5):<br> DATA_mouse = []<br> for Session in range(5):<br> S = f[M[Session][0]]<br> bfr = np.array(S)<br> DATA_mouse.append(bfr) <br> DATA_protocole.append(DATA_mouse)<br> cursor_times_DATA.append(DATA_protocole)</p> <p> </p> <p> lick_times = f['lick_times']</p> <p> lick_times_DATA = []<br> for Protocole in range(9):<br> DATA_protocole = []<br> P = f[lick_times[Protocole][0]]<br> for Mouse in range(16): <br> # Loop through the mice, and collect <br> M = f[P[Mouse][0]]<br> if not(list(M) == [0,1]) and (len(M) == 5):<br> DATA_mouse = []<br> for Session in range(5):<br> S = f[M[Session][0]]<br> bfr = np.array(S)<br> DATA_mouse.append(bfr) <br> DATA_protocole.append(DATA_mouse)<br> lick_times_DATA.append(DATA_protocole)</p> <p> </p> <p> reward_times = f['reward_times']</p> <p> reward_times_DATA = []<br> for Protocole in range(9):<br> DATA_protocole = []<br> P = f[reward_times[Protocole][0]]<br> for Mouse in range(16): <br> # Loop through the mice, and collect <br> M = f[P[Mouse][0]]<br> if not(list(M) == [0,1]) and (len(M) == 5):<br> DATA_mouse = []<br> for Session in range(5):<br> S = f[M[Session][0]]<br> bfr = np.array(S)<br> DATA_mouse.append(bfr) <br> DATA_protocole.append(DATA_mouse)<br> reward_times_DATA.append(DATA_protocole)</p> <p> </p> <p> master_spike_times = f['master_spike_times']</p> <p> master_spike_times_DATA = []<br> for Protocole in range(9):<br> DATA_protocole = []<br> P = f[master_spike_times[Protocole][0]]<br> for Mouse in range(16): <br> # Loop through the mice, and collect <br> M = f[P[Mouse][0]]<br> if not(list(M) == [0,1]) and (len(M) == 5):<br> DATA_mouse = []<br> for Session in range(5):<br> S = f[M[Session][0]]<br> DATA_unit = []<br> for Unit in range(len(S)):<br> if not(list(S) == [0,1]):<br> N = f[S[Unit][0]]<br> bfr = np.array(N)<br> DATA_unit.append(bfr) <br> DATA_mouse.append(DATA_unit)<br> DATA_protocole.append(DATA_mouse)<br> master_spike_times_DATA.append(DATA_protocole)</p> <p> </p> <p> neighbor_spike_times = f['neighbor_spike_times']</p> <p> neighbor_spike_times_DATA = []<br> for Protocole in range(9):<br> DATA_protocole = []<br> P = f[neighbor_spike_times[Protocole][0]]<br> for Mouse in range(16): <br> # Loop through the mice, and collect <br> M = f[P[Mouse][0]]<br> if not(list(M) == [0,1]) and (len(M) == 5):<br> DATA_mouse = []<br> for Session in range(5):<br> S = f[M[Session][0]]<br> DATA_unit = []<br> for Unit in range(len(S)):<br> if not(list(S) == [0,1]):<br> N = f[S[Unit][0]]<br> bfr = np.array(N)<br> DATA_unit.append(bfr) <br> DATA_mouse.append(DATA_unit)<br> DATA_protocole.append(DATA_mouse)<br> neighbor_spike_times_DATA.append(DATA_protocole)</p> <p> </p>
Data from: The impact of task context on predicting finger movements in a brain-machine interface
<p>A key factor in the clinical translation of brain-machine interfaces (BMIs) for restoring hand motor function will be their robustness to changes in a task. With functional electrical stimulation (FES) for example, the patient's own hand will be used to produce a wide range of forces in otherwise similar movements. To investigate the impact of task changes on BMI performance, we trained two rhesus macaques to control a virtual hand with their physical hand while we added springs to each finger group (index or middle-ring-small) or altered their wrist posture. Using simultaneously recorded intracortical neural activity, finger positions, and electromyography, we found that predicting finger kinematics and finger-related muscle activations across contexts led to significant increases in prediction error, especially for muscle activations. However, with respect to online BMI control of the virtual hand, changing either training task context or the hand's physical context during online control had little effect on online performance. We explain this dichotomy by showing that the structure of neural population activity remained similar in new contexts, which could allow for fast adjustment online. Additionally, we found that neural activity shifted trajectories proportional to the required muscle activation in new contexts, possibly explaining biased kinematic predictions and suggesting a feature that could help predict different magnitude muscle activations while producing similar kinematics.</p>
Data from: The impact of task context on predicting finger movements in a brain-machine interface
Open the record for dataset details and reuse information.
Microelectrode Brain-Machine Interface for Individuals With Tetraplegia
ClinicalTrials.gov study NCT01364480. IPD Sharing: YES. Countries: 1. Publications: 7.
Cortical Recording and Stimulating Array Brain-Machine Interface
ClinicalTrials.gov study NCT01894802. IPD Sharing: YES. Countries: 1. Publications: 10.
EEG Brain-Machine Interface Control of an Upper-Limb Robotic Exoskeleton for Robot-Assisted Rehabilitation After Stroke
ClinicalTrials.gov study NCT05374486. IPD Sharing: NO. Countries: 1. Publications: 5.
Brain-Machine Interface for Freezing of Gait
ClinicalTrials.gov study NCT06642519. IPD Sharing: UNDECIDED. Countries: 1. Publications: 0.
Training With Brain-machine Interfaces, Visuo-tactile Feedback and Assisted Locomotion for Patients With Chronic Complete Paraplegia
ClinicalTrials.gov study NCT03992690. IPD Sharing: UNDECIDED. Countries: 1. Publications: 0.
MindEx: A Novel, Multifocal, Cognitive Brain-Machine Interface System
ClinicalTrials.gov study NCT05936619. IPD Sharing: NO. Countries: 1. Publications: 0.
Upper Extremity Rehabilitation Training Using Brain-Machine Interface Biofeedback in Stroke Patients With Hemiplegia
ClinicalTrials.gov study NCT04290377. IPD Sharing: NO. Countries: 1. Publications: 0.
ScienceDex guides
Understand access before you commit
These curated guides explain access requirements, typical timelines, costs, and reuse considerations for widely used research datasets.
Allen Brain Atlas
Allen Brain Atlas is an Allen Institute collection of brain map atlases, datasets, APIs, and analysis tools covering mouse, human, and non-human primate brain resources.
Annotated Behaviour and Observability Dataset (ABODe)
ABODe is a University of Edinburgh DataShare dataset for behavior classification in group-housed mice using home-cage video, identities, bounding boxes, ground-plate positions, and annotator labels.
DANDI Archive for NWB datasets
DANDI is a BRAIN Initiative archive for publishing and sharing neurophysiology data, including electrophysiology, optophysiology, and behavioral data packaged as NWB and related standards.
International Brain Laboratory public data
The International Brain Laboratory public data releases expose standardized mouse decision-making experiments, including Neuropixels recordings, widefield calcium imaging, behavior, and session metadata accessed through the ONE API.
OpenNeuro
OpenNeuro is a free, open platform for sharing neuroimaging datasets, with public search, dataset pages, and download paths for web, S3, DataLad, and the OpenNeuro CLI.