The HNCcorr algorithm identifies cell bodies in two-photon calcium imaging movies. We provide a Python 3 implementation as well as a legacy Matlab implementation. The software is freely available for non-commercial use. See license file for details.
The HNCcorr algorithm is described in our ArXiv paper:
Q Spaen, R Asín-Achá, and DS Hochbaum. (2017). HNCcorr: A novel combinatorial approach for cell identification in calcium-imaging movies. arXiv:1703.01999.
from hnccorr import HNCcorr, Movie
from hnccorr.example import load_example_data
movie = Movie(
"Example movie", load_example_data() # downloads sample Neurofinder dataset
)
H = HNCcorr.from_config() # Initialize HNCcorr with default configuration
H.segment(movie)
H.segmentations # List of identified cells
H.segmentations_to_list() # Export list of cells (for Neurofinder)
See the quickstart guide for more details.
You can install HNCcorr directly from the Python Package Index with pip:
pip install hnccorr
On Windows you may need to install a C-compiler for Python.
The Matlab implementation was used to generate the results in the eNeuro manuscript and is now superseded by the Python implementation. The Matlab implementation is available in the matlab
folder. See the README file in the matlab
folder for instructions.
The documentation is hosted at ReadTheDocs.
The tests for HNCcorr use the pytest
package. You can execute them with the pytest
command in the main directory.