A napari plugin for measuring ciliary beat frequency from high-speed microscopy videos.
Project description
napari-cilia-assistant
napari-cilia-assistant is a napari plugin for measuring ciliary beat frequency (CBF) from high-speed AVI microscopy videos.
Install
Install conda-forge first: https://conda-forge.org/download/
Then open a terminal and run:
conda create -n cilia-assistant python=3.11 -y
conda activate cilia-assistant
conda install -c conda-forge napari pyqt git -y
git clone https://github.com/wulinteousa2-hash/napari-cilia-assistant.git
cd napari-cilia-assistant
pip install -e .
napari
In napari, open Plugins > Cilia Assistant.
What It Does
- Opens one AVI video through the napari widget.
- Reads video metadata such as FPS, frame count, size, and duration.
- Loads AVI data as a grayscale
T, Y, Ximage stack. - Lets the user draw/edit a rectangular ROI over active cilia.
- Measures ROI mean-intensity change over time.
- Estimates CBF using FFT and peak-interval checks.
- Creates a kymograph layer from the selected ROI.
- Exports the last ROI signal and FFT spectrum as CSV files.
- Copies or saves the current measurement graph.
Basic Workflow
- Open napari.
- Open
Plugins > Cilia Assistant. - Click Open AVI.
- Confirm the FPS. Correct it manually if the AVI metadata are wrong.
- Click Create / Edit ROI Rectangle.
- Move/resize the ROI over visibly beating cilia.
- Set the expected CBF search range, for example
3-25 Hz. - Click Measure CBF from Selected ROI.
- Review the trace, FFT peak, peak-interval result, and kymograph.
- Export the CSV files if the result is usable.
Output
- FFT CBF: dominant frequency in the selected search range.
- Peak-interval CBF: independent check based on repeated peaks in the ROI signal.
- Kymograph: visual audit of periodic motion in the ROI.
- CSV export: raw ROI time-intensity signal and FFT power spectrum.
Good Measurement Practice
- Use videos with known FPS.
- Keep temperature, medium, and timing consistent across samples.
- Place the ROI on active cilia, not static tissue, debris, or whole-frame motion.
- Use multiple ROIs/videos and biological replicates for group comparisons.
- Treat whole-frame motion frequency as exploratory only.
Limitations
This plugin measures beat frequency, not full ciliary waveform or clinical diagnostic beat pattern. A sample can have a normal CBF but abnormal waveform or poor flow generation. Always review the raw video and kymograph before interpreting the number.
References
- Chilvers MA, O'Callaghan C. Analysis of ciliary beat pattern and beat frequency using digital high speed imaging: comparison with the photomultiplier and photodiode methods. Thorax. 2000;55:314-317. doi:10.1136/thorax.55.4.314
- Jackson CL, Bottier M. Methods for the assessment of human airway ciliary function. European Respiratory Journal. 2022;60:2102300. doi:10.1183/13993003.02300-2021
- Francis R. A Simple Method for Imaging and Quantifying Respiratory Cilia Motility in Mouse Models. Methods and Protocols. 2025;8:113. doi:10.3390/mps8050113
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file napari_cilia_assistant-1.0.2.tar.gz.
File metadata
- Download URL: napari_cilia_assistant-1.0.2.tar.gz
- Upload date:
- Size: 20.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6288f9662b1f0dc1c23dd37791cc9be7c14b9aa778248beb9e5bc72739368ae3
|
|
| MD5 |
85a51f6057718fb4d5b0fd8a33cf68df
|
|
| BLAKE2b-256 |
c258161827b3b5f13076a30b0c33eee81cec270861bb5acbfda8acec4f8d8f38
|
File details
Details for the file napari_cilia_assistant-1.0.2-py3-none-any.whl.
File metadata
- Download URL: napari_cilia_assistant-1.0.2-py3-none-any.whl
- Upload date:
- Size: 19.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b078225d9de6f990e56194a81ecb1d80865aa8a43d47b2adae39126b3d811273
|
|
| MD5 |
0f5e153ecc13997fa2573a49f6a6c214
|
|
| BLAKE2b-256 |
bad7f5435ee68abbea67ad781db5465dff40f763d848d91e58893cd00c87aba5
|