Prev: CFP: The 2010 International Conference on Data Mining (DMIN'10), USA, July 2010
Next: FFTW Power Spectrum
From: Greg Heath on 13 Feb 2010 07:26 On Feb 11, 5:49 am, "rsk" <kalera...(a)yahoo.com> wrote: > >On Feb 10, 6:11=A0am, Greg Heath <he...(a)alumni.brown.edu> wrote: > >> On Feb 8, 3:05 pm, dbd <d...(a)ieee.org> wrote: > >>>.. > > >> I meant periodic extension by an integer multiple of the original > >> sample count would yield a cleaner interpolated spectrum than > >> integer multiple zero-padding because it would not have the > >> zeropad sinc function lobe artifacts. > > >Zero-extending doesn't produce any artifacts, windowing does that. > > >Extending the data with another copy of the data gives a gain of 2 and > >inserts alternate zeros in the fft output, so what is the point in > >that? > > >> > Periodic extension is a theoretical construct that is only > implemented > >> > if the signal in the sample set is stationary and periodic in the > >> > sample set. If so, the new sample set represents the original signal > >> > with a longer window with a narrower response about each component in > >> > the frequency domain. > > >> without the sidelobes caused by zeropad windowing. > > >Again, sidelobes come only from windowing. If the signals are > >periodic before extension there are no artifacts in the samples > >because you have calculated no samples at frequencies where the > >artifacts are not zero. If you use an fft larger than the data set by > >zero extending at least some of your frequency samples will be at > >frequencies where the windowing-generated artifacts are not zero. (You > >can also get samples at different frequencies with a smaller fft by > >'wrapping' the data.) > > >> > With real world data, how do you perform periodic extension? You > can't > >> > get better results by just repeating the data set unless the signal > is > >> > stationary and periodic in the sample set. > > >Actually, as I've pointed out above you can't get better results > >without more independent data. > > >> It depends what you mean by "better" (.. sounds like Bill Clinton). > > >> In comparison with zero-padding it would have narrower mainlobes > >> without zeropad sinc function sidelobes. Otherwise it would still > >> have all of the usual problems ... aliasing, Gibbs, ... > > >Extending with copies of the data does not produce 'narrower' > >sidelobes. Only a bigger original data window does that. If you go to > >a rectangular window twice as long and your signal actually repeats in > >the windowed samples, every other frequency component -is- actually > >zero and your frequency samples will be at frequencies where the > >windowing artifacts are zero. (And you could have calculated the > >response with a smaller transform.) > > > Oh, did I mention that the sinc function characteristics are a > >characteristic of the window and are independent of the zero- > >extension? Zero-extension only changes where you sample the frequency > >response. > > >> ... > > >Periodic extension may be a useful pedagogical deceit, but it is not > >an operation that you need to explicitly perform to analyze real-world > >data. > > >Dale B. Dalrymple > > All of you talked about the effect of zero padding on the frequency. Those > were quite valuable comments. However, can I be sure that by zero padding, > i would not see difference in amplitudes in FFT?( compared to that without > padding) > > As someone said in the previous replies to my original post, the energy > would distribute over more points if I increase the # of samples used for > FFT. Quoting from my original reply: begin quote " Now, Z2 = fft(z2/N2) will yield max(abs(Z2)) = 0.5 * maxabs(Z)) = 0.25 at f2(3) = f0 = 1 and f(2047) = Fs-f0 = 1023. Therefore, the peaks of Z2 are at the same frequencies. However, the magnitude of the peaks are lower by a factor of 2 because the average power is a factor of 2 lower. This raises questions about the correct fft scaling for comparing zero-padded and periodically continued functions. For example, comparing z3 = [ z z]; z4 = [zeros(1,M) z zeros(1,N-M)]; " end of quote Hope this helps. Greg
From: dbd on 13 Feb 2010 16:40 On Feb 13, 4:19 am, Greg Heath <he...(a)alumni.brown.edu> wrote: > On Feb 10, 11:56 am, dbd <d...(a)ieee.org> wrote: > > > On Feb 10, 6:11 am, Greg Heath <he...(a)alumni.brown.edu> wrote: > > > > On Feb 8, 3:05 pm, dbd <d...(a)ieee.org> wrote: > > >>.. > > > > I meant periodic extension by an integer multiple of the original > > > sample count would yield a cleaner interpolated spectrum than > > > integer multiple zero-padding because it would not have the > > > zeropad sinc function lobe artifacts. > > > Zero-extending doesn't produce any artifacts, windowing does that. ..> ..> In this comparison zeropadding must be considered windowing. ..> It need not and it should not. I have tried to consistently use the term 'zero extension' for the operation performed after windowing(by a block of contiguous 1's).It is possible but unnecessarily confusing (and it doesn't help) to get the same result by windowing(by a bigger block of 1's) and then again windowing(by a block of 1's concatenated by a block of 0's), but I think it is clearer to describe the process with a single meaning of 'windowing', that being: windowing(by a contiguous block of 1's). That is the simplest process that determines all the information available for analysis. ..> The zeropadded function [z zeros(1,N)] is the windowed ..> periodically estended function [ones(1,N) zeros(1,N)] .* [ z z]. The problem with this is that [z zeros(1,N)] is also equal to [ones(1,N) zeros(1,N)] .* [ z {anything else the size of z}] and there is no way to distinguish from [z zeros(1,N)] whether the original signal you were sampling would have yielded the 2N samples: [ z z] or [ z {anything else the size of z}] z contains all the information you have to analyze and that is why the selection of z by windowing(by a block of contiguous 1's) is the 'eigen-operation' of the processes we are discussing. .... I as said before: > > > Periodic extension may be a useful pedagogical deceit, but it is not > > an operation that you need to explicitly perform to analyze real-world > > data. 'Periodic extension' is a relationship between z and some hypothetical signal of infinite extent. If the sampling of your signal for mN samples would have produced m concatenated copies of z for all m => inf, your signal possesses the property of periodic extension with respect to z. Collecting N samples of a signal does not 'generate' periodic extension. You cannot determine from z whether the property of periodic extension exists between z and your signal. Why would we bother with such a nebulous concept? It is the property that validates the interpretation of the outputs of the DFT as samples of the Fourier(no D) transform of the signal that z was sampled from. Some people find this powerful and helpful. Real world signals are very unlikely to exactly meet this criteria. They may well be close enough for it to be useful. It is an exercise left for the analyst to judge 'close enough'. Suggesting that because you can concatenate two copies of z to get [ z z] you have periodic extension is false (and it does not help). That's the kind of thinking that gets us the 'A Fourier transform does this but my calculation gives that. What's wrong with my code?' questions. Dale B. Dalrymple
From: Ron N. on 13 Feb 2010 21:22 On Feb 13, 1:40 pm, dbd <d...(a)ieee.org> wrote: > I have tried to consistently use the > term 'zero extension' for the operation performed after windowing(by a > block of contiguous 1's).It is possible but unnecessarily confusing > (and it doesn't help) to get the same result by windowing(by a bigger > block of 1's) and then again windowing(by a block of 1's concatenated > by a block of 0's), I regard multiplying 2 windows as simpler. Multiplying the 2 windows reduces them to one window. You then have only 2 process: window and transform, instead of 3 processes: window, extend and transform, to analyze or consider the effects of. The doubled Sinc or Dirichlet you end up with is exactly the transform of a shorter rectangular window. IMHO. YMMV. -- rhn A.T nicholson d.0.t C-o-M
From: dbd on 14 Feb 2010 00:44 On Feb 13, 6:22 pm, "Ron N." <rhnlo...(a)yahoo.com> wrote: > On Feb 13, 1:40 pm, dbd <d...(a)ieee.org> wrote: > > > I have tried to consistently use the > > term 'zero extension' for the operation performed after windowing(by a > > block of contiguous 1's).It is possible but unnecessarily confusing > > (and it doesn't help) to get the same result by windowing(by a bigger > > block of 1's) and then again windowing(by a block of 1's concatenated > > by a block of 0's), > > I regard multiplying 2 windows as simpler. Multiplying the 2 windows > reduces them to one window. You then have only 2 process: window > and transform, instead of 3 processes: window, extend and transform, > to analyze or consider the effects of. The extend consists of no adds or multiplies and no conditional branch within the process. > The doubled Sinc or Dirichlet > you end up with is exactly the transform of a shorter rectangular > window. Which is what the posters above forgot when they thought of the window as ones -and- zeros. Which is why I suggest thinking of it the other way. Once you understand it, you can certainly implement it however the tools and libraries you use make it simplest. > > IMHO. YMMV. > -- > rhn A.T nicholson d.0.t C-o-M Dale B. Dalrymple
First
|
Prev
|
Pages: 1 2 3 4 5 6 Prev: CFP: The 2010 International Conference on Data Mining (DMIN'10), USA, July 2010 Next: FFTW Power Spectrum |