Questions tagged [scipy]

The tag has no usage guidance.

Filter by
Sorted by
Tagged with
5
votes
1answer
186 views

Morphing between two FFTs

I'm a musician and I'm making a script that takes a wave file and snaps each of its frequencies from the fourier transforms to the nearest musical harmonic. Thanks to help from another question I ...
4
votes
1answer
895 views

How to generate random samples of Gaussian distribution directly in the frequency domain?

One can easily draw (pseudo-)random samples from a normal (Gaussian) distribution by using, say, NumPy: ...
4
votes
3answers
17k views

Calculating values of frequency bins in Python

I have to use FFT to determine the period of waves inside a signal, after applying the FFT on a window of 10000 point from a signal I get something like this: What I don't understand is that FFT is ...
3
votes
2answers
604 views

Do DCT results contain phase spectrum?

I've been working much with numpy.fft lately where just like the documentation says: When the input a is a time-domain signal and ...
3
votes
3answers
4k views

Why is Scipy implementation of Hilbert() function different from Matlab implementation of the function?

I am trying to fit Hilbert envelop to a high frequency ultrasonic signal of frequency 250 KHZ and sampling rate 12000000. Raw signal looks like below: . I used hilbert() function from scipy.signal ...
3
votes
1answer
808 views

Python different autocorrelation with FFT and non-FFT

Im trying to calculate the autocorrelation of soundwaves when I noticed that I get different results with scipys FFT based and with numpys methods. The 4 functions Im using: ...
3
votes
1answer
607 views

Scipy resample, “fourier method” explanation

I am seeking explanation of what "Fourier method" is that is described for resampling in documentation of resample() method. I want to downsample an array. I know what decimation is and how it works, ...
3
votes
1answer
2k views

How to compute the power bands of an eeg signal using python?

so I have an eeg signal (edf format) that has 25 channels and 248832 entries, sampling frequency of 512Hz. I have to compute the frequency bands: – Delta: 0.1-4Hz – Theta: 4-8Hz – Alpha: 8-12Hz – ...
3
votes
2answers
114 views

How to discard coefficients in the frequency domain without losing too much quality?

I was reading a text that shows that one can throw away 66% of the coefficients and gets an image that is still acceptable. I tried to replicate it using python (last example) and selectively ...
3
votes
1answer
1k views

How to implement bandpass filter on complex valued signal?

I am using Scipy to implement bandpass filter but it assumes that positive normalized frequency is passed but I & Q samples range from [Fc-Fs/2,Fc+Fs/2] where Fs is sampling frequency & Fc is ...
3
votes
2answers
2k views

Python butter filter: choosing between analog and digital filter types

I have a system that performs wireless sampling of data about every 7.5ms (133Hz). Due to it being wireless, I get occasional data drop out. I want to construct a LP butter filter with cut-off ...
3
votes
0answers
5k views

Downsampling and upsampling of a signal in Python

If I want to downsample a signal in Python, is it better to use method resample from SciPy Signal Processing module or method decimate from the same module? What is the difference between these two ...
2
votes
2answers
139 views

Why does a higher sampling frequency mess up my bandpass filter?

I was designing a bandpass filter in python using some of the scipy.signal modules. I am plotting the frequency response of my filter to verify that my desired frequency is in the passband. However, ...
2
votes
1answer
3k views

Butterworth band pass filter

I am trying to build a Butterworth bandpass filter. My intent is to have a pass band between $250\textrm{ Hz}$ and $1000\textrm{ Hz}$. However the plot doesn't look right, as can be seen from the ...
2
votes
3answers
210 views

Decreasing Sample Rate in DFT (FFT) for Audio Analysis

I'm working with audio data analysis through FFT algorithm. My example audio is a sine wave at 440 Hz and 44100 Hz sampling rate. FFT methods in programming, like ...
2
votes
1answer
180 views

consecutive filtered blocks with filtfilt

I'm doing basic signal processing in Python. I'm filtering consecutive blocks of a signal with scipy's filtfilt (to get zero phase). I would like to concatenate several blocks after filtering, however,...
2
votes
1answer
417 views

discrete digital filtering in python

