Reply by Richard Owlett September 24, 20042004-09-24
Matt Timmermans wrote:
> "Richard Owlett" <rowlett@atlascomm.net> wrote in message > news:10l160r7oi8ptd4@corp.supernews.com... > >>>It's not about FFT convolution. It's about direct (possibly nonlinear) >>>spectral manipulation. >>> >> >>I suspect last paragraph is key. >>I do not know enough to ask intelligent question. >> >>where do I go from here? > > > That depends. When you say "manipulate in the frequency domain", what > application do you have in mind? >
Long response to short question. The best way to describe my application is to review the history of my self assigned project. It should be emphasized that I'm doing this as an amateur in all aspects of the problem. My focus has shifted from "solving a particular problem" towards getting a good feel for initial problem and learning how to use certain tools - DSP. This will be rather long. But I think some of my unstated assumptions may show up this way. It started when I was thinking about adding speech recognition to my computer. Reading posts to comp.speech.users seemed to indicate an absurdly good acoustic environment and overly nuanced enunciation were required to get good results. Lack of speaker independence was also bothersome. I have neither the background nor inclination to investigate the recognition engines. Working over ( pun intended ) the input signal seemed a reasonable route. Subtasks include: 1. Filtering with multiple passbands for voice features ( did not know what a formant was at that time ) and stop bands for interference sources. 2. AGC - haven't gotten into that bees' nest at all yet 3. Morphing each speaker into a "standard speaker". This is definitely *PIE IN SKY* idealism. But I have found it useful in my thinking about some problems. This has led to asking: 1. Should some tasks be offloaded from speech recognition engine to a DSP in a sound pod? 2. Would it be useful to consider each formant to be a separate AM signal. Now to my filtering problem. When I say I'm interested in a arbitrarily shaped filter I DO mean *ARBITRARY* ;) I visualized sets of overlapped triangles ( or trapezoids ) in the frequency domain as a first approximation. It will be crude analog of a speech spectrum with each tooth centered on a formant. I chose to work in frequency domain because: 1. I think that way. My background is low level analog from 25-40 years ago. 2. I have no "real time" time constraints. Data is on CD. Initially I wish to plot spectra of data segments ( filtered/unfiltered ). This leads to questions about windowing. Eventually, I'll want to reassemble the filtered segments. This leads to overlap and add questions. [ my sanity need not be questioned. family and friends would shout "What Sanity?" ;] Does this make some (any) of my questions make sense?
Reply by Stan Pawlukiewicz September 23, 20042004-09-23
Richard Owlett wrote:
> Stan Pawlukiewicz wrote: > >> Richard Owlett wrote: >> >>> Stan Pawlukiewicz wrote: >>> >>>> Richard Owlett wrote: >>>> >>>>> Jerry Avins wrote: >>>>> >>>>>> Richard Owlett wrote: >>>>>> >>>>>>> Just how flat need a window be to utilize "overlap and add" >>>>>>> >>>>>>> Window data -- FFT -- manipulate in freq domain -- IFFT -- add in >>>>>>> time domain >>>>>> >>>>>> >>>>>> >>>>>> Why window? the artifacts caused by a rectangular window should >>>>>> cancel >>>>>> in the overlap. >>>>>> >>>>>> Jerry >>>>> >>>>> >>>>> Some of my analysis will be in frequency domain and comparing >>>>> frequency domain of multiple sequential "samples". >>>>> >>>>> I'm grouping for a well formulated question. >>>>> >>>>> This has much to do with my other post titled >>>>> >>>>> As "Nyquist" is to "sample rate" "????" is to "sample >>>>> period/duration/width/?" ? >>>>> >>>> >>>> It kind of depends on your overlap percentage and the amount of >>>> ripple you can tollerate back in the time domain. It also depends >>>> on how coloured the data is. Whitening the data prior to windowing >>>> should help a bit as well. >>>> >>> >>> You lost me;] >>> I've been told not to use label "newbie". >>> I'm surely "neophyte" ;] >>> >> >> Where are you lost? I'm guessing about prewhitening. > > > That's one of I suspect many. >
>> >> Any particular window function trades off the width of the main lobe >> response with the level of side lobe leakage.
Did you get this? One typically wants
>> much less leakage power from other bins in any particular bin than >> signal and/or noise.
This? In a number of applications, like passive SONAR
>> the background noise spectrum is continuous but not flat. One doesn't >> want sidelobe leakage masking weak signals in quiet parts of the >> spectrum.
this? If you prewhiten the data, the overall spectrum is more
>> flat.
how about this? The level of signal and/or noise in the quiet parts of the
>> spectrum is increased and the level of signal and/or noise is reduced >> in the louder parts of the spectrum.
this? The whitened spectrum is less
>> susceptible to masking from leakage.
this? This makes the choice of window
>> less dependent on a sidelobe leakage criteria. One can concentrate on >> the time domain scalloping instead.
this?
>> > > I'm sorry but that paragraph does not communicate. > I've an idea where you are going, but I'm missing some underlying > assumption &/or competency :{
Reply by Jerry Avins September 22, 20042004-09-22
Richard Owlett wrote:

   ...

