29

FFT is actually not a great way of making a tuner. FFT has inherently a finite frequency resolution and it's not easy to detect very small frequency changes without making the time window extremely long which makes it unwieldy and sluggish. Better solutions can be based on phase-locked loops, delay-locked loops, auto correlation, zero crossing detection ...


21

It is actually not distorted, it is sampled at high enough rate. What fools you is the straight lines drawn between sample points, it gives you a false impression of the waveform. It shows you a linear interpolation of the signal. It does not represent how the signal would actually look like. A sampled signal exists only at the sample points, and to convert ...


15

Gabor filters are orientation-sensitive filters, used for texture analysis. The typically travel in packs, one for each direction. A gabor filter set with a given direction gives a strong response for locations of the target images that have structures in this given direction. For instance, if your target image is made of a periodic grating in a diagonal ...


15

The spectrum of a continuous tone is, as you said, of the form $\delta(f-f_0) + \delta(f+f_0)$: 2 impulses at frequencies $f_0$ and $-f_0$. As a lowpass signal, this is said to have bandwidth $f_0$ (the one-sided spectrum has components up to $f_0$). As a bandpass signal, it has zero bandwidth (there's nothing around the carrier frequency $f_0$). If you ...


14

Analog and digital First off, you need to understand what an "analog" signal is, and what a "digital" signal is, how they are different, and how they are similar. The term "analog" comes from the old distinction between "analog" and "digital" computers. A "digital computer", even a very primitive one of decades ago, has always been more or less what we ...


14

I would do a normalized autocorrelation to determine periodicity. If it is periodic with period $P$ you should see peaks at every $P$ samples in the result. A normalized result of "1" implies perfect periodicity, "0" implies no periodicity at all at that period, and values in between imply imperfect periodicity. Subtract the data sequence's mean from the ...


14

Figure 1.(c) shows the Test image reconstructed from MAGNITUDE spectrum only. We can say that the intensity values of LOW frequency pixels are comparatively more than HIGH frequency pixels. Actually, this is not correct. The phase values determine the shift in the sinusoid components of the image. With zero phase, all the sinusoids are centred at the same ...


13

One method that works if there's a relatively strong drum beat is to take the magnitude of the STFT of the waveform, and then auto-correlate it in only the time dimension. The peak of the auto-correlation function will be the beat, or a submultiple of it. This is equivalent to breaking up the signal into a lot of different frequency bands, finding the ...


12

An FFT reports spectrum frequency peak or peaks (quantized by FFT bin size), which is different from musical pitch. It's possible for the perceived pitch frequency to be completely missing from an FFT spectrum. Some of the simplest guitar tuners just used low-pass or band-pass filtering and measured the time between zero-crossings. The reciprocal gives a ...


12

The FFT can only be performed over a limited chunk of data. The basic math is based on the assumption that the time domain signal is periodic, i.e. your chunk of data is repeated in time. That typically results in a major discontinuity at the edges of the chunk. Let's look at a quick example: FFT size = 1000 points, Sample Rate = 1000 Hz, Frequency ...


11

suppose, Carrier signal frequency = 2800KHz message signal frequency = 3KHz Then you will get a signal that looks like this in the frequency plane. Obviously this is not to scale, but you get the idea. but what will happen if it is reversed ? i.e Message signal frequency = 2800KHz Carrie signal frequency = 3KHz please explain would happen here ? Then ...


11

Two remarks: I am assuming you are plotting the real (or imaginary) part of the Fourier transform. It is much more common to work with the magnitude or squared magnitude (power spectrum). The peak in the spectrum is a very poor measure of fundamental frequency (pitch). Take a piano note at 440 Hz, apply a notch filter to it to remove the 440 Hz component. ...


11

Posted for anyone who may find this useful... I created a picture that shows DFT frequency bin spacing for odd and even cases of N where N is the number of samples. FFTs usually operate on an even number of samples (the algorithm works by repeatedly breaking the problem into halves), so only the even case applies. The DC component (0*fs) is always part of ...


10

A Gabor filter is some parametrization of the idea of edges. This combines two somewhat contradictory ideas: an abrupt transition AND some fuzzy idea of where it is localized. It is mathematically a clever idea as it translates well in the Fourier domain: the Fourier transform of a Gabor is a Gaussian in Fourier space, and a Gaussian blob is the most ...


10

A beamformer is basically a spatial filter. It can be passive, just like a temporal filter. Instead of samples separated by time, they are separated by space. A passive temporal filter can be a bandpass that is "aimed" or "steered" at a particular frequency. For passive spatial filters (i.e. beamformers), the filter can be steered towards a particular ...


10

One trick, for even-length signals, is what to do with the "middle" sample. Here, I've split it half and half between each side of the FFT. The other trick is to ensure that you have the right amplitudes in the resampled signal. Here's it's a factor of 2. Try this in scilab: x = rand(1,100,'normal'); X = fft(x); XX = 2*[X(1:50) X(51)/2 zeros(1,99) X(51)/...


10

Well, first of all the Sound Level Pressure decreases by $6 \; \mathtt{dB}$ when doubling the distance - this plays a big role. We do also have sound attenuation coming from our medium - air. Let's take a closer look onto sound absorption coefficient for different frequencies: Knowing that human speech is mostly concentrated at the range of $300\;\mathtt{Hz}...


9

Make sure that your frequency doesn't reach values below 0 or above the half of your sample rate. Please post more information/code about how you generate your waveform! Chances are you are not doing it correctly. For example, if you want to generate a sine wave with a time-varying frequency $f(t)$ (for example to implement frequency modulation), ...


9

It is an edge detector. It just applies the Gabor Transform. The Gabor filter is basically a Gaussian (with variances sx and sy along x and y-axes respectively) modulated by a complex sinusoid (with centre frequencies U and V along x and y-axes respectively). See an example here.


9

You are right that the repetition is around 650 by how exactly do I compute that automatically? Seems like a peak-picking problem to me? Or is there some other methods that can be used? Yes, it's just peak-picking. Your period is the x value of the first strong peak: Your peaks are all similar in height, probably because you're doing the autocorrelation ...


9

You can make a positive frequency spectrum quite simply (where fs is the sampling rate and NFFT is the number of fft bins). In the Matlab implementation of the FFT algorithm, the first element is always the DC component, hence why the array starts from zero. THis is true for odd and even values of NFFT. %//Calculate frequency axis df = fs/NFFT; fAxis = 0:df:...


9

This comes from music terminology. The name "octave" comes from the fact that in the heptatonic musical scales (which are the prevalent scales in western music), the note with a 2:1 frequency ratio is the eighth note in the scale. For example, in the C major scale (C D E F G A B C) the eighth note is one octave above / has a 2:1 frequency ratio with the ...


9

Phase Noise and Frequency Noise are not two different noise sources, they are artifacts of the same noise, it is just a matter of what units you want to use. Frequency and Phase are directly related as frequency is phase changing with time, so if you have one you will always have the other; frequency and phase are related by derivatives and integrals: the ...


9

The actual requirement is to sample at GREATER then twice the bandwidth, not at a rate equal to it... So only your 80Hz same set actually meets the requirement, because the 60Hz case is ambiguous in general, consider if you were sampling sin (2PiFt) instead then you would get a flat line at zero amplitude.... And changing the angle between sin and cos would ...


8

Pitch detection can be done in many versatile and curious ways. One way to do it is by using autocorrelation. This paper gives an example of how it can be used. Autocorrelation can be made ridiculously simple by using a 1-bit correlator (couldn't find any decent papers on that for some reason). So theoretically, pitch can be detected faster than with FFT, ...


8

If the frequency shift that you want is a multiple of the bin spacing, as in your example, then you can easily effect the shift that you want by just rotating the FFT outputs by the number of bins that you need. In the more common case that the frequency offset is not an integer multiple of the bin spacing, then you can multiply the signal by a complex ...


8

Time aligned If the signals are time aligned, you can conjugate-multiply the received signal with the reference signal divided by its magnitude-squared. Essentially dividing by the complex reference signal. Say the reference signal is $x(t)$, the frequency (i.e. time-varying phase) offset is $\theta(t) $ and noise is $N(t)$ Then the (time-aligned) ...


8

This really depends on how fancy you want to get. A "good" analyzer will typically do the following things. Split the input into frames. The frames typically overlap and are windowed. Good choices are an overlap of 50% and a Hanning window. Do an FFT Select the center frequencies of bands. For audio good choices are octaves or third octaves (see http://www....


8

Carrying information requires bandwidth. For a given S/N ratio, modulating a signal to carry more information will thus expand its bandwidth. Call the addition bandwidth "side bands". If you don't add side bands to a fixed frequency carrier, you can't expand its bandwidth, and thus you can't transmit any information (other than the presence of a ...


8

The autocorrelation matrix is diagonalized by sinusoids when the process is stationary, this follows from the fact that the covariance operator is a convolution for a stationary process. A more rigorous proof is that $$f(t,s)=Cov(X(t),X(s))=Cov(X(t-u),X(s-u))=f(t-u,s-u)$$ which in particular means that $f(t,s)=f(t-s,0)$ which is also a positive ...


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