语音识别结果匹配与持久化存储中的命令词匹配
在语音识别应用中,如何将用户的语音指令与存储的数据进行有效匹配是一个关键问题。本文将介绍两种用于匹配语音识别结果的持久化存储机制:Android 的 SQLite 数据库的全文搜索(FTS)和 Lucene 搜索引擎。
1. 语音识别实验
在某些应用中,提供了“Try Speech”按钮,它为用户提供了一个语音识别的实验环境。用户可以选择或输入一些单词,点击“Speak”按钮,然后查看识别结果。应用会在右侧列标记出所有成功匹配的项。例如,用户可以尝试让识别器识别“cumin”或“cumin seeds”。
此外,用户还可以通过菜单中的“speech parameters”选项更改各种参数。将匹配方法更改为“Phonetic”或“Stem”,然后再次尝试语音输入,观察是否能改善匹配效果。菜单中还有一个“Compute Index”选项,可用于查看任何单词的 Soundex 代码和词干。
2. 持久化存储中的命令词匹配
有时,语音命令中包含存储在持久化存储中的动态单词。如果命令中的单词列表足够小,可以放入内存中,那么可以使用内存内的方法,如 WordMatcher。否则,应用必须查询持久化存储,并依靠它来对单词进行索引和匹配。
这里将探讨两种持久化存储机制:Android 的 SQLite 数据库和 Lucene 文本搜索引擎。
2.1 SQLite 全文搜索(FTS)
FTS 允许应用搜索其 SQLite 数据库中的所有文本。可以使用 FTS 来找到用户话语与数据库中一个或多个列之间的最佳匹配。
要使用 FTS,
超级会员免费看
订阅专栏 解锁全文
715

被折叠的 条评论
为什么被折叠?