> Now that I'm no longer entitled to term "newbie", > how do I say I KNOW dat i know nutin ;?
Inaudibly: "Please pardon my iggerance." Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
Reply by Richard Owlett September 22, 20042004-09-22
Stan Pawlukiewicz wrote:

> Richard Owlett wrote: > >> Stan Pawlukiewicz wrote: >> >>> Richard Owlett wrote: >>> >>>> Jerry Avins wrote: >>>> >>>>> Richard Owlett wrote: >>>>> >>>>>> Just how flat need a window be to utilize "overlap and add" >>>>>> >>>>>> Window data -- FFT -- manipulate in freq domain -- IFFT -- add in >>>>>> time domain >>>>> >>>>> >>>>> Why window? the artifacts caused by a rectangular window should cancel >>>>> in the overlap. >>>>> >>>>> Jerry >>>> >>>> Some of my analysis will be in frequency domain and comparing >>>> frequency domain of multiple sequential "samples". >>>> >>>> I'm grouping for a well formulated question. >>>> >>>> This has much to do with my other post titled >>>> >>>> As "Nyquist" is to "sample rate" "????" is to "sample >>>> period/duration/width/?" ? >>>> >>> >>> It kind of depends on your overlap percentage and the amount of >>> ripple you can tollerate back in the time domain. It also depends on >>> how coloured the data is. Whitening the data prior to windowing >>> should help a bit as well. >>> >> >> You lost me;] >> I've been told not to use label "newbie". >> I'm surely "neophyte" ;] >> > > Where are you lost? I'm guessing about prewhitening.
That's one of I suspect many.
> > Any particular window function trades off the width of the main lobe > response with the level of side lobe leakage. One typically wants much > less leakage power from other bins in any particular bin than signal > and/or noise. In a number of applications, like passive SONAR the > background noise spectrum is continuous but not flat. One doesn't want > sidelobe leakage masking weak signals in quiet parts of the spectrum. If > you prewhiten the data, the overall spectrum is more flat. The level of > signal and/or noise in the quiet parts of the spectrum is increased and > the level of signal and/or noise is reduced in the louder parts of the > spectrum. The whitened spectrum is less susceptible to masking from > leakage. This makes the choice of window less dependent on a sidelobe > leakage criteria. One can concentrate on the time domain scalloping > instead. >
I'm sorry but that paragraph does not communicate. I've an idea where you are going, but I'm missing some underlying assumption &/or competency :{
Reply by Richard Owlett September 22, 20042004-09-22
Randy Yates wrote:

> Richard Owlett <rowlett@atlascomm.net> writes: > > >>Randy Yates wrote: >> >>>[snip] >>>(Did that sound flippant/irreverent? I didn't mean for it to.) >> >>Not at all. Seems like a reprasing of my comment that not only do I >>not know what I'm talking about, I'm not sure of subject ;) > > > Hi Richard, > > Figuring out the question you want to ask is always a good exercise!
Requiring student to think -- how crude :)
> > How about this: "When performing processing involving the DFT or FFT, > what tasks require the use of windows and for what reason are they used?"
And the answer is ??? Actually I was beginning to come near to that question. But I like your phrasing. I also may have gotten in trouble for my *PARTIAL* understanding of the second half of the question. partial answer: Proper windows can reduce 'crud' in adjacent bins. Aside: Now that I'm no longer entitled to term "newbie", how do I say I KNOW dat i know nutin ;?
Reply by September 22, 20042004-09-22
Richard Owlett <rowlett@atlascomm.net> writes:

