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.5.0-py314-none-win_amd64.whl (167.4 kB view details)

Uploaded Python 3.14Windows x86-64

cuvis_il-3.5.0-py314-none-manylinux_2_39_x86_64.whl (168.8 kB view details)

Uploaded Python 3.14manylinux: glibc 2.39+ x86-64

cuvis_il-3.5.0-py314-none-manylinux_2_35_x86_64.whl (168.6 kB view details)

Uploaded Python 3.14manylinux: glibc 2.35+ x86-64

cuvis_il-3.5.0-py313-none-win_amd64.whl (164.3 kB view details)

Uploaded Python 3.13Windows x86-64

cuvis_il-3.5.0-py313-none-manylinux_2_39_x86_64.whl (168.8 kB view details)

Uploaded Python 3.13manylinux: glibc 2.39+ x86-64

cuvis_il-3.5.0-py313-none-manylinux_2_35_x86_64.whl (168.3 kB view details)

Uploaded Python 3.13manylinux: glibc 2.35+ x86-64

cuvis_il-3.5.0-py313-none-manylinux_2_31_x86_64.whl (166.4 kB view details)

Uploaded Python 3.13manylinux: glibc 2.31+ x86-64

cuvis_il-3.5.0-py312-none-win_amd64.whl (164.7 kB view details)

Uploaded Python 3.12Windows x86-64

cuvis_il-3.5.0-py312-none-manylinux_2_39_x86_64.whl (168.8 kB view details)

Uploaded Python 3.12manylinux: glibc 2.39+ x86-64

cuvis_il-3.5.0-py312-none-manylinux_2_35_x86_64.whl (168.3 kB view details)

Uploaded Python 3.12manylinux: glibc 2.35+ x86-64

cuvis_il-3.5.0-py312-none-manylinux_2_31_x86_64.whl (166.4 kB view details)

Uploaded Python 3.12manylinux: glibc 2.31+ x86-64

cuvis_il-3.5.0-py311-none-win_amd64.whl (163.6 kB view details)

Uploaded Python 3.11Windows x86-64

cuvis_il-3.5.0-py311-none-manylinux_2_39_x86_64.whl (168.4 kB view details)

Uploaded Python 3.11manylinux: glibc 2.39+ x86-64

cuvis_il-3.5.0-py311-none-manylinux_2_35_x86_64.whl (167.7 kB view details)

Uploaded Python 3.11manylinux: glibc 2.35+ x86-64

cuvis_il-3.5.0-py311-none-manylinux_2_31_x86_64.whl (166.3 kB view details)

Uploaded Python 3.11manylinux: glibc 2.31+ x86-64

cuvis_il-3.5.0-py310-none-win_amd64.whl (163.7 kB view details)

Uploaded Python 3.10Windows x86-64

cuvis_il-3.5.0-py310-none-manylinux_2_39_x86_64.whl (168.4 kB view details)

Uploaded Python 3.10manylinux: glibc 2.39+ x86-64

cuvis_il-3.5.0-py310-none-manylinux_2_35_x86_64.whl (167.7 kB view details)

Uploaded Python 3.10manylinux: glibc 2.35+ x86-64

cuvis_il-3.5.0-py310-none-manylinux_2_31_x86_64.whl (166.4 kB view details)

Uploaded Python 3.10manylinux: glibc 2.31+ x86-64

cuvis_il-3.5.0-py39-none-win_amd64.whl (163.7 kB view details)

Uploaded Python 3.9Windows x86-64

cuvis_il-3.5.0-py39-none-manylinux_2_39_x86_64.whl (168.5 kB view details)

Uploaded Python 3.9manylinux: glibc 2.39+ x86-64

cuvis_il-3.5.0-py39-none-manylinux_2_35_x86_64.whl (167.8 kB view details)

Uploaded Python 3.9manylinux: glibc 2.35+ x86-64

cuvis_il-3.5.0-py39-none-manylinux_2_31_x86_64.whl (166.4 kB view details)

Uploaded Python 3.9manylinux: glibc 2.31+ x86-64

File details

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

