Skip to main content

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-2026 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.

Release files for diplib 3.6.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for diplib 3.6.1
File
diplib-3.6.1-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
diplib-3.6.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ x86-64 Details
diplib-3.6.1-cp314-cp314-macosx_15_0_x86_64.whl CPython 3.14 CPython 3.14 macOS 15.0+ x86-64 Details
diplib-3.6.1-cp314-cp314-macosx_14_0_arm64.whl CPython 3.14 CPython 3.14 macOS 14.0+ ARM64 Details
diplib-3.6.1-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
diplib-3.6.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64 Details
diplib-3.6.1-cp313-cp313-macosx_15_0_x86_64.whl CPython 3.13 CPython 3.13 macOS 15.0+ x86-64 Details
diplib-3.6.1-cp313-cp313-macosx_14_0_arm64.whl CPython 3.13 CPython 3.13 macOS 14.0+ ARM64 Details
diplib-3.6.1-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
diplib-3.6.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details
diplib-3.6.1-cp312-cp312-macosx_15_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 15.0+ x86-64 Details
diplib-3.6.1-cp312-cp312-macosx_14_0_arm64.whl CPython 3.12 CPython 3.12 macOS 14.0+ ARM64 Details
diplib-3.6.1-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
diplib-3.6.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
diplib-3.6.1-cp311-cp311-macosx_15_0_x86_64.whl CPython 3.11 CPython 3.11 macOS 15.0+ x86-64 Details
diplib-3.6.1-cp311-cp311-macosx_14_0_arm64.whl CPython 3.11 CPython 3.11 macOS 14.0+ ARM64 Details

Total release size: 110.4 MB

Release files / diplib-3.6.1-cp314-cp314-win_amd64.whl

Download URL diplib-3.6.1-cp314-cp314-win_amd64.whl
Size 5.9 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
e76ee0f5f6fd68fcd093ff93a04e2fa41e7ae293ed9bf904639ba0ab4e02115c
BLAKE2b-256 checksum
How to use checksums
99abbd761703165b8df316f64cae0bfe1b5f1cae18f0ce8bd25f62d586b8d6df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release files / diplib-3.6.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL diplib-3.6.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 8.6 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
aad5005f06b866ebf7d26fd339ba1e8aeb32b97a42bb1c881caa2c8cc20b017b
BLAKE2b-256 checksum
How to use checksums
191554193ec30002da7e1b5594425dfd0b7883e8c163be79d9239ffe003a1b3a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / diplib-3.6.1-cp314-cp314-macosx_15_0_x86_64.whl

Download URL diplib-3.6.1-cp314-cp314-macosx_15_0_x86_64.whl
Size 7.1 MB
Tags CPython 3.14 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
eb71bded858e7be69075fea31c8a3b1b094a17b003ae6a1352d260ba35d600c3
BLAKE2b-256 checksum
How to use checksums
eccbe84a2b7593526ee6324b8ac00fd6a477230cae3e6a4e4b2075b85122ecdc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.6

Release files / diplib-3.6.1-cp314-cp314-macosx_14_0_arm64.whl

Download URL diplib-3.6.1-cp314-cp314-macosx_14_0_arm64.whl
Size 6.1 MB
Tags CPython 3.14 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
7639d12ffa8048d18d039391f9a48e5b3e70074c2d075b9d92ef75695603cf69
BLAKE2b-256 checksum
How to use checksums
f0257aa85879f57baa4baefa5f2d010094dbea0ba1572aaa9bb019138febb56b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.5

Release files / diplib-3.6.1-cp313-cp313-win_amd64.whl

Download URL diplib-3.6.1-cp313-cp313-win_amd64.whl
Size 5.7 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
df690f97fcdacc1a5b73c65d52cc9e3c361f1a00f7dc0400d2abeaf7ccd922ab
BLAKE2b-256 checksum
How to use checksums
914593ce5ff10cb617e09d46a0265c6d852998b55cde31df3e2c9ca53b9d874e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release files / diplib-3.6.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL diplib-3.6.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 8.6 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
a9d64eb817f5b9e7d3ec2cc8d48935e0b5428207395d0ff01f7aac37701128cf
BLAKE2b-256 checksum
How to use checksums
4d59870455caa23da14e9a92cf11ae64aafc947111e1042994044cb71bcdcde0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / diplib-3.6.1-cp313-cp313-macosx_15_0_x86_64.whl

