I am using matched filters using GNU Radio to extract from noise a CW Morse signal. The filter actually performs pretty well in various SNR environments. My problem is that the threshold upon I decide for a presence or absence of a CW transmission vary with different SNR/CW frequency/WPM/incoming signal amplitude setups.
Conventional normalization methods, (eg dividing with the max value) are not applicable since the program runs continuously and the max value is not known a priori.
I believe that a moving normalization scheme should deal with this problem. In the past, for preamble detection I have used the moving normalized autocorrelation method that is depicted below (C
and P
are moving sums). I tried to adapt this approach in my case but with no luck.
My question is, if there is a method to normalize either the output signal power of the matched filter or the input signal itself, so I can rely on a one predefined decision threshold for CW signal presence/absence.