Skip to main content

Defining the Future of 3D Machine Vision

Project description

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 .

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 setup.py to target the new SDK version before doing pip install .. Note that this option is considered experimental/unofficial.

Quick Start

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()])
frame = camera.capture(settings)
frame.save("result.zdf")

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()])
frame = camera.capture(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

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(settings)
frame.save("result.zdf")

Using camera emulation

If you do not have a camera, you can use the FileCameraZividOne.zfc file in ZividSampleData2.zip to emulate a camera.

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

Examples

More advanced example programs can be found in the samples directory.

Versioning

This python module is using PEP 440 for versioning. The features available in the module depends on the Zivid SDK version used when building the module. When updating this Python package it is recommended to also update to the latest Zivid SDK. Refer to the Test Matrix for supported version.

The version number of the Zivid Python module consists of six numbers. The three first numbers of the version is the semantic version of the code in this repository. The last three numbers is the version of the underlying Zivid SDK library used by the Python module.

To check which version of zivid-python that corresponds to a specific version of Zivid SDK, check out zivid-python-releases-url or run pip index versions zivid.

Version breakdown

                                    Zivid SDK version = 1.4.1 (semantic version)
                                    v v v
Zivid Python module version = 1.0.0.1.4.1
                              ^ ^ ^
                              Wrapper code version = 1.0.0 (semantic version)

PyPI

When installing using PIP it is possible to specify the required version. This can be useful if upgrading Zivid SDK is not desired, but you want to update Zivid Python.

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

pip install zivid

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

pip install zivid==1.0.0

Install version 1.0.0 of Zivid Python using Zivid SDK version 1.4.0

pip install zivid==1.0.0.1.4.0

Install version 1.0.0 of Zivid Python using Zivid SDK version 1.3.0

pip install zivid==1.0.0.1.3.0

Support for older versions of Zivid SDK will be discontinued when they are no longer compatible with latest version of the wrapper code.

License

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

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

Operating System Python version Zivid SDK version
Ubuntu 20.04 3.8 2.8.0
Ubuntu 18.04 3.6 2.8.0
Fedora 30 3.7 2.8.0
Fedora 33 3.9 2.8.0
Fedora 34 3.9 2.8.0
Fedora 35 3.10 2.8.0
Windows 10 3.6, 3.7, 3.8, 3.9, 3.10 2.8.0
Arch Linux latest 2.8.0

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

zivid-2.7.0.2.8.0.tar.gz (59.2 kB view details)

Uploaded Source

Built Distributions

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

zivid-2.7.0.2.8.0-cp310-cp310-win_amd64.whl (354.0 kB view details)

Uploaded CPython 3.10Windows x86-64

zivid-2.7.0.2.8.0-cp39-cp39-win_amd64.whl (354.1 kB view details)

Uploaded CPython 3.9Windows x86-64

zivid-2.7.0.2.8.0-cp38-cp38-win_amd64.whl (354.1 kB view details)

Uploaded CPython 3.8Windows x86-64

zivid-2.7.0.2.8.0-cp37-cp37m-win_amd64.whl (344.1 kB view details)

Uploaded CPython 3.7mWindows x86-64

zivid-2.7.0.2.8.0-cp36-cp36m-win_amd64.whl (344.1 kB view details)

Uploaded CPython 3.6mWindows x86-64

File details

Details for the file zivid-2.7.0.2.8.0.tar.gz.

File metadata

  • Download URL: zivid-2.7.0.2.8.0.tar.gz
  • Upload date:
  • Size: 59.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.25.1 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.4

File hashes

Hashes for zivid-2.7.0.2.8.0.tar.gz
Algorithm Hash digest
SHA256 0d49fc2c89aef5759e53ee6848d412874f7d485fba489c6f3dbf229b3e8dde4f
MD5 ec79eb99d2e55cb130142ed8d9e8b39d
BLAKE2b-256 e06b6f0528513873adbe25f448ccfb06453cbdf09113a8c1ae8b2ddc34a3b862

See more details on using hashes here.

File details

Details for the file zivid-2.7.0.2.8.0-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: zivid-2.7.0.2.8.0-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 354.0 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.25.1 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.4

File hashes

Hashes for zivid-2.7.0.2.8.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 6627c9e85a5500b4a96e6c4a4bd1b8618d0398d3f06adeab01b43cf8c28e7469
MD5 78dd8f336a0aad238d222985a2bbe3f3
BLAKE2b-256 6c877111b688768a0ca81167eaf45e0c30460fb5ef0bbfb9c73c81dc1a3b0dcf

See more details on using hashes here.

File details

Details for the file zivid-2.7.0.2.8.0-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: zivid-2.7.0.2.8.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 354.1 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.25.1 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.4

File hashes

Hashes for zivid-2.7.0.2.8.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 6865f3220894830238094563357943cfb5b3bb44a0cda6904f65799ceba3885c
MD5 528a4baa2e3712a3167d3331895687e1
BLAKE2b-256 ea4c64716632bd852a31e350a0698ffdcb9f10e43da6602d5ba08e29a9d491e8

See more details on using hashes here.

File details

Details for the file zivid-2.7.0.2.8.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: zivid-2.7.0.2.8.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 354.1 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.25.1 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.4

File hashes

Hashes for zivid-2.7.0.2.8.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 b9a1347bb331fbbe5d2633984bf5e68c4b3be5fe5d5a84f614af339392bbcec1
MD5 59505c3dcdd1378dd4a7511fbc986893
BLAKE2b-256 8b4ec7c21f0320fcca8cc0322193467b0903b0db736bf144e81c3b2b028dfdbf

See more details on using hashes here.

File details

Details for the file zivid-2.7.0.2.8.0-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: zivid-2.7.0.2.8.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 344.1 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.25.1 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.4

File hashes

Hashes for zivid-2.7.0.2.8.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 03a6563928fe2fbe53c83ef6e02ae78c2a8879f154b0a032edb81f48a045cec0
MD5 ca5e62d3d31d5775cf9c9db200bb1d7a
BLAKE2b-256 4552a90b1d6c1c024b95cef77623e22c810c7bde74fe1e690f5a5786f5ff08e7

See more details on using hashes here.

File details

Details for the file zivid-2.7.0.2.8.0-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: zivid-2.7.0.2.8.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 344.1 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.25.1 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.4

File hashes

Hashes for zivid-2.7.0.2.8.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 be1a50b2791e317ed42bdd490390f13c0617a2f40ef8fc97af10d9d728546f56
MD5 2cfa73cb8acfdfe482b1c28868712270
BLAKE2b-256 76dc2ba9d5607d77978a78bf7bfecbf59282d8b6896bd10a1bb26314721a1972

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