This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCS/MSP432P401R: Doubts about Speech Recognizer Library

Part Number: MSP432P401R

Tool/software: Code Composer Studio

Hi,

I am studying about the algorithm of voice recognition and I noticed that in the display when a record of a phrase appears the status of the enroll of a number that I did not understand what it means and another number that according to the library says to be the quality of the audio.
I have some doubts. The first is why the VCD_getEnrollQuality (VCD_handle, & quality) function always returns in the variable quality always the value 32767 (in debug), and in the comments of this function says that the value always stays between 0 and 1 ?.
How to understand the quality parameter displayed on the display, in all the tests I did always display "10", is this the highest quality ?.
Another point I wanted to address is what the number displayed before the quality parameters means, it's a number I did not understand what that means, sometimes it appears as 136, 164 and other values. What does this number say?.

Regards,
Leonardo!

  • Hello in you studying have you looked through the documentation found in the resource explorer? dev.ti.com/.../

    I am not aware of any support currently offered for this solution and will need to inquire.

    Best Regards,
    Chris
  • Hi Leonardo,

    Are you running the voice_detection_demo during your tests, and are you able to successfully enroll, update, and recognize phrases?

    The 'quality' parameter of VCD_getEnrollQuality (VCD_handle, &quality) returns 0-1 in Q15. The demo will then convert this to a number between 1-10 and then display this on the LCD.

                                 VCD_getEnrollQuality(VCD_handle, &quality);
                                 quality = (int_least16_t)( (((int_least32_t)quality)*10)/32768 + 1 );
    
                                 sprintf(lcdMessage, "Success %d %d", mInfo.numObs*2, quality);

    On the LCD, the number before the quality is the duration of the model in 100ths of a second.

    The User's Guide and the API Guide are good resources to learn more about the demo and the APIs.

    Best,

    Kristen

  • Hi, Kristen!



    Are you running the voice_detection_demo during your tests, and are you able to successfully enroll, update, and recognize phrases?

    Answer: Yes works correctly.

    I noticed that the very high rejection rate in the tests, in some recognition operations, resulted in POBRE MATCH (led Red), even though I tried to repeat the phrase. Is there any way to make the system more assertive?
  • Hi Leonardo,

    Ensure that you are training the recognizer with each phrase by updating the phrase model several times via the Update Menu. Also, keep in the mind the performance of the recognizer is tied to the speaker that trained each phrase. If another speaker tries to use the recognizer, performance will likely degrade due to differences in the way the phrase is spoken. Similarly, the way the phrase is spoken during updates and during recognition can affect performance - try to say the phrase in the same way throughout the whole process. Also, the VCD algorithm does adjust for background noise, but large amounts of background noise may also affect performance.

    If after ensuring that you are updating the phrase properly and you are still having issues with recognition, you could start playing around with some of the run-time options. The iMaxDelta value may be of interest to you. More detail on these options is in the User's Guide.

    Best,
    Kristen

**Attention** This is a public forum