Skip to main content

Zivid Python

Zivid Python is the official Python package for Zivid 3D cameras. Read more about Zivid at zivid.com.

Build Status PyPI Package Zivid Image


Contents: Installation | Quick Start | Examples | Versioning | License | Support | Test Matrix


Installation

Dependencies

Ubuntu users must install Python headers (apt install python3-dev) in addition to the regular python3 package.

Windows users also needs to make sure that the Zivid SDK installation folder is in system PATH before using the package, not only the terminal PATH variable. The default install location that should be added to system PATH is C:\Program Files\Zivid\bin.

Installing official version from PyPI using PIP

After having installed the latest Zivid SDK, the easiest way to install Zivid Python is to use PIP to fetch the latest official version from PyPI:

pip install zivid

Note:

If you don't use the latest Zivid SDK version you need to manually specify the version. See Versioning.

Installation may take some time since the setup.py script will download additional dependencies and compile C++ source code in the background.

On some systems Python 3 pip is called pip3. In this guide we assume it is called pip. When using PIP version 19 or higher build dependencies are handled automatically.

Old PIP

If you are using a version of PIP older than version 19 please manually install the dependencies listed in pyproject.toml before installing zivid.

pip install <packages listed in pyproject.toml>
pip install zivid

Installing from source

git clone <zivid-python clone URL>
cd zivid-python
pip install .

The above pip install . command may give permission issues on some Windows machines. If so, try the following instead:

