/bombcell

Automated quality control, curation and neuron classification of spike-sorted electrophysiology data

Primary LanguageMATLABGNU General Public License v3.0GPL-3.0

DOI License View bombcell on File Exchange

💣 Bombcell: find bombshell cells! 💣 bombcell

Manual curation of electrophysiology spike sorted units is slow, laborious, and hard to standardize and reproduce. Bombcell is a powerful toolbox that addresses this problem, evaluating the quality of recorded units and extracting essential electrophysiological properties. Bombcell can replace manual curation or can be used as a tool to aid manual curation. See this talk at the annual Neuropixels course about quality control.

📔 Bombcell wiki

Documentation and guides to using and troubleshooting bombcell can be found on the dedicated wiki.

🔍️ How bombcell works

Below is a flowchart of how bombcell evaluates and classifies each unit:

🏁 Quick start guide

Overview

Bombcell extracts relevant quality metrics to categorize units into four categories: single somatic units, multi-units, noise units and non-somatic units.

Take a look at bombcell_pipeline to see an example workflow and play around with our small toy dataset. You can also use the MATLAB live script gettingStarted

Installation

Bombcell requires MATLAB>=2019a.

To begin using Bombcell:

  • clone the repository and the dependencies.
  • add bombcell's and the dependancies' folders to MATLAB's path.
  • in addition, if you want to compute ephys properties, change your working directory to bombcell\+bc\+ep\+helpers in matlab and run mex -O CCGHeart.c to able to compute fast ACGs, using part of the FMAToolbox.

Dependencies

  • npy-matlab, to load .npy data in.
  • If you have z-lib compressed ephys data, compressed with mtscomp, you will need the zmat toolbox. More information about compressing ephys data here.
  • prettify-matlab, to make plots pretty.
  • MATLAB toolboxes:
    • Signal Processing Toolbox
    • Image Processing Toolbox
    • Statistics and Machine Learning Toolbox
    • Parallel Computing Toolbox

In addition we would like to acknowledge:

  • to compute fast ACGs, we use a function (CCGHeart.c) part of the FMAToolbox, and it is already included in bombcell.

🤗 Support and citing

If you find Bombcell useful in your work, we kindly request that you cite:

Julie M.J. Fabre, Enny H. van Beest, Andrew J. Peters, Matteo Carandini, & Kenneth D. Harris. (2023). Bombcell: automated curation and cell classification of spike-sorted electrophysiology data. Zenodo. https://doi.org/10.5281/zenodo.8172821

🌟 You can additionally star this repository using the top-right ⭐ button to help it gain more visibility.

📄 License

Bombcell is under the open-source copyleft GNU General Public License 3. You can run, study, share, and modify the software under the condition that you keep and do not modify the license.

📬 Contact us

If you run into any issues or if you have any suggestions, please raise a github issue or create a pull request. You can email us: juliemfabre[at]gmail[dot]com, but github issues are preferred. You can also use the Neuropixels slack workgroup.