Skip to main content

python package for registering multimodal whole slide microscopy images

Project description

Documentation Status

Multi-modal or mono-modal whole slide image registration in a graph structure for complex registration tasks using elastix.

Features

  • Graph based approach to defining modalities and arbitrary transformation paths between associated images

  • Use of elastix (through ITKElastix) to perform registration

  • Support for linear and non-linear transformation models

  • Transform associated data (masks, shape data) along the same path as the images.

  • Supports images converted to OME-TIFF using bioformats2raw -> raw2ometiff pipeline

  • All registered images exported as pyramidal OME-TIFF or OME-zarr that can be viewed in software such as Vitessce , vizarr, QuPath, OMERO or any platform that supports these formats.

  • All transforms for complex registration paths are internally composited and only 1 interpolation step is performed, avoiding accumulation of interpolation error from many registrations

  • Shape data (polygons, point sets, etc.) in GeoJSON format (future portable format for QuPath detection/annotation data) can be imported and transformations applied producing a modified GeoJSON

  • Some support for reading native WSI formats: currently reads .czi and .scn but could be expanded to other formats supported by python package tifffile

git======= History =======

0.0.2 (2021)

  • First release on PyPI.

0.2.1 (2021-04-14)

  • add RegImage sub-classes for different file types
    • TiffFileRegImage (.scn, .ndpi,.tiff,.tif) : uses dask + zarr to do memory-efficient computation of necessary data for registration / transformation

    • CziRegImage (.czi) : Carl Zeiss image format, can perform read-time pre-processing like RGB -> greyscale or selection of individual channels to limit memory footprint

    • OmeTiffRegImage (.ome.tiff,ome.tif): uses TiffFile to read images and parses OME metadata to get interleaved RGB information

    • MergeRegImage (meta): used to transform multiple images’ channels to a single OME-TIFF after registration if they output to the same size and data type (i.e. for cyclic IF)

    • NpRegImage (np.ndarray): Supports adding a registration image from a numpy array

    • SitkRegImage (everything else): uses SimpleITK to read images as a last resort. Will read entire image into memory!

  • support masks for registration
    • Masks can be used in elastix to define pixels used in metric calculation

    • add ability to automatically crop images based on associated masks’s bounding box (can be useful if image dimensions differ greatly)

  • use RegTransform class to manage transformations

0.3.0 (2021-09-22)

  • add “ome.tiff-bytile” writer to write transformed images tile-by-tile

  • unify data reading from tiffs to use dask

  • numerous improvements, bug fixes, and additional tests

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

wsireg-0.3.0.tar.gz (59.4 kB view details)

Uploaded Source

Built Distribution

wsireg-0.3.0-py2.py3-none-any.whl (64.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file wsireg-0.3.0.tar.gz.

File metadata

  • Download URL: wsireg-0.3.0.tar.gz
  • Upload date:
  • Size: 59.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.10

File hashes

Hashes for wsireg-0.3.0.tar.gz
Algorithm Hash digest
SHA256 ef5d53d3066fda9a847fe40bd642b5c5f3a82f516631d5a9f28739e65e92d08c
MD5 4eb08382e78905ca04b22ba13899c6ed
BLAKE2b-256 a8604113f3f01d8abdbc3af6e860752ce018c019e10bea55263ba73d0fd369fb

See more details on using hashes here.

File details

Details for the file wsireg-0.3.0-py2.py3-none-any.whl.

File metadata

  • Download URL: wsireg-0.3.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 64.3 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.5.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.1 CPython/3.8.10

File hashes

Hashes for wsireg-0.3.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e86b70b054329c1fcafe4b80170a505c2df6f48a038b190abdf0ddae1dc6b185
MD5 5475f305f59cb0842d40bcb3867ca45c
BLAKE2b-256 8cccccbd5d427ab3dd62d21f0d7dd48bc50e9a1f3c1e4b8dfd962c4dfc7bd6b2

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