Skip to main content

Python package for signal reconstruction.

Project description

Introduction

SigPy is a package for developing iterative signal reconstruction methods. It is built to operate directly on numpy arrays on CPU and cupy arrays on GPU. This allows users to easily use Sigpy with other packages. It also provides preliminary support for distributed computing using mpi4py.

SigPy provides simple interfaces to commonly used signal processing functions, including convolution, FFT, NUFFT, wavelet transform, and thresholding functions. All functions, except wavelet transform, can run on both CPU and GPU.

These functions are wrapped in two higher level classes to better interface with iterative methods: Linop, which abstracts linear operator, and Prox, which abstracts proximal operator. SigPy provides an abstraction class Alg for iterative algorithms, and implements commonly used methods, including conjugate gradient, (accelerated/proximal) gradient method, and primal dual hybrid gradient.

These classes can then be used to build an App as a final deliverable. An App simplifies the usage of Alg, and provides convenient features such as iteration progress bars. A particularly useful App implemented is the LinearLeastSquares App.

SigPy also provides a submodule sigpy.mri that uses the core module to implement common MRI iterative reconstruction methods, including SENSE reconstruction, l1-wavelet reconstruction, total-variation reconstruction, and JSENSE reconstruction. In addition, it provides convenient simulation and sampling functions, such as poisson-disc sampling function, and shepp-logan phantom generation function.

SigPy provides a preliminary submodule sigpy.learn that implements convolutional sparse coding, and linear regression, using the core module.

Installation

The package is on PyPI, and can be installed via pip:

pip install sigpy

To enable GPU support, the package requires CuPy.

To enable distributed programming support, the package requires mpi4py.

Alternatively, the package can be installed from source with the following requirements:

  • python3

  • numpy

  • pywavelets

  • numba

Documentation

Our documentation is hosted on Read the Docs: https://sigpy.readthedocs.io

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

sigpy-0.0.7.tar.gz (56.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sigpy-0.0.7-py3-none-any.whl (74.7 kB view details)

Uploaded Python 3

File details

Details for the file sigpy-0.0.7.tar.gz.

File metadata

  • Download URL: sigpy-0.0.7.tar.gz
  • Upload date:
  • Size: 56.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/3.6

File hashes

Hashes for sigpy-0.0.7.tar.gz
Algorithm Hash digest
SHA256 61175392a2b17cf31fed8d876951f8525149cb90773acc74f1a07cafeb60311a
MD5 ffd4105e92df13fc938a4e0443da616d
BLAKE2b-256 6fa0c9cc1eb802840d912db3ac2601f27b66b814a576ee8d3d2b076fd017da42

See more details on using hashes here.

File details

Details for the file sigpy-0.0.7-py3-none-any.whl.

File metadata

  • Download URL: sigpy-0.0.7-py3-none-any.whl
  • Upload date:
  • Size: 74.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/3.6

File hashes

Hashes for sigpy-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 725ccd0d2067f4896657167e9ea60a46da2769953666807b586c19611144b23b
MD5 d501deec194ac7520faa5980a2f0afa5
BLAKE2b-256 5dd01e8d51eb13d4fc855e45be4cf2057369b571a0a97380dce8054a86ae196c

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