Skip to main content

A python wrapper around the libCZI C++ library with reading and writing functionality.

Project description

pylibCZIrw - Python wrapper for libCZI

This project provides a simple and easy-to-use Python wrapper for libCZI - a cross-platform C++ library intended for providing read and write access to CZI image documents.

Important Remarks

  • At the moment, pylibCZIrw completely abstracts away the subblock concept, both in the reading and in the writing APIs.
  • The core concept of pylibCZIrw is focussing on reading and writing 2D image planes by specifying the dimension indices and its location in order to only read or write what is really needed.
  • It allows reading data via http/https-protocol enabling cloud storage scenarios.

Example Usage

from pylibCZIrw import czi as pyczi

filepath = "myimagefile.czi"

# open the CZI document to read the
with pyczi.open_czi(filepath) as czidoc:
    # get the image dimensions as a dictionary, where the key identifies the dimension
    total_bounding_box = czidoc.total_bounding_box

    # get the total bounding box for all scenes
    total_bounding_rectangle = czidoc.total_bounding_rectangle

    # get the bounding boxes for each individual scene
    scenes_bounding_rectangle = czidoc.scenes_bounding_rectangle

    # read a 2D image plane and optionally specify planes, zoom levels and ROIs
    image2d = czidoc.read(plane={"T": 1, "Z": 2, "C": 0}, zoom=1.0, roi=(0, 0, 50, 100))

The detailed usage can be inferred from the sample notebooks.

For more detailed information (on the latest version) refer to https://zeiss.github.io/pylibczirw/.

Installation

In case there is no wheel available for your system configuration, you can:

Disclaimer

The library and the notebook are free to use for everybody. Carl Zeiss Microscopy GmbH undertakes no warranty concerning the use of those tools. Use them at your own risk.

By using any of those examples you agree to this disclaimer.

Version: 2023.11.20

Copyright (c) 2023 Carl Zeiss AG, Germany. All Rights Reserved.

CHANGELOG

v4.1.3 (2024-08-26)

