我正在使用Windows听写资源工具包,我已经遗传了医学模型的.dlm和.ngr文件,现在我如何在Windows7中注册这些听写主题,我还想知道是否有一种方法可以直接加载到程序中?
发布于 2014-06-24 18:46:20
您需要在引擎GUID键下注册主题。对于美国英语来说,关键是
HKLM\SOFTWARE\Microsoft\Speech\Recognizers\Tokens\MS-1033-80-DESK\Models\1033\L1033\LMs\AddOn创建一个REG_SZ键,其名称为听写主题名,其值为..dlm/..ngr的路径(两个文件必须位于同一个目录中)。
例如,如果听写主题被命名为"Medical",并且路径位于"c:\medical“中,那么reg键将是
HKLM\SOFTWARE\Microsoft\Speech\Recognizers\Tokens\MS-1033-80-DESK\Models\1033\L1033\LMs\AddOn\Medical = c:\medical要在代码中指定听写主题,只需在加载听写语法时指定主题名称。
对于C# (使用System.Speech.Recognition),代码如下所示:
string topic = "grammar:dictation#Medical";
DictationGrammar dg = new DictationGrammar(topic);在C++中,使用本机SAPI,
ISpRecoGrammar* pGrammar;
// initialize pGrammar before use...
HRESULT hr = pGrammar->LoadDictation(L"Medical", SPLO_STATIC);如果希望在Windows语音识别中显示新主题,还需要更新
HKCU\Software\Microsoft\Speech\Preferences\DictationLanguageModels并添加一个值,其名称为主题名,其值为显示值。例如,如果您的主题是“医疗”,并且希望它以“医学听写”的形式出现,那么您应该
HKCU\Software\Microsoft\Speech\Preferences\DictationLanguageModels\Medical = "Medical Dictation"https://stackoverflow.com/questions/24385847
复制相似问题