Cala is a neural endoscope image processing tool designed for neuroscience research, with a focus on long-term massive recordings. It features a no-code approach through configuration files, making it accessible to researchers of all programming backgrounds.
- Python 3.11, 3.12, or 3.13
- Dependencies are handled through pdm
pip install cala==0.1.0
- Prepare your video files
- Create a configuration file (YAML format)
- Run the pipeline:
python main.py --visual --config cala_config.yaml
Cala uses a graph-&-state based architecture with three key components:
-
Configuration System
- Supports YAML and env-based configuration
- No-code pipeline setup
- Flexible node configuration
-
Processing Nodes
- Modular transformation units
- Managed automatically by the runner
- Connected to storage through parameter types
-
Storage System
- Automatically created and updated by the distributor
- Leverages Zarr for large-scale data storage
Schematics of the architecture can be found here.
Detailed documentation is available in three main sections:
-
User Guide: Step-by-step guide for using Cala
- Configuration file setup
- Pipeline structure
- Processing nodes
- Advanced features
-
Developer Guide: Information for extending Cala
- Adding new nodes
- Working with stores
- Best practices
-
API Reference: Available on Read the Docs
EOM 04/2025: UI first iteration complete
We welcome contributions! Please fork this repository and submit a pull request if you would like to contribute to the project. You can also open issues for bug reports, feature requests, or discussions.
https://app.codecov.io/gh/Aharoni-Lab/cala
For questions or support, please reach out to Raymond Chang at [email protected].