nwb-linkml/nwb_linkml/schema/core.nwb.ophys.yaml

365 lines
13 KiB
YAML
Raw Normal View History

name: core.nwb.ophys
id: core.nwb.ophys
imports:
- core.nwb.image
- core.nwb.base
- hdmf-common.table
- core.nwb.device
- nwb.language
- core.nwb.ophys.include
- core.nwb.ophys
default_prefix: core.nwb.ophys/
classes:
OnePhotonSeries:
name: OnePhotonSeries
description: Image stack recorded over time from 1-photon microscope.
is_a: ImageSeries
attributes:
name:
name: name
range: string
required: true
pmt_gain:
name: pmt_gain
description: Photomultiplier gain.
range: float32
scan_line_rate:
name: scan_line_rate
description: Lines imaged per second. This is also stored in /general/optophysiology
but is kept here as it is useful information for analysis, and so good to
be stored w/ the actual data.
range: float32
exposure_time:
name: exposure_time
description: Exposure time of the sample; often the inverse of the frequency.
range: float32
binning:
name: binning
description: Amount of pixels combined into 'bins'; could be 1, 2, 4, 8, etc.
range: uint8
power:
name: power
description: Power of the excitation in mW, if known.
range: float32
intensity:
name: intensity
description: Intensity of the excitation in mW/mm^2, if known.
range: float32
tree_root: true
TwoPhotonSeries:
name: TwoPhotonSeries
description: Image stack recorded over time from 2-photon microscope.
is_a: ImageSeries
attributes:
name:
name: name
range: string
required: true
pmt_gain:
name: pmt_gain
description: Photomultiplier gain.
range: float32
scan_line_rate:
name: scan_line_rate
description: Lines imaged per second. This is also stored in /general/optophysiology
but is kept here as it is useful information for analysis, and so good to
be stored w/ the actual data.
range: float32
field_of_view:
name: field_of_view
description: Width, height and depth of image, or imaged area, in meters.
multivalued: false
range: TwoPhotonSeries__field_of_view
required: false
tree_root: true
RoiResponseSeries:
name: RoiResponseSeries
description: ROI responses over an imaging plane. The first dimension represents
time. The second dimension, if present, represents ROIs.
is_a: TimeSeries
attributes:
name:
name: name
range: string
required: true
data:
name: data
description: Signals from ROIs.
multivalued: false
range: RoiResponseSeries__data
required: true
rois:
name: rois
description: DynamicTableRegion referencing into an ROITable containing information
on the ROIs stored in this timeseries.
multivalued: false
range: RoiResponseSeries__rois
required: true
tree_root: true
DfOverF:
name: DfOverF
description: dF/F information about a region of interest (ROI). Storage hierarchy
of dF/F should be the same as for segmentation (i.e., same names for ROIs and
for image planes).
is_a: NWBDataInterface
attributes:
name:
name: name
range: string
required: true
roi_response_series:
name: roi_response_series
description: RoiResponseSeries object(s) containing dF/F for a ROI.
multivalued: true
range: RoiResponseSeries
required: true
tree_root: true
Fluorescence:
name: Fluorescence
description: Fluorescence information about a region of interest (ROI). Storage
hierarchy of fluorescence should be the same as for segmentation (ie, same names
for ROIs and for image planes).
is_a: NWBDataInterface
attributes:
name:
name: name
range: string
required: true
roi_response_series:
name: roi_response_series
description: RoiResponseSeries object(s) containing fluorescence data for
a ROI.
multivalued: true
range: RoiResponseSeries
required: true
tree_root: true
ImageSegmentation:
name: ImageSegmentation
description: Stores pixels in an image that represent different regions of interest
(ROIs) or masks. All segmentation for a given imaging plane is stored together,
with storage for multiple imaging planes (masks) supported. Each ROI is stored
in its own subgroup, with the ROI group containing both a 2D mask and a list
of pixels that make up this mask. Segments can also be used for masking neuropil.
If segmentation is allowed to change with time, a new imaging plane (or module)
is required and ROI names should remain consistent between them.
is_a: NWBDataInterface
attributes:
name:
name: name
range: string
required: true
plane_segmentation:
name: plane_segmentation
description: Results from image segmentation of a specific imaging plane.
multivalued: true
range: PlaneSegmentation
required: true
tree_root: true
PlaneSegmentation:
name: PlaneSegmentation
description: Results from image segmentation of a specific imaging plane.
is_a: DynamicTable
attributes:
name:
name: name
range: string
required: true
image_mask:
name: image_mask
description: ROI masks for each ROI. Each image mask is the size of the original
imaging plane (or volume) and members of the ROI are finite non-zero.
multivalued: false
range: PlaneSegmentation__image_mask
required: false
pixel_mask_index:
name: pixel_mask_index
description: Index into pixel_mask.
multivalued: false
range: PlaneSegmentation__pixel_mask_index
required: false
pixel_mask:
name: pixel_mask
description: 'Pixel masks for each ROI: a list of indices and weights for
the ROI. Pixel masks are concatenated and parsing of this dataset is maintained
by the PlaneSegmentation'
multivalued: true
range: AnyType
voxel_mask_index:
name: voxel_mask_index
description: Index into voxel_mask.
multivalued: false
range: PlaneSegmentation__voxel_mask_index
required: false
voxel_mask:
name: voxel_mask
description: 'Voxel masks for each ROI: a list of indices and weights for
the ROI. Voxel masks are concatenated and parsing of this dataset is maintained
by the PlaneSegmentation'
multivalued: true
range: AnyType
reference_images:
name: reference_images
description: Image stacks that the segmentation masks apply to.
multivalued: true
any_of:
- range: ImageSeries
tree_root: true
ImagingPlane:
name: ImagingPlane
description: An imaging plane and its metadata.
is_a: NWBContainer
attributes:
name:
name: name
range: string
required: true
description:
name: description
description: Description of the imaging plane.
multivalued: false
range: text
required: false
excitation_lambda:
name: excitation_lambda
description: Excitation wavelength, in nm.
multivalued: false
range: float32
required: true
imaging_rate:
name: imaging_rate
description: Rate that images are acquired, in Hz. If the corresponding TimeSeries
is present, the rate should be stored there instead.
multivalued: false
range: float32
required: false
indicator:
name: indicator
description: Calcium indicator.
multivalued: false
range: text
required: true
location:
name: location
description: Location of the imaging plane. Specify the area, layer, comments
on estimation of area/layer, stereotaxic coordinates if in vivo, etc. Use
standard atlas names for anatomical regions when possible.
multivalued: false
range: text
required: true
manifold:
name: manifold
description: DEPRECATED Physical position of each pixel. 'xyz' represents
the position of the pixel relative to the defined coordinate space. Deprecated
in favor of origin_coords and grid_spacing.
multivalued: false
range: ImagingPlane__manifold
required: false
origin_coords:
name: origin_coords
description: Physical location of the first element of the imaging plane (0,
0) for 2-D data or (0, 0, 0) for 3-D data. See also reference_frame for
what the physical location is relative to (e.g., bregma).
multivalued: false
range: ImagingPlane__origin_coords
required: false
grid_spacing:
name: grid_spacing
description: Space between pixels in (x, y) or voxels in (x, y, z) directions,
in the specified unit. Assumes imaging plane is a regular grid. See also
reference_frame to interpret the grid.
multivalued: false
range: ImagingPlane__grid_spacing
required: false
reference_frame:
name: reference_frame
description: Describes reference frame of origin_coords and grid_spacing.
For example, this can be a text description of the anatomical location and
orientation of the grid defined by origin_coords and grid_spacing or the
vectors needed to transform or rotate the grid to a common anatomical axis
(e.g., AP/DV/ML). This field is necessary to interpret origin_coords and
grid_spacing. If origin_coords and grid_spacing are not present, then this
field is not required. For example, if the microscope takes 10 x 10 x 2
images, where the first value of the data matrix (index (0, 0, 0)) corresponds
to (-1.2, -0.6, -2) mm relative to bregma, the spacing between pixels is
0.2 mm in x, 0.2 mm in y and 0.5 mm in z, and larger numbers in x means
more anterior, larger numbers in y means more rightward, and larger numbers
in z means more ventral, then enter the following -- origin_coords = (-1.2,
-0.6, -2) grid_spacing = (0.2, 0.2, 0.5) reference_frame = "Origin coordinates
are relative to bregma. First dimension corresponds to anterior-posterior
axis (larger index = more anterior). Second dimension corresponds to medial-lateral
axis (larger index = more rightward). Third dimension corresponds to dorsal-ventral
axis (larger index = more ventral)."
multivalued: false
range: text
required: false
optical_channel:
name: optical_channel
description: An optical channel used to record from an imaging plane.
multivalued: true
range: OpticalChannel
required: true
tree_root: true
OpticalChannel:
name: OpticalChannel
description: An optical channel used to record from an imaging plane.
is_a: NWBContainer
attributes:
name:
name: name
range: string
required: true
description:
name: description
description: Description or other notes about the channel.
multivalued: false
range: text
required: true
emission_lambda:
name: emission_lambda
description: Emission wavelength for channel, in nm.
multivalued: false
range: float32
required: true
tree_root: true
MotionCorrection:
name: MotionCorrection
description: 'An image stack where all frames are shifted (registered) to a common
coordinate system, to account for movement and drift between frames. Note: each
frame at each point in time is assumed to be 2-D (has only x & y dimensions).'
is_a: NWBDataInterface
attributes:
name:
name: name
range: string
required: true
corrected_image_stack:
name: corrected_image_stack
description: Reuslts from motion correction of an image stack.
multivalued: true
range: CorrectedImageStack
required: true
tree_root: true
CorrectedImageStack:
name: CorrectedImageStack
description: Reuslts from motion correction of an image stack.
is_a: NWBDataInterface
attributes:
name:
name: name
range: string
required: true
corrected:
name: corrected
description: Image stack with frames shifted to the common coordinates.
multivalued: false
range: ImageSeries
required: true
xy_translation:
name: xy_translation
description: Stores the x,y delta necessary to align each frame to the common
coordinates, for example, to align each frame to a reference image.
multivalued: false
range: TimeSeries
required: true
tree_root: true