DSPRelated.com
Forums

SW for apply hysteresis to a discrete signal

Started by Al June 1, 2005
Hi!
I'm looking for a (free) software for linux for apply an hysteresis to
a discrete signal.
Any suggestion?

Thanx
Al

Al wrote:

> I'm looking for a (free) software for linux > for apply an hysteresis to a discrete signal.
You'll need to explain better what you hope to achieve. Hysteresis is a qualitative property of many dynamic systems, not a specific process. -- Quidquid latine dictum sit, altum viditur.
I've a discrete signal and I'd like to filter out low amplitude
oscillations.


Martin Eisenberg ha scritto:
> Al wrote: > > > I'm looking for a (free) software for linux > > for apply an hysteresis to a discrete signal. > > You'll need to explain better what you hope to achieve. Hysteresis is > a qualitative property of many dynamic systems, not a specific > process. > > -- > Quidquid latine dictum sit, altum viditur.
Al wrote:

> I've a discrete signal and I'd like to > filter out low amplitude oscillations.
Ah, then you will have more luck searching for "expander" or "noise gate" or "denoiser" than for "hysteresis". Look at the category "Soundfile Editors" at http://linux-sound.org/, near the end of the left frame. -- Quidquid latine dictum sit, altum viditur.
I've not an audio signal: I've a signal that describes the propagation
of an information in a BGP network (like Internet). Anyway your
suggestion made me think to a very original - and I guess interesting -
way to analize such kind of signal.
Thank you very much

Al

"Al" <em614@virgilio.it> wrote in message
news:1117788129.649300.293140@g47g2000cwa.googlegroups.com...
> I've a discrete signal and I'd like to filter out low amplitude > oscillations.
I think a simple moving average filter (same as a simple low pass filter) should do the job for you. This would smooth out your waveform. Cheers Bhaskar
> > > Martin Eisenberg ha scritto: > > Al wrote: > > > > > I'm looking for a (free) software for linux > > > for apply an hysteresis to a discrete signal. > > > > You'll need to explain better what you hope to achieve. Hysteresis is > > a qualitative property of many dynamic systems, not a specific > > process. > > > > -- > > Quidquid latine dictum sit, altum viditur. >
I just want to filter out low amplitude oscillations, not even high
ones. Is a moving average filter ok anyway?
Thanx

Al



Bhaskar Thiagarajan ha scritto:
> "Al" <em614@virgilio.it> wrote in message > news:1117788129.649300.293140@g47g2000cwa.googlegroups.com... > > I've a discrete signal and I'd like to filter out low amplitude > > oscillations. > > I think a simple moving average filter (same as a simple low pass filter) > should do the job for you. This would smooth out your waveform. > > Cheers > Bhaskar > > > > > > > Martin Eisenberg ha scritto: > > > Al wrote: > > > > > > > I'm looking for a (free) software for linux > > > > for apply an hysteresis to a discrete signal. > > > > > > You'll need to explain better what you hope to achieve. Hysteresis is > > > a qualitative property of many dynamic systems, not a specific > > > process. > > > > > > -- > > > Quidquid latine dictum sit, altum viditur. > >
A normal linear filter will reduce all oscillations by the same amount (assuming
they are oscillating at the same frequency).  So a moving average may very well
reduce your high level ones more than you like.  In this case, you might want
some kind of non-linear filter.  Maybe a short median filter?  Or some variation
on this idea: if 2 (or more) adjacent values are "close enough", then you make
them identical, otherwise you don't change them.

"Al" <em614@virgilio.it> wrote in message
news:1117820845.133988.108720@z14g2000cwz.googlegroups.com...
> I just want to filter out low amplitude oscillations, not even high > ones. Is a moving average filter ok anyway? > Thanx > > Al > > > > Bhaskar Thiagarajan ha scritto: > > "Al" <em614@virgilio.it> wrote in message > > news:1117788129.649300.293140@g47g2000cwa.googlegroups.com... > > > I've a discrete signal and I'd like to filter out low amplitude > > > oscillations. > > > > I think a simple moving average filter (same as a simple low pass filter) > > should do the job for you. This would smooth out your waveform. > > > > Cheers > > Bhaskar > > > > > > > > > > > Martin Eisenberg ha scritto: > > > > Al wrote: > > > > > > > > > I'm looking for a (free) software for linux > > > > > for apply an hysteresis to a discrete signal. > > > > > > > > You'll need to explain better what you hope to achieve. Hysteresis is > > > > a qualitative property of many dynamic systems, not a specific > > > > process. > > > > > > > > -- > > > > Quidquid latine dictum sit, altum viditur. > > > >
Al wrote:
> I just want to filter out low amplitude oscillations, not even high > ones. Is a moving average filter ok anyway? > Thanx
No. Try a center clipper with a clipping level set by a low-pass filter. You can also use a scheme I have applied to make digital meters readable. If the new reading differs from the displayed one by less than a threshold, keep the new one as reference, continue to display the old one, and start counting. If the difference persists long enough, show the new reading and zero the count. If it changes sign, zero the count, then count again. If the difference between the display and the reading is large enough, display the new reading and start the process over. Without such a scheme, the LSD of a 7-segment display can always show a low-intensity flickering 8. The first time I used it was with hard-wired logic. Be thankful for computers. Clamping the signal at an old level and suddenly releasing it can introduce high-frequency artifacts as strong as the jiggles that the scheme removes. For a display, it doesn't matter. For a signal that you want to smooth, some light low-pass filtering might be in order. 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;
Al wrote:
> I just want to filter out low amplitude oscillations, not even high > ones. Is a moving average filter ok anyway? > Thanx
The moving average filter does not discriminate between low or high amplitude signals, but between low and high _frequency_ signals. If the frequency of the oscillation is constant, you can use a notch filter to remove it. For wideband noise reduction, you are going to have to cook up something more elaborate. Can you describe your application? (Don't say "I want to filter out low ampitude oscillations", rather say "I want to remove tape hiss from a recording", or "I want to remove mains hum from an ECG", etc.) Regars, Andor