python continuous-integration/windows/create_binary_distribution.py
pip install ./dist/*.whl

You may want to build Zivid Python against a different (but compatible) version of Zivid SDK. An example would be if Zivid SDK 2.1 was released but the official Zivid Python still formally only supports SDK 2.0. Since all the features of the 2.0 API exist in the 2.1 API, Zivid Python can still be built with the new SDK (but without wrapping the latest features). In order to achieve this, edit sdk_version.json to target the new SDK version before doing pip install .. Note that this option is considered experimental/unofficial.

Quick Start

Point cloud capture

To quickly capture a point cloud using default settings, run the following code:

import zivid

app = zivid.Application()
camera = app.connect_camera()
settings = zivid.Settings(
    acquisitions=[zivid.Settings.Acquisition()],
    color=zivid.Settings2D(acquisitions=[zivid.Settings2D.Acquisition()]),
)
frame = camera.capture_2d_3d(settings)
frame.save("result.zdf")

Instead of using the API to define capture settings, it is also possible to load them from YML files that have been exported from Zivid Studio or downloaded from the Zivid Knowledge Base settings library. This can be done by providing the filesystem path to such a file, for example:

settings = Settings.load("ZividTwo_Settings_2xHDR_Normal.yml")
frame = camera.capture_2d_3d(settings)

Point cloud data access

Data can easily be accessed in the form of Numpy arrays:

import zivid

app = zivid.Application()
camera = app.connect_camera()
settings = zivid.Settings(
    acquisitions=[zivid.Settings.Acquisition()],
    color=zivid.Settings2D(acquisitions=[zivid.Settings2D.Acquisition()]),
)
frame = camera.capture_2d_3d(settings)
xyz = frame.point_cloud().copy_data("xyz")  # Get point coordinates as [Height,Width,3] float array
rgba = frame.point_cloud().copy_data("rgba")  # Get point colors as [Height,Width,4] uint8 array
bgra = frame.point_cloud().copy_data("bgra")  # Get point colors as [Height,Width,4] uint8 array

Capture Assistant

Instead of manually adjusting settings, the Capture Assistant may be used to find the optimal settings for your scene:

import zivid

app = zivid.Application()
camera = app.connect_camera()
capture_assistant_params = zivid.capture_assistant.SuggestSettingsParameters()
settings = zivid.capture_assistant.suggest_settings(camera, capture_assistant_params)
frame = camera.capture_2d_3d(settings)
frame.save("result.zdf")

Using camera emulation

If you do not have a camera, you can use the FileCameraZivid2M70.zfc file in the Sample Data to emulate a camera.

import zivid

app = zivid.Application()
camera = app.create_file_camera("path/to/FileCameraZivid2M70.zfc")
settings = zivid.Settings(acquisitions=[zivid.Settings.Acquisition()])
frame = camera.capture_3d(settings)
frame.save("result.zdf")

Examples

Basic example programs can be found in the samples directory. Many more advanced example programs may be found in the separate zivid-python-samples repository.

Versioning

This python module is released with the same version number as the Zivid SDK that it supports. The Zivid SDK is using semantic versioning with major, minor, and patch versions.

If a patch is released to fix an issue with this python module separately from a Zivid SDK patch release, then a fourth number signifying the patch version of the python module will be added to the end:

Version breakdown

                              Zivid SDK version = 2.16.0
                              v vv v
Zivid Python module version = 2.16.0.1
                                     ^
                                     Zivid Python module patch version (omitted if 0)

PyPI

When installing using PIP it is possible to specify the required version. This can be useful if using an older version of the Zivid SDK.

To see the complete list of released versions of this python module, see zivid-python-releases-url or run pip index versions zivid.

Note that as explained above, the versioning system was simplified starting with version 2.16.0 such that the Zivid Python is the same as the supported Zivid SDK version. Older releases used a different versioning scheme, which is also explained above.

Install latest version of Zivid Python using latest available version of Zivid SDK

pip install zivid

Note: The installation may fail if the latest available version of Zivid SDK is not installed on the system. See Installation.

Install a specific version of Zivid Python

pip install zivid==2.16.0

This requires Zivid SDK version 2.16.0 to be installed on the system.

Using the old versioning scheme, install version 2.6.0 of the Zivid Python wrapper supporting Zivid SDK 2.7.0

pip install zivid==2.6.0.2.7.0

This requires Zivid SDK version 2.7.0 to be installed on the system.

License

This project is licensed, see the LICENSE file for details. The licenses of dependencies are listed license dependencies.

Support

Please visit Zivid Knowledge Base for general information on using Zivid 3D cameras. If you cannot find a solution to your issue, please contact customersuccess@zivid.com.

Test matrix

The test matrix shows which Python versions and operating systems are tested in CI. Check text matrix here to go to the test matrix.

Metadata

Release files for zivid 2.18.0.2

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

Source distribution (sdist)

Source distribution for zivid 2.18.0.2
File Size Uploaded
zivid-2.18.0.2.tar.gz 179.3 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for zivid 2.18.0.2
File
zivid-2.18.0.2-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
zivid-2.18.0.2-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
zivid-2.18.0.2-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
zivid-2.18.0.2-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
zivid-2.18.0.2-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
zivid-2.18.0.2-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
zivid-2.18.0.2-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
zivid-2.18.0.2-cp37-cp37m-win_amd64.whl CPython 3.7 CPython 3.7 pymalloc Windows x86-64 Details

Total release size: 8.3 MB

Release files / zivid-2.18.0.2.tar.gz

Download URL zivid-2.18.0.2.tar.gz
Size 179.3 kB
Tags Source
SHA-256 checksum
How to use checksums
d4a1d342367d24ab15a2f05404ab1f92ad7a7b5dac4babc375a5f6953eb88c4e
BLAKE2b-256 checksum
How to use checksums
772da8df4ede36ae6aa81502a02647cd3dec969948b4eb0032798bfcc860ba66
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / zivid-2.18.0.2-cp314-cp314-win_amd64.whl

Download URL zivid-2.18.0.2-cp314-cp314-win_amd64.whl
Size 1.0 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
cc412eeaa8447823f81335f6a1e3b84a7854880a6b1c346fb72d2c2f7359dfb0
BLAKE2b-256 checksum
How to use checksums
585d63a02b68cedfb1504f56f116f8000ab00dd85e770b52e6429b75ba5a7960
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / zivid-2.18.0.2-cp313-cp313-win_amd64.whl

Download URL zivid-2.18.0.2-cp313-cp313-win_amd64.whl
Size 1.0 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
a6df725c6cf3627cd411e161d6d7f5241ec4c626577604ab277177f7df5c5b1b
BLAKE2b-256 checksum
How to use checksums
10010c00384b66f1fb599ca4ff754eb28d34a03568870d634d839df510f3cec7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / zivid-2.18.0.2-cp312-cp312-win_amd64.whl

Download URL zivid-2.18.0.2-cp312-cp312-win_amd64.whl
Size 1000.0 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
4380f24182ff1711ccea901abd9bd112cbfefc27b8fb80e334f9332fa010d67a
BLAKE2b-256 checksum
How to use checksums
2d3e4e217576d91526e8d11f478e34f6d007420542ac35cd7b8d3f5361216558
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / zivid-2.18.0.2-cp311-cp311-win_amd64.whl

Download URL zivid-2.18.0.2-cp311-cp311-win_amd64.whl
Size 987.5 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
5b3e944a2d9793a0ee81b9db9653fd897c9597e9ebe5df7ce8fb672f634825da
BLAKE2b-256 checksum
How to use checksums
a661ad092c274a7bd07e00758f4b798c8c4e7d83f4ded6cf53aa5380ed0031b5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / zivid-2.18.0.2-cp310-cp310-win_amd64.whl

Download URL zivid-2.18.0.2-cp310-cp310-win_amd64.whl
Size 986.0 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
ac48e746c745119ef4367d9656f43d2e4a7be7efcd9ac09d6264b2cc8b3a4c9f
BLAKE2b-256 checksum
How to use checksums
548b278830c778069cddbe4305ec31d954784d4088f8a41790c8f6aa08fe227b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / zivid-2.18.0.2-cp39-cp39-win_amd64.whl

Download URL zivid-2.18.0.2-cp39-cp39-win_amd64.whl
Size 1.2 MB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
3b814e199692d4a36cebfea54e2f8018a364d78109bd775873d9d2129a9a3666
BLAKE2b-256 checksum
How to use checksums
e92695ab10547d082e9ec8ceba7091ad872291d5349cda3f4323c976a52ddd1b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / zivid-2.18.0.2-cp38-cp38-win_amd64.whl

Download URL zivid-2.18.0.2-cp38-cp38-win_amd64.whl
Size 985.4 kB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
09a934389288dbba3602d54d3041763900d06a2ae2ab9c4691618672a1e46dc5
BLAKE2b-256 checksum
How to use checksums
ae17f13887c5efcfe0908a8c77f000d880c905865e4e4e006ba215d04f506979
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / zivid-2.18.0.2-cp37-cp37m-win_amd64.whl

Download URL zivid-2.18.0.2-cp37-cp37m-win_amd64.whl
Size 959.8 kB
Tags CPython 3.7 CPython 3.7 pymalloc Windows x86-64
SHA-256 checksum
How to use checksums
53d43ce2a9d5186be2dd9d0778df9fff37a06b5895af159716c58c27808e9d0b
BLAKE2b-256 checksum
How to use checksums
18baa2042b9b485aac6b1ebe0efa2a5db98db8cfa0b3de541e93a2561208bb26
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release history Release notifications | RSS feed

This release

2.18.0.2 This release

9 release files

2.17.2

9 release files

2.17.1

9 release files

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