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 and 3.11 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.

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.1b3-py311-none-win_amd64.whl (117.6 kB view details)

Uploaded Python 3.11 Windows x86-64

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

Uploaded Python 3.10 Windows x86-64

cuvis_il-3.2.1b3-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.1b3-py311-none-win_amd64.whl.

File metadata

File hashes

Hashes for cuvis_il-3.2.1b3-py311-none-win_amd64.whl
Algorithm Hash digest
SHA256 bf10c7fca837ecb33031d4ef59ec2307e36a44cd60e635c2026521260e8d3af9
MD5 8475fe7726af0f7b4c8a83576c5069b9
BLAKE2b-256 26a0384bad959dd96a30fcc4688fdf051ae96548219b17595a7ff3a6936d83f5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.2.1b3-py310-none-win_amd64.whl
Algorithm Hash digest
SHA256 399d2a3a03f1bc73980360bf26923febf74c9838cefb45b346c38589bada02f4
MD5 341241cb32417831f1810cb1c1be43cc
BLAKE2b-256 e5ebe24748bc7cc0a4109d56842646bf5830567d120f8a9c984aae4d86e2fb13

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for cuvis_il-3.2.1b3-py39-none-win_amd64.whl
Algorithm Hash digest
SHA256 e814b50ffa024a2f721e23aa0a284cb2d18f342da9f0719273ab5e947e87a066
MD5 99f192fd2d7f99731fbd53a9d207fa8b
BLAKE2b-256 b84f26c64dc15c34b5ad13138aa6b4ddaf3191fd55abad83f88d96f4e73d5e73

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