iOS / C:检测音素的算法

2024-01-30

我正在寻找一种算法来确定实时音频输入是否与 144 个给定(且完全不同的)音素对之一匹配。

最好是完成这项工作的最低级别。

我正在为 iPhone / iPad 开发激进/实验性音乐培训软件。

我的音乐系统包含 12 个辅音音素和 12 个元音音素,已证明here http://toneme.org。这就产生了 144 个可能的音素对。学生必须唱出正确的音素对“laa duu bee”等以响应视觉刺激。

我对此做了很多研究,看起来我最好的选择可能是使用 iOS Sphinx 包装器之一(iPhone 应用程序 › 添加语音识别? https://stackoverflow.com/questions/942312/iphone-app-add-voice-recognition是我找到的最好的信息来源)。但是,我不知道如何调整这样的包,任何具有使用这些技术之一经验的人都可以给出所需步骤的基本概要吗?

用户是否需要接受培训?我本以为不会,因为与数千个单词的完整语言模型和更大、更微妙的音素基础相比,这是一项非常基本的任务。然而,让用户训练 12 个音素对是可以接受的(不理想):{辅音1+元音1,辅音2+元音2,...,辅音12+元音12 }。满144太累赘了。

有没有更简单的方法?我觉得使用功能齐全的连续语音识别器就像使用大锤来破解坚果。使用最少的技术来解决问题会更加优雅。

所以我真的在寻找任何可以识别音素的开源软件。

PS我需要一个几乎实时运行的解决方案。因此,即使他们正在唱这个音符,它首先会闪烁以说明它拾取了所唱的音素对,然后它会发光以说明他们是否正在唱正确的音符音高


如果您正在寻找手机级开源识别器,那么我会推荐HTK http://htk.eng.cam.ac.uk/。该工具以 HTK 书籍的形式提供了非常好的文档。它还包含一整章致力于构建电话级实时语音识别器。从上面的问题陈述来看,在我看来,您也许可以将该示例重新修改为您自己的解决方案。可能的陷阱:

  1. 由于你想做一个手机级别的识别器,训练手机模型所需的数据会非常多。此外,您的训练数据库应该在电话分布方面保持平衡。

  2. 构建一个独立于说话者的系统需要来自多个说话者的数据。还有很多。

  3. 由于这是开源的,您还应该检查许可信息以获取有关发送代码的任何其他详细信息。一个不错的选择是使用手机录音机,然后将记录的波形通过数据通道发送到服务器进行识别,这与谷歌的做法非常相似。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iOS / C:检测音素的算法 的相关文章

  • 导入 RNCryptor 后架构 armv7 的未定义符号

    我导入了 RNCryptor 可以在这里找到 https github com rnapier RNCryptor https github com rnapier RNCryptor进入我的应用程序 但是 我在日志中收到了三个错误 Und
  • GeoFire Swift 3 - 保存和更新坐标

    我正在尝试使用 GeoFire 将坐标存储到 Firebase 数据库中 我不确定如何更新新坐标 因为它们每秒都会更改 更新 随着childByAutoId 它正在为每辆自行车生成一个新的唯一 ID 如何引用这个唯一的自行车 ID 例如 用
  • 是否可以使用 Firebase 安排推送通知? [复制]

    这个问题在这里已经有答案了 我已经阅读了我能找到的所有文档 但仍然不知道这是否可行 如果我是用户 我可以安排特定时间的推送通知吗 Example 1 我是用户并打开应用程序 2 我允许通知并转到 pickerView 或其他任何内容 并设置
  • 更改组织以使用 Xcode 9 在 iTunes Connect 上上传二进制文件

    我在 Xcode9 上配置了多个团队 当我尝试将二进制文件上传到 Xcode 9 上的 iTunes Connect 时 没有更改团队的选项 并且出现以下错误 ERROR ITMS 4088 来自苹果开发者论坛的解决方案 1 正常存档2 窗
  • 如何接收有关与我共享的记录中所做更改的 CloudKit 通知?

    我有两个 iCloud 帐户 A and B 在两个不同的设备上 来自其中之一 A 我将 ckrecord 分享给另一个人 B 像这样 let controller UICloudSharingController controller p
  • Swift 中的 import 语句是否有相关成本?

    阅读字符串宣言 我看到一个段落 https github com apple swift blob master docs StringManifesto md batteries included关于避免Foundation不需要的时候导
  • 无法在 ios 应用程序中通过 googlecast 正确投射视频

    我正在开发一个基于 AVPlayer 的自定义视频播放器项目 尝试整合谷歌演员 我已经根据谷歌图进行了集成 https codelabs developers google com codelabs cast videos ios http
  • 错误消息:您输入的捆绑包 ID 已被使用

    我正在尝试发布一个 iPhone 应用程序 这不是第一个 我过去已经发表过其他的 因此 我在第一个和第二个表单中输入了所需的信息 然后填写了第三个大表单 您还可以在其中上传图标和屏幕截图 好吧 我在上传屏幕截图之前按下了 保存 按钮 因为我
  • Flutter 应用程序在 iOS 平台的 firebase 电话身份验证中崩溃

    我在我的项目中实现了 Firebase Phone auth 在 Android 端 一切正常 但对于 iOS 端 当我尝试从我的端发送验证码时 应用程序崩溃并失去连接 我已在下面提交了我的代码 主程序 dart class MyApp e
  • 有没有办法在 Firebase 中等待查询完成?

    我正在使用 TableView 在 Viewcontroller 中的 iOS 应用程序中进行查询 我想确保在继续加载 TableView 之前我的查询已经返回 有没有办法保证查询已经完成 None
  • UIViewController 不旋转到横向

    在许多情况下需要旋转控制器但不起作用 现在我遇到了相反的问题 它正在旋转 我想禁用它 在那个 ViewController 中我有这个 BOOL shouldAutorotateToInterfaceOrientation UIInterf
  • 将类型传递给通用 Swift 扩展,或者理想情况下推断它

    说你有 class Fancy UIView 你想找到所有兄弟姐妹Fancy意见 没问题 https stackoverflow com q 37232743 294884 for v UIView in superview subview
  • iOS 7 tabBar 横线,如何去掉?

    Apple 在 iOS 7 中的 tabBar 上添加了一条细线 该线应该在 tabBar 和 UI 之间起到阴影或淡入淡出的作用 由于我使用的是定制的 tabBar 这条线非常令人恼火 你如何删除它 请告诉我这是可能的 否则我需要重新设计
  • AVAudioPlayer 无法从网站播放 m4a 或 mp3 文件类型

    我试图在我的应用程序中找到一个仅纯 m4a 声音的 URL 我有音频的 URL 理论上可以下载它 然后 使用下载的文件URL到声音 我尝试使用AVAudioPlayer播放它 但它不播放任何声音 这是我的代码 在 URL 检索函数中 我调用
  • 使用 UITabBarController 时覆盖整个屏幕的视图?

    我想在 UITabBarController 设置中在整个屏幕上覆盖 HUD 样式的透明图形 执行此操作的按钮位于第一个选项卡的屏幕 FirstViewController 中 并且覆盖层也应该覆盖选项卡 这可能吗 您可以将新视图直接附加到
  • 通过 Button Swift 中的标签发送行和部分

    我里面有这个cellForRowAtIndexPath cell plusBut tag indexPath row cell plusBut addTarget self action plusHit forControlEvents U
  • Mac 上的 Delphi - 可能吗? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我负责一个 Delphi Win32 项目管理应用程序 我刚刚完成了向 Delphi 2009 的迁移
  • UIViewController 内的 UIsearchController 使用自动布局

    有没有人成功实施过UIViewController其中包含两个UISearchController searchBar and a UItableView使用自动布局来布局所有内容 我正在尝试实现类似的目标1密码 https itunes
  • 使用日期 Swift 3 对字典数组进行排序

    我有一个名为 myArray 的数组 其中添加了字典 我希望该字典按时间排序 这是字典中的键 那个时间是在 String 中 时间的日期格式为 yyyy MM dd HH mm ss 我尝试使用下面的代码解决方案 但给出了 从 字符串转换
  • 如何在 UITableView 的 switch 语句中创建变量?

    我正在构建一个包含三个部分的 tableView 我已经完成了前两个工作 但最后一个有点阻力 我的问题似乎涉及尝试在 switch 语句中声明变量 实际上是嵌套的 switch 语句 据我所知 这不是一个好主意 但在这种情况下 这似乎是唯一

随机推荐

  • 如何创建实体关系图(ERD)

    有谁知道在 R 中创建实体关系图 ERD 的简单方法除了graphviz和 或DiagrammeR 我不经常使用 graphviz 并且经常花费比我想记住它的语法更多的时间来创建一个简单的图形 我想创造一些类似于 Hadley Wickha
  • 如何从不均匀长度的列表创建分组条形图

    我正在尝试绘制具有不同数据长度的数据组 您是否知道如何可视化仅包含两个对象的女性列表 而不用零填充其余对象来获取男性列表的长度 这是我到目前为止得到的代码 import matplotlib import matplotlib pyplot
  • 如何在 Django 中的过滤器之前应用开窗函数

    我有这些模型 class Customer models Model class Job models Model customer models ForeignKey Customer payment status models Fore
  • 在 foreach 循环之外声明变量

    在 for 循环情况下 我可以在 for 语句之外声明索引 例如 代替 for int i 0 i lt 8 i 我可以 int i for i 0 i lt 8 i 现在与 foreach 循环相比 我必须在循环内声明变量 foreach
  • 如何一次从 docker repo 中提取所有 docker 容器镜像?

    我有一个私人 docker 存储库 其中存储了 10 个容器映像 我想将所有图像拉到一台机器上 有没有一种方法可以使用单个命令从存储库中提取所有图像 一些命令 例如 docker pull xx xx com reponame 在研究过程中
  • Rails4Friendly_id 独特的 Slug 格式

    我正在使用Friendly id gem 来攻击我的模型 由于当我输入相同的数据来检查时 slug 必须是唯一的 因此我会在 slug 中附加一个长哈希值 Explore explore Explore explore 7a8411ac 5
  • 例外:DataValidation 列表的总长度不能超过 255 个字符

    我正在尝试在 epplus 中动态创建公式字段 如果公式字段包含少于 255 个字符 则可以正确创建 如果超过255 然后它抛出一个异常例外 DataValidation 列表的总长度不能超过 255 个字符 任何人都可以帮我解决这个问题吗
  • 如何有效地将项目添加到 Chrome Storage API 中的数组中?

    据我了解 如果您希望在 Chrome Storage API 中存储一个数组并不断向其中添加项目 则需要如下所示 function addToHistory url chrome storage sync get history funct
  • 使用 PHP 强制下载然后重定向

    我知道这个问题以前已经被问过很多次了 但我找不到适合我需要的答案 我需要找到一种方法来强制下载文件 然后在下载开始后重定向到 感谢下载 页面 到目前为止我有
  • 这个 ASP.Net 和 Fiddler 示例有什么问题?

    我正在使用 Visual Studio 2012 RC 我使用默认路由并具有以下 Web API 控制器 public class FooController ApiController GET api foo public IEnumer
  • Nodejs http 超时或错误时重试

    我正在尝试在超时或错误时自动重试 HTTP 请求 目前我的代码如下所示 var req http get url doStuff on error retry setTimeout 10000 retry 但是 单个请求有时可能会同时触发
  • 如何对通知进行android单元测试?

    我有课handleFirebaseMessages 它包含以下功能onMessageReceived 该函数负责接收数据并创建通知 onMessageReceived 接收数据在RemoteMessages目的 我正在尝试为这个函数编写一个
  • 引起原因:java.sql.SQLException:不支持 JDBC4 Connection.isValid() 方法

    我的 play framework 项目在本地运行良好 但是当我尝试将其部署到 heroku 中时 出现以下错误 2015 07 05T06 24 10 456657 00 00 app web 1 at com google inject
  • 默认样式表、用户样式表和作者样式表之间有什么区别?

    In CSS http en wikipedia org wiki Cascading Style Sheets 有什么区别default user and author样式表 默认样式表由浏览器供应商提供 用户样式表由浏览器的用户提供 作
  • 将数据从 SQL Server 加载到 Excel 的最快方法

    我在 SQL Server 上有一个相对较大的表 大约 300 000 行 该数据用作数据池来验证用户在 Excel 电子表格中执行的操作 确保用户始终使用最新数据的一种方法是设置 VBA 以便在电子表格打开时自动从 SQL Server
  • .NET 可移植类库和 UDP 支持

    我正在为 Philips Hue Lights 编写一个 C 库 我正在尝试在 NET 可移植集中编写基本 API 包装器 这样我就可以在 Windows 8 RT WP 等各种平台上重复使用该库 API 本身完全通过 HTTP 使用 RE
  • Travis CI/Pro:CIDR/IP 范围?

    我们正在使用 Travis Pro 并对 Redshift 进行了一些测试 我们可以在 Redshift 中为其创建安全规则吗 Travis VM 是否有 CIDR IP 范围 显然我们不会为任何传入 IP 打开 Redshift 这在过去
  • 如何在 Rails 3 中使用 Ransack 范围?

    在我的小部件模型中 我有以下内容 scope accessible to lambda user if user has role admin self all else roles user roles role ids roles ea
  • 如何中断BufferedReader readLine

    我正在尝试在多个线程中逐行读取套接字的输入 我怎样才能打断readLine 这样我就可以优雅地停止它正在阻塞的线程 编辑 赏金 可以在不关闭套接字的情况下完成吗 不关闭套接字 困难的问题不是BufferedReader readLine 但
  • iOS / C:检测音素的算法

    我正在寻找一种算法来确定实时音频输入是否与 144 个给定 且完全不同的 音素对之一匹配 最好是完成这项工作的最低级别 我正在为 iPhone iPad 开发激进 实验性音乐培训软件 我的音乐系统包含 12 个辅音音素和 12 个元音音素