The PulsePal is a publication from 2014 by Joshua I. Sanders and Adam Kepecs, which gives a DIY solution to build your own open and inexpensive (~$210) alternative to pulse generators used in neurophysiology research.
Abstract
Precisely timed experimental manipulations of the brain and its sensory environment are often employed to reveal principles of brain function. While complex and reliable pulse trains for temporal stimulus control can be generated with commercial instruments, contemporary options remain expensive and proprietary. We have developed Pulse Pal, an open source device that allows users to create and trigger software-defined trains of voltage pulses with high temporal precision. Here we describe Pulse Pal’s circuitry and firmware, and characterize its precision and reliability. In addition, we supply online documentation with instructions for assembling, testing and installing Pulse Pal. While the device can be operated as a stand-alone instrument, we also provide application programming interfaces in several programming languages. As an inexpensive, flexible and open solution for temporal control, we anticipate that Pulse Pal will be used to address a wide range of instrumentation timing challenges in neuroscience research.
Github repsitory : https://github.com/sanworks/PulsePal
Get to PulsePal3Dneuro made it available for everyone to use a good standardized tool for light shielding.
This system was designed to provide simple and reliable light shielding for 2-photon imaging in awake head-fixed mice (running on a 3D-treadmill with visual stimulation in our case). With this in mind, we optimized for the following criteria:
More than a century ago, Ramón y Cajal provided a qualitative description of neuronal branching in all its forms and variants. However, even today, few rigorous and useful formalisms are available for a quantitative description of dendritic and axonal morphology.
The TREES toolbox provides:
-Tools to automatically reconstruct neuronal branching from microscopy image stacks and to generate synthetic axonal and dendritic trees.
-The basic tools to edit, visualize, and analyze dendritic and axonal trees.
-Methods for quantitatively comparing branching structures between neurons.
-Tools for exploring how dendritic and axonal branching depends on local optimization of total wiring and conduction distance.
This software package is written in Matlab, the most widely used scientific programming language. We hope that other groups will benefit from this package and that they will add their own code to the TREES toolbox based on their own specific applications.
Get to TreestoolboxPack I/O is a data acquisition Labview software that uses National Instruments DAQ hardware to handle multiple analogue and digital signals. The software is useful for any experiment requiring acquisition and generation of data and can be triggered in several modes.
Dr. Adam Packer the developer of the product:
"During graduate school, I was making electrophysiological recordings and trying to synchronize various pieces of equipment (cameras, lasers, galvanometers, etc.). I found no software that was up to the task so I began a project to develop an uber-system capable of performing any data acquisition or generation operation that could be completed with the National Instruments DAQ hardware in use at the Yuste lab at the time. I jokingly referred to the project as “PackIO”, a combination of my name and IO, as in input/output, as the software is supposed to be able to take any input or generate any output in any synchronized fashion. The name stuck and now PackIO is in use by members of Rafael Yuste’s laboratory, Jason Maclean’s laboratory, Roberto Araya’s laboratory, and I continue to use PackIO in Michael Hausser’s laboratory."
Link to the GitHub repository
Get to PackIO siteWaveSurfer is an application for acquiring neurophysiology data in Matlab developed by Dr Adam Taylor at Janelia Farm Research Campus
Key Features:
Acquisition can be either trial-based or continuous
Acquisition and stimulation can be triggered by external TTL inputs
Supports analog and digital channels
Flexible stimulus generation: pulses, trains, sinusoids, etc
Works with any model of patch-clamp amplifier
Tight integration with Heka and Axon patch-clamp amplifiers
Works with National Instruments X-series DAQ boards
Flexible and fast multi-electrode test pulse generation
User can extend with custom Matlab scripts for online analysis, visualization
Custom Matlab code can be run at start/end of trials, or periodically during acquisition
Saves data in HDF5 format, an open standard for scientific data
Provides a tool for reading WaveSurfer data files in Matlab. A similar tool for Python is provided by the companion PyWaveSurfer project.
Can integrate with Vidrio Technologies ScanImage for laser-scanning microscopy
Link to the GitHub repository
Get to Wavesurfer siteCaImAn is a Python toolbox for large scale Calcium Imaging data Analysis and behavioral analysis.
CaImAn implements a set of essential methods required in the analysis pipeline of large scale calcium imaging data. Fast and scalable algorithms are implemented for motion correction, source extraction, spike deconvolution, and component registration across multiple days. It is suitable for both two-photon and one-photon fluorescence microscopy data, and can be run in both batch and online modes. CaImAn also contains some routines for the analysis of behavior from video cameras.
Motion correctionGet to CaImAn GitHub page
Source extraction
Denoising, deconvolution and spike extraction
Automatic ROI registration across multiple days
Handling of very large datasets
Pipeline for Voltage Imaging Analysis
Behavioral Analysis
Variance Stabilization
Open Ephys is a nonprofit based in Cambridge, Massachusetts, with team members distributed all around the world. Our mission is to advance our understanding of the brain by promoting community ownership of the tools we use to study it. Since Open Ephys was founded in 2014, we’ve made it possible to build an entire extracellular electrophysiology rig from off-the-shelf open-source components. We are just getting started on our journey.
Each month, more scientists download our software and start adding features of their own. In this regard, the Open Ephys GUI is unique among applications for acquiring multichannel electrophysiology data. Because it's so flexible, the GUI can be used with any type of data acquisition hardware. It has the potential to become a standard within our field, but only if it gains the support of potential users like you.
As is the case with most open-source software, there are no guarantees that the GUI will do what you want, or even what you expect it to. No matter what you're trying to use it for, don't trust it until you test it. We've already done a lot of testing ourselves, but it can't hurt to have more people checking things. The more eyes we can have verifying that things are working properly, the better.
Link to GitHub repository
Get to Open Ephys websitePsychophysics Toolbox Version 3 (PTB-3) is a free set of Matlab and GNU Octave functions for vision and neuroscience research. It makes it easy to synthesize and show accurately controlled visual and auditory stimuli and interact with the observer.
The attraction of using computer displays for visual psychophysics is that they allow software specification of the stimulus. Programs to run experiments are often written in a low-level language (e.g., C or Pascal) to achieve full control of the hardware for precise stimulus display. Although these low-level languages provide power and flexibility, they are not conducive to rapid program development. Interpreted languages (e.g., BASIC, LISP, Mathematica, and Matlab) abstract hardware details and provide friendlier development environments, but don’t provide the hardware control needed for precise stimulus display. The Psychophysics Toolbox is a software package that adds this capability to the Matlab and Octave application on Macintosh, Linux and Windows computers (we will only mention Matlab for the remainder of this text, but statements mostly apply to Octave as well).
Link to GitHub repository
Get to PsychoToolBox SiteThe combination of two-photon microscopy recordings and powerful calcium-dependent fluorescent sensors enables simultaneous recording of unprecedentedly large populations of neurons. While these sensors have matured over several generations of development, computational methods to process their fluorescence remain inefficient and the results hard to interpret. Here, we introduce a set of practical methods based on novel clustering algorithms and provide a complete pipeline from raw image data to neuronal calcium traces to inferred spike times. We formulate a generative model of the fluorescence image, incorporating spike times and a spatially smooth neuropil signal, and solve the inference and learning problems using a fast algorithm. This implementation scales linearly with the number of recorded cells, and the complete pipeline runs in approximately one hour for typical two-hour long recordings, on commodity GPUs. Furthermore, this method recovers twice as many cells as a previous standard method. This allowed us to routinely record and detect ~10,000 cells simultaneously from the visual cortex of awake mice using standard two-photon resonant-scanning microscopes.
Link to: GitHub repository
Get to Original PublicationImageJ is a Java-based image processing program developed at the National Institutes of Health and the Laboratory for Optical and Computational Instrumentation (LOCI, University of Wisconsin). Its first version, ImageJ 1.x, is developed in the public domain, while ImageJ2 and the related projects SciJava, ImgLib2, and SCIFIO are licensed with a permissive BSD-2 license. ImageJ was designed with an open architecture that provides extensibility via Java plugins and recordable macros. Custom acquisition, analysis, and processing plugins can be developed using ImageJ's built-in editor and a Java compiler. User-written plugins make it possible to solve many image processing and analysis problems, from three-dimensional live-cell imaging to radiological image processing, multiple imaging system data comparisons to automated hematology systems. ImageJ's plugin architecture and built-in development environment has made it a popular platform for teaching image processing.
ImageJ can be run as an online applet, a downloadable application, or on any computer with a Java 5 or later virtual machine. Downloadable distributions are available for Microsoft Windows, the classic Mac OS, macOS, Linux, and the Sharp Zaurus PDA. The source code for ImageJ is freely available.
ImageJ can display, edit, analyze, process, save, and print 8-bit color and grayscale, 16-bit integer, and 32-bit floating point images. It can read many image file formats, including TIFF, PNG, GIF, JPEG, BMP, DICOM, and FITS, as well as raw formats. ImageJ supports image stacks, a series of images that share a single window, and it is multithreaded, so time-consuming operations can be performed in parallel on multi-CPU hardware. ImageJ can calculate area and pixel value statistics of user-defined selections and intensity-thresholded objects. It can measure distances and angles. It can create density histograms and line profile plots. It supports standard image processing functions such as logical and arithmetical operations between images, contrast manipulation, convolution, Fourier analysis, sharpening, smoothing, edge detection, and median filtering. It does geometric transformations such as scaling, rotation, and flips. The program supports any number of images simultaneously, limited only by available memory.
Get to ImageJ website