Skip to main content

No project description provided

Project description

Riemannian covariance estimation (riecovest)

This is a package for estimation of signal covariance matrices from noisy signal and noise-only data. The package is using pymanopt to perform optimization over Riemannian manifolds, using JAX to as a backend for automatic differentiation.

More info and complete API documentation

References

The code was developed as part of the paper J. Brunnström, M. Moonen, and F. Elvander, “Robust signal and noise covariance matrix estimation using Riemannian optimization,” presented at the European Signal Processing Conference (EUSIPCO), Sep. 2024. The examples folder contains code to replicate the results from the paper. If you use this software in your research, please cite the paper.

@inproceedings{brunnstromRobust2024,
  title = {Robust Signal and Noise Covariance Matrix Estimation Using {{Riemannian}} Optimization},
  booktitle = {European {{Signal Processing Conference}} ({{EUSIPCO}})},
  author = {Brunnstr{\"o}m, Jesper and Moonen, Marc and Elvander, Filip},
  year = {2024},
  month = sep,
  keywords = {covariance estimation,GEVD,low-rank,manifolds,MWF,quotient manifold,riemannian optimization,robust,SPD}
}

License

The software is distributed under the MIT license. See the LICENSE file for more information.

Installation

The package can be installed via pip from the PyPi repository:

pip install riecovest

Alternatively, clone this repository and install the package using:

pip install path/to/riecovest

To run the examples "reproduce_covest_t_distribution.py" and "reproduce_spatial_filtering.py" which reproduces the results from the aforementioned paper, a longer list of dependencies is needed. This list of dependencies can be found in requirements_examples.txt, and can be installed with pip:

pip install -r requirements_examples.txt

The example "reproduce_spatial_filtering.py" also makes use of the MeshRIR dataset. It must be downloaded from the original source along with the dataset loader irutilities.py. The dataset loader must be placed in the same folder as the example script.

Acknowledgements

The software has been developed during a PhD project as part of the SOUNDS ETN at KU Leuven. The SOUNDS project has recieved funding from the European Union's Horizon 2020 research and innovation programme under grant agreement No. 956369.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

riecovest-0.0.1.tar.gz (3.2 kB view details)

Uploaded Source

Built Distribution

riecovest-0.0.1-py3-none-any.whl (3.2 kB view details)

Uploaded Python 3

File details

Details for the file riecovest-0.0.1.tar.gz.

File metadata

  • Download URL: riecovest-0.0.1.tar.gz
  • Upload date:
  • Size: 3.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.5

File hashes

Hashes for riecovest-0.0.1.tar.gz
Algorithm Hash digest
SHA256 a68d57d1608792b34d1ac56997b4b2e2cbc9ae7a67341a1872ac43fd5cda1834
MD5 38b1f2923be7bd65a77c7ec7d47eeb01
BLAKE2b-256 d270625fb59cb6b5f3c232d0cf3a86ad7983f2b085154e75f38604d7929926b3

See more details on using hashes here.

File details

Details for the file riecovest-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: riecovest-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 3.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.5

File hashes

Hashes for riecovest-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c15c13c6b99a641c478685428708a1f311b97403a12163c31fabcda8cd3903c5
MD5 387e20660fbe533c045076253940ceaa
BLAKE2b-256 ba3b82952b4fa4696341c1e04bc5d3c43d96d1ce7ad8c9b3887d4abac69431ac

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