I am not from DSP background and also not sure if I am posting this in right community. I have basic understanding of resistors, capacitors and filters. My requirement is as follows- The supply ...
2
votes
2answers
91 views

How to know when a sound in a given frequency starts and ends?

I need to detect two sounds (913 Hz and 1370 Hz), knowing the time in which each starts and ends. At this time, I am using a band pass filter (butter), and this is the result: Here is the first time ...
2
votes
0answers
280 views

real refractive index from Kramers Kronig relation

I have a measurement of the complex part of the refractive index $k$ (where the refractive index is $m = n + i\,k$) measured at a nonlinear grid of wavelengths or frequencies that span several orders ...
2
votes
0answers
215 views

Scipy.signal.dimpulse(system): how to translate a StateSpace to a “system”? [closed]

The command scipy.signal.dimpulse(system, x0=None, t=None, n=None) does not seem to accept a scipy StateSpace as an input to its ...
2
votes
0answers
171 views

Alternative to scipy maximum_filter to find peaks?

I'm using scipy maximum_filter together with binary_erosion to find peaks in my spectrum. I just wondering if there are any ...
1
vote
1answer
1k views

How to filter out those outliers

I'm struggling to filter some data from an accelerometer. I need to do it in python (and not just on the device collecting the data) to fix the data I have, so that I can build some classification ...
1
vote
1answer
137 views

Issue with the time vector returned by $\tt signal.spectrogram$ function

I'm puzzled by some very simple concept with building up a spectrogram. Here is a toy example of the issue: ...
1
vote
1answer
57 views

Help generating coefficients for basic FIR LPF

I'm trying to generate coefficients for a FIR low pass filter to be used in an FPGA. I'm using python (scipy.signal) to attempt to do this, but am having trouble getting coefficients in a usable form....
1
vote
1answer
1k views

How to design bandpass filter in python when centre frequency is greater than sampling frequency?

I implemented basic bandpass filter using Scipy resource. But how to implement the same when signal is centred at non-zero centre frequency with centre frequency > sampling frequency. I trying to ...
1
vote
1answer
3k views

How to normalize output of $\tt scipy.signal.correlate$

I have 2 different signals and I'm trying to cross-correlate then using Python 2.7 and scipy.signal.correlate. How do I normalize my results (such that the max ...
1
vote
2answers
962 views

Why does python's scipy.signal.dimpulse introduce delay in impulse response?

Consider a simple linear, time invariant system of the form: $y_k = cy_{k-1} + (1-c)x_k$ The impulse response of this system can be computed by either dimpulse or by applying lfilter to a vector ...
1
vote
1answer
2k views

Write a 440 Hz Sine Wave to .wav-File using Python and SciPy [closed]

This is my first post on DSP.SE! I'm a student in Computer Sciences and am just getting started with Signals and Systems, thus getting in touch with discrete signals and analyzing them. I wanted to ...
1
vote
1answer
939 views

Amplitude of frequency bin in FFT doesn't match time-domain amplitude

I have a sinusoidal current that I am sampling at about 357k SPS. The current signal is about 3A pk-pk @ 750hz (top figure). I am wondering why when I take the fft using numpy/scipy's fft function, ...
1
vote
1answer
518 views

Trying to implement MATLAB $\tt pwelch$ in Python

I'm implementing an existing MATLAB script in Python and noticing some differences in the behaviour of MATLAB's pwelch function compared to ...
1
vote
2answers
177 views

problem with decimate in scipy 0.18

I use scipy.signal.decimate to downsample a large spectroscopic data-set. This has worked superbly so far. ...
1
vote
2answers
216 views

Need of $\tt abs()$ method when plotting a power spectral density for a given dataset

I am a newbie in signal processing and would like to know the significance of using the abs() function and squaring the values received as an output of ...
1
vote
1answer
69 views

$n\textrm{ Hz}$ waveform sampled at $m\textrm{ Hz}$ per second

Here is an example of plotting a square wave given in SciPy Documentation A $5\textrm{ Hz}$ waveform sampled at $500\textrm{ Hz}$ for 1 second: ...
1
vote
2answers
3k views

