Skip to main content

Python bindings for DIPlib, the quantitative image analysis library

Project description

Python bindings to DIPlib 3 (a.k.a. PyDIP)

Introduction

The purpose of the DIPlib project is to provide a one-stop library and development environment for quantitative image analysis, be it applied to microscopy, radiology, astronomy, or anything in between.

As opposed to all other image processing/analysis libraries and packages out there, DIPlib focuses on quantification. The first priority is precision, all other principles have a lower priority. Our principles are:

  1. Precision:

    We implement the most precise known methods, and output often defaults to floating-point samples. The purpose of these algorithms is quantification, not approximation.

  2. Ease of use

    Although our Python bindings are not much more than a thin wrapper of the C++ library functionality, the image analysis functionality is always easy to use. For example, the user does not, in general, need to be aware of the data type of the image to use these algorithms effectively.

  3. Efficiency

    We implement the most efficient known algorithms, as long as they don't compromise precision. Ease-of-use features might also incur a slight overhead in execution times. The library can be used in high-throughput quantitative analysis pipelines, but is not designed for real-time video processing.

Besides an extensive collection of image processing and analysis algorithms, this package contains DIPviewer, an interactive multi-dimensional image viewer, and DIPjavaio, an interface to the OME Bio-Formats library. The package is compatible with NumPy and any image processing package that uses a NumPy-compatible way of representing images.

See the DIPlib website for more information.

Note! We consider the Python bindings (PyDIP) to be in development. We aim at not making breaking changes, but will sometimes do so when we feel it significantly improves the usability of the module. These changes will always be highlighted in the change logs and the release notification on the DIPlib website. We recommend that you pin your project to use a specific version of the package on PyPI, and carefully read the change logs before upgrading.

Installation

To install, simply type

pip install diplib

Windows users might need to install the Microsoft Visual C++ Redistributable for Visual Studio.

To read images through the Bio-Formats library, you will need to download it separately:

python -m diplib download_bioformats

Note: The diplib package on PyPI vendors the OpenMP library for some platforms (libomp.dylib on macOS, libgomp.so on Linux). It is possible, though rare, for another package to vendor an incompatible OpenMP library, and for the combined use to cause Python to crash. See for example this issue. If you happen to run into this problem, please let us know!. You can find more information about the simultaneous use of multiple OpenMP libraries on this page.

Usage

The interface only has automatically generated docstrings that show the names of each of the parameters, together with the first paragraph of the function's documentation, except where the syntax differs from that of DIPlib. Use the DIPlib reference to learn how to use each function. Get started by reading the PyDIP User Manual.

These Jupyter notebooks replicate much of what is shown in the User Manual:

License

Copyright 2014-2024 Cris Luengo and contributors
Copyright 1995-2014 Delft University of Technology

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this library except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0
(or see the LICENSE.txt file in this distribution)

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

diplib-3.5.2-cp313-cp313-win_amd64.whl (5.4 MB view details)

Uploaded CPython 3.13Windows x86-64

diplib-3.5.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

diplib-3.5.2-cp313-cp313-macosx_14_0_arm64.whl (6.0 MB view details)

Uploaded CPython 3.13macOS 14.0+ ARM64