Download URL diplib-3.6.1-cp313-cp313-macosx_15_0_x86_64.whl
Size 7.1 MB
Tags CPython 3.13 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
3be528d4b1cb5201a0bfaf4821bd675bea0161e232ab335a947f2c454dadf6af
BLAKE2b-256 checksum
How to use checksums
e7d3c1e50dae8c2994d204697a0d6241ba168e71313833bbc728f4e6e6493951
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.6

Release files / diplib-3.6.1-cp313-cp313-macosx_14_0_arm64.whl

Download URL diplib-3.6.1-cp313-cp313-macosx_14_0_arm64.whl
Size 6.1 MB
Tags CPython 3.13 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
9ca6f97bbac0627f61d8d9e1ea6fae38850cab937af4658987917a5a5a71ad65
BLAKE2b-256 checksum
How to use checksums
5974b29593e9a5c33425e7b06a424a2adc853d7c85598fca136551b1a651683f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.5

Release files / diplib-3.6.1-cp312-cp312-win_amd64.whl

Download URL diplib-3.6.1-cp312-cp312-win_amd64.whl
Size 5.7 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
d7dbc6318fda0c471bafceab17b4a45820813e5f0567f0de5f4d1374ddf34a06
BLAKE2b-256 checksum
How to use checksums
56c02e8d29bb55655c9fdc8e7a47cebe0ee678e849db8db6ffa04ee77c0231ff
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release files / diplib-3.6.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL diplib-3.6.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 8.6 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
90975e0d953815601962d6c5a54f77a576b0a36eee19c07f4ff35964155dc081
BLAKE2b-256 checksum
How to use checksums
0038f35ae9db6f4cf42ae7603dee9b47aae3f153d1dc033bdd7e4eb48c1ca0d7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / diplib-3.6.1-cp312-cp312-macosx_15_0_x86_64.whl

Download URL diplib-3.6.1-cp312-cp312-macosx_15_0_x86_64.whl
Size 7.1 MB
Tags CPython 3.12 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
d6bdda54c2a9c1b6ecb98aa18c33f181c8b5a7c3a437084b0ed6082dc6b1d4c7
BLAKE2b-256 checksum
How to use checksums
f467a3c8341fa18e5c0dc6af6d1e40880bec062ff4ca53ccb8c4254e1ce1e8b7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.6

Release files / diplib-3.6.1-cp312-cp312-macosx_14_0_arm64.whl

Download URL diplib-3.6.1-cp312-cp312-macosx_14_0_arm64.whl
Size 6.1 MB
Tags CPython 3.12 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
c887000be28c0e8a5018c2078b9df882dbd7aa529d51d8856eaa8778b521e3c8
BLAKE2b-256 checksum
How to use checksums
f97b2cf7ea405b8eed7f15c6000776fd024d16079c38649574292a4a1d9f6266
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.5

Release files / diplib-3.6.1-cp311-cp311-win_amd64.whl

Download URL diplib-3.6.1-cp311-cp311-win_amd64.whl
Size 5.7 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
3704a94581d8a96f69ec620fd9599cd809a3da9fa94bd1391f893f9ae1206201
BLAKE2b-256 checksum
How to use checksums
358406da0b204eef37e845222af64f7c6f1293a2f06491ea9af4cd69dd178011
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release files / diplib-3.6.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl

Download URL diplib-3.6.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Size 8.6 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
02d00b2dfd53a8ab150fbb892dbd58862007ec7ae913f6f27dd0e45e3eec8818
BLAKE2b-256 checksum
How to use checksums
c7d08983ea9a0a3780e5a94892da11448456cfcea6a4052a4cb133212a584166
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / diplib-3.6.1-cp311-cp311-macosx_15_0_x86_64.whl

Download URL diplib-3.6.1-cp311-cp311-macosx_15_0_x86_64.whl
Size 7.1 MB
Tags CPython 3.11 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
1d0560e7fa94032a719cbeb79a1f738e537d83757fc1f4a1fa37872ef50ef999
BLAKE2b-256 checksum
How to use checksums
399cf17269c1b1ca12cac8cab8a1f2f476bbd9ae770147c1c7b35e588037e04a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.6

Release files / diplib-3.6.1-cp311-cp311-macosx_14_0_arm64.whl

Download URL diplib-3.6.1-cp311-cp311-macosx_14_0_arm64.whl
Size 6.1 MB
Tags CPython 3.11 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
d19cb83d27bc8e43f9bf0b6ba08f5c540a0744e8f4621bc8cea17e32f8200516
BLAKE2b-256 checksum
How to use checksums
6048d1c118a0a3e317ac86a666aad21e91dabf1126ccd28ce35f8fb107a8e5eb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.5
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page