A one-line analysis pipeline

With the ability to read Scanbox binaries in Suite2p I wrote a one-line processing pipe-line for Scanbox. If you are within a data directory with folders you want to process, all you have to is pass a list of the experiments to sbxsuite2p(): This example just contains a list of two experiments. Matlab will then…

Read More

Real-time pose estimation with OpenCV in Scanbox

We previously describe how we can incorporate DeepLabCut models to run concurrently to Scanbox to provide real-time pose estimation while imaging. Of course, the mechanism for communicating with DeepLabCut is general enough to allow processing by other means. In some simple cases, just as detecting the center of the pupil doing two-photon imaging, simple image…

Read More

Event Panel

An updated event panel provides real-time information about TTL events and allows you to provide a name, which is then used to create a matching field in the file metadata. First, this allows for the user to detect if all required events are coming in as expected during the experiment (as opposed to finding out…

Read More

Suite2p reads Scanbox binaries

Thanks to the work of João Couto, Suite2p now reads *.sbx files. I just processed some of our data and it works nicely. You can download Suite2p from here. Some of the metadata are currently missing, as they are stored in a Matlab’s object that is not easily read in Python, but I will be…

Read More

Achieving high frame rates with subframe folding

Scanbox samples, transfers and processes one frame at a time. Frame processing involves correcting for non-uniform spatial sampling along the resonant axis, motion stabilization, real-time extraction of signals, displaying the images, streaming to disk, and so on. This overhead in frame processing can limit the maximum frame rate achievable if the computer cannot keep up…

Read More

A Processing sketch plug-in

Processing is a versatile graphics language based on Java. Among other things, it provides a simple interface to process images using GLSL shaders. Here, I provide a simple example of a Processing sketch accessing the memory mapped data stream generated by Scanbox. This particular example simply posterizes the image using pre-defined shaders in Processing. Of…

Read More

Optogenetics with the Tower

The optogenetics panel in the new Tower electronics (aka the Pizza Box) is nearly the same as its predecessor. The main difference is that synchronization and timing of stimulation is done internally and does not require any external electronics. The parameters at the bottom specify the width of the LED, GATE pulses and the number…

Read More

Network streaming

The activity of segmented cells can be streamed over the network for online processing or for use in closed-loop experiments. Two configuration variables define the host name and port the data will be streamed to. In this particular example we will be streaming data to the same machine, but you can change stream_host to the…

Read More

Patterned photo-stimulation for optogenetics

Scanbox allows patterned photostimulation using a dual galvo pathway.  After installation of the module he first step is to calibrate the system as follows: During installation of the galvo-galvo stimulation module, we will determine the ETL setting required to bring into alignment the 2p imaging plane and the focal plane of stimulation.  This is done…

Read More

A depth stabilization plugin

Some experiments require long imaging times. In cases where we are recording from  small structures, such as dendritic processes or spines, any slow drift in the depth of the imaging plane would affect the quality of the data. Here is a Scanbox plugin that will: (a) perform a quick z-stack around the desired imaging plane,…

Read More