Is there a function in python which returns the Amplitude/Sound Pressure Level of a sound file(like .wav) file?

I found a function called scipy.io.wavefile.read() which returns the sampling rate and an array. But in the documentation, it is not specified that whether the ...
1
vote
2answers
63 views

Checking Parseval's Theorem for Gaussian Signal by Using Scipy

I'm trying to check Parseval's theorm for Gaussian signal. It's well known that fourier transform of $\exp(-t^2)$ is $\sqrt{\pi}\exp(-\pi^2 k^2)$. So I implement it by using quad and simps. I think ...
1
vote
0answers
186 views

Understanding why spectral flatness cannot be computed

I have a real signal recorded 512Hz for 1s. After resampling the signal at 256Hz, I would like to compute its spectral flatness. To do so, I start by taking its discrete Fourier transform with ...
1
vote
0answers
2k views

How to design an interpolated notch filter in Python to filter powerline harmonics

I have a a time domain data set that records the magnetic field vs time, which must be processed to reveal an embedded signal. This data also contains power line harmonics (i.e. multiples of 60 Hz) ...
0
votes
2answers
85 views

Delay in Savitzky-Golay filtering

I am applying a Savitzky-Golay filter to a signal, using the scipy function. I need to calculate the lag of the filtered signal, and how much is it behind the original signal. Could someone shed ...
0
votes
1answer
58 views

How to convert a spectrogram back to a signal [duplicate]

I'm converting a signal to a spectrogram, manipulating that (nonlinear stuff), and then want to use the modified audio signal. I can make it so the segments are not overlapping, but am unsure how to ...
0
votes
2answers
285 views

How to calculate the PSD from the complex calculated STFT?

I have calculated the STFT with scipy python library: ...
0
votes
1answer
24k views

Convert RGB Image to Grayscale and Display It (Python + Matplotlib) [closed]

I just started learning image processing and I was trying to read a RGB image then convert it to grayscale. I was hoping for something like this: However, what I get was: I tried using both scipy ...
0
votes
2answers
94 views

Can I combine an IIR (an EWMA) with a maximum?

I'd like to have a exponentially weighted moving average (EWMA) which is raised to the value of the input signal whenever this is higher than the filter output. This taking of the maximum shall take ...
0
votes
1answer
587 views

Welch spectrogram

I have been using scipy's spectrogram function (STFT) to compute a PSD spectrogram for a non-stationary signal. I provide X length window (with nperseg = X/10) each ...
0
votes
1answer
608 views

How does scipy.signal.deconvolve work?

The deconvolve(signal, divisor) function of scipy ...
0
votes
1answer
56 views

Bandpass filter with very high sampling rate

Consider a bandpass filter with Low Cut 17Hz, High Cut 22 Hz, Fs = 45000 Hz and Order = 6. When I pass a mixture of multiple sinusoidal waves through this filter (with a sine wave of frequency 20 Hz), ...
0
votes
1answer
367 views

How to Apply Gaussian Filter to Raw Audio Files in Python?

I am recording raw files in python to later break them into phonemes, but the noise in the surrounding environment is hampering the result. So, there is a need to apply a filter to the recorded raw ...
0
votes
1answer
52 views

Unexpected peaks in power density following downsampling and filtering

I first applied a 100 Hz lowpass filter to my data, which was recorded at 30000 Hz: ...
0
votes
1answer
270 views

Should scipy.signal.coherence be 1 for single input and output signals?

I am trying to calculate the coherence between input and output signals. I thought I could work with a single input and a single output time series and calculate the coherence $\gamma^2$ between them. ...
0
votes
1answer
215 views

Outlier Detection after Detrending a Time Series With Missing Values or NaN

Goal Substitute outliers in a time series by most recent valid data Problem The time series (end-of-day stock prices) has several 'uncomfortable' properties: It is non-stationary and can have ...
0
votes
3answers
306 views

Problems designing high pass FIR filter with $f_\textrm{cutoff} \ll f_\textrm{s}$

Is there any inherant problems with high-passing a signal with a very low cutoff frequency compared to the sampling rate? I'm not sure what I am missing as I cant find any info on it. Examples ...