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 and 3.12 for Windows 64-bit.

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

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.

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.

This project will then generate the _cuvis_pyil.pyd and cuvis_il.py files needed for running the Cuvis Python SDK wrapper.

: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 backwards compatibility. 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 1.22 (Python 3.9 and 3.10), 1.23 (Python 3.11) and 1.26 (Python 3.12).

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

cuvis_il-3.2.1-py312-none-win_amd64.whl (118.2 kB view details)

Uploaded Python 3.12 Windows x86-64

cuvis_il-3.2.1-py311-none-win_amd64.whl (117.5 kB view details)

Uploaded Python 3.11 Windows x86-64

cuvis_il-3.2.1-py310-none-win_amd64.whl (117.5 kB view details)

Uploaded Python 3.10 Windows x86-64

cuvis_il-3.2.1-py39-none-win_amd64.whl (117.6 kB view details)

Uploaded Python 3.9 Windows x86-64

File details

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

File metadata

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

File hashes

Hashes for cuvis_il-3.2.1-py312-none-win_amd64.whl
Algorithm Hash digest
SHA256 97397d55b29d1e63a711a8ea27ff8a63dedb1e279d35afb7daf1a442f714534f
MD5 527c6f7a7e6e748dd76773c24f98aab2
BLAKE2b-256 9146868fd8b925bfdca03cfdfbb591879093cf5c40abe8da7fe02c49b929bd47

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for cuvis_il-3.2.1-py311-none-win_amd64.whl
Algorithm Hash digest
SHA256 3919b52cc983f1d2d9ee29ff51f84dbcab10403748e0e2a2018cd15823ceec88
MD5 9d45a8787a4417a2ab67f2090dee905c
BLAKE2b-256 bdb0c2e90bd496f5bb5d156551c4cc5e4710f84eb967e6e41e9c22d11734e8ba

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for cuvis_il-3.2.1-py310-none-win_amd64.whl
Algorithm Hash digest
SHA256 91a0c72c7c952e774aab40490f55c4db8d1224e84b3ff7c727cd3497ad8d484e
MD5 e93ef82b8ae50ea032477f754175133d
BLAKE2b-256 9c27fc67924b778eb9cf591113a97592396679953c3d0e00a4a3ef0e1b8f3062

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for cuvis_il-3.2.1-py39-none-win_amd64.whl
Algorithm Hash digest
SHA256 279aa47d37918b9c0e22e08020ed0b76ccbc34218807aabde0a0421ede40100b
MD5 48cf411930586212e45d897726ec69f7
BLAKE2b-256 06aa8eb8c78a238d89cdc41152dfeb294eda066297abcf92786e9462d3a528dd

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page