Skip to main content

An automatic deep learning algorithm for spot detection in fluorescence microscopy images.

Project description

Piscis

Piscis

piscis is an automatic deep learning algorithm for spot detection, written in Python using the JAX and Flax libraries. It is named after the Latin word for fish, as it was designed specifically for microscopy images generated by RNA fluorescence in situ hybridization (FISH). However, we have found it to be useful for other imaging methods, such as immunofluorescence (IF) and FISH-based spatial transcriptomics. To learn more about piscis, please read our preprint.

This Python package allows users to apply pre-trained models from Hugging Face to both single plane images and z-stacks or to train new models using custom datasets. It provides a simple API for both training and inference that can be used in traditional Python scripts or Jupyter notebook environments such as on Google Colab. It also provides a command line interface for those who prefer the terminal. For a user-friendly graphical user interface, we have implemented piscis as a Docker image for NimbusImage, a cloud platform for biological image analysis enabling researchers to interactively visualize their data while leveraging state-of-the-art machine learning algorithms.

For more information, please refer to the comprehensive documentation available at https://piscis.netlify.app.

Examples

Examples

Installation

Install piscis from PyPI with pip.

pip install piscis

By default, this will install the CPU version of JAX. If you would like to run or train piscis on a GPU or TPU, follow JAX's instructions.

Usage

If you want to use piscis with its Python API, check out the inference example and training example notebooks.

If you want to use piscis with its command line interface, run the following commands.

# Run Piscis.
piscis predict INPUT_PATH OUTPUT_PATH [OPTIONS]

# Train Piscis.
piscis train MODEL_NAME DATASET_PATH [OPTIONS]

To see the full list of options, run piscis predict --help or piscis train --help.

Citation

If you use piscis in your research, please cite our preprint.

Niu, Z., O’Farrell, A., Li, J., Reffsin, S., Jain, N., Dardani, I., Goyal, Y., & Raj, A. (2024). Piscis: A novel loss estimator of the F1 score enables accurate spot detection in fluorescence microscopy images via deep learning. bioRxiv. https://doi.org/10.1101/2024.01.31.578123

@article{Niu2024-Piscis,
    title={Piscis: A novel loss estimator of the F1 score enables accurate spot detection in fluorescence microscopy images via deep learning},
    author={Niu, Zijian and O’Farrell, Aoife and Li, Jingxin and Reffsin, Sam and Jain, Naveen and Dardani, Ian and Goyal, Yogesh and Raj, Arjun},
    year=2024,
    journal="bioRxiv",
    DOI={10.1101/2024.01.31.578123}
}

License

piscis is licensed under the MIT License. The copyright and permission notices found in the LICENSE file shall be included in all copies or substantial portions of the Software.

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

piscis-0.2.7.tar.gz (36.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

piscis-0.2.7-py3-none-any.whl (43.8 kB view details)

Uploaded Python 3

File details

Details for the file piscis-0.2.7.tar.gz.

File metadata

  • Download URL: piscis-0.2.7.tar.gz
  • Upload date:
  • Size: 36.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for piscis-0.2.7.tar.gz
Algorithm Hash digest
SHA256 c8d9570e1a32ed2478d9e4a07cc578822df4beac09cf2f9a799b3865c5b8ce16
MD5 0117fccf3af4ea59e320c6bd0bd8635d
BLAKE2b-256 d60560707181f65393ba9a91a1f74d27e09d8969dbaa446d1e6a56fa672ddb63

See more details on using hashes here.

File details

Details for the file piscis-0.2.7-py3-none-any.whl.

File metadata

  • Download URL: piscis-0.2.7-py3-none-any.whl
  • Upload date:
  • Size: 43.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for piscis-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 0ba46df4f1eadf03b13cef6b8cf9ddd58070d975eae8725cb888cea9e3610814
MD5 ab3e013c25afb40bd24fb201cabd652e
BLAKE2b-256 548c8c41b8a34484bc552b4c68fbafff183deb6a8b775c85259d547571544730

See more details on using hashes here.

Supported by

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