Skip to main content

DISCCo: Differentiable Image Simulation of the Cell Cortex

CC BY 4.0 Black pre-commit PyPi version

Quantification of membrane and cytoplasmic concentrations based on differentiable simulation of cell cortex images. Designed for use on images of PAR proteins in C. elegans zygotes.

This extends on the segmentation and straightening algorithm described here, and uses straightened cortices obtained by that method as input.

Installation

pip install discco

Methods

Our method is adapted from previous methods that model intensity profiles perpendicular to the membrane as the sum of distinct cytoplasmic and membrane signal components (Gross et al., 2018; Reich et al., 2019). Typically these two components are modelled as an error-function and Gaussian function respectively, representing the expected shape of a step and a point convolved by a Gaussian point spread function (PSF) in one dimension. Using this model, one can generate simulated images of straightened cortices as the sum of two tensor products which represent distinct membrane and cytoplasmic signal contributions (Figure 1):

sim = ccyt ⊗ scyt + cmem ⊗ smem

where ccyt and cmem are cytoplasmic and membrane concentration profiles and scyt and smem are, by default, error-function and Gaussian profiles. We impose the constraint that the cytoplasmic concentration ccyt is uniform throughout each image.

Figure 1: Schematic of differentiable model for image quantification


Using a differentiable programming paradigm, the input parameters to the model can be iteratively adjusted by backpropagation to minimize the mean squared error between simulated images and ground truth images. As well as allowing the image-specific concentration parameters (ccyt and cmem) to be learnt, this procedure also allows the global signal profiles scyt and smem to be optimised and take any arbitrary form, allowing the model to generalise beyond a simple Gaussian PSF model and account for complex sample-specific light-scattering behaviors. In practice we find that this additional flexibility is necessary to minimise model bias and prevent underfitting:


Figure 2: Example of ground truth and simulated images. Naive model refers to a mechanistic optical model with a Guassian PSF. Gaussian noise has been added to simulated images to allow for closer visual comparison to the ground truth image.


An additional step, described in the paper, puts the cytoplasmic and membrane concentrations outputted by the model into biologically meaningful units, which has great utility for mathematical models.

For full details of the model and training procedures, see the paper:

Optimized dimerization of the PAR-2 RING domain drives cooperative and selective membrane recruitment for robust feedback-driven cell polarization (preprint)

And the accompanying GitHub repository.

Limitations:

  • Relies on a few assumptions about the system (uniform cytoplasmic concentration, rotational symmetry)
  • Requires several calibrations with a few different samples

License

This work is licensed under a Creative Commons Attribution 4.0 International License.

CC BY 4.0

Metadata

Release files for discco 0.2.7

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

Source distribution (sdist)

Source distribution for discco 0.2.7
File Size Uploaded
discco-0.2.7.tar.gz 22.8 kB Details

Built distribution (wheel)

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

Total release size: 42.8 kB

Release files / discco-0.2.7.tar.gz

Download URL discco-0.2.7.tar.gz
Size 22.8 kB
Tags Source
SHA-256 checksum
How to use checksums
76286422c7f67ca67fa14f9a2aa6c1bcbb5ca2209cc006c564b9696440dd6329
BLAKE2b-256 checksum
How to use checksums
9f99bb1f9805d0d491f524e01b43fe69a8b67e1d415d15064d10908e2b2f6b20
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.18

Release files / discco-0.2.7-py3-none-any.whl

Download URL discco-0.2.7-py3-none-any.whl
Size 20.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ba694a1e04c421f3efa5f3d49fe79bd246c373e7e7e0f9f0be763f67e94af9f9
BLAKE2b-256 checksum
How to use checksums
338694e22ae7290bc177122e5a5a00514e8583b05b18311d8816d2f10bd8c028
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.18

Release history Release notifications | RSS feed

This release

0.2.7 This release

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

1 release file

0.2.3

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.2.0

1 release file

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