Skip to main content

Compiled Python Bindings for the CUVIS SDK.

Project description

image

cuvis.pyil (python interface layer; required for using the python wrapper)

cuvis.pyil is the python interface binding for the Cuvis SDK written in C (available here).

For other supported program languages, please have a look at the source code page.

Installation

Prerequisites

First, you need to install the Cuvis C SDK from here. The installation registers the installation path in the environment, which the python interface layer is linked to.

:warning: If the C SDK is reinstalled into another directory later on, the linkage breaks and the python wrapper might stop working.

Via pip

If you wish to use cuvis-il within another project, from within your project environment, run

pip install cuvis-il

or add cuvis-il to your project requirements.txt or setup.py. We currently provide pre-compiled binaries for Python 3.9, 3.10, 3.11, 3.12 and 3.13 for Windows, Ubuntu 20.04 and Ubuntu 22.04 (all 64-bit).

Build manually via repository

If you wish to download and use cuvis locally, clone the git repository

git clone git@github.com:cubert-hyperspectral/cuvis.pyil.git
cd cuvis.pyil

and then initialize the submodules.

git submodule update --init --recursive

For building the python stubs for wrapping between C libraries and python, you'll need SWIG (see https://www.swig.org/download.html).

Next make sure that your preferred version of NumPy is manually pre-installed in your go-to environment. See here. Also make sure that the additional build dependencies are installed.

python -m pip install wheel setuptools numpy==YOUR_NUMPY_VERSION -qq 

