  Fluorescent calcium indicators are a popular means for observing the spiking
activity of large neuronal populations, but extracting the activity of each
neuron from raw fluorescence calcium imaging data is a nontrivial problem. We
present a fast online active set method to solve this sparse non-negative
deconvolution problem. Importantly, the algorithm progresses through each time
series sequentially from beginning to end, thus enabling real-time online
estimation of neural activity during the imaging session. Our algorithm is a
generalization of the pool adjacent violators algorithm (PAVA) for isotonic
regression and inherits its linear-time computational complexity. We gain
remarkable increases in processing speed: more than one order of magnitude
compared to currently employed state of the art convex solvers relying on
interior point methods. Unlike these approaches, our method can exploit warm
starts; therefore optimizing model hyperparameters only requires a handful of
passes through the data. A minor modification can further improve the quality
of activity inference by imposing a constraint on the minimum spike size. The
algorithm enables real-time simultaneous deconvolution of $O(10^5)$ traces of
whole-brain larval zebrafish imaging data on a laptop.
