What if the sphinx is completely inaccurate?

Edit for clarity: The output I get from sphinx doesn't even come close to the actual words in my audio file. What do I need to do to make it more accurate?

Here's the file I'm trying to get a transcript. It should be 8K sample rate.

Speech in the file "What to do if you have a problem with your iPod", but as a conclusion, I get:

<s> <sil> well how how [um] [cough] [um] old [cough] [noise] [cough] <sil> [noise]
[um] <sil> [um] <sil> [uh] [cough] [noise] [cough] [um]

      

Here's my code:

package com.test.sphinxtest;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;

import edu.cmu.sphinx.api.Configuration;
import edu.cmu.sphinx.api.LiveSpeechRecognizer;
import edu.cmu.sphinx.api.SpeechResult;
import edu.cmu.sphinx.api.StreamSpeechRecognizer;

public class App 
{
    public static void main( String[] args )
    {
        Configuration configuration = new Configuration();

        configuration.setAcousticModelPath("models/acousticmodel/en-us-8khz");
        configuration.setDictionaryPath("dictionary/cmudict-0.6d");
        configuration.setLanguageModelPath("models/languagemodel/en-us.lm");
        configuration.setSampleRate(8000);
        try {
            StreamSpeechRecognizer recognizer = new StreamSpeechRecognizer(configuration);
            recognizer.startRecognition(new FileInputStream("speech/speech8k.wav"));
            System.out.println("Starting recognition");
            SpeechResult result = recognizer.getResult();
            System.out.println("Stopping recognition");
            recognizer.stopRecognition();
            System.out.println("number of words " + result.getWords().size());
            for(int i=0;i<result.getWords().size();i++){
                System.out.println(result.getWords().get(i).getWord());
            }       
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

      

+3


source to share


1 answer


I looked at this page: http://cmusphinx.sourceforge.net/wiki/faq#qwhy_my_accuracy_is_poor

And I saw that I needed to set my audio file to single channel.



After that, I got a reasonable result.

+2


source







All Articles