Then use CMake (see https://cmake.org/download/) to configure and generate your project. CMake will require you to locate the Cuvis C SDK (this should be found automatically, if the Cuvis C SDK is properly installed). Also, you need to point the variable SWIG_EXECUTABLE to the path of the swig.exe.

Build and install the CMake Project via

mkdir build
cd build
cmake  -DCMAKE_BUILD_TYPE=Release -DDOXYGEN_BUILD_DOCUMENTATION=OFF -DPython_ROOT_DIR=venv ..
cmake --build . --target cuvis_pyil --config Release
cp ./_cuvis_pyil.so ../cuvis_il
cp ./cuvis_il.py ../cuvis_il
cd ..
python -m pip install .

This project will then generate the _cuvis_pyil.pyd and cuvis_il.py files needed for running the Cuvis Python SDK wrapper. Those then can be used to install the cuvis_il package.

:warning: You might also use the cuvis_il.py directly, which provides all functionalities as single methods without organization into objects. Support for code without the additional wrapper is limited, though.

Dependency to NumPy

The python interface layer is dependent on NumPy. Specifically, this means that we need the C headers of the NumPy library. Notice that NumPy has forward compatibility for minor versions. As of version 1.25 NumPy also offers its ABI in a backwards compatible way. To compile the python interface layer install your preferred version of NumPy. For example the newest stable release via

pip install numpy

CMake will try to find the NumPy path using the find_package(Python REQUIRED COMPONENTS Interpreter Development NumPy). To support the usage of a virtual environment, set the Python_ROOT_DIR variable to the directory containing your virtual environment.

Our pre-compiled binaries are compiled with 2.0.0 (Python 3.9, 3.10, 3.11, 3.12 and 3.13). This should ensure that the bindings are build in a forward and backwards compatible way.

Getting involved

cuvis.hub welcomes your enthusiasm and expertise!

With providing our SDK wrappers on GitHub, we aim for a community-driven open source application development by a diverse group of contributors. Cubert GmbH aims for creating an open, inclusive, and positive community. Feel free to branch/fork this repository for later merge requests, open issues or point us to your application specific projects. Contact us, if you want your open source project to be included and shared on this hub; either if you search for direct support, collaborators or any other input or simply want your project being used by this community. We ourselves try to expand the code base with further more specific applications using our wrappers to provide starting points for research projects, embedders or other users.

Getting help

Directly code related issues can be posted here on the GitHub page, other, more general and application related issues should be directed to the aforementioned Cubert GmbH support page.

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

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

cuvis_il-3.4.0-py314-none-win_amd64.whl (165.6 kB view details)

Uploaded Python 3.14Windows x86-64

cuvis_il-3.4.0-py314-none-manylinux_2_39_x86_64.whl (167.4 kB view details)

Uploaded Python 3.14manylinux: glibc 2.39+ x86-64

cuvis_il-3.4.0-py314-none-manylinux_2_35_x86_64.whl (167.1 kB view details)

Uploaded Python 3.14manylinux: glibc 2.35+ x86-64

cuvis_il-3.4.0-py313-none-win_amd64.whl (162.8 kB view details)

Uploaded Python 3.13Windows x86-64

cuvis_il-3.4.0-py313-none-manylinux_2_39_x86_64.whl (167.4 kB view details)

Uploaded Python 3.13manylinux: glibc 2.39+ x86-64

cuvis_il-3.4.0-py313-none-manylinux_2_35_x86_64.whl (166.9 kB view details)

Uploaded Python 3.13manylinux: glibc 2.35+ x86-64

cuvis_il-3.4.0-py313-none-manylinux_2_31_x86_64.whl (165.0 kB view details)

Uploaded Python 3.13manylinux: glibc 2.31+ x86-64

cuvis_il-3.4.0-py312-none-win_amd64.whl (162.9 kB view details)

Uploaded Python 3.12Windows x86-64

cuvis_il-3.4.0-py312-none-manylinux_2_39_x86_64.whl (167.3 kB view details)

Uploaded Python 3.12manylinux: glibc 2.39+ x86-64

cuvis_il-3.4.0-py312-none-manylinux_2_35_x86_64.whl (166.9 kB view details)

Uploaded Python 3.12manylinux: glibc 2.35+ x86-64

cuvis_il-3.4.0-py312-none-manylinux_2_31_x86_64.whl (165.0 kB view details)

Uploaded Python 3.12manylinux: glibc 2.31+ x86-64

cuvis_il-3.4.0-py311-none-win_amd64.whl (161.9 kB view details)

Uploaded Python 3.11Windows x86-64

cuvis_il-3.4.0-py311-none-manylinux_2_39_x86_64.whl (166.9 kB view details)

Uploaded Python 3.11manylinux: glibc 2.39+ x86-64

cuvis_il-3.4.0-py311-none-manylinux_2_35_x86_64.whl (166.3 kB view details)

Uploaded Python 3.11manylinux: glibc 2.35+ x86-64

cuvis_il-3.4.0-py311-none-manylinux_2_31_x86_64.whl (165.0 kB view details)

Uploaded Python 3.11manylinux: glibc 2.31+ x86-64

cuvis_il-3.4.0-py310-none-win_amd64.whl (161.8 kB view details)

Uploaded Python 3.10Windows x86-64

cuvis_il-3.4.0-py310-none-manylinux_2_39_x86_64.whl (166.9 kB view details)

Uploaded Python 3.10manylinux: glibc 2.39+ x86-64

cuvis_il-3.4.0-py310-none-manylinux_2_35_x86_64.whl (166.3 kB view details)

Uploaded Python 3.10manylinux: glibc 2.35+ x86-64

cuvis_il-3.4.0-py310-none-manylinux_2_31_x86_64.whl (164.9 kB view details)

Uploaded Python 3.10manylinux: glibc 2.31+ x86-64

cuvis_il-3.4.0-py39-none-win_amd64.whl (161.8 kB view details)

Uploaded Python 3.9Windows x86-64

cuvis_il-3.4.0-py39-none-manylinux_2_39_x86_64.whl (166.9 kB view details)

Uploaded Python 3.9manylinux: glibc 2.39+ x86-64

cuvis_il-3.4.0-py39-none-manylinux_2_35_x86_64.whl (166.4 kB view details)

Uploaded Python 3.9manylinux: glibc 2.35+ x86-64

cuvis_il-3.4.0-py39-none-manylinux_2_31_x86_64.whl (165.1 kB view details)

Uploaded Python 3.9manylinux: glibc 2.31+ x86-64

File details

Details for the file cuvis_il-3.4.0-py314-none-win_amd64.whl.

File metadata

  • Download URL: cuvis_il-3.4.0-py314-none-win_amd64.whl
  • Upload date:
  • Size: 165.6 kB
  • Tags: Python 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for cuvis_il-3.4.0-py314-none-win_amd64.whl
Algorithm Hash digest
SHA256 c2a4b138fa5d0b501fa72b5954ed685ee6c981f3b8aa448b88d1f6c4505ca7ec
MD5 f1f84f0a2ee4fbf89ffb0fce5ee74d87
BLAKE2b-256 aa869dc6ef4e94231f984ca7f3aaf23b65ec7fd843deaa72e8d30af77062ea6f

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py314-none-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py314-none-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 36e6749cf683c85a16bfce9fe42cbc6e8579f5d861610d8690720bde87e38597
MD5 563cfa235d55759fc253f6802e97840e
BLAKE2b-256 3cc1c40ef75798dac273d07cb53f83a69460096537e309c98176913eba63de75

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py314-none-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py314-none-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 027cd8f7e5988932769f56cc7fe7b24614df90886c38b7bc7fde67349bf5a85b
MD5 47f3f5d7ec42fc9f13f7e2716c5024c4
BLAKE2b-256 51e5c735da1d6965f7199a85cdb1918099072d18478fe834d1b77ef255b11c2a

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py313-none-win_amd64.whl.

File metadata

  • Download URL: cuvis_il-3.4.0-py313-none-win_amd64.whl
  • Upload date:
  • Size: 162.8 kB
  • Tags: Python 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for cuvis_il-3.4.0-py313-none-win_amd64.whl
Algorithm Hash digest
SHA256 eb2c6875975d8f5b5babc37588cea502297f7e0515d2a7c4655f516c1fd4028d
MD5 e117668ce747b31f81620d27e25e183b
BLAKE2b-256 43a73317c2260574b490466111bdf634d0397fff6fea682e2ed88c24b27627d9

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py313-none-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py313-none-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 9df5da9b6dff4c00b847431249edff48d8e6d2f2110fcac790655dc330a4f965
MD5 58f8dd39401f625dd9399c114a677228
BLAKE2b-256 de5914e3fd97070d60d4a98a865fe297f723d5aa14a0402b7f0f9f8b81b7ea69

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py313-none-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py313-none-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 514fc99bb3c216f61b18f1c42c6cd7695407e3a2a7d1925234aca189320b5f32
MD5 310c5e64521670c7ad30ec97bddb4ab1
BLAKE2b-256 0184777c520f5eb7804c9a8752185164d0dd946b78ca3defb07f705383f819fd

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py313-none-manylinux_2_31_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py313-none-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 29bcb5f75d88db73975f45c0063ff710966619317bfa4b3156b54f43f70a6ffb
MD5 371336ee63dd4a5ff70de3878a88097a
BLAKE2b-256 c8fc95e48dac6b6f6610bbe8bfdfd7125c15edb2bd5b1769d50978d800aeb3fb

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py312-none-win_amd64.whl.

File metadata

  • Download URL: cuvis_il-3.4.0-py312-none-win_amd64.whl
  • Upload date:
  • Size: 162.9 kB
  • Tags: Python 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for cuvis_il-3.4.0-py312-none-win_amd64.whl
Algorithm Hash digest
SHA256 13f707e192c88c6156579eb21ccab8c937444653d4b9322463868cebcc104daf
MD5 6e2d6365ef76f8e2423e9bb6dd7b6864
BLAKE2b-256 ebb8ae563ffda5c7ea0e14eb05a9ab78f1b27140a97eb9376012475e6f42dcb9

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py312-none-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py312-none-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 fce687a8c8fcfe26e6df84b0904ee31305c1ce41dad9717ae775de741292e73d
MD5 0c7edc1b660cd783e24544b415ced171
BLAKE2b-256 0989820518ce14dae784cc408939ed3fe8003f12d3b783736dbd9517bda61806

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py312-none-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py312-none-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 48cab07f8ccde9eff4da4ecd46447d92b5569e93c9ad03c15f55755524a65ef9
MD5 7b975fdf943929c508616c8f4976e72d
BLAKE2b-256 bc69cf59008942fdcf9d4ac2af975d9047eb6a2b43ce43b5c407abe103498916

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py312-none-manylinux_2_31_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py312-none-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 8200d79cf4761a8983b5d29a8a3d6fef77af539f85079215f7f4e81bab701644
MD5 f558dc29f51838f0c24ceae391884f06
BLAKE2b-256 340323b6ce6a9da3696b541b9cbd3a998525a8310df635cd0e001af5b07713be

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py311-none-win_amd64.whl.

File metadata

  • Download URL: cuvis_il-3.4.0-py311-none-win_amd64.whl
  • Upload date:
  • Size: 161.9 kB
  • Tags: Python 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.6

File hashes

Hashes for cuvis_il-3.4.0-py311-none-win_amd64.whl
Algorithm Hash digest
SHA256 16550337badd7620054692d9c19370de860f8f814ea5116c5f5d8f2409ab3f45
MD5 56a5b986c21519572625f48e0c45cab0
BLAKE2b-256 4a84c925c38eedfbe94afa7bb1a37cf6cffdaff9053d7ee86953248066087070

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py311-none-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py311-none-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 667fcbc320f309946d1239b36ea458315192e7fa5244e2447d2d7ebe74e2721d
MD5 362bbd214160e8b9c7dacfef57f2d265
BLAKE2b-256 1b08de8a276ed90358bba0ebec4da7c444b40caaa50b154e7220b1c0c6f3aa41

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py311-none-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py311-none-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 8b02a72d0eca5d3f80406ff1fb5847cc7dd64b9f6412de693c9e8be9756a01ea
MD5 44db493dfdbcd3234be3f4ea9a9c1b96
BLAKE2b-256 3772bfd64933ebe7dcb946f6d7a025150e856219a972ad14704104a66ee4166f

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py311-none-manylinux_2_31_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py311-none-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 e2e9c9395a51bb15bf6a7d2a5251e4a44528345e1f63f0c01d58615a5d23900c
MD5 a34e686028695300a35f3aa014480c99
BLAKE2b-256 c3f09e580c965dfbe74784aedfbcb16ad6d8b35c7b20b21568c9d4ce2505bf97

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py310-none-win_amd64.whl.

File metadata

  • Download URL: cuvis_il-3.4.0-py310-none-win_amd64.whl
  • Upload date:
  • Size: 161.8 kB
  • Tags: Python 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.11

File hashes

Hashes for cuvis_il-3.4.0-py310-none-win_amd64.whl
Algorithm Hash digest
SHA256 5bf5913a9127995077cc7ec1b9ed32c386c385afb630a11bdc85ac810723c221
MD5 f9797ca04fb0612fef80470719824e9f
BLAKE2b-256 77084cd95fc9453d225b8a6df966179f2256cea2c9c0b2651c2e8df281a562e6

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py310-none-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py310-none-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 154887cb7d6773ee2231f80ce811e926a1d0be597cf8b6acda23dc8119269f73
MD5 7e9af549a134ab9c58d506aa2f7bba93
BLAKE2b-256 b70f0080787c779606328f0e8bde9986cc81873f8fa6b48941549adb4ec2d66f

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py310-none-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py310-none-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 b5b4f47ec11591a68fa64f761c98ef70a20b0846c2583502afc609e627463e8f
MD5 6fcbd37e261708ddbef65323531bcab0
BLAKE2b-256 942d9a9f087d0572027dd697c28f9d57bc8e21330738ee7bfe792f51d0f5746c

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py310-none-manylinux_2_31_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py310-none-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 fc496324804dbf3d0dd40f19d8aa84bf5712c04f68171fd1b54790043f82412f
MD5 1876ea47b2e1c84c6e47aa386cadec21
BLAKE2b-256 9abc55de6cfb8646824158a2e9e8101d1097053ca6d7542c32136e7498d82cf8

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py39-none-win_amd64.whl.

File metadata

  • Download URL: cuvis_il-3.4.0-py39-none-win_amd64.whl
  • Upload date:
  • Size: 161.8 kB
  • Tags: Python 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.13

File hashes

Hashes for cuvis_il-3.4.0-py39-none-win_amd64.whl
Algorithm Hash digest
SHA256 3b2eec91fc529bfde435ebdc037ceb42e9ebd6e41622ae7174ddb58ef28abb51
MD5 5efd4fb4d5a0229f87c2c325cada0510
BLAKE2b-256 41534f33329fa5884144c64f0228dc4f617e9925920a48fd0368fa4012e6fc7f

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py39-none-manylinux_2_39_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py39-none-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 e86bbaaba071f7b601fc56049927e15477b97d9949386630d9c573402729350c
MD5 dfc74362ff8c65f48628d8583b0439ff
BLAKE2b-256 cff627e12b63b8ccb389f88f9740e2fe8b86b4ac9b820a4afd5846c281c2aa82

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py39-none-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py39-none-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 ad534bdeb5d52abb254fababecc101626eea8a9c5d1ac82dd75dd99f7477600e
MD5 bfde604e491c22242ba94f774f3988e3
BLAKE2b-256 8434fcce288ae3d1d00bc505acd3705b126a626be3fb7e0b6251078919db928e

See more details on using hashes here.

File details

Details for the file cuvis_il-3.4.0-py39-none-manylinux_2_31_x86_64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.4.0-py39-none-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 bbe43cf6add6343d8a5c2f19be2f128e1b8abc2da1aceb5b97611a1a4243ee7b
MD5 41791f63781381152553b0c4522c051e
BLAKE2b-256 69f7eead090332086ca40e5632e7037aa2c79ea8d827685abf0b2c4070e18cd4

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