Pycsou-gsp is the graph signal processing extension of the Python 3 package Pycsou for solving linear inverse problems. The extension offers implementations of graph convolution and differential operators, compatible with Pycsou's interface for linear operators. Such tools can be useful when solving linear inverse problems involving signals defined on non Euclidean discrete manifolds.
Graphs in Pycsou-gsp are instances from the class pygsp.graphs.Graph from the pygsp library for graph signal processing with Python.
The package, named pycgsp, is organised as follows:
- The subpackage
pycgsp.linopimplements the following common graph linear operators:- Graph convolution operators:
GraphConvolution - Graph differential operators:
GraphLaplacian,GraphGradient,GeneralisedGraphLaplacian.
- Graph convolution operators:
- The subpackage
pycgsp.graphprovides routines for generating graphs from discrete tessellations of continuous manifolds such as the sphere.
Pycsou-gsp requires Python 3.6 or greater. It is developed and tested on x86_64 systems running MacOS and Linux.
Before installing Pycsou-gsp, make sure that the base package Pycsou is correctly installed on your machine. Installation instructions for Pycsou are available at that link.
The package extra dependencies are listed in the files requirements.txt and requirements-conda.txt.
It is recommended to install those extra dependencies using Miniconda or
Anaconda. This
is not just a pure stylistic choice but comes with some hidden advantages, such as the linking to
Intel MKL library (a highly optimized BLAS library created by Intel).
>> conda install --channel=conda-forge --file=requirements-conda.txtPycsou-gsp is also available on Pypi. You can hence install it very simply via the command:
>> pip install pycsou-gspIf you have previously activated your conda environment pip will install Pycsou in said environment.
Otherwise it will install it in your base environment together with the various dependencies obtained from the file requirements.txt.
It is also possible to install Pycsou-gsp from the source for developers:
>> git clone https://github.com/matthieumeo/pycsou-gsp
>> cd <repository_dir>/
>> pip install -e .The package documentation can be generated with:
>> conda install sphinx=='2.1.*' \
sphinx_rtd_theme=='0.4.*'
>> python3 setup.py build_sphinxYou can verify that the installation was successful by running the package doctests:
>> python3 test.pyFor citing this package, please see: http://doi.org/10.5281/zenodo.4486431