Questions tagged [signal-processing]

AKA digital signal processing (DSP). A signal is an information-carrying changing attribute of an entity, but in the digital sense, 'signal' refers to either received or transmitted streams/blocks of data, commonly representing real-world quantities such as audio levels, luminosity, pressure etc over time or distance. 'Processing' is the act of altering, analyzing or characterizing the data to retrieve/modify information inherent in the signal in question.

A signal is an information-carrying changing attribute of an entity, but in the digital sense, 'signal' refers to either received or transmitted streams/blocks of data, commonly representing real-world quantities such as audio levels, luminosity, pressure etc over time or distance.

These real-world quantities usually comes as analogue signals that are being sampled and quantized into a digital format, i.e. a sequence or higher-dimensional array of discrete numbers.

'Processing' is the act of altering, analyzing or characterizing the data to retrieve/modify information inherent in the signal in question.

NOTE: questions not related to the programming of signal processing implementations but the signal processing theory behind are off-topic for Stack Overflow and should be posted to the appropriate sister site, Signal Processing SE.

Common topics include:

  • digital filtering;
  • audio processing;
  • image processing;
  • sampling;
  • data compression;
  • spectral analysis;

Analysis tools commonly in practice are the Discrete Fourier Transform (DFT), especially its fast implementations (FFT); and wavelet transforms.

Common softwares used in the field include ; ; , especially with /; ///; ; and various languages.

5814 questions
17
votes
3 answers

Plotting FFT on octave

I know that FFT changes a function in the time domain to one showed in the frequency domain. However, when I try plotting said graph in the frequency domain, I can only get it to work properly by using the time as X-axis, when it was obviously…
Gabriel Maia
  • 173
  • 1
  • 1
  • 4
17
votes
1 answer

2D FFT using 1D FFT

I am trying to implement a 2D FFT using 1D FFTs. I have a matrix of size 4x4 (row major) My algorithm is: FFT on all 16 points bit reversal transpose FFT on 16 points bit reversal transpose Is this correct?
user1459175
  • 303
  • 1
  • 3
  • 10
17
votes
3 answers

Is there an FFT that uses a logarithmic division of frequency?

Wikipedia's Wavelet article contains this text: The discrete wavelet transform is also less computationally complex, taking O(N) time as compared to O(N log N) for the fast Fourier transform. This computational advantage is not inherent to the…
endolith
  • 25,479
  • 34
  • 128
  • 192
16
votes
1 answer

What are the use cases for TPL Dataflow over Reactive Extensions (Rx)

I'm specifically looking at writing some signal processing algorithms in one or other, or maybe some combination of both of these. Performance isn't a big concern, clarity of expressing intent is more important. I'd be looking to implement the…
16
votes
2 answers

Understanding Overlap and Add for Filtering

I am trying to implement the overlap and add method in oder to apply a filter in a real time context. However, it seems that there is something I am doing wrong, as the resulting output has a larger error than I would expect. For comparing the…
st-h
  • 2,444
  • 6
  • 37
  • 60
16
votes
3 answers

How to use the cross-spectral density to calculate the phase shift of two related signals

I've two signals, from which I expect that one is responding on the other, but with a certain phase shift. Now I would like to calculate the coherence or the normalized cross spectral density to estimate if there is any causality between the input…
16
votes
2 answers

Similarity between two signals: looking for simple measure

I have 20 signals (time-courses) in group A and 20 signals in group B. I want to find a measure to show that group A is different from group B. For example, I ran xcorr for the signals within each group. But now I need to compare them somehow. I…
user1597969
  • 405
  • 2
  • 5
  • 13
16
votes
3 answers

2D Convolution in Python similar to Matlab's conv2

I have been trying to do Convolution of a 2D Matrix using SciPy, and Numpy but have failed. For SciPy I tried, sepfir2d and scipy.signal.convolve and Convolve2D for Numpy. Is there a simple function like conv2 in Matlab for Python? Here is an…
user1343318
  • 2,093
  • 6
  • 32
  • 59
16
votes
2 answers

Determine frequency from signal data in MATLAB

I have data from a sensor and I need to find the frequency of it. It looks like fft() seems to be the way to go, but the MATLAB docs only show how to get a graph of the frequencies, I don't know what to do from there. Here's what my data looks…
edc1591
  • 10,146
  • 6
  • 40
  • 63
16
votes
3 answers

resizing 3D matrix (image) in MATLAB

I have a 3D matrix (MxNxK) and want to resize it to (M'xN'xK') (like imresize in matlab). I am using image pyramid, but its result is not very accurate and need a better one. Any solution?
16
votes
3 answers

Implementation of Goertzel algorithm in C

I am implementing BFSK frequency hopping communication system on a DSP processor. It was suggested by some of the forum members to use Goertzel algorithm for the demodulation of frequency hopping at specific frequencies. I have tried implementing …
anshu
  • 665
  • 4
  • 9
  • 22
16
votes
2 answers

What latency is required to make software fax using only speaker and mic?

The Story I don't possess any fax hardware, so its hard for me to communicate with people who have a fax noise answering on the phone. It is hard even to imagine that in 2012 people are still using devices that eat trees and paper for communication.…
anatoly techtonik
  • 19,847
  • 9
  • 124
  • 140
15
votes
1 answer

Tutorial on Autocorrelation?

Ive recently been considering using Autocorrelation for Pitch Detection. However, I am finding it difficult on finding good sources of where to learn autocorrelation, by this I mean sources that make it easy to understand autocorrelation…
user488792
  • 1,943
  • 7
  • 31
  • 38
15
votes
4 answers

Doing FFT in realtime

I want to do the FFT of an audio signal in real time, meaning while the person is speaking in the microphone. I will fetch the data (I do this with portaudio, if it would be easier with wavein I would be happy to use that - if you can tell me how).…
Rave
  • 835
  • 4
  • 15
  • 28
15
votes
6 answers

Load MIT-BIH Arrhythmia ECG database onto MATLAB

I am working on ECG signal processing using neural network which involves pattern recognition. As I need to collect all the data from Matlab to use it as test signal, I am finding it difficult to load it on to the Matlab. I am using MIT Arrhythmia…
L.fole
  • 687
  • 3
  • 12
  • 19