diplib-3.5.2-cp313-cp313-macosx_13_0_x86_64.whl (7.2 MB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

diplib-3.5.2-cp312-cp312-win_amd64.whl (5.4 MB view details)

Uploaded CPython 3.12Windows x86-64

diplib-3.5.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

diplib-3.5.2-cp312-cp312-macosx_14_0_arm64.whl (6.0 MB view details)

Uploaded CPython 3.12macOS 14.0+ ARM64

diplib-3.5.2-cp312-cp312-macosx_13_0_x86_64.whl (7.2 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

diplib-3.5.2-cp311-cp311-win_amd64.whl (5.4 MB view details)

Uploaded CPython 3.11Windows x86-64

diplib-3.5.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

diplib-3.5.2-cp311-cp311-macosx_14_0_arm64.whl (6.0 MB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

diplib-3.5.2-cp311-cp311-macosx_13_0_x86_64.whl (7.2 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

diplib-3.5.2-cp310-cp310-win_amd64.whl (5.4 MB view details)

Uploaded CPython 3.10Windows x86-64

diplib-3.5.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

diplib-3.5.2-cp310-cp310-macosx_14_0_arm64.whl (6.0 MB view details)

Uploaded CPython 3.10macOS 14.0+ ARM64

diplib-3.5.2-cp310-cp310-macosx_13_0_x86_64.whl (7.2 MB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

File details

Details for the file diplib-3.5.2-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: diplib-3.5.2-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 5.4 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.1

File hashes

Hashes for diplib-3.5.2-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 ceba099b8b912411a7ed19d88c9dfd462535cde807bc858fa17e8012fc536f09
MD5 8147b1016bbb8ce40a2419e4badef1ae
BLAKE2b-256 28d5e6b85771272a6f4f0a6b1c038ba22216b85a96227e7d03a16423340d2189

See more details on using hashes here.

File details

Details for the file diplib-3.5.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for diplib-3.5.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6f5e3a7fe5ad0fd9c4dccd6bf0d4a89cd87552a9424d2784fb4bb397da60c7d0
MD5 83d2c06d25ab371578345c66c3bf83bc
BLAKE2b-256 867e027e8dc15279bbcbe7a89cfe2d5e33cdd7e5d70612642d30145c8d4491bf

See more details on using hashes here.

File details

Details for the file diplib-3.5.2-cp313-cp313-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for diplib-3.5.2-cp313-cp313-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 7216bd1afd8937199f3e6e9eb82f1132e19fb5a1628b2c6ad15f31bb993dde51
MD5 c60f00333ec04258bf14d9e490a04597
BLAKE2b-256 b366d71126981af874500076e9c2d6eaa448be3868443f62df26b99864f20f74

See more details on using hashes here.

File details

Details for the file diplib-3.5.2-cp313-cp313-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for diplib-3.5.2-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 ecd517c5f15bfbd77d85e4218631b59415727025bae41dde31fdfb8a1f161b50
MD5 1aeb6f3e1cf914c3a6825b735fdc5ecd
BLAKE2b-256 0c7f87bc057ca69c43d356e0db28c4f7c066c4d1ea9ea3206ac9237d92d9c2cf

See more details on using hashes here.

File details

Details for the file diplib-3.5.2-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: diplib-3.5.2-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 5.4 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.13

File hashes

Hashes for diplib-3.5.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 70d4bdf4cd95de64394fdc86b3caa1da5d8d63c9053b4f69ec46ab8452fe0b56
MD5 1a9b74e4c83e26ff5fecbaad6c8214be
BLAKE2b-256 91aaeba5b6eac8c912e564816b4fbf4f49598e7fc76d90202408928ad7a65a43

See more details on using hashes here.

File details

Details for the file diplib-3.5.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for diplib-3.5.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d4e4e2403a458114a0c8920990d446ac0a18dee37751b605c64c2d4106429d3c
MD5 eb4102b608c3bbca3137e5ea52f33604
BLAKE2b-256 41567a55f201514e5200800a32ac833989933749eeb0303ecf820c86ff66f609

See more details on using hashes here.

File details

Details for the file diplib-3.5.2-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for diplib-3.5.2-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 2a40c620dffead4f69f3f9525380d9ac2eb8e2f5da733c14a0846d28c630a12d
MD5 d9470234fed1e398242cbeb95584d3f7
BLAKE2b-256 5fb937e2129379e6afc46e424db2dfe9c6e58db29dc617f15dde49447fc02d9e

See more details on using hashes here.

File details

Details for the file diplib-3.5.2-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for diplib-3.5.2-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 80298371f22bfc71b46189752f1d84aac91232ece2692c063bb37acde551567a
MD5 2e1c11128a99d01ff00dcb251f7be5ca
BLAKE2b-256 8934876cac5bd6ef051289740849243c858afd6e6ab23abbf46d812938ea3eaf

See more details on using hashes here.

File details

Details for the file diplib-3.5.2-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: diplib-3.5.2-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 5.4 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.13

File hashes

Hashes for diplib-3.5.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 0eebf3646590dbef964bcc742dd17cbb75f95181596b577a2582b82866986613
MD5 cd6764cd6c503d83f70540e0c104839f
BLAKE2b-256 50e0fc71a65c06d34c8f412a739cdf1f28a33d5560c949c2ff98b8a8dcd442f5

See more details on using hashes here.

File details

Details for the file diplib-3.5.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for diplib-3.5.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6f83b8401dbe98cbea2a580c38a52b6dcd09d506c588863daceb5330b2d84eb5
MD5 44b71a2bf9aad7ecdeebcce3a7c2f7c5
BLAKE2b-256 889244cdf0b0ede49e94b1e6ab62c52a24e01c33b8f297a08b22c10a5a53a300

See more details on using hashes here.

File details

Details for the file diplib-3.5.2-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for diplib-3.5.2-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 cd205c0f52a85fafb234c0cd153ed746f980e926e33cf01be8148ded0830dc5a
MD5 c93e0c1cdc19ca2eecf38e7dfcadfc8e
BLAKE2b-256 3b34e78b01388c13bc00e19f7f00283d6a8b1b18d590ee5979199a66ff33fe7b

See more details on using hashes here.

File details

Details for the file diplib-3.5.2-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for diplib-3.5.2-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 48efce2f2e8303a2fcaf6e5b58ceb329e639e4d4f6c7a708180cc13742ca7bdc
MD5 73ac0d30bea41b8e5b7fe8b7795e0349
BLAKE2b-256 8b01044d21d0393d792758dca8b18fbbc3e2c3985baff644d1870ff4b245f5bd

See more details on using hashes here.

File details

Details for the file diplib-3.5.2-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: diplib-3.5.2-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 5.4 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.9.13

File hashes

Hashes for diplib-3.5.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 77999593c36d3be63a63693ab09deb964e59882b0cf47b5090253a537aafe8a4
MD5 098026732dcaf31f146d7c5948eb0c31
BLAKE2b-256 2e5dc085e90c7d5227d8e4975a31896f4a2376456d11c8245c315e2b9a896a57

See more details on using hashes here.

File details

Details for the file diplib-3.5.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for diplib-3.5.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5376f2097dbe77dd44c2b4b2ad8086c4412ac0a2808c54473b27a88ae77ad0c1
MD5 fe7eda612ce2e2648118d79116a84302
BLAKE2b-256 b5182598e8b1cf2e952fd05372507d20f79f45ac1149f3959374dbdb6b1c5bea

See more details on using hashes here.

File details

Details for the file diplib-3.5.2-cp310-cp310-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for diplib-3.5.2-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 0d468a253d2da340f33d94495c71731f37898f7eed0ae5f64d289446bd2589ec
MD5 7f487388fd0b290505d9d7be898f87f0
BLAKE2b-256 3d51453e345327bf5ad127e8be2e06d11a0f60812f66478da41614ad3142ca57

See more details on using hashes here.

File details

Details for the file diplib-3.5.2-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for diplib-3.5.2-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 58d1298cee76b97a7163c4553216b01662d8db10852c3475f8c11f77996cf27b
MD5 3de70c0889054253c392ad964c80695c
BLAKE2b-256 2c777ab857cd983d27911da6006c012374c549ab6b40d718ca8c1d18cb96c196

See more details on using hashes here.

Supported by

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