Skip to main content

CSVD

Fast and Scalable Water Removal in MR Spectroscopic Data using Casorati Lanczos Singular Value Decomposition

Example code:

import numpy as np
import matplotlib.pyplot as plt
from numpy.fft import fft, fftshift

from CSVD import CSVD

t=np.arange(0,1024)*.01
ampl = np.random.normal(1,0.2,(1000,1))
fr = np.random.normal(-15,0.1,(1000,1))
sig1 = ampl * np.exp(-2*t) *np.exp(2*np.pi*fr*t*1j)

ampl2 = np.random.normal(1,0.2,(1000,1))
fr2 = np.random.normal(0,0.1,(1000,1))
sig2 = ampl2 * np.exp(-2*t) *np.exp(2*np.pi*fr2*t*1j)

ampl3 = np.random.normal(1,0.2,(1000,1))
fr3 = np.random.normal(15,0.1,(1000,1))
sig3 = ampl3 * np.exp(-2*t) *np.exp(2*np.pi*fr3*t*1j)

sig = sig1 + sig2 +sig3
noise = np.random.normal(0,1,(sig.shape)) + 1j*np.random.normal(0,1,(sig.shape))
sig = sig + 0.1*noise

csvd = CSVD(sig.T, 0.01)

sig_ = csvd.remove('auto',([-5,-20],[5,-10]),3)
plt.plot(fftshift(fft(sig[0,:])).T)
plt.plot(fftshift(fft(sig_[:,0])).T)
plt.legend(['Orginal signal', 'Water-removed signal'])
plt.savefig('example.jpg')
plt.show()

output: example

Acknowledgments

This project has received funding from the European Union's Horizon 2020 research and innovation program under the Marie Sklodowska-Curie grant agreement No 813120.

Release files for CSVD 0.1.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for CSVD 0.1.6
File Size Uploaded
CSVD-0.1.6.tar.gz 4.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for CSVD 0.1.6
File Interpreter ABI Platform
CSVD-0.1.6-py3-none-any.whl Python 3 none any Details

Total release size: 9.1 kB

Release files / CSVD-0.1.6.tar.gz

Download URL CSVD-0.1.6.tar.gz
Size 4.2 kB
Tags Source
SHA-256 checksum
How to use checksums
db9ee2ec89e555e54848a0eff1731fc4a183073b00005fbfa8df8caf89c44f07
BLAKE2b-256 checksum
How to use checksums
49befef040092c33847b85c79a327c93044b6d81da7cb550e5ffc88ba78ccc3e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.7.5

Release files / CSVD-0.1.6-py3-none-any.whl

Download URL CSVD-0.1.6-py3-none-any.whl
Size 4.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
725dae7da3b2609906515d0b2387712ceee5a8b231c6df7cb3806cb1ba23f6f7
BLAKE2b-256 checksum
How to use checksums
f4e963df4ba42e9d76aff7673325c41544bc2d7ce7b8d35ecb323ba3dc394d2a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.7.5

Release history Release notifications | RSS feed

This release

0.1.6 This release

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page