carmen

Data Analysis of CARMEN

https://github.com/annalischnig/carmen

Science Score: 57.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 8 DOI reference(s) in README
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.5%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Data Analysis of CARMEN

Basic Info
  • Host: GitHub
  • Owner: AnnaLischnig
  • License: mit
  • Language: Jupyter Notebook
  • Default Branch: main
  • Size: 32.8 MB
Statistics
  • Stars: 2
  • Watchers: 0
  • Forks: 0
  • Open Issues: 0
  • Releases: 1
Created 9 months ago · Last pushed 8 months ago
Metadata Files
Readme License Citation

README.md

CARMEN – Calcium Multiplexing Biosensor System

Preprint:
Anna Lischnig, Yusuf Erdoğan, Benjamin Gottschalk, et al.
A Quad-Cistronic Fluorescent Biosensor System for Real-Time Detection of Subcellular Ca²⁺ Signals.
Authorea, March 03, 2025. DOI: 10.22541/au.174098553.38904074/v1

Status: Under revision
Addgene: CARMEN will be available via Addgene pending publication.


This repository contains a Fiji macro and a set of Python scripts for processing and analysing four-channel calcium imaging data exported from Fiji (ImageJ).
The workflow is designed for the CARMEN calcium multiplexing approach, including steps for:

  • ROI-based signal extraction
  • Background subtraction
  • Data aggregation
  • Optional curve fitting for fluorescence bleaching analysis

📁 Overview of Workflow Components

1. Fiji Macro

Fiji_Makro_CARMEN_MeasureFourChannelROI.ijm
This ImageJ macro extracts mean grey values from manually selected ROIs across four imaging channels.
It saves both the ROI set and one CSV per image and channel.


2. Python Scripts

CARMEN_combine_and_backgroundsubstract_CSVs.ipynb

  • Combines and background-subtracts ROI intensity values.
  • Assumes the last ROI in each image represents background.
  • Merges four per-image CSVs (e.g. Image01_Intensity FP1.csv to FP4.csv) into one Excel file.
  • Includes both raw and background-corrected data.

CARMEN_combine_and_backgroundsubstract_CSVs_endpoint.ipynb

Two-part script:

Step 1:
Groups four per-channel CSV files (FB1 to FB4) per image and saves them as one Excel file.

Step 2:
Combines data from multiple Excel files into a single table per channel, extracts the second data row,
automatically determines background (last valid MeanX), and performs background subtraction (BS1–BS50).


CARMEN_combine_and_curvefitting_xlsmtemplate.ipynb

(or: CARMEN_combine_and_curvefitting_xlsxtemplate.ipynb)

Includes use of either CARMEN_template.xlsm (macro-enabled) or CARMEN_template.xlsx.

Step 1:
Groups four-channel CSVs by image and merges them into one Excel file per image.

Step 2:
Inserts raw data into the Excel template and maps channels to specific sheets (BFP, GFP, RFP, NIR).
Cleans up template sheets by removing trailing rows.

Step 3:
Fits exponential decay curves to ROI bleaching traces using scipy.optimize.curve_fit.
Background correction and optional outlier removal are included.


CARMEN_onset_return_oscillation.ipynb

Fully automated batch analysis of multi-channel calcium imaging data. Processes all .xlsm files in a folder and analyses each 3-channel dataset (e.g. GFP, RFP, NIR).

  • Applies Savitzky-Golay smoothing and derivative-based onset detection.
  • Calculates return-to-baseline times and response durations.
  • Detects oscillations (peaks and troughs) between onset and return.
  • Generates three plots per dataset (zoomed view, oscillations, global signal) and saves them as PNGs.
  • Saves per-dataset results (timing, durations, oscillation count) into an Excel file.
  • Logs all parameter settings to a .txt file for reproducibility.

Step 1:
Test and adjust parameters for peak detection, smoothing, and baseline return.

Step 2:
Run full batch analysis on all .xlsm files in the selected folder.


📥 Input Format

  • .csv files from Fiji with filenames like:
    Image01_Intensity FP1.csv, ..., Image01_Intensity FP4.csv
  • Each file should include one ROI per row and have the last ROI as background.
  • Templates for later steps:
    • CARMEN_template.xlsm or CARMEN_template.xlsx must be present in the specified folder.

📤 Output

  • .xlsx files per image containing:
    • Sheets: FP1–FP4 (raw)
    • Sheets: FP1bs–FP4bs (background-subtracted)
  • Combined .xlsx across multiple images, with:
    • Mean values (Mean1–Mean50)
    • Auto-selected background value
    • Background-subtracted values (BS1–BS50)
  • Optional: Excel files with fitted bleach curves starting in column DF.

📦 Requirements

  • Required libraries (can be installed via pip install -r requirements.txt):

text pandas numpy scipy matplotlib openpyxl xlwings


📚 Citation

If you use CARMEN in your research, please cite:

Anna Lischnig, Yusuf Erdoğan, Benjamin Gottschalk, et al.
A Quad-Cistronic Fluorescent Biosensor System for Real-Time Detection of Subcellular Ca²⁺ Signals.
Authorea, March 03, 2025. DOI: 10.22541/au.174098553.38904074/v1

Lischnig, A. (2025). CARMEN: Calcium Multiplexing Analysis Workflow (Version v1.1) [Computer software]. https://doi.org/10.5281/zenodo.15705614

Owner

  • Login: AnnaLischnig
  • Kind: user

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this workflow or code, please cite it as below."
title: "CARMEN: Calcium Multiplexing Analysis Workflow"
version: "v1.1"
doi: 10.5281/zenodo.15705614
date-released: 2025-06-20
url: "https://github.com/AnnaLischnig/CARMEN"
repository-code: "https://github.com/AnnaLischnig/CARMEN"
authors:
  - family-names: Lischnig
    given-names: Anna
license: MIT
type: software

GitHub Events

Total
  • Release event: 1
  • Watch event: 3
  • Push event: 12
  • Create event: 2
Last Year
  • Release event: 1
  • Watch event: 3
  • Push event: 12
  • Create event: 2