OpenEars动态字典

时间:2012-11-22 12:02:58

标签: ios openears

我正在设计一个新的iPhone / iPad应用程序,我将使用OpenEars包含一些语音识别功能,我是OpenEars的新手。

应用程序应识别来自自定义动态字典的一些单词(命令),我的意思是,根据用户操作,它应该能够识别一些新单词并忽略其他单词。

粗略地说,我需要在字典中添加和删除单词。

是通话

[languageModelGenerator generateLanguageModelFromArray:]

使用新的单词数组是正确的方法吗?

由于generateLanguageModelFromArray会创建一些文件,我认为它可能会影响应用程序的性能,有关这方面的经验吗?

1 个答案:

答案 0 :(得分:1)

您可以在politepix.com/openears/

中查看有关LanguageModelGenerator的更多详细信息并发布您的问题

但是我要回答。

是。你是对的。

从他们的网站信息,在您要创建语言模型的方法中,添加以下方法调用

它将在您的文档目录中生成新的语言模型文件(它将覆盖旧文件)

NSArray *words = [NSArray arrayWithObjects:@"YOUR FIRST SENTENCE", @"YOUR SECOND SENTENCE", @"YOUR THIRD SENTENCE", nil];

NSString *name = @"NameIWantForMyLanguageModelFiles";
NSError *err = [lmGenerator generateLanguageModelFromArray:words withFilesNamed:name];


NSDictionary *languageGeneratorResults = nil;

NSString *lmPath = nil;
NSString *dicPath = nil;

if([err code] == noErr) {

    languageGeneratorResults = [err userInfo];

    lmPath = [languageGeneratorResults objectForKey:@"LMPath"];
    dicPath = [languageGeneratorResults objectForKey:@"DictionaryPath"];

} else {
    NSLog(@"Error: %@",[err localizedDescription]);
}