我正在使用 Swift 开发一个应用程序,并且正在考虑一种在我的项目中获得非语音声音识别的方法。
我的意思是有没有一种方法可以让我接受声音输入并将它们与项目中已经包含的一些预定义声音进行匹配,如果发生匹配,它应该执行一些特定的操作?
有没有办法做到以上几点?我正在考虑分解声音并进行检查,但似乎没有比这更进一步的了。
我正在使用 Swift 开发一个应用程序,并且正在考虑一种在我的项目中获得非语音声音识别的方法。
我的意思是有没有一种方法可以让我接受声音输入并将它们与项目中已经包含的一些预定义声音进行匹配,如果发生匹配,它应该执行一些特定的操作?
有没有办法做到以上几点?我正在考虑分解声音并进行检查,但似乎没有比这更进一步的了。
我的个人经验遵循马特上面的评论:需要认真的技术知识。
有几种方法可以做到这一点,通常如下:从感兴趣的声音片段中提取一些属性(音频特征提取),并使用某种机器学习技术对该音频特征向量进行分类。这通常需要一些训练阶段,在其中给机器学习技术提供一些示例来学习您想要识别的声音(您的预定义声音),以便它可以从该数据构建模型。
在不知道您想要识别哪种类型的声音的情况下,也许我们这里提供的 C/C++ SDK 可能会为您解决问题: http : //www.samplesumo.com/percussive-sound-recognition您可以下载该页面并尝试使用您的声音。它是一个 C/C++ 库,有 Mac、Windows 和 iOS 版本,所以你应该可以将它与 iOS 上的 Swift 应用程序集成。也许这会让你做你需要的?
如果你想开发自己的技术,你可能想从查找和阅读一些使用关键词“声音分类”、“音频识别”、“机器听力”、“音频特征分类”、...的科学论文开始。
马特,
我们一直在开发一系列很酷的工具来加速 iOS 开发,特别是在 Swift 中。其中一个工具就是我们所说的TLSphinx:一个围绕 Pocketsphinx 的 Swift 包装器,它可以在音频不离开设备的情况下执行语音识别。
我认为 TLSphinx 可以帮助您解决问题,因为它是一个完全开源的库。在 Github ('TLSphinx') 上搜索它,您还可以下载我们的 iOS 应用程序 ('Tryolabs Mobile Showcase') 并现场试用该模块以了解它是如何工作的。希望有用!
最好的!