> Randy Yates wrote: > > [snip] > > (Did that sound flippant/irreverent? I didn't mean for it to.) > > Not at all. Seems like a reprasing of my comment that not only do I > not know what I'm talking about, I'm not sure of subject ;)
Hi Richard, Figuring out the question you want to ask is always a good exercise! How about this: "When performing processing involving the DFT or FFT, what tasks require the use of windows and for what reason are they used?" -- Randy Yates Sony Ericsson Mobile Communications Research Triangle Park, NC, USA randy.yates@sonyericsson.com, 919-472-1124
Reply by Stan Pawlukiewicz September 22, 20042004-09-22
Richard Owlett wrote:
> Stan Pawlukiewicz wrote: > >> Richard Owlett wrote: >> >>> Jerry Avins wrote: >>> >>>> Richard Owlett wrote: >>>> >>>>> Just how flat need a window be to utilize "overlap and add" >>>>> >>>>> Window data -- FFT -- manipulate in freq domain -- IFFT -- add in >>>>> time domain >>>> >>>> >>>> >>>> >>>> >>>> Why window? the artifacts caused by a rectangular window should cancel >>>> in the overlap. >>>> >>>> Jerry >>> >>> >>> >>> >>> Some of my analysis will be in frequency domain and comparing >>> frequency domain of multiple sequential "samples". >>> >>> I'm grouping for a well formulated question. >>> >>> This has much to do with my other post titled >>> >>> As "Nyquist" is to "sample rate" "????" is to "sample >>> period/duration/width/?" ? >>> >> >> It kind of depends on your overlap percentage and the amount of ripple >> you can tollerate back in the time domain. It also depends on how >> coloured the data is. Whitening the data prior to windowing should >> help a bit as well. >> > > You lost me;] > I've been told not to use label "newbie". > I'm surely "neophyte" ;] >
Where are you lost? I'm guessing about prewhitening. Any particular window function trades off the width of the main lobe response with the level of side lobe leakage. One typically wants much less leakage power from other bins in any particular bin than signal and/or noise. In a number of applications, like passive SONAR the background noise spectrum is continuous but not flat. One doesn't want sidelobe leakage masking weak signals in quiet parts of the spectrum. If you prewhiten the data, the overall spectrum is more flat. The level of signal and/or noise in the quiet parts of the spectrum is increased and the level of signal and/or noise is reduced in the louder parts of the spectrum. The whitened spectrum is less susceptible to masking from leakage. This makes the choice of window less dependent on a sidelobe leakage criteria. One can concentrate on the time domain scalloping instead.
Reply by Matt Timmermans September 21, 20042004-09-21
"Richard Owlett" <rowlett@atlascomm.net> wrote in message 
news:10l160r7oi8ptd4@corp.supernews.com...
>> It's not about FFT convolution. It's about direct (possibly nonlinear) >> spectral manipulation. >> > > I suspect last paragraph is key. > I do not know enough to ask intelligent question. > > where do I go from here?
That depends. When you say "manipulate in the frequency domain", what application do you have in mind?
Reply by Richard Owlett September 21, 20042004-09-21
Randy Yates wrote:
> [snip] > (Did that sound flippant/irreverent? I didn't mean for it to.)
Not at all. Seems like a reprasing of my comment that not only do I not know what I'm talking about, I'm not sure of subject ;)
Reply by September 21, 20042004-09-21
Richard Owlett <rowlett@atlascomm.net> writes:

> Randy Yates wrote: > > > Jerry Avins <jya@ieee.org> writes: > > > > >>Randy Yates wrote: > >> > >>[SNIP!] > > I'm really confused. If Richard is addressing a completely different > > > problem, then why wouldn't you have stated that explicitly? The words > > "overlap and add" only refer to one specific thing that I know of - if > > that's not what he's trying to do, then someone needs to elucidate. > > As OP i suspect I've added 2 +2 and come up with a prime ;( > > I need a better understanding of when to window and when not. > In either case, I see Lyons Chapt 3 in my future (again, yet, forever? ) > > Similarly for "overlap and add". > > I begin with hours of recorded audio data. > I take a 'chunk" of 'appropriate' duration. > I perform an FFT. > > The next step MAY be seen as a filter. > On a "bin by bin" basis I multiply [bin(n)] by [coeff(n)] > > Perform IFFT on that 'chunk' > > I append some chunkette to previous chunkette's > > Have I done to DSP what I just did to English?
Hi Richard, Instead of telling us what you've implemented and then trying to guess what that implementation is doing to your data, why don't we back up to the 5000-foot level and find out what your goal is? What are you *trying* to accomplish? Are you trying to implement a filter? Are you trying to get a good estimate of the spectrum of your data? (Did that sound flippant/irreverent? I didn't mean for it to.) -- Randy Yates Sony Ericsson Mobile Communications Research Triangle Park, NC, USA randy.yates@sonyericsson.com, 919-472-1124