Skip to main content

Python modules to work with large, multiresolution images.

Project description

Large Image

Build Status codecov.io License doi-badge pypi-badge

Python modules to work with large, multiresolution images.

Large Image is developed and maintained by the Data & Analytics group at Kitware, Inc. for processing large geospatial and medical images. This provides the backbone for several of our image analysis platforms including Resonant GeoData, HistomicsUI, and the Digital Slide Archive.

Highlights

  • Tile serving made easy

  • Supports a wide variety of geospatial and medical image formats

  • Convert to tiled Cloud Optimized (Geo)Tiffs (also known as pyramidal tiffs)

  • Python methods for retiling or accessing regions of images efficiently

Quick Installation via pip

In addition to installing the large-image package, you’ll need at least one tile source (a large-image-source-xxx package). You can install everything from the main project with one of these commands:

  • Install all tile sources and all Girder plugins on linux: pip install large-image[all] girder-large-image-annotation[tasks] --find-links https://girder.github.io/large_image_wheels

  • Install all tile sources on linux: pip install large-image[all] --find-links https://girder.github.io/large_image_wheels

Modules

Large Image consists of several Python modules designed to work together. These include:

  • large-image: The core module. You can specify extras_require of the name of any tile source included with this repository, sources for all of the tile sources in the repository, memcached for using memcached for tile caching, or all for all of the tile sources and memcached.

  • large-image-converter: A utility for using pyvips and other libraries to convert images into pyramidal tiff files that can be read efficiently by large_image.

  • Tile sources:

    • large-image-source-tiff: A tile source for reading pyramidal tiff files in common compression formats.

    • large-image-source-openslide: A tile source using the OpenSlide library. This works with svs, ndpi, Mirax, tiff, vms, and other file formats.

    • large-image-source-ometiff: A tile source using the tiff library that can handle some multi-frame OMETiff files.

    • large-image-source-pil: A tile source for small images via the Python Imaging Library (Pillow).

    • large-image-source-gdal: A tile source for reading geotiff files via GDAL. This handles source data with more complex transforms than the mapnik tile source.

    • large-image-source-mapnik: A tile source for reading geotiff and netcdf files via Mapnik and GDAL. This handles more vector issues than the gdal tile source.

    • large-image-source-openjpeg: A tile source using the Glymur library to read jp2 (JPEG 2000) files.

    • large-image-source-nd2: A tile source for reading nd2 (NIS Element) images.

    • large-image-source-bioformats: A tile source for reading any file handled by the Java Bioformats library.

    • large-image-source-deepzoom: A tile source for reading Deepzoom tiles.

    • large-image-source-test: A tile source that generates test tiles, including a simple fractal pattern. Useful for testing extreme zoom levels.

    • large-image-source-dummy: A tile source that does nothing.

    Most tile sources can be used with girder-large-image.

  • As a Girder plugin:

    • girder-large-image: Large Image as a Girder 3.x plugin. You can specify extras_require of tasks to install a Girder Worker task that can convert otherwise unreadable images to pyramidal tiff files.

    • girder-large-image-annotation: Annotations for large images as a Girder 3.x plugin.

    • large-image-tasks: A utility for running the converter via Girder Worker.

Developer Installation

To install all packages from source, clone the repository:

git clone https://github.com/girder/large_image.git
cd large_image

Install all packages and dependencies:

pip install -e . -r requirements-dev.txt

If you aren’t developing with Girder 3, you can skip installing those components. Use requirements-dev-core.txt instead of requirements-dev.txt:

pip install -e . -r requirements-dev-core.txt

Tile source prerequisites

Many tile sources have complex prerequisites. These can be installed directly using your system’s package manager or from some prebuilt Python wheels for Linux. The prebuilt wheels are not official packages, but they can be used by instructing pip to use them by preference:

pip install -e . -r requirements-dev.txt --find-links https://girder.github.io/large_image_wheels

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

large-image-1.8.9.dev2.tar.gz (275.2 kB view details)

Uploaded Source

Built Distribution

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

large_image-1.8.9.dev2-py3-none-any.whl (53.9 kB view details)

Uploaded Python 3

File details

Details for the file large-image-1.8.9.dev2.tar.gz.

File metadata

  • Download URL: large-image-1.8.9.dev2.tar.gz
  • Upload date:
  • Size: 275.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for large-image-1.8.9.dev2.tar.gz
Algorithm Hash digest
SHA256 8ecda8a1437f8d61fbdc3aa927473aa40c663c268834021798d128d1190719de
MD5 3c27d42fb84e87e6bf5609f7fbcd7111
BLAKE2b-256 6a174a5e049e854de2c9a6b0ec94432ee4ca6fe4f3087463ce557e0dc69597e4

See more details on using hashes here.

File details

Details for the file large_image-1.8.9.dev2-py3-none-any.whl.

File metadata

  • Download URL: large_image-1.8.9.dev2-py3-none-any.whl
  • Upload date:
  • Size: 53.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.0 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.12

File hashes

Hashes for large_image-1.8.9.dev2-py3-none-any.whl
Algorithm Hash digest
SHA256 5128eb770bbab108b3eb36084cda4eca2f4e274fd30038ac47b99652fb24bea9
MD5 ec683eef1b1b44c3b42d843a2d6b375d
BLAKE2b-256 e4106b391fddce0c35540f1cb45b3a95b06a9d61f94c535a2c279508329dae9d

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