DSPRelated.com
Forums

Need a reference for a very simple filter

Started by nadavsof June 26, 2015
Hello.

I've developed a software that uses STFT with a very simple filter. 

What the software does is draw a graph of the frequencies as the y axis
and of time as the x axis.

The filter is used to determined which points in the graph will be
painted. The filter is extremely simple, it linear, time in-variant, and
simply paints only points (f,t) for which their magnitude is in a
predefined range - min,max.

For example, if frequency 10 in time-period 2 has a magnitude of 1, and
the magnitude range is (0,0.5), then the point (2,10) won't be painted.
if, however, that magnitude was 0.2, then it would be painted.

I was looking for some standard name for that filter, but all I could find
are very complex filters, much more than this one. 

1. Can anyone help by telling me if this filter is really standard, and if
so, what's its name?

2. If it is in fact standard, I'll really appreciate it if someone could
give me a link in which that filter is explained, so that I could letter
people read about it in the web instead of having to explain to them what
it does.

Thank you very much!


---------------------------------------
Posted through http://www.DSPRelated.com
On Fri, 26 Jun 2015 07:11:26 -0500, nadavsof wrote:

> Hello. > > I've developed a software that uses STFT with a very simple filter. > > What the software does is draw a graph of the frequencies as the y axis > and of time as the x axis. > > The filter is used to determined which points in the graph will be > painted. The filter is extremely simple, it linear, time in-variant, and > simply paints only points (f,t) for which their magnitude is in a > predefined range - min,max. > > For example, if frequency 10 in time-period 2 has a magnitude of 1, and > the magnitude range is (0,0.5), then the point (2,10) won't be painted. > if, however, that magnitude was 0.2, then it would be painted.
Time invariant, perhaps, but certainly not linear. Because h(0.2) = painted and h(10) = not painted, but not painted does not equal 20 * painted. In fact, the operation "20 * painted" doesn't even make sense unless you define it -- and I defy you to give a universal definition of that, much less 1/2 painted. In fact, in signal processing the assumption is that filters act on signals, and signals are streams of numbers -- "painted" is not a number, so the entity that you're describing isn't even a filter in the signal processing sense. It may be a filter in some _other_ sense (i.e., a coffee filter is a filter in a mechanical sense, but not in the signal processing sense).
> I was looking for some standard name for that filter, but all I could > find are very complex filters, much more than this one. > > 1. Can anyone help by telling me if this filter is really standard, and > if so, what's its name?
Not standard, not even a filter in the signal processing sense. If it has a name it's not in the dictionary of filters.
> 2. If it is in fact standard, I'll really appreciate it if someone could > give me a link in which that filter is explained, so that I could letter > people read about it in the web instead of having to explain to them > what it does.
First, find out what domain such a filter is defined in. Proceed from there. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com
On Fri, 26 Jun 2015 07:11:26 -0500, "nadavsof"
<106819@DSPRelated> wrote:

>Hello. > >I've developed a software that uses STFT with a very simple filter. > >What the software does is draw a graph of the frequencies as the y axis >and of time as the x axis. > >The filter is used to determined which points in the graph will be >painted. The filter is extremely simple, it linear, time in-variant, and >simply paints only points (f,t) for which their magnitude is in a >predefined range - min,max. > >For example, if frequency 10 in time-period 2 has a magnitude of 1, and >the magnitude range is (0,0.5), then the point (2,10) won't be painted. >if, however, that magnitude was 0.2, then it would be painted. > >I was looking for some standard name for that filter, but all I could find >are very complex filters, much more than this one. > >1. Can anyone help by telling me if this filter is really standard, and if >so, what's its name? > >2. If it is in fact standard, I'll really appreciate it if someone could >give me a link in which that filter is explained, so that I could letter >people read about it in the web instead of having to explain to them what >it does. > >Thank you very much!
As Tim says, this isn't really a "filter" in the usual sense. However, what you describe is the plotted frequency response of a "brick wall" filter. That isn't a specific real filter type, it's a non-existent *ideal* filter that totally passes everything in the passband and totally blocks everything in the stopband. You could convert your scheme into a real filter (in Tim's sense of having an output signal instead of just a display) by applying your "paint / don't paint" decision to the complex output of the FFT, then taking an inverse FFT to get back to the time domain. This will give one N-sample frame of the output waveform. Converting this to handle an arbitrary or continous signal length will typically require overlapping adjacent frames, properly windowed. This is a fairly standard technique (called Windowed OverLap and Add. or WOLA), but it is very general, not a specific named filter type. Best regards, Bob Masta DAQARTA v8.00 Data AcQuisition And Real-Time Analysis www.daqarta.com Scope, Spectrum, Spectrogram, Sound Level Meter Frequency Counter, Pitch Track, Pitch-to-MIDI FREE 8=channel Signal Generator, DaqMusiq generator Science with your sound card!