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

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

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.

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.

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 support@zivid.com.

Test matrix

Operating System Python version Zivid SDK version
Ubuntu 20.04 3.8 2.2.0
Ubuntu 18.04 3.6 2.2.0
Ubuntu 16.04 3.5 2.2.0
Fedora 30 3.7 2.2.0
Windows 10 3.6, 3.7, 3.8, 3.9 2.2.0
Arch Linux* latest 2.2.0

[*] Only build, no unit testing.

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.1.0.2.2.0.tar.gz (50.6 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.1.0.2.2.0-cp39-cp39-win_amd64.whl (379.9 kB view details)

Uploaded CPython 3.9Windows x86-64

zivid-2.1.0.2.2.0-cp38-cp38-win_amd64.whl (379.9 kB view details)

Uploaded CPython 3.8Windows x86-64

zivid-2.1.0.2.2.0-cp37-cp37m-win_amd64.whl (383.4 kB view details)

Uploaded CPython 3.7mWindows x86-64

zivid-2.1.0.2.2.0-cp36-cp36m-win_amd64.whl (383.5 kB view details)

Uploaded CPython 3.6mWindows x86-64

File details

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

File metadata

  • Download URL: zivid-2.1.0.2.2.0.tar.gz
  • Upload date:
  • Size: 50.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.5

File hashes

Hashes for zivid-2.1.0.2.2.0.tar.gz
Algorithm Hash digest
SHA256 f2169364e5ce6c73284186b65c7eaf176bd270dc923240810cfd1871a01781f5
MD5 64310806a35eda23a7a9bff5ea7ae7d0
BLAKE2b-256 b659ddce9eb8ea88650dc719237b307f64cfdfe01dd10a68ae2dc6f629638250

See more details on using hashes here.

File details

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

File metadata

  • Download URL: zivid-2.1.0.2.2.0-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 379.9 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.5

File hashes

Hashes for zivid-2.1.0.2.2.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 feac7623f69a23a9a8c84b794917ca1a9ccec8b9648f9e2c439bbb946fe8aeb5
MD5 cbc184c3feffbede35cdfb9911af3dc6
BLAKE2b-256 0b38b26325b86c4e9e71f4a279d5130a593d557b703d567d83f0458e72e48029

See more details on using hashes here.

File details

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

File metadata

  • Download URL: zivid-2.1.0.2.2.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 379.9 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.5

File hashes

Hashes for zivid-2.1.0.2.2.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 d6abfe0f06ea5f293a427f5f3d3b93fe147d1c26dac34951c219c32732321903
MD5 10e0c80cb77ab3c40062b5d4f25e3a87
BLAKE2b-256 bef617273b9d2e028f998498c4d7e01612b1ae96d28de044b5804bc2533967ac

See more details on using hashes here.

File details

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

File metadata

  • Download URL: zivid-2.1.0.2.2.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 383.4 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.5

File hashes

Hashes for zivid-2.1.0.2.2.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 a19f8e54c6049564a097ada8809660ee0f79e13de8805a6622e2e57a461b2804
MD5 76bcc574d928ae99f86e9710916bb843
BLAKE2b-256 ef6cf99410e967ed6ad072738bac021ff34596c9a0329d2abce1ba38a7870686

See more details on using hashes here.

File details

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

File metadata

  • Download URL: zivid-2.1.0.2.2.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 383.5 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.24.0 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.8.5

File hashes

Hashes for zivid-2.1.0.2.2.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 5a7827df8855786ec4c1efacb4c059df1933c4324016979f4cd42c8d9202d47b
MD5 b3645a6d5665cd708bafb29b524911c3
BLAKE2b-256 e1f4e9535d9d207cb07ebfa97ce1de189e5a14d3f9a19d6fd3fd1148df4537b3

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