| Literature DB >> 36229608 |
Abstract
Mice adeptly use their whiskers to touch, recognize, and learn about objects in their environment. This behavior is enabled by computations performed by populations of neurons in the somatosensory cortex. To understand these computations, we trained mice to use their whiskers to recognize different shapes while we recorded activity in the barrel cortex, which processes whisker input. Here, we present a large dataset of high-speed video of the whiskers, along with rigorous tracking of the entire extent of multiple whiskers and every contact they made on the shape. We used spike sorting to identify individual neurons, which responded with precise timing to whisker contacts and motion. These data will be useful for understanding the behavioral strategies mice use to explore objects, as well as the neuronal dynamics that mediate those strategies. In addition, our carefully curated labeled data could be used to develop new computer vision algorithms for tracking body posture, or for extracting responses of individual neurons from large-scale neural recordings.Entities:
Mesh:
Year: 2022 PMID: 36229608 PMCID: PMC9561117 DOI: 10.1038/s41597-022-01728-1
Source DB: PubMed Journal: Sci Data ISSN: 2052-4463 Impact factor: 8.501
Fig. 1Description of dataset. Panel A shows data from the raw video whereas panels B-E show data from the NWB file. All panels show the same 2 seconds of aligned data from the same session. (a) Typical frames within the video. Eight markers from each of four whiskers shown here. These markers are not included in the raw video file. (b) Times of whisker contacts (color raster) and licks (black raster). (c) Angle of each of the four whiskers over time (colors as in panel A). (d) 64 channels of raw neural data. Highpassed at 3 Hz for display here. Spikes are visible as quick vertical deflections. Inset: A histological image adapted from ref. [8] with a schematic of the 64-channel recording device. (e) Spike times from identified individual excitatory (red) and inhibitory (blue) neurons.
Fig. 2An iterative method for training a pose tracking network. This figure is adapted from Supplemental Fig. 2 in ref. [8]. (a) Example frames demonstrating the quality of the whisker tracking. Within each pair of frames, the left frame is the raw frame (annotated with the region of interest) and the right frame shows the result of the whisker tracking algorithm. Performance was good (i.e., the correct whiskers were tracked throughout their extent) even when: 1) the whisker was obscured by a paw; 2) whiskers were nearly overlapping; 3) a “doublet” whisker emerged from the same follicle; 4) the whisker was nearly out of frame; 5) motion blurred the tips; 6) a similar-looking distractor hair was attached to the end of the whisker. (b) We used an iterative procedure to train the network, repeatedly identifying “challenge frames” on which it struggled and using those to generate the next training set. (c) Error rates for the initial training set of typical frames (training set 1), as well as each set of increasingly difficult challenge frames (training set 2–5).
Fig. 3Procedure for aligning data streams. This dataset contains three streams of raw data: neural recordings, video frames, and behavioral events. They are aligned by a synchronization pulse at the beginning of each trial, which is detected in all three streams at times Tr, Tr, and Tr for trial i. The same trial may be matched up across all streams, although the neural and video streams may be missing trials at the beginning or end of the session. To align the neural timebase (top) to the common video timebase (middle), we used a continuous alignment procedure. To align the behavioral timebase (bottom) to the common video timebase (middle), we used a trial-by-trial alignment procedure, which introduces slight discontinuities (no more than a few milliseconds) between trials.
List of field names and descriptions at the top level of the NWB file.
| Field | Description |
|---|---|
| acquisition | A group containing ElectricalSeries objects for neural recordings, and ImageSeries objects for behavioral videos. |
| electrodes | A DynamicTable specifying characteristics of each electrode |
| processing | A group containing a ProcessingModule named “behavior”. This includes processed data about behavioral events, whisker position, and whisker contacts. |
| trials | A TimeIntervals specifying the parameters of each of the behavioral trials in this session |
| units | A Units specifying the recorded neurons and their spike times |
List of field names and descriptions within the acquisition group “extracellular array recording”.
| Field | Description |
|---|---|
| data | An HDF5 dataset of shape (N_samples, N_channels) and datatype “i2”, meaning 16-bit integers. This the acquired data from all channels. |
| timestamps | An HDF5 dataset of shape (N_samples,). This specifies the time of each sample of neural data in the common video timebase. |
Names and descriptions of the BehavioralTimeSeries within each whisker’s data interface in the processing group “processed_whisker_position”.
| Name (Type) | Description |
|---|---|
| angle (float) | The angle between base and tip of the whisker, with 0 meaning horizontal and positive values indicating protraction |
| base_x (float) | The x-coordinate of the base of the whisker, in pixels |
| base_y (float) | The y-coordinate of the base of the whisker, in pixels |
| bend (float) | The bend of the whisker (units: m−1), with 0 meaning straight and positive meaning pushing into an object. This is null on interpolated frames. |
| interpolated (bool) | A bool indicating whether this frame was interpolated over missing frames or not |
| tip_x (float) | The x-coordinate of the tip of the whisker, in pixels |
| tip_y (float) | The y-coordinate of the tip of the whisker, in pixels |
Names and descriptions of the columns of the electrodes table.
| Name (Type) | Description |
|---|---|
| y (float) | The depth of the electrode in microns from the surface of the brain. The related fields “x” and “z” are not relevant for this recording device and are left as null. |
| location (string) | We use this string to encode the laminar location of the electrode and its channel number in the original data file. This is documented further below. |
| electrode_group (ElectrodeGroup) | We use only one ElectrodeGroup in each session. Its “location” field specifies the barrel-related cortical column in which the recording device was inserted during this session (e.g., “C2”). |
Names and descriptions of the columns of the units table.
| Name (Type) | Description |
|---|---|
| id (int) | This uniquely identifies the neuron within this session, but the “id” is not unique across sessions. The same neuron is never recorded in more than one session. |
| inhibitory (bool) | This is True if the unit has a narrow waveform and thus is putatively a parvalbumin-positive fast-spiking inhibitory neuron. |
| depth (float) | This specifies in microns the unit’s depth in cortex. This is calculated by taking the depth of the electrode in the electrodes table which is indexed by the field “neuron_channel” for this unit. |
| layer (string) | This specifies the laminar location of the unit, based on its depth. |
| neuron_channel (int) | This indexes the electrodes table to indicate the electrode where this unit was located. |
| spike_times (list of float) | All spike times for this unit, in the common video timebase. |
| obs_intervals (list of list of float) | In this dataset, there is only one contiguous chunk of data included per session, so the length of this list is one. The inner list indicates the start time and stop time of the neural recording, in the common video timebase. |
Names and descriptions of the columns of the trials table.
| Name (Type) | Description |
|---|---|
| start_time (float) | Start time of the trial |
| stop_time (float) | Stop time of the trial. (Equal to the start time of the next trial.) |
| direct_delivery (bool) | If True, water was delivered to the rewarded pipe regardless of the mouse’s choice. Such trials should be ignored. |
| stim_is_random (bool) | If False, the stimulus identity was not chosen randomly, for the purpose of behavioral shaping. Such trials should be ignored. |
| optogenetic (bool) | If True, a laser was used to manipulate neural activity. Such trials should be ignored. |
| outcome (string) | One of {‘correct’, ‘error’, ‘spoil’}. Spoiled trials are those on which no choice was made and should be ignored. |
| choice (string) | One of {‘left’, ‘right’, ‘nogo’}. ‘nogo’ indicates that no choice was made and the trial was spoiled. |
| rewarded_side (string) | One of {‘left’, ‘right’}. Specifies which direction the mouse should have licked in order to receive reward. |
| servo_position (string) | One of {‘close’, ‘medium’, ‘far’}. Specifies the location of the shape with respect to the mouse’s face. |
| stimulus (string) | One of {‘convex’, ‘concave’, ‘nothing’}. ‘nothing’ was only used in the detection task, not in the discrimination task. |
| ignore_trial (bool) | This is True if ‘direct_delivery’ is True, or ‘stim_is_random’ is False, or outcome is ‘spoil’, or ‘optogenetic’ is True, or the trial was otherwise munged ( |
| choice_time (float) | The time of the choice lick, which is the first lick after the response window opened. On spoiled trials with no lick, this value is 45 seconds after the response window opened. |
| response_window_open_time (float) | The time at which the response window opened. The first lick after the response window opened determines the outcome of the trial. Licks before the response window opened did not affect the trial. |
| trial (int) | The trial number. |
| Measurement(s) | activity of a population of individual neurons • whisker behavior |
| Technology Type(s) | extracellular electrophysiology recording • high-speed videography |
| Factor Type(s) | An object with a certain shape indicating a rewarded behavioral responses |
| Sample Characteristic - Organism | Mus musculus |
| Sample Characteristic - Environment | laboratory environment |