Hot answers tagged

5

Let's assume we have a sample rate of $f_s=10 kHz$ and FFT size of $N=1000$ Your bin spacing is $\delta f = 10 Hz$. It's simply the sample rate divided by the FFT size. That's all there is to it. Keep in mind that the FFT requires both the time domain and the frequency domain signal to be perodic. Most signals are not, so there needs to be some sort "...


3

I would simply say that it doesn't matter so much. The Fourier Transformation and its inverse are a pair and the two formulas are entangled and require a normalization factor, which is up to conventions. See eg enter link description here If your theory/model does not require a special convention, it is basically a degree of freedom that you can choose to ...


3

It depends, sometimes phase matters and sometimes it doesn’t. There is a paper by Oppenheim. Oppenheim, Alan V., and Jae S. Lim. "The importance of phase in signals." Proceedings of the IEEE 69.5 (1981): 529-541. where an image is reconstructed with just phase and with just magnitude. The phase only image is nearly the same while amplitude alone is a ...


3

First of all, if you use a logarithmic graph, it is customary to use dB. In order to convert a FFT in decibels, we use 20*log10, not log10. Second of all, the "unwanted" frequencies are 10^-30 times smaller than the wanted frequencies, i.e. they are insignificant. . The unwanted frequencies are most likely due to the limited precision of floating-point ...


3

I don't think Hilmar's answer is very good as it interprets the DFT within a specific application context. That confuses issues. The DFT is a tranform that works on a set of N samples. The samples are presumed to be evenly spaced in their domain on a finite interval of samples is called a frame. It may be time, it may be distance, or it could even be ...


2

In principal, you get $\text{Ws}=\text{J}$ for energy and $\text{W}$ for power, but as you are calculating these measures from a wav-file, you do not get any unit. What you get is just a ratio to the maximum possible value of a wav-file. A square wave with amplitude one has a level (power) of $0\text{ dBFs}$, which means dB Fullscale. Your signal has roughly ...


2

Much depends on what you want to deduce from your data. In general, if your sample rate is not uniform, your measurements should be accurately time stamped. The nearer to an average of 1/10 a second your sample intervals are the better. A typical hueristic used in Engineering is the 1/10 rule, so if your samples are within 1/100 of a second of 1/10 ...


2

Your code has some troubles, and perhaps also your theoretical understanding. Let me put here a mini summary of observing a practical sine wave and its frequency spectrum using FFT function of MATLAB / Octave. Assume that there's a continuous-time ideal infinitely long sinusoidal wave with frequency $\Omega_0$ given as: $$ x(t) = A \cos(\Omega_0 t) , \tag{...


2

This is expected and a consquence of Parseval's theorem. Loosely speaking, it's a flavor of energy conservation: the total energy of the signal doesn't change when you transform it from the time domain into the frequency domain so the energy calculated in either domain must be the same.


2

It simple trigonometry. A vector (FFT result bin) can have a magnitude and a phase. Or you can specify the same vector identically with X,Y coordinates. The complex representation simply uses X for the real part and Y for the imaginary component. Without an imaginary component, there’s no place to put the Y, and your vector would be under specified. The ...


2

FFT result bin spacing is proportional to sample rate and inversely proportional to the length of the FFT. Any two of the three (deltaF, SRate, N) can be independant parameters (within the range your equipment allows). That will determine the third. e.g. the maximum range of the two free variables in your spectrum analyzer settings will determine the ...


2

Your confusion is very much understandable because it took me a while to understand the frequency axis spacing issue. Finally after digging for years, I found that your question is answered by the theorem of Cooley (the man who made FT possible on computers) in 1967. It is sad that no textbook addresses this as a theorem but casually mentions in passing. ...


2

If you are interested in finding the periods, have a look at autocorrelation lag. Maybe try some xcorr options too. MATLAB example code: nh = 47; % 47 hours. % Pulse period of 1 hr and make sequence length not a multiple of period n = 3600*nh + 273; % 1 sec sampling rate x = zeros(1,n); % Create a pulse train with varying heights and some noise x(777:3600:...


1

I would say that you answered part of your own question by noting the reduction of variance with averaging. Most books tend to present signals that are either random or deterministic but signals can be somewhat of both character to varying extent. If your signal tends towards the deterministic, and high SNR, there isn’t a lot variation to reduce so the ...


1

If you were to change the relative phase of some FFT result bins, the place where all the peaks would line up could change, thus representing a time domain shift of some peak. The peaks or transients would be moved to occur earlier or later in the FFT window. Sometimes, an FFT analysis cares about the shape of the time domain waveforms and what time (...


1

Suppose you have a sinusoidal that has a whole number of cycles ($k$) in your DFT frame containing $N$ sample points. It can be parameterized like this: $$ x[n] = A \cos \left( \left( k\frac{2\pi}{N}\right)n + \phi \right) $$ If you take the $1/N$ normalized DFT of this (FFT is a DFT that is computed efficiently), all the bins will be zero except for bins ...


1

FFT computes the DFT which is $$X[k] = \sum_{n=0}^{N-1} x[n] e^{-j \frac{2\pi}{N} k n } $$ where $x[n]$ is a sequence of length $N$ defined in $0 \leq n \leq N-1$. The DC bin is $X[0]$; for $k=0$ $$ X[0] = \sum_{n=0}^{N-1} x[n] $$ is the sum of all samples of the signal $x[n]$. It's not the average, but the average is obtained simply by dividing it by $...


1

Depending on your normalization factor the DC bin is either the sum of the signal values in your frame (1), the average (1/N), a "representation" (1/sqr(N)), In the DFT formula the exponential value is $e^0$, or 1, for each term.


1

Yes, some kind of normalization needs to be done and it's a matter of convention which one to use. To explain, let $\mathbf{F}$ be a DFT matrix containing ${\rm e}^{-\jmath 2\pi \frac{mn}{N}}$. Then you can show that $\mathbf{F} \cdot \mathbf{F}^H = N \cdot \mathbf{I}_N$. This factor $N$ needs to be accounted for. Now, you can do either of the following: ...


1

You have a bunch of options here You can zero pad both impulse response and signal to 16k, FFT and multiply. That's very inefficient though. Keep in mind that the sum of length of filter and signal need to be equal or smaller then the FFT size, hence an 8k FFT doesn't work. This gets a little better if you can truncate the 8k impulse response down to 7.5k. ...


1

Here is a link with a bunch of stuff relating to HVR and how to calculate various features using python discrete-heart-rate-signal-using-python-part-1. Hope it helps.


1

In image denoising far more important then the noise distribution is the noise spatial correlation properties and the prior about the image. Let's try building some cases and dealing with them. The model is: $ y = x + n $ Where $ x $ is the clan image, $ n $ is the Poisson Noise (With mean $ \lambda $) and $ y $ is the noisy image. Noise Is Poisson ...


Only top voted, non community-wiki answers of a minimum length are eligible