Skip to main content

A deep learning oriented microscopy image simulation package

Project description

A comprehensive deep learning framework for digital microscopy.

PyPI version PyPI version Python version

Installation • Examples • Basics • Cite us • License

We provide tools to create physical simulations of optical systems, to generate and train neural network models, and to analyze experimental data.

Installation

DeepTrack 2.1 requires at least python 3.6.

To install DeepTrack 2.1, open a terminal or command prompt and run:

pip install deeptrack

If you have a very recent version of python, you may need to install numpy before DeepTrack. This is a known issue with scikit-image.

Updating to 2.1 from 2.0

If you are already using DeepTrack 2.0 (pypi version 0.x.x), updating to DeepTrack 2.1 (pypi version 1.x.x) is painless. If you have followed deprecation warnings, no change to your code is needed. There are two breaking changes:

  • The deprecated operator + to chain features has been removed. It is now only possible using the >> operator.
  • The deprecated operator ** to duplicate a feature has been removed. It is now only possible using the ^ operator.

If you notice any other changes in behavior, please report it to us in the issues tab.

Examples of applications using DeepTrack

DeepTrack is a general purpose deep learning framework for microscopy, meaning you can use it for any task you like. Here, we show some common applications!


Single particle tracking


Training a CNN-based single particle tracker using simulated data
Unsupervised training of a single particle tracker using LodeSTAR


Multi-particle tracking


Training LodeSTAR to detect multiple cells from a single image
Training a UNet-based multi-particle tracker using simulated data


Particle tracing


Training MAGIK to trace migrating cells

Basics to learn DeepTrack 2.1

Everybody learns in different ways! Depending on your preferences, and what you want to do with DeepTrack, you may want to check out one or more of these resources.

Getting-started guides

We have two separate series of notebooks which aims to teach you all you need to know to use DeepTrack to its fullest. The first is a set of six notebooks with a focus on the application.

  1. deeptrack_introduction_tutorial gives an overview of how to use DeepTrack 2.1.
  2. tracking_particle_cnn_tutorial demonstrates how to track a point particle with a convolutional neural network (CNN).
  3. tracking_particle_cnn_tutorial demonstrates how to track multiple particles using a U-net.
  4. characterizing_aberrations_tutorial demonstrates how to add and characterize aberrations of an optical device.
  5. distinguishing_particles_in_brightfield_tutorial demonstrates how to use a U-net to track and distinguish particles of different sizes in brightfield microscopy.
  6. analyzing_video_tutorial demonstrates how to create videos and how to train a neural network to analyze them.

The second series focuses on individual topics, introducing them in a natural order.

  1. Introducing how to create simulation pipelines and train models.
  2. Demonstrating data generators.
  3. Demonstrating how to customize models using layer-blocks.

DeepTrack 2.1 in action

Additionally, we have seven more case studies which are less documented, but gives additional insight in how to use DeepTrack with real datasets

  1. MNIST classifies handwritted digits.
  2. single particle tracking tracks experimentally captured videos of a single particle. (Requires opencv-python compiled with ffmpeg to open and read a video.)
  3. single particle sizing extracts the radius and refractive index of particles.
  4. multi-particle tracking detects quantum dots in a low SNR image.
  5. 3-dimensional tracking tracks particles in three dimensions.
  6. cell counting counts the number of cells in fluorescence images.
  7. GAN image generation uses a GAN to create cell image from masks.

Model-specific examples

We also have examples that are specific for certain models. This includes

  • LodeSTAR for label-free particle tracking.
  • MAGIK for graph-based particle linking and trace characterization.

Documentation

The detailed documentation of DeepTrack 2.1 is available at the following link: https://softmatterlab.github.io/DeepTrack-2.0/deeptrack.html

Video Tutorials

Videos are currently being updated to match with the current version of DeepTrack.

Cite us!

If you use DeepTrack 2.1 in your project, please cite us here:

Benjamin Midtvedt, Saga Helgadottir, Aykut Argun, Jesús Pineda, Daniel Midtvedt, Giovanni Volpe.
"Quantitative Digital Microscopy with Deep Learning."
Applied Physics Reviews 8 (2021), 011310.
https://doi.org/10.1063/5.0034891

See also:

https://arxiv.org/abs/2202.06355:

Jesús Pineda, Benjamin Midtvedt, Harshith Bachimanchi, Sergio Noé, Daniel  Midtvedt, Giovanni Volpe,1 and  Carlo  Manzo
"Geometric deep learning reveals the spatiotemporal fingerprint ofmicroscopic motion."
arXiv 2202.06355 (2022).

https://doi.org/10.1364/OPTICA.6.000506:

Saga Helgadottir, Aykut Argun, and Giovanni Volpe.
"Digital video microscopy enhanced by deep learning."
Optica 6.4 (2019): 506-513.

https://github.com/softmatterlab/DeepTrack.git:

Saga Helgadottir, Aykut Argun, and Giovanni Volpe.
"DeepTrack." (2019)

Funding

This work was supported by the ERC Starting Grant ComplexSwimmers (Grant No. 677511), the ERC Starting Grant MAPEI (101001267), and the Knut and Alice Wallenberg Foundation.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

deeptrack-1.5.0a2.tar.gz (148.2 kB view details)

Uploaded Source

Built Distribution

deeptrack-1.5.0a2-py3-none-any.whl (181.9 kB view details)

Uploaded Python 3

File details

Details for the file deeptrack-1.5.0a2.tar.gz.

File metadata

  • Download URL: deeptrack-1.5.0a2.tar.gz
  • Upload date:
  • Size: 148.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.5

File hashes

Hashes for deeptrack-1.5.0a2.tar.gz
Algorithm Hash digest
SHA256 3f7f1dc345af2b481567e62f73cbf4379ef1efbde96c6e223ef08153caa7b62c
MD5 804d2c643e02334579f6eee8ddd3d4e5
BLAKE2b-256 62c6f14cb602fa33e501bc17d463650f6a30aa5b3cfa313e464e21cdf92f5c0c

See more details on using hashes here.

File details

Details for the file deeptrack-1.5.0a2-py3-none-any.whl.

File metadata

  • Download URL: deeptrack-1.5.0a2-py3-none-any.whl
  • Upload date:
  • Size: 181.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.5

File hashes

Hashes for deeptrack-1.5.0a2-py3-none-any.whl
Algorithm Hash digest
SHA256 da8e22d34aeb3da90ac5289e6d6612e68b3042bfc7d75c98003f80a2e81edd5a
MD5 5704cc53329c11fb0fbcbab51fb5cb87
BLAKE2b-256 51760c0618c181c1346f0cdbbcb548ffc68d0ad2e08b1dd04bc92695b58f51e3

See more details on using hashes here.

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