Skip to main content

Whole slide image registration using elastix.

Project description

image2image-reg

License PyPI Python Version CI codecov

Whole slide image registration using elastix and/or Valis-WSI.

Overview

image2image-reg is a library for whole-slide image registration. It provides a command-line interface for performing registration, transformation and evaluation of whole-slide image registrations. The library is inspired by wsireg and valis. In fact, the registration workflow is a complete rewrite of the wsireg library to provide more flexibility and control over the registration process.

Differences from wsireg

  • [DONE] Registrations are organized into projects. Project is a collection of configuration, logs, visualisations and images. This should provide a more structured way of organizing your images and not cluttering the working directory.
  • [WIP] Registrations can be initialized with affine matrix (to get a good starting point) - this will allow for faster registration and hopefully better results.
  • [WIP] Registrations can be focused on specific region of interest (mask) - while it's possible to do this in wsireg, it's not as straightforward as it should be.
  • [DONE] Better support for point and GeoJSON data.
  • [DONE] Better CLI interface - more structured and easier to use.
  • [DONE] Better logging - more informative and easier to debug.
  • [DONE] Reusable registrations - since all registration data is contained within the project, it's much easier to re-run certain tasks (such as export images) without having to re-run the registration process.

Planned features:

  • [WIP] Better support for Valis registrations.
  • [WIP] Better support for masks.
  • Add better measures and means of testing effectiveness of registration.
  • Add better multi-processing support.
  • Add 3D module for elastiX registrations.

Getting started

The library provides a command-line interface which can be invoked:

i2reg --help

Will generate output like this:

Usage: i2reg [OPTIONS] COMMAND1 [ARGS]... [COMMAND2 [ARGS]...]...

  Launch registration app.

Options:
  --version      Show the version and exit.
  --dev          Flag to indicate that CLI should run in development mode and catch all errors.
  --no_color     Flag to disable colored logs (essential when logging to file).
  -q, --quiet    Minimal output - only errors and exceptions will be shown.
  --debug        Maximum output - all messages will be shown.
  -v, --verbose  Verbose output. This is additive flag so `-vvv` will print `INFO` messages and -vvvv will print
                 `DEBUG` information.
  --log FILE     Write logs to file (specify log path).
  -h, --help     Show this message and exit.

Registration:
  elastix       Elastix whole-slide image registration.
  valis         Valis registration.
  simple-valis  Valis registration.

Utility:
  convert    Convert images to pyramidal OME-TIFF or OME-Zarr.
  merge      Export images.
  transform  Transform command.

Contributing

Contributions are always welcome. Please feel free to submit PRs with new features, bug fixes, or documentation improvements.

git clone https://github.com/vandeplaslab/image2image-reg.git

uv sync --group dev
uv run pytest

The project depends on image2image-io, which can pull geospatial packages such as rasterio. If your platform cannot use a prebuilt wheel, install GDAL development headers first so gdal-config is available before syncing dependencies.

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

image2image_reg-0.3.2.tar.gz (180.7 kB view details)

Uploaded Source

Built Distribution

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

image2image_reg-0.3.2-py3-none-any.whl (166.2 kB view details)

Uploaded Python 3

File details

Details for the file image2image_reg-0.3.2.tar.gz.

File metadata

  • Download URL: image2image_reg-0.3.2.tar.gz
  • Upload date:
  • Size: 180.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for image2image_reg-0.3.2.tar.gz
Algorithm Hash digest
SHA256 1195b1ef409636b95fd3a412bc63ce6abd6bd19cdb47e5f37a9f0c0ea6d77529
MD5 d0be96f233858d063fcb626a5e95d750
BLAKE2b-256 515f090b537fd43e871d2b1c0905b3cbccb59e31bce3bcab5c0c6f1e8cc44828

See more details on using hashes here.

File details

Details for the file image2image_reg-0.3.2-py3-none-any.whl.

File metadata

File hashes

Hashes for image2image_reg-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 859cf2b0415e447255409a1d3a97435d18332552df42ab8062b1236a2163840d
MD5 273e6e2cb583266835b747506bc938b2
BLAKE2b-256 b6ea5091df3430b60de5a29d0dbec3c1bec74bfe4beaedb5a9052a720f47f501

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