Skip to main content

Score cells for centrioles in IF data

Project description

cenfind

A command line interface to score cells for centrioles.

Introduction

cenfind is a command line interface to detect and assign centrioles in immunofluorescence images of human cells. Specifically, it orchestrates:

  • the z-max projection of the raw files;
  • the detection of centrioles;
  • the detection of the nuclei;
  • the assignment of the centrioles to the nearest nucleus.

Installation

  1. Download cenfind with:
python -m venv test_cenfind
source test_cenfind/bin/activate
pip install cenfind
pip install tensorflow
pip install -e projects/spotipy
  1. As of now, you need to install the spotipy package from the git repository https://github.com/maweigert/spotipy:
git clone git@github.com:maweigert/spotipy.git
  1. Add manually the package spotipy
pip install -e ../spotipy/
  1. Check that cenfind's programs are correctly installed by running:
squash --help

Basic usage

Before scoring the cells, you need to prepare the dataset folder. cenfind assumes a fixed folder structure. In the following we will assume that the .ome.tif files are all immediately in raw/. Each field of view is a z-stack containing 4 channels (0, 1, 2, 3). The channel 0 contains the nuclei and the channels 1-3 contains centriolar markers.

<project_name>/
└── raw/
  1. Run prepare to initialise the folder with a list of fields and output folders:
prepare /path/to/dataset 1 2 3 [--pixel_size, [--projection_suffix]]
prepare /path/to/dataset <list channels of centrioles, like 1 2 3, (0 should be the nucleus channel)>
  1. Run squash with the argument of the path to the project folder and the suffix of the raw files. projections/ is populated with the max-projections *_max.tif files.
squash path/to/dataset
  1. Run score with the arguments source and the index of the nuclei channel (usually 0 or 3).
score path model channel_nuclei channels factor
  1. Check that the predictions are satisfactory by looking at the folder outlines and at the results/scores.csv.

API

cenfind consists of two core classes: Dataset and Field. The class Dataset represents a collection of fields with identical pixel size, channels, and cell type. The class Field represents a field of view and is responsible for calling the detection procedure and for managing (storing and writing) the predictions.

Using those two objects, cenfind should

  • detect centrioles (data, model) => points,
  • extract nuclei (data, model) => contours,
  • assign centrioles to nuclei (contours, points) => pairs
  • outline centrioles and nuclei (data, points) => image
  • create composite vignettes (data) => composite_image
  • flag partial nuclei (contours, tolerance) => contours
  • compare predictions with annotation (points, points) => metrics_namespace

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

cenfind-0.9.3.tar.gz (63.6 MB view hashes)

Uploaded Source

Built Distribution

cenfind-0.9.3-py3-none-any.whl (63.6 MB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page