1. Light Beads Microscopy Data#
Current Light Beads Microscopy (LBM) data is aquired with ScanImage aquisition software.
ScanImage Multi Region Of Interest (mROI) outputs raw .tiff
files made up of individual Regions of Interest (ROI's)
.
In its raw form, data is saved as a 3-dimensional multi-page tiff file with each ROI stacked vertically relative to the fast-galvo scan direction.
Each 2D image within this tiff file represents a page of the original document.
The location of each ROI is stored as a pixel coordinate used internally by the respective pipeline to orient each strip.
1.1. Array Terminology#
Light-beads microscopy is a 2-photon imaging paradigm based on ScanImage acquisition software.
Dimension |
Description |
---|---|
[X, Y] |
2D plane |
[X, Y, Z] |
z-stack |
[X, Y, T] |
2D timeseries |
[X, Y, Z, T] |
3D timeseries |
1.2. Frame Ordering#
ScanImage saves raw tiffs with each z-depth and timepoint interleaved [zT]:
frame0 = time0_plane1
frame1 = time0_plane2
frame2 = time0_plane3
frame3 = time1_plane1
frame4 = time1_plane2
Data organized this way is generally incompatible with downstream processing libraries like suite2p, CaImAn and EXTRACT.
For compatibility, we reorganize the frames as follows:
frame0 = time0_plane1
frame1 = time1_plane1
frame2 = time2_plane1
frame3 = time0_plane2
frame4 = time1_plane2
Thus a primary function of image assembly is to De-interleave Z-Planes.
Note on Frames
Before beginning the recording session, users have the option to split frames in the recording across multiple .tiff
files. This option is helpful as it requires less work in post-processing to ensure there isn’t too much computer memory being used.
1.3. LBM Metadata#
The primary distinction between Light-Beads Microscopy datasets and standard 2p datasets are how the data is organized on disk.
This information is stored in the ScanImage Metadata.
1.3.1. Overview#
ScanImage stores metadata about image size, frame rate, resolution, and regions of interest within the raw .tiff
file.
Each pipeline handles this metadata for you, and provides an interface to use these values throughout the pipeline.
There is primary metadata, intended for use in a typical processing run. Many of these values are derived from less-pertinent (secondary) metadata shown below.
Note: With multi-ROI tiffs, the size of your tiff given by
image_size
will be different from the number of pixels in x and y. This is due to the time it takes the scanner to move onto subsequent ROI’s not being accounted for innum_pixel_xy
. Internally, each pipeline checks for these metadata attributes and adjusts the final image accordingly.
1.3.2. Usage#
Each pipeline comes stocked with methods to retrieve imaging metadata.
Python metadata is can be accessed with mbo_utilities.get_metadata()
.
objective_resolution: 157.5000
center_xy: [-15.2381 0]
size_xy: [3.8095 38.0952]
num_pixel_xy: [144 1200]
image_length: 2478
image_width: 145
num_planes: 30
num_rois: 4
num_frames: 1730
frame_rate: 9.608
fov: [600 600]
pixel_resolution: 1.0208
sample_format: 'int16'
MATLAB metadata can be retrieved with the get_metadata() utility funciton.
>> get_metadata(fullfile(extract_path, "MH184_both_6mm_FOV_150_600um_depth_410mW_9min_no_stimuli_00001_00001.tiff"))
ans =
metadata contents:
tiff_length = 2478
tiff_width = 145
roi_width_px = 144
roi_height_px = 600
num_rois = 4
num_frames = 1730
num_planes = 30 % stored in scanimage as channels
num_files = 1
frame_rate = 9.60806
fov = [600;600]
pixel_resolution = 1.02083
sample_format = int16
raw_filename = high_res
raw_filepath = C:\Users\RBO\caiman_data
raw_fullfile = C:\Users\RBO\caiman_data\high_res.tif
dataset_name = /Y
trim_pixels = [6;6;17;0]
% below used internally
num_pixel_xy = [144;600]
center_xy = [-1.428571429;0]
line_period = 4.15652e-05
scan_frame_period = 0.104079
size_xy = [0.9523809524;3.80952381]
objective_resolution = 157.5
num_lines_between_scanfields = 24
- region-of-interest#
A set of 1 or more 2D planes which are stitched together to form the full image.
- num_pixel_xy#
The number of pixels [X, Y] in each region-of-interest.
- roi_width_px#
The size of the region-of-interest on its shortest dimension.
- roi_height_px#
The size of the region-of-interest on its longest dimension.
- Field-of-view#
The total size (um) of the raw stitched image with no trimming operations.
- image-length#
The number of pixels on the long axis of the raw
.tiff
file.- image-width#
The number of pixels on the short, slow-galvo axis of the raw
.tiff
file.- pixel-resolution#
The size, in micron, of each pixel.