Luminos: Bi-directional microscopy software
Luminos is a MATLAB library for bi-directional microscopy: simultaneous high-speed imaging and patterned optical stimulation.
New features in v0.4 (Updated 2/14/25):
- Improved DMD calibration using AprilTags, select between different patterns and transforms
- Calibrations fully agnostic to ROI or Binning
- Rotate or Flip Camera FOV
- Camera ROI option centered with offset (define midpoint and height/width)
- Real time pixel brightness histogram and optional histogram equalization
- Multi-Round acquisition and meta-experiments (for Standard acquisition, Snaps, Waveform only, Hadamard or HiLo)
- Autofocus using motorized z-stage or xyz-stage
- Automated setup of z-stacks, multiwell plate acquisitions etc. in GUI, compatible with autosampler
- ROI brightness plotter support for multiple cameras
- Distance measurements in live stream and DMD circle drawing in pixels or absolute units (um,mm,cm)
- Button for aborting running acquisition
- Toggle for blanking screen during acquisition
- Flexible trigger setup using non-PFI DO, PFI-DO or CTR
- New User Manual on Luminos Website
Core features
- Built-in functions for stimulation via DMD, or galvo targeting, and detection via camera or point-scanning (confocal or 2P) techniques
- Simultaneous use of multiple stimulation and/or imaging modalities
- Complex experimental protocols, e.g. integration of animal behavior, targeted optogenetic stimulation, voltage imaging, and electrophysiology
- Maps all stimulation and recording devices to a single spatial and temporal coordinate system with sub-pixel and sub-frame registration accuracy.
- Saves comprehensive metadata on instrument state with every acquisition
Architecture
- A modular Matlab core that allows for easy integration of arbitrary devices
- Intuitive and customizable UI written in JavaScript with React (opens in a new tab)
- Low-level C++ code for high-speed data streaming and synchronization
Hardware requirements
See supported hardware.
Demo
User Manual
Applications
Here are some cool things you can do.

Simultaneous targeted optogenetic stimulation and high-speed voltage imaging (paper (opens in a new tab))

Calcium imaging of the first zebrafish heartbeats (paper (opens in a new tab))

Optogenetic patterning of morphogen gradients in zebrafish embryos

Optical pooled screens via targeted photo-tagging of selected cells (paper (opens in a new tab))