Skip to main content

DOI PyPI Python versions Downloads License

cytoscan

Cell migration analysis for microfluidic ATPS channels. Detects cells, channel walls, and the fluid interface from brightfield + fluorescent microscopy frames; produces per-cell physical-coordinate, distance, and category data ready for downstream analysis in Excel / MATLAB / Python.

Install

pip install cytoscan

Quickstart

cytoscan run my_experiment            # scaffold dir + config, then run the full pipeline
cytoscan gui                          # launch the streamlit GUI (pip install 'cytoscan[gui]')
cytoscan version                      # version + dependency info

On the first invocation against a fresh directory, run will:

  1. Create my_experiment/ if it doesn't exist
  2. Drop a default config.yaml at the root
  3. Create input/{brightfield,fluorescent,mixed}/ and sort any loose .tif files at the root into the correct category by filename pattern
  4. Run the full pipeline if the inputs are present, otherwise exit with a message telling you to drop frames in and rerun

Outputs

All results land in my_experiment/output/:

  • cells.csv — one row per detected cell: pixel + µm coordinates, distance to interface, side (peg/dex), category (int / int_peg / int_dex / outside)
  • frames.csv — one row per frame: cell counts by category, interface geometry summary, validity flags
  • interface.csv — long-format interface samples for downstream curve analysis
  • summary.txt — human-readable run summary
  • visuals/*.png — per-frame overlays of cells, channel walls, and interface

Logging and verbosity

Three global flags, usable in any position (before or after the subcommand):

  • -v, --verbose — DEBUG output: per-frame diagnostics and algorithm internals
  • -q, --quiet — WARNING-and-up only; silences INFO progress messages
  • --log-file PATH — also write a full DEBUG-level, timestamped log to PATH (uncolored)

Configuration

Every run is driven by <experiment>/config.yaml:

Required:

  • research — pixel_size_um, channel_width_um, ... (defines the physical experiment)

Optional (defaults set by developer):

  • cell_detection — threshold (fluorescent cell detection)
  • channel_detection — wall and interface detection parameters
  • flagging — quality-gate thresholds (anchor strength, signal ratio, residual MAD)
  • analysis — interface_band_um, transition_band_um (categorization bands)
  • export_visuals, export_data — output toggles

Citing

If cytoscan helps your research, please cite the archived release:

McKee, M. (2026). cytoscan: Cell migration analysis for microfluidic ATPS channels. Zenodo. https://doi.org/10.5281/zenodo.20034555

A CITATION.cff is included for tools like Zotero and Mendeley.

Acknowledgements

Built for the Sun Lab at UTSA by Mateo McKee.

Metadata

Release files for cytoscan 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cytoscan 0.2.1
File Size Uploaded
cytoscan-0.2.1.tar.gz 40.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cytoscan 0.2.1
File Interpreter ABI Platform
cytoscan-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 82.7 kB

Release files / cytoscan-0.2.1.tar.gz

Download URL cytoscan-0.2.1.tar.gz
Size 40.1 kB
Tags Source
SHA-256 checksum
How to use checksums
a4592e1f0340f08dcf8fb970c18e412d17fddef169b16b43e8c0772c75854151
BLAKE2b-256 checksum
How to use checksums
f6e4700309610123a296e3e812fcd8738ff185ea1214989f929871df6036711a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 29, 2026.

Transparency log

Release files / cytoscan-0.2.1-py3-none-any.whl

Download URL cytoscan-0.2.1-py3-none-any.whl
Size 42.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e9012d09a8289dbf522933baa50bacc0695ff84bfaf5fa742d198e7840bc9420
BLAKE2b-256 checksum
How to use checksums
4b41a40ff5d319027dc0c8dac29982d3f45e21a0f93c89a592e29838f71468a7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 29, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page