Skip to main content

Interferometric scattering microscopy with Python

Project description

PiSCAT: An open source package in Python for interferometric Scattering Microscopy (Homepage)

iSCAT microscopy was introduced about two decades ago (1) and demonstrated to be the method of choice for label-free imaging and tracking of matter at nanometric scale (2), with a wide range of applications such as detection of gold nanoparticles, single dye molecules, viruses, and small proteins (3). The image of a nanoparticle in iSCAT microscopy is formed via the interference between the light scattered from the particle and a reference field which is a part of the incident laser light. The photostable scattering signal from nanoparticles allows for very long measurements at high speeds, all the way up to megahertz, limited only by the available technology, e.g. of cameras or scanners. Recording fast and long videos however, produces a large volume of data which needs to undergo several stages of computationally demanding analysis. We introduce PiSCAT as a python-based package for the analysis of variuos iSCAT measurements and related experiments. PiSCAT aims to facilitate high-performance quantitative analysis of big data and provide a generally open-access platform to enable and speed up the research in iSCAT and related communities. To facilitate the use of PiSCAT, we offer tutorials with live-code features in which we present state-of-the-art algorithms for iSCAT microscopy. These cover important educative materials in jupyter notebooks, supported with a web-based documentation page.

In this first release, we provide analysis tools for the sensitive detection of single unlabelled proteins via wide-field iSCAT microscopy. Proteins are only a few nanometers in size with a molecular weight of a few to several hundred kDa. They were detected via iSCAT already in 2014 for small proteins down to the Bovines Serumalbumin (BSA) protein with a mass of 65 kDa (4). iSCAT microscopy is since employed in several more advanced applications such as real-time investigation of cellular secretion (5,6) and quantitative mass spectrometry of single proteins (7).

Documentation

The documentation webpage of PiSCAT modules can be found here.

The outputs from most of the PiSCAT localization and tracking methods are of Panda data frame type. This data structure has the ability to be easily appended/extended with more information based on different levels of analysis. The data structures containing the results of localization and tracking routines can be saved as csv, mat and HDF5 files. This helps users to work with the analyzed information using different softwares namely, MATLAB and Microsoft Excel. HDF5 is a well-known format that is readable in different programming languages and supports large, complex, heterogeneous data. HDF5 uses a "file directory" like structure that allows users to organize data within the file in structured ways and to embed metadata as well, making it self-describing.

Installation

From PyPi

To install PiSCAT using PyPi, enter the following command in the console:

pip install piscat

Local installation of PiSCAT

Clone/download this repository and unzip it. In the project directory enter the following command

pip install -e .

Running PiSCAT GUI

Once the installation is done and the python environment is activated, enter the following command in the console:

python -m piscat

Running PiSCAT Tutorials

Once the installation is done and the python environment is activated, enter the following command in the console:

python -m piscat.Tutorials

Citing PiSCAT

TODO

Testing

To run the tests, please activate the PiSCAT virtual environment. In the project directory, in the console, enter the following command:

python setup.py test

Installation of PiSCAT virtual environment in the PyCharm IDE:

  1. Follow the hyper links and the install Python 3.8 and PyCharm.
  2. Create a virtual environment based on the instructions provided here.
  3. Follow this link to select PiSCAT venv as the interpreter, to install the setup.py file and then to run a setup.py task.

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

piscat-0.1.16.tar.gz (1.8 MB view details)

Uploaded Source

Built Distribution

piscat-0.1.16-py3-none-any.whl (1.9 MB view details)

Uploaded Python 3

File details

Details for the file piscat-0.1.16.tar.gz.

File metadata

  • Download URL: piscat-0.1.16.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.5

File hashes

Hashes for piscat-0.1.16.tar.gz
Algorithm Hash digest
SHA256 46a6470558e3011cb170ce4ef7270354e5aaec4cf459b243863b272dbf958711
MD5 b6297509a548dee1eb19d97186bbbc98
BLAKE2b-256 be726c3ee4e9f00c9192aab9ba4269470cac8f026bd4cfd19b04237a9d4c008f

See more details on using hashes here.

File details

Details for the file piscat-0.1.16-py3-none-any.whl.

File metadata

  • Download URL: piscat-0.1.16-py3-none-any.whl
  • Upload date:
  • Size: 1.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.5

File hashes

Hashes for piscat-0.1.16-py3-none-any.whl
Algorithm Hash digest
SHA256 234e38ecde78b8be6ad2e2d3c188b7b12c3dd6cc3c4b92aa6cd3a5ca3896d430
MD5 393c7fb2c51fd81895c5ee94fc2259c3
BLAKE2b-256 c471ade7ffe0932a5ca1cc68ef7b64d27a853dab261780d8535a958126e98c76

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