Compressed Sensing library for 1D Spectroscopic Profiling Data
Project description
cs1
Compressed Sensing library for 1D Spectroscopic Profiling Data
module | sub-module | description |
cs1.basis | cs1.basis.common | commonly used non-adaptive CS transform bases |
cs1.basis.adaptive | adaptive CS transform bases, e.g., LDA (linear discriminant analysis)-based, EBP (eigenvector-based projection) | |
cs1.cs | basic functions for CS sensing, recovery, hyper-parameter grid-search, etc. | |
cs1.metrics | CS-related metrics, e.g., mutual coherence, sparsity, MSE, KLD | |
cs1.security | cs1.security.tvsm | time-variant sensing matrix mechanism |
cs1.domain | cs1.domain.audio | contains functions for audio and other one-dimensional signal processing. e.g., wave file I/O, lossy compression, ECG simulator |
cs1.domain.image | contains functions for image processing. e.g., image CS, lossy compression |
Installation
pip install cs1
A simple startup
import cs1
# Generate common non-adaptive bases and save to a local pickle file.
# The generation process can be very slow, so save it for future use.
cs1.basis.common.Generate_PSIs(n, savepath = 'PSIs_' + str(n) + '.pkl') # n is the data/signal dimensionality
# load back bases
file = open('PSIs_' + str(n) + '.pkl','rb')
PSIs = pickle.load(file)
file.close()
# sparsity analysis
cs1.metrics.analyze_sparsity(x, PSIs)
# compare different bases and sampling ratio on a single sample
rmses = cs1.cs.GridSearch_Sensing_n_Recovery(x, PSIs, solver = 'LASSO') # returns relative MSEs
low-level cs functions
from cs1.basis.common import *
dftmtx()
dctmtx()
hwtmtx()
from cs1.cs import *
sensing()
recovery()
from cs1.metrics import *
mutual_coherence()
...
singal processing functions for audio / image domains
from cs1.domain.audio import *
simulate_ECG()
dct_lossy_signal_compression()
dft_lossy_signal_compression()
from cs1.domain.image import *
img_dct()
img_dft()
dct_lossy_image_compression()
dft_lossy_image_compression()
adaptive cs bases
from cs1.basis.adaptive import *
PSI, _ = EBP(X) # X is a m-by-n training dataset. PSI is the EBP basis
PSI, _, _ = LDA(X, y, display = True) # X and y are training dataset. PSI is the LDA basis.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
cs1-0.1.1.tar.gz
(33.3 kB
view details)
Built Distribution
cs1-0.1.1-py3-none-any.whl
(35.4 kB
view details)
File details
Details for the file cs1-0.1.1.tar.gz
.
File metadata
- Download URL: cs1-0.1.1.tar.gz
- Upload date:
- Size: 33.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1a4195cb081f19d9e11c1b3a54a1a4a60dd75670724bab0ac8b46980cd1c4a7d |
|
MD5 | 0eb9ed3d77a5e5cce778edaec4e099e0 |
|
BLAKE2b-256 | 8f67b5e17add6c9af7b6fa55523842e34bb1cfc6a701f0729912b9e0f9c18e32 |
File details
Details for the file cs1-0.1.1-py3-none-any.whl
.
File metadata
- Download URL: cs1-0.1.1-py3-none-any.whl
- Upload date:
- Size: 35.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 174afd7591b8aec773aefaa7638e63ffb82678b4a0f42600be6cf5cd4a1164b4 |
|
MD5 | 6ae3dcbc08f88c2e4150ba20a7fcdfbc |
|
BLAKE2b-256 | b4ea1f6891d100223298ff1588d0fce48177835a1bd354492c90947890c6052d |