<< Chapter < Page Chapter >> Page >

Need for improvement

The matched filter implementation gave the right result in most cases, but occasionally reported a fairly good correlation between an input signal and a filter that were clearly quite distinct from one another. The matched filter often doesn't recognize a strong difference between two signals if one has power in a particular frequency range that the other lacks. For instance, a loon tremolo has a wide spectrum compared to a ferruginous pygmy owl, but the matched filter often reported a good match because the owl's pitch was in the loon's range.

Frequency-domain analysis

We hoped to adjust the matched filter results by taking into account the frequency-domain error between the signal and the filter. The convolution step of the matched filter showed not only the strongest match between the signal and the filter, but also the time of that match in the input signal. We windowed out the chunk of the input signal that matched best. We then used the mean-squared error between the magnitudes of that chunk's FFT and the filter's FFT to obtain a number indicating how well the frequency content of the two signals matched.

As an example, a comparison of a hawk shriek versus a filter for a hawk cry shows that their frequency ranges don't match very well:

In contrast, the same shriek versus a filter for a shriek shows a lower mean-squared error (0.4637 compared to 0.9257, after scaling):

Correction algorithm

The mean-squared FFT error by itself was a good predictor of which filter matched best with an input signal, despite ignoring phase information to focus only on magnitudes. We divided the matched filter output by the mean-squared error to arrive at a final result value.
We added a small number to the error before dividing, to avoid dividing by zero in the case where the signal perfectly matches the filter.
In all cases where the matched filter had selected the correct bird as the strongest match, this adjustment increased the ratio between the strong match and the others. It corrected the errors between different red-tailed hawk vocalizations, but wasn't sufficient to recognize the loon tremolo.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Elec 301 projects fall 2008. OpenStax CNX. Jan 22, 2009 Download for free at http://cnx.org/content/col10633/1.1
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Elec 301 projects fall 2008' conversation and receive update notifications?

Ask