name: core.nwb.ophys id: core.nwb.ophys imports: - core.nwb.image - core.nwb.base - hdmf-common.table - nwb.language default_prefix: core.nwb.ophys/ classes: OnePhotonSeries: name: OnePhotonSeries description: Image stack recorded over time from 1-photon microscope. is_a: ImageSeries attributes: 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 TwoPhotonSeries: name: TwoPhotonSeries description: Image stack recorded over time from 2-photon microscope. is_a: ImageSeries attributes: 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 TwoPhotonSeries_field_of_view: name: TwoPhotonSeries_field_of_view description: Width, height and depth of image, or imaged area, in meters. attributes: array: name: array range: TwoPhotonSeries_field_of_view_Array TwoPhotonSeries_field_of_view_Array: name: TwoPhotonSeries_field_of_view_Array is_a: Arraylike attributes: width|height: name: width|height range: float32 required: false minimum_cardinality: 2 maximum_cardinality: 2 width|height|depth: name: width|height|depth range: float32 required: false minimum_cardinality: 3 maximum_cardinality: 3 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: 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 RoiResponseSeries_data: name: RoiResponseSeries_data description: Signals from ROIs. attributes: array: name: array range: RoiResponseSeries_data_Array RoiResponseSeries_data_Array: name: RoiResponseSeries_data_Array is_a: Arraylike attributes: num_times: name: num_times range: numeric required: true num_ROIs: name: num_ROIs range: numeric required: false RoiResponseSeries_rois: name: RoiResponseSeries_rois description: DynamicTableRegion referencing into an ROITable containing information on the ROIs stored in this timeseries. is_a: DynamicTableRegion 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: RoiResponseSeries: name: RoiResponseSeries description: RoiResponseSeries object(s) containing dF/F for a ROI. multivalued: true range: RoiResponseSeries required: 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: RoiResponseSeries: name: RoiResponseSeries description: RoiResponseSeries object(s) containing fluorescence data for a ROI. multivalued: true range: RoiResponseSeries required: 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: PlaneSegmentation: name: PlaneSegmentation description: Results from image segmentation of a specific imaging plane. multivalued: true range: PlaneSegmentation required: true PlaneSegmentation: name: PlaneSegmentation description: Results from image segmentation of a specific imaging plane. is_a: DynamicTable attributes: 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: false range: PlaneSegmentation_pixel_mask required: false 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: false range: PlaneSegmentation_voxel_mask required: false reference_images: name: reference_images description: Image stacks that the segmentation masks apply to. multivalued: false range: PlaneSegmentation_reference_images required: true PlaneSegmentation_image_mask: name: PlaneSegmentation_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. is_a: VectorData attributes: array: name: array range: PlaneSegmentation_image_mask_Array PlaneSegmentation_image_mask_Array: name: PlaneSegmentation_image_mask_Array is_a: Arraylike attributes: num_roi: name: num_roi range: AnyType required: true num_x: name: num_x range: AnyType required: true num_y: name: num_y range: AnyType required: true num_z: name: num_z range: AnyType required: false PlaneSegmentation_pixel_mask_index: name: PlaneSegmentation_pixel_mask_index description: Index into pixel_mask. is_a: VectorIndex PlaneSegmentation_pixel_mask: name: PlaneSegmentation_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' is_a: VectorData PlaneSegmentation_voxel_mask_index: name: PlaneSegmentation_voxel_mask_index description: Index into voxel_mask. is_a: VectorIndex PlaneSegmentation_voxel_mask: name: PlaneSegmentation_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' is_a: VectorData PlaneSegmentation_reference_images: name: PlaneSegmentation_reference_images description: Image stacks that the segmentation masks apply to. attributes: ImageSeries: name: ImageSeries description: One or more image stacks that the masks apply to (can be one-element stack). multivalued: true range: ImageSeries required: false ImagingPlane: name: ImagingPlane description: An imaging plane and its metadata. is_a: NWBContainer attributes: description: name: description description: Description of the imaging plane. multivalued: false range: ImagingPlane_description required: false excitation_lambda: name: excitation_lambda description: Excitation wavelength, in nm. multivalued: false range: ImagingPlane_excitation_lambda 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: ImagingPlane_imaging_rate required: false indicator: name: indicator description: Calcium indicator. multivalued: false range: ImagingPlane_indicator 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: ImagingPlane_location 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: ImagingPlane_reference_frame required: false OpticalChannel: name: OpticalChannel description: An optical channel used to record from an imaging plane. multivalued: true range: OpticalChannel required: true ImagingPlane_description: name: ImagingPlane_description description: Description of the imaging plane. ImagingPlane_excitation_lambda: name: ImagingPlane_excitation_lambda description: Excitation wavelength, in nm. ImagingPlane_imaging_rate: name: ImagingPlane_imaging_rate description: Rate that images are acquired, in Hz. If the corresponding TimeSeries is present, the rate should be stored there instead. ImagingPlane_indicator: name: ImagingPlane_indicator description: Calcium indicator. ImagingPlane_location: name: ImagingPlane_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. ImagingPlane_manifold: name: ImagingPlane_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. attributes: conversion: name: conversion description: Scalar to multiply each element in data to convert it to the specified 'unit'. If the data are stored in acquisition system units or other units that require a conversion to be interpretable, multiply the data by 'conversion' to convert the data to the specified 'unit'. e.g. if the data acquisition system stores values in this object as pixels from x = -500 to 499, y = -500 to 499 that correspond to a 2 m x 2 m range, then the 'conversion' multiplier to get from raw data acquisition pixel units to meters is 2/1000. range: float32 unit: name: unit description: Base unit of measurement for working with the data. The default value is 'meters'. range: text array: name: array range: ImagingPlane_manifold_Array ImagingPlane_manifold_Array: name: ImagingPlane_manifold_Array is_a: Arraylike attributes: height: name: height range: float32 required: true width: name: width range: float32 required: true x, y, z: name: x, y, z range: float32 required: true minimum_cardinality: 3 maximum_cardinality: 3 depth: name: depth range: float32 required: false ImagingPlane_origin_coords: name: ImagingPlane_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). attributes: unit: name: unit description: Measurement units for origin_coords. The default value is 'meters'. range: text array: name: array range: ImagingPlane_origin_coords_Array ImagingPlane_origin_coords_Array: name: ImagingPlane_origin_coords_Array is_a: Arraylike attributes: x, y: name: x, y range: float32 required: false minimum_cardinality: 2 maximum_cardinality: 2 x, y, z: name: x, y, z range: float32 required: false minimum_cardinality: 3 maximum_cardinality: 3 ImagingPlane_grid_spacing: name: ImagingPlane_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. attributes: unit: name: unit description: Measurement units for grid_spacing. The default value is 'meters'. range: text array: name: array range: ImagingPlane_grid_spacing_Array ImagingPlane_grid_spacing_Array: name: ImagingPlane_grid_spacing_Array is_a: Arraylike attributes: x, y: name: x, y range: float32 required: false minimum_cardinality: 2 maximum_cardinality: 2 x, y, z: name: x, y, z range: float32 required: false minimum_cardinality: 3 maximum_cardinality: 3 ImagingPlane_reference_frame: name: ImagingPlane_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)." OpticalChannel: name: OpticalChannel description: An optical channel used to record from an imaging plane. is_a: NWBContainer attributes: description: name: description description: Description or other notes about the channel. multivalued: false range: OpticalChannel_description required: true emission_lambda: name: emission_lambda description: Emission wavelength for channel, in nm. multivalued: false range: OpticalChannel_emission_lambda required: true OpticalChannel_description: name: OpticalChannel_description description: Description or other notes about the channel. OpticalChannel_emission_lambda: name: OpticalChannel_emission_lambda description: Emission wavelength for channel, in nm. 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: CorrectedImageStack: name: CorrectedImageStack description: Reuslts from motion correction of an image stack. multivalued: true range: CorrectedImageStack required: true CorrectedImageStack: name: CorrectedImageStack description: Reuslts from motion correction of an image stack. is_a: NWBDataInterface attributes: corrected: name: corrected description: Image stack with frames shifted to the common coordinates. multivalued: false range: CorrectedImageStack_corrected 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: CorrectedImageStack_xy_translation required: true CorrectedImageStack_corrected: name: CorrectedImageStack_corrected description: Image stack with frames shifted to the common coordinates. is_a: ImageSeries CorrectedImageStack_xy_translation: name: CorrectedImageStack_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. is_a: TimeSeries