Forums

Detecting a short, specific waveform.....

Started by "Mark E. Skeels" May 16, 2011
All,

I am totally new to DSP's.

My question is, how would you go about detecting a certain type of short
waveform (couple of mSec) and rejecting others, such as a gun shot or a
snare drum hit?

I'd like to be able to do it within, say, 20-30 mS for use as the start
of a timing function.

Can anyone steer me to some sort of resource that can help me learn a
bit more about this?

Thanks,
Mark

--
"If your creed and Scripture do not agree,
cut your creed to pieces,
but make it agree with this book."
~Charles Spurgeon~
On Mon, May 16, 2011 at 3:58 PM, Mark E. Skeels wrote:

> All,
>
> I am totally new to DSP's.
>
> My question is, how would you go about detecting a certain type of short
> waveform (couple of mSec) and rejecting others, such as a gun shot or a
> snare drum hit?
>
> I'd like to be able to do it within, say, 20-30 mS for use as the start
> of a timing function.
>
> Can anyone steer me to some sort of resource that can help me learn a
> bit more about this?
>
> You can try using matched filter:
http://en.wikipedia.org/wiki/Matched_filter
https://ccrma.stanford.edu/~jos/st/Matched_Filtering.html

Basically, you cross-correlate your known signal (template) with incoming
signal and search for places with high peaks.

Cheers!
Igor
Try "signal detection" in wikipedia as a place to start.

----- Original Message ----
From: Mark E. Skeels
To: a...
Sent: Mon, May 16, 2011 9:58:03 AM
Subject: [audiodsp] Detecting a short, specific waveform.....

All,

I am totally new to DSP's.

My question is, how would you go about detecting a certain type of short
waveform (couple of mSec) and rejecting others, such as a gun shot or a
snare drum hit?

I'd like to be able to do it within, say, 20-30 mS for use as the start
of a timing function.

Can anyone steer me to some sort of resource that can help me learn a
bit more about this?

Thanks,
Mark

--
"If your creed and Scripture do not agree,
cut your creed to pieces,
but make it agree with this book."
~Charles Spurgeon~
Hi Mark,
This is a very common problem in RADAR and SONAR. Pretty much any
detection/estimation text will cover this topic. The classical approach is
use what is known as a matched filter:
http://en.wikipedia.org/wiki/Matched_filter. A matched filter simply
correlates the received signal against the known signal. It is the optimal
linear detector/estimator in white noise. A slightly modified
(pre-whitened) version can be used in colored noise.
Hope that helps.
Good Luck,
-Brant

On Mon, May 16, 2011 at 6:58 AM, Mark E. Skeels wrote:

> All,
>
> I am totally new to DSP's.
>
> My question is, how would you go about detecting a certain type of short
> waveform (couple of mSec) and rejecting others, such as a gun shot or a
> snare drum hit?
>
> I'd like to be able to do it within, say, 20-30 mS for use as the start
> of a timing function.
>
> Can anyone steer me to some sort of resource that can help me learn a
> bit more about this?
>
> Thanks,
> Mark
>
> --
> "If your creed and Scripture do not agree,
> cut your creed to pieces,
> but make it agree with this book."
> ~Charles Spurgeon~
>
>
>

--
Brant Jameson
PhD Candidate
UC Santa Cruz Computer Engineering
http://people.ucsc.edu/~pheese
Also,
If you have control over the waveform you may be interested in how the
signal characteristics affect the accuracy/precision of the delay estimate.
The product the signal's mean-square bandwidth and mean-square duration of
the signal form what is commonly referred to as the time-bandwidth product.
The larger the time-bandwidth product the more precise (lower variance of
estimation error) your matched filter estimator/detector will have.
Commonly used signals are the LFM (Linear Frequency Modulation), HFM
(Hyperbolic Frequency Modulation) and phase shift keyed signals (Barker,
Pseudo-random).
-Brant

On Mon, May 16, 2011 at 9:47 AM, Igor Brkic wrote:

> On Mon, May 16, 2011 at 3:58 PM, Mark E. Skeels wrote:
>
>> All,
>>
>> I am totally new to DSP's.
>>
>> My question is, how would you go about detecting a certain type of short
>> waveform (couple of mSec) and rejecting others, such as a gun shot or a
>> snare drum hit?
>>
>> I'd like to be able to do it within, say, 20-30 mS for use as the start
>> of a timing function.
>>
>> Can anyone steer me to some sort of resource that can help me learn a
>> bit more about this?
>>
>> You can try using matched filter:
>
> http://en.wikipedia.org/wiki/Matched_filter
> https://ccrma.stanford.edu/~jos/st/Matched_Filtering.html
>
> Basically, you cross-correlate your known signal (template) with incoming
> signal and search for places with high peaks.
>
> Cheers!
> Igor
>
>
>

--
Brant Jameson
PhD Candidate
UC Santa Cruz Computer Engineering
http://people.ucsc.edu/~pheese
I can see it's going to take some time to sort all this out....I'm not
even sure what questions to ask at the moment......I have to spend some
time reading.

Thanks for all the replies.

Mark

On 05/18/2011 12:35 PM, Brant Jameson wrote:
> Also,
> If you have control over the waveform you may be interested in how
> the signal characteristics affect the accuracy/precision of the delay
> estimate. The product the signal's mean-square bandwidth and
> mean-square duration of the signal form what is commonly referred to
> as the time-bandwidth product. The larger the time-bandwidth product
> the more precise (lower variance of estimation error) your matched
> filter estimator/detector will have. Commonly used signals are the
> LFM (Linear Frequency Modulation), HFM (Hyperbolic Frequency
> Modulation) and phase shift keyed signals (Barker, Pseudo-random).
> -Brant
>
> On Mon, May 16, 2011 at 9:47 AM, Igor Brkic > > wrote:
>
> On Mon, May 16, 2011 at 3:58 PM, Mark E. Skeels
> > wrote:
>
> All,
>
> I am totally new to DSP's.
>
> My question is, how would you go about detecting a certain
> type of short
> waveform (couple of mSec) and rejecting others, such as a gun
> shot or a
> snare drum hit?
>
> I'd like to be able to do it within, say, 20-30 mS for use as
> the start
> of a timing function.
>
> Can anyone steer me to some sort of resource that can help me
> learn a
> bit more about this?
>
> You can try using matched filter:
>
> http://en.wikipedia.org/wiki/Matched_filter
> https://ccrma.stanford.edu/~jos/st/Matched_Filtering.html
> Basically, you cross-correlate your known signal (template) with
> incoming signal and search for places with high peaks.
>
> Cheers!
> Igor
>
>
> --
> Brant Jameson
> PhD Candidate
> UC Santa Cruz Computer Engineering
> http://people.ucsc.edu/~pheese
--
"If your creed and Scripture do not agree,
cut your creed to pieces,
but make it agree with this book."
~Charles Spurgeon~