Speech detection (formulation)

Discussion in 'MATLAB' started by SaM, Jun 22, 2006.

  1. SaM

    SaM Guest

    Hi all, i am currently doing speech detection in white gaussian noise.
    I would take fft of a frame of noisy speech and if the maximum value is
    above a certain threshold, i can say that speech is detected. Of
    course, there is another part of the algorithm that does a more
    thorough check.

    My question is, i need to come up with a formula for this threshold.
    meaning threshold=x^2 + y for example, rather than threshold =0.7. How
    should i do it?

    I have an idea here but i don't know if it can work. That is, for
    example, if energy of frame=0.1, my threshold should be 0.5
    if energy of frame=0.2, my threshold should be say 0.6
    if energy of frame=0.3, my threshold should be say 0.63

    Then i plot out these on cartesian plot and get the equation of the
    curve,that will be the formula for the threshold. Will this solve my
    problem? The curve will definitely not be linear. If so how can i find
    out the equation of the curve? Any advice?

    Thank you
     
    SaM, Jun 22, 2006
    #1
    1. Advertisements

  2. SaM

    Rune Allnor Guest

    For several years I have maintained that Digital Signal Processing,
    for all its fancy maths, is an utterly subjective dicipline.

    You have found the reason why.

    In most practical applications of DSP, one needs to set a threshold
    somewhere. In radar/sonar one sets the sensitivity of the reciever,
    you have found another problem that requires a threshold to be set.
    The performance of the systems depend on these thresholds, and
    thus on subjective choise. High thresholds give low false alarm rates,
    but don't catch weak signals. And vice versa.

    There are very few applications where one can find methods to
    computationally decide a thresshold, as opposed to some human
    enetering it. The only application I can remember off the top of
    my head, is Akaike's Information Criterion (AIC) and Rissanen
    and Schwartz' Minimum Description Length (MDL) methods
    for determining the order of AR predictors. There are other
    methods for choosing these orders as well.

    Nevertheless, the solutions from these types of methods are
    still influenced by subjective choise, only on a level higher up.
    Given the data, the numbers that come out of the AIC or
    MDL order estimators are deterministic. But the user/designer
    is still free to choose which of the AIC, MDL or other order
    estimators to use. As the order estimators give different
    answers with the same data, you are back to the dependency
    on subjective choises.

    Rune
     
    Rune Allnor, Jun 22, 2006
    #2
    1. Advertisements

  3. SaM

    SaM Guest

    Hi Rune, as i'm just a beginner to DSP, i really could not understand
    most of your reply. I was thinking of doing "curve fitting" and getting
    the equation of the curve. Do you think it will work? Or is there a
    better way and simple way?

    Thank you.
     
    SaM, Jun 22, 2006
    #3
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.