java - 识别使用 Java 的人所说的字母

标签 java android speech speech-to-text

我需要识别用户对着设备的麦克风说出的字母表。该设备可以是安卓驱动的移动电话。

例如,当用户说“R”时,它应该给我“R”而不是“Are”..

如何在Java中完成这种口头字母识别?我正在寻找可以用代码轻松表达的想法。

编辑

根据@David Hilditch 的一项建议,我想出了下面这张人物图及其读音词。

A - ye,a,yay 
B - be, bee, 
C - see, sea, 
D - thee, dee, de
E - eh, ee, 
F - eff, F
G - jee, 
H - edge, hedge, hatch, itch
I - Aye, eye, I
J - je, jay, joy
K - kay, ke, 
L - el, yell, hell
M - am, yam, em
N - yen, en,
O - oh, vow, waw
P - pee, pay, pie
Q - queue,
R - are, err, year
S - yes, ass, S
T - tee, tea, 
U - you, U
V - we, wee,
W - double you, 
X - axe
Y - why
Z - zed, zee, jed

最佳答案

您可以使用 Google 的 API 从语音中获取文本(快速查看 http://developer.android.com/reference/android/speech/RecognizerIntent.html)。

然后,如果您想推断语言(然后是字母表),您可以使用一个基于 n-gram 的名为“语言检测器”的开放项目:

http://code.google.com/p/language-detection/

您可以使用“字典巧合”和您可以从文本中获得的其他特征来组合它。

关于java - 识别使用 Java 的人所说的字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12449242/

相关文章:

java - 如何在 Tomcat 启动时初始化 Web 应用程序常量(从文本文件)?

java - 同时包含 HTML 和 JSP ViewResolvers

android - Recycler View 不保存 View 状态

java - 数字键盘更有效的方式

java - Java-5 ThreadPoolExecutor 与 Java-7 ForkJoinPool 相比有什么优势?

java - 将来自 json 响应的数组字符串存储在 Realm 中

统计记录的 SQL 查询

android - Android上的小尺寸语音识别寻找关键词

java - Android Speech to text API 从 onActivityResult 方法中获取变量值

java - 如何在 Android 应用程序的语音识别中传递语言?