Fix

  • fix: Channel ID and Name in display settings metadata (#37)

This PR inlcudes the latest version ov libczirw to fix #13 Fixes #13 (04316fe)

v4.1.2 (2024-08-06)

Chore

  • chore: remove temporary debugging logic to push to PyPI (#30)

[x] I followed the How to structure your PR. [ ] Based on Commit Parsing: In case a new major release will be created (because the body or footer begins with 'BREAKING CHANGE:'), I created a new Jupyter notebook with a matching version. [ ] Based on Commit Parsing: In case a new minor/patch release will be created (because PR title begins with 'feat'/('fix' or 'perf')), I optionally created a new Jupyter notebook with a matching version. [ ] In case of API changes, I updated API.md.

Remove debugging code for temporaily pushing to testpypi until infrastructure properly set up. (3b2ea06)

Fix

  • fix: consider only dimensions with size >1 for plane-coordinate (#28)

[x] I followed the How to structure your PR. [ ] Based on Commit Parsing: In case a new major release will be created (because the body or footer begins with 'BREAKING CHANGE:'), I created a new Jupyter notebook with a matching version. [ ] Based on Commit Parsing: In case a new minor/patch release will be created (because PR title begins with 'feat'/('fix' or 'perf')), I optionally created a new Jupyter notebook with a matching version. [ ] In case of API changes, I updated API.md.

Re-write of #16 due to changes in infrastructure.

Fixes #10


Co-authored-by: Soyer, Sebastian <sebastian.soyer@zeiss.com> Co-authored-by: soyers <soyer.sebastian@gmail.com> (264fcb4)

v4.1.1 (2024-07-26)

Chore

  • chore: Add codeowners (#27)

Add CODEOWNERS file (dc1717b)

Deps

  • deps: bump codecov/codecov-action from 3 to 4 (#2)

Bumps codecov/codecov-action from 3 to 4.

Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Felix Scheffler <felix.scheffler@zeiss.com> (dab7b18)

Refactor

  • refactor: Megalinter and infrastructure (#19)

[x] I followed the How to structure your PR. [ ] Based on Commit Parsing: In case a new major release will be created (because the body or footer begins with 'BREAKING CHANGE:'), I created a new Jupyter notebook with a matching version. [ ] Based on Commit Parsing: In case a new minor/patch release will be created (because PR title begins with 'feat'/('fix' or 'perf')), I optionally created a new Jupyter notebook with a matching version. [ ] In case of API changes, I updated API.md.

Infrastructure related changes, linting (2e60a2b)

Unknown

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

pylibCZIrw-4.1.3.tar.gz (5.0 MB view details)

Uploaded Source

Built Distributions

pylibCZIrw-4.1.3-cp311-cp311-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.11 Windows x86-64

pylibCZIrw-4.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

pylibCZIrw-4.1.3-cp310-cp310-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.10 Windows x86-64

pylibCZIrw-4.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

pylibCZIrw-4.1.3-cp39-cp39-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.9 Windows x86-64

pylibCZIrw-4.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

pylibCZIrw-4.1.3-cp38-cp38-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.8 Windows x86-64

pylibCZIrw-4.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

pylibCZIrw-4.1.3-cp37-cp37m-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.7m Windows x86-64

pylibCZIrw-4.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

File details

Details for the file pylibCZIrw-4.1.3.tar.gz.

File metadata

  • Download URL: pylibCZIrw-4.1.3.tar.gz
  • Upload date:
  • Size: 5.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for pylibCZIrw-4.1.3.tar.gz
Algorithm Hash digest
SHA256 52f7c9a4ff3529b909b1e27e12d9117564e5c935a5cc814d0cb75c835aee80cd
MD5 7c25052265bbb1e0f8d7abe568659c10
BLAKE2b-256 f9d92c940dc5f9839a16385ec81eb9bea5a9f88af220dfba6fb5728989480f93

See more details on using hashes here.

File details

Details for the file pylibCZIrw-4.1.3-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pylibCZIrw-4.1.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 9a6874ea4923e4a93e4b96254e1b7cbd449796768cbe2e7d878d0f833ab0f0be
MD5 d6310ce978242380eb9d264cd6b6662b
BLAKE2b-256 8d7c5db19f4de2cfcd60c279bbd198d2f72061b91bf0747f8a0613b01e1f6fe5

See more details on using hashes here.

File details

Details for the file pylibCZIrw-4.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pylibCZIrw-4.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 07ac5cd778bc94757e2a915b9df16f1bcfe14f4c5c8d35cbd14261b1e90d8727
MD5 f27e2560060d3fb945119ce23a8cca4c
BLAKE2b-256 b2c5eb83ea7643a4884aacad0b8e93b571ed01fadac230176acd484dc40b3f15

See more details on using hashes here.

File details

Details for the file pylibCZIrw-4.1.3-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pylibCZIrw-4.1.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 90096d04c1aa8b83d2c58e60ffcbe5d8adc6bfc4fc723c5bac6f806c9273c938
MD5 1dbbc4554e3a2d0b0dce000f85c0321a
BLAKE2b-256 f30f2af634df1cafe1a62dbd111e29c98c6f548f026bd857d910109fe7a4856a

See more details on using hashes here.

File details

Details for the file pylibCZIrw-4.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pylibCZIrw-4.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8e95f7425e4cec0bcdf6eb276bb5a2825eb2e203f531739469b1ede10c4e9733
MD5 016f4dd0307393be7152cc8291cb068d
BLAKE2b-256 f2ba2328d074c2005af5b9f565e25a13f258b5ae91cc17ffe8068311db47e78c

See more details on using hashes here.

File details

Details for the file pylibCZIrw-4.1.3-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pylibCZIrw-4.1.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 fd517d978bf216aa9a1ae97f91b9b74e612c5ad3789e6dca0dc978566dc4df4a
MD5 e709fdb5e4b401d4b4aa8c87f4528898
BLAKE2b-256 fe522345822795d461ac6a46f7266497448b9d0b2bec418505e8d45c73bc03e7

See more details on using hashes here.

File details

Details for the file pylibCZIrw-4.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pylibCZIrw-4.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 efeef4192d8a32a0b4254b36836f07d60c826dbffdd320100e3cc9255dcc9381
MD5 effb5f17b2d41f21201ddb82d5744e0d
BLAKE2b-256 55273b09be8a0589912a6200c558f1d252c91d30b1ca272c343487d918f0db72

See more details on using hashes here.

File details

Details for the file pylibCZIrw-4.1.3-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for pylibCZIrw-4.1.3-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 d1d53b07f7695cb734c34f8d65fc382255e13b11a30f19beb9850ab7ed2f79e4
MD5 0c130fee3c690cf0ae5775dd043f1de9
BLAKE2b-256 27b49d3495425b06c641b050f347370b95239601c4d148864aecfedaa7f272c9

See more details on using hashes here.

File details

Details for the file pylibCZIrw-4.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pylibCZIrw-4.1.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cbfd639be65aa951f59648226577d77b61f4da35d97b32a3df7c440154ede772
MD5 3ff45d7c17f1eb79c7a8b700cd5e18a2
BLAKE2b-256 afd7972c14b8925195d0fa53133321318a78c10edd5c22893f4c1d341ed95612

See more details on using hashes here.

File details

Details for the file pylibCZIrw-4.1.3-cp37-cp37m-win_amd64.whl.

File metadata

File hashes

Hashes for pylibCZIrw-4.1.3-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 5a81dc8be884e9f075a68adcfdc217824285bda4c96db714cec0131ab2a228ad
MD5 3cb8f1c4b8f87e4e6e02d540db228db6
BLAKE2b-256 04d35e2e276d0ccb73dddc2f02ec7c27520548d9b0f5e56939a3667c0d244173

See more details on using hashes here.

File details

Details for the file pylibCZIrw-4.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pylibCZIrw-4.1.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 10e78218de821437f8de93f04a053d07fa6a4b36bd726d0e9c4066e2ddee52e5
MD5 d42748abab8c4afa5b443e583a588d85
BLAKE2b-256 ed8529ee18b57cc83949aeb916366c4603fc82e32a01f3e6d79be2bc6b41f77d

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