我正在设计一个新的iPhone / iPad应用程序,我将使用OpenEars包含一些语音识别功能,我是OpenEars的新手。
应用程序应识别来自自定义动态字典的一些单词(命令),我的意思是,根据用户操作,它应该能够识别一些新单词并忽略其他单词。
粗略地说,我需要在字典中添加和删除单词。
是通话
[languageModelGenerator generateLanguageModelFromArray:]
使用新的单词数组是正确的方法吗?
由于generateLanguageModelFromArray会创建一些文件,我认为它可能会影响应用程序的性能,有关这方面的经验吗?
答案 0 :(得分:1)
但是我要回答。
是。你是对的。
从他们的网站信息,在您要创建语言模型的方法中,添加以下方法调用
它将在您的文档目录中生成新的语言模型文件(它将覆盖旧文件)
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]);
}