当前位置: 首页 > 知识库问答 >
问题:

如何在Android Studio中比较单词/声音?

年文柏
2023-03-14

我在寻找最好(也是最快)的方法,从移动麦克风录制短音频输入(如一个单词),然后将其与来自同一个人的长实时音频输入(如语音)进行比较,并查找单词的出现情况。

我尝试了很多方法,比如使用典型的SpeechRecognitor,但也有很多问题,比如实际上无法保证它能够足够快地给出结果或运行数分钟。

语音识别Android反应时间过长

Android上的长音频语音识别

我真的不需要识别那个人在说什么,只是为了能够发现一些偏差的出现。

如果你能给我一些如何做的建议,那就太好了。

编辑:我基本上是在寻找一种通过用户输入的声音来控制应用程序的方法

共有1个答案

花和宜
2023-03-14

这里有几个想法可以考虑。

(1) 首先,创建一组常见的短音,这可能是搜索的一部分。例如,可能是所有音素,或一组类似于所有辅音-元音组合的东西,例如bah、bay、beh、bee等,以及cah、cay、keh、key等。

然后,对每个“long”目标样本进行遍历,为找到这些音素的位置建立索引。

现在,当用户给你一个单词时,首先将其与您的一组索引音素片段进行比较,然后使用匹配项将您的搜索和测试集中在长目标文件中。

(2) 将“long”文件分解为片段并对片段进行排序。然后使用类似二进制搜索算法的方法,将输入的单词与排序列表中的项目进行比较。

 类似资料:
  • 我在网上找不到如何比较文件之间的单词的任何例子。我需要确定文件之间共享的字数和每个文件(相对于其他文件)唯一的字数。我的最终输出应该包括7个数字:文件1和文件2的总字数,文件1和文件2的唯一字数,文件1和文件2之间共享的字的#,文件1中但不在文件2中的字的#,以及文件2中但不在文件1中的字的#。我知道我必须使用set()来完成此操作,但我不明白如何操作。 期望输出:

  • 我有一个,它是: 我想数一数回购的数量。在这整条线上。所以,我试着用这种方法,但它不起作用。 输出为: 因为在字符串中只看到一次。我的输出需要是。

  • 问题内容: 两个日期比较,但时间比较不正确。这是我的密码 我该如何比较两次。在数据库中的日期和时间字段不同。请帮助我。 问题答案:

  • 问题内容: 我想比较两个数组…理想地,有效地比较。没有什么幻想,只要它们是相同的,如果不相同。毫不奇怪,比较运算符似乎不起作用。 每个数组都可以使用JSON编码,但是有没有一种更快或更“更好”的方法来简单地比较数组而不必遍历每个值? 问题答案: 要比较数组,请遍历它们并比较每个值: 比较数组: 用法: 您可能会说“ 但是比较字符串要快得多-没有循环… ”,那么,您应该注意存在ARE循环。第一个递归

  • 问题内容: 我看到可以进行日期比较,也可以进行日期比较,但是我一直在努力寻找如何检查当前时间()是否早于指定时间(例如上午8点),还是晚于指定时间(例如上午8点),而不管日期如何。 问题答案: 您 无法 将特定时间点(例如“现在”)与一个固定的重复发生的事件(每天早上8点发生)进行比较。 您可以检查是否现在之前或之后, 今天 上午8点:

  • 问题内容: 如何在Java中比较两者之间的日期? 例: date1是 date2是今天 date3是 总是大于和今天始终。如何验证今天的日期是否在和之间? 问题答案: 日期有之前和之后的方法,可以相互比较,如下所示: 进行包容性比较: 你也可以尝试一下Joda-Time,但请注意: Joda-Time是Java SE 8之前的Java的事实上的标准日期和时间库。现在,要求用户迁移到java.tim