/HNCcorr

HNCcorr algorithm for neuron identification in calcium imaging datasets.

Primary LanguagePythonOtherNOASSERTION

HNCcorr

Current version Documentation Travis-CI status

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.

Example (Python)

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.

Installation Instructions for Python 3

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.

Installation Instructions for Matlab

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.

Documentation

The documentation is hosted at ReadTheDocs.

Tests

The tests for HNCcorr use the pytest package. You can execute them with the pytest command in the main directory.