File metadata

  • Download URL: cuvis_il-3.5.0-py314-none-win_amd64.whl
  • Upload date:
  • Size: 167.4 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.5.0-py314-none-win_amd64.whl
Algorithm Hash digest
SHA256 158c9a259b633001cf29de90abf34576b648521bedb5cd9ec8009909f47a695e
MD5 13ca57af9f554137bbe8e8826516aa7a
BLAKE2b-256 332327736f89b38cfb883cf03526b045b9f0d5e9061c2c3e17e970166c57b7c3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py314-none-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 bb1d6eabc28e2e0be845489ff8001478bd099e96e469dbe82fd2d62d438c11e2
MD5 41f19e9ab53ca24694ae34876294c378
BLAKE2b-256 d506c5d576d06833830c5e53f47c6dcab6d8cefc72b424cf4dca443577d690fe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py314-none-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 e764fb89997fb9d77709ca6e03e6044111c246ebf0b24989e9243f1b0502b750
MD5 17593a3e3a66ccf32620842c35fd5777
BLAKE2b-256 e5956071bba6d6493a5c4dcdd5522f4369366180f009915e60c5a9b30554c6aa

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for cuvis_il-3.5.0-py313-none-win_amd64.whl
Algorithm Hash digest
SHA256 af545a6cfd48e421aec786c33f500aec7f0248b9f8d63c8c6c4037361b45ad86
MD5 ff2e1992e179148a5d639c5c96e800f1
BLAKE2b-256 6067dc1ea06db92b8b1c6e44df02071aec3eae5486b3d6d7d82034700040f5f2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py313-none-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 e714d7a5eb8da9eff2c4ffb5d09290a188566cbd791ad15921f1823303404dcc
MD5 10c34c4625845d0817f3b3c141657b76
BLAKE2b-256 c31bb763b34559e6489a25fa8d90567050e6a89daab4185ebd8759e32a3cdd14

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py313-none-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 bd69c630ef85e0dba79689f029d9b28a96f48929c40b5aa0e7f5d691d9ae4f01
MD5 fe9a16709d2c9b7df19725ce8a4c32b4
BLAKE2b-256 953f16c9e377c7def2ef4d568ab09e398274586d27fc09181451dd8944e31e25

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py313-none-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 d3c639d16bdf489b1734058e89630dae56c9340464667941765e543b4fe3f465
MD5 e1b9565e1f008f7094e38acecee4c9f2
BLAKE2b-256 d14b9e74bf29affebe2790e8666a006874dd69c08e4f855903cf46dc99fb2d8b

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for cuvis_il-3.5.0-py312-none-win_amd64.whl
Algorithm Hash digest
SHA256 0dfa8b919063016b08558f0fd800f3c38a8494614d7915217b053aaa58f9aca9
MD5 b5ba6dec627cd7c4b1bc041ed087c6ae
BLAKE2b-256 2c5f33c71f106dbb4927c04c60dba7a329f86f1184047a58c9e369cd9d932eab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py312-none-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 bc1e301bf80bc541ed1553efa1293633835fd07bc4c54b9e9fd28296109d6b1f
MD5 95c2ba7481d3b8f5f01133213a44d710
BLAKE2b-256 3b4160b40841c81a37a251e45a8013b13a1ad8cf2dca9c3b9ea4bdf92d1e8810

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py312-none-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 3853a5427792b2ad8ba41eabb213f3a627fd11ab4be4aefce10be951df60ba1f
MD5 e61aa261df8dc18548446beb0fc877e6
BLAKE2b-256 a6a939165db28f575b7e0a74460554388e90e668d4d82f6242ee5424bb4ee28a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py312-none-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 7b1bd72d56323a47103c67c83a78baa565140648a9c36e8fc549f7c1ef6bf300
MD5 2d2445dbe191534dcc1a6bb962210600
BLAKE2b-256 fecde974bcf677a9624061dcad12a8366e4a0776dc36a2856ede3290326be0ae

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for cuvis_il-3.5.0-py311-none-win_amd64.whl
Algorithm Hash digest
SHA256 b2bd03c8e07aa0885eeddb19aa9c30ec64d3944ea3f21d5bdf641a8f4b6dbcae
MD5 8ab19da76b31b824d8c861ce39b6ed40
BLAKE2b-256 dd414ce199021c2bc0b3f57416d9c9bf5935e2fefc0c02e612f0435f153c4e50

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py311-none-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 eb75b74e437c8fc5456032623715aa7dfe95d6b1c4def3594fcdf53089921b7a
MD5 694f291b05fd2a7b50ed1dc072c310c2
BLAKE2b-256 17363e938a09b6ac5b5a6efa2c6c2c25a894935c7347174ddebadd53901e9b94

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py311-none-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 f486cebcf5445b87d0ad5b543c46e612d19932a39e3dae9e9c1b0fa830adaa98
MD5 02494d0fff55a6bdff723d3acd790598
BLAKE2b-256 0bac2e2103326c74584eb57657676846deb887ac5ad48d6bd6ced2edb9093756

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py311-none-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 2bdec689b4760b36f2bd532ce7c4ed1deb0f0c7c5c5585764210411c2bd39404
MD5 60685dc4d0066a59f3ef6dc0677a3805
BLAKE2b-256 013011a263791022255db8d778d74e8e79270b483132b789be40502d845d4d8c

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for cuvis_il-3.5.0-py310-none-win_amd64.whl
Algorithm Hash digest
SHA256 e1568968a3325417b718257df50d191e25f219c8e92627b257b541fab66ee20d
MD5 4e4981821a330b7e99b01ff0364a1fa4
BLAKE2b-256 917b679b14593b0c62416ff6a5582b7e2339077173090e14822a0c0c7d80f80d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py310-none-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 cbb5c45dbccfef54e7b353c3aa9df9d9b34944e92ce623fcd59f656859778f20
MD5 b646de7896d88df00274d29e0c9438d9
BLAKE2b-256 938bc38a74f10325dd5d7f127bcbb18b132bf02802ebe84f4c24e29db9b42090

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py310-none-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 5cce2a6501927c2450db64900734b12a6958130ea6ddb636dce1a9f905b1b94a
MD5 63f705fd5305549a45bf7cde824fa56a
BLAKE2b-256 73f16481dcf56887dc54af1ab5b7247a53ebb4d3f71fcefd45a29b3d5f9c286a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py310-none-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 bc2fade236e014000541a70a9e03c0e0dbfae651a46e8007a53ddae787d17a55
MD5 49e7a83ef2b1a5584aed8334c7918cd4
BLAKE2b-256 0a0dcc31949aa0216e84f4be440f231a1166db32c933fb16a92407ad3f0f9b67

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for cuvis_il-3.5.0-py39-none-win_amd64.whl
Algorithm Hash digest
SHA256 94194922ee8df0ba4c76151026888475cd35b50a3cd453ad46b985102a9e0a29
MD5 0cc64b87d12c09f44ca71724fb19bce4
BLAKE2b-256 2ceee66b5dac18547756dd0be947cee5cd83231ebcd78341e5f427b36d524534

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py39-none-manylinux_2_39_x86_64.whl
Algorithm Hash digest
SHA256 80b632ba9dd9a33423068cdfc9e104847aae7d5f623e8173a59a0f03801fb9f3
MD5 74d536f7dde582857eabe1faa63ecfee
BLAKE2b-256 304897372058404392d4d6ce4a7d66bbbe0a37d72105c19a16971aecb48b57a0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py39-none-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 010c757f0b4e4242376b154ea501ae5a59c3f3451d73501fea2ba069575c2bb5
MD5 7015dad8300cb643dd8edb75e5c75a25
BLAKE2b-256 89033045b54da1e16fd03e45d88ac7e07fd8fa8bc1fd52e1b9827381e62e1606

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.5.0-py39-none-manylinux_2_31_x86_64.whl
Algorithm Hash digest
SHA256 67500afb8f4aee29fcf45af0e2fc82eef85845a9f65465ae148cfbce5f4d3630
MD5 5cd0d3ff30415a0efdfbb9cac59cb33c
BLAKE2b-256 31c1c4604ec5610c5c8fafcecbd107cbda0ba4a7a40cf1dbb4b32277756802c5

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