问题标签 [sound-recognition]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
255 浏览

c# - 尝试使用音频识别环回的不良类型

Microsoft Speech 系统有一个很好的示例代码,但是在添加环回以记录它正在播放的内容而不是通过麦克风播放的内容时我遇到了问题。例如,在未在扬声器上播放视频时给出视频的文本描述。似乎是执行此操作的库,但我收到类型错误,将其推送到识别器的音频流:

更新正如您在修改后的代码中看到的,至少现在正在编译,但不能识别任何内部或外部语音。实际上它输出:

因此,由于 AudioBitsPerSample 上没有“三十二”,也许我什至不能使用 NAudio 类来获取系统音频?

更新这似乎有点工作,基于另一个答案,但它并没有太多,我认为它可能会发送缓慢或快速的音频?

更新 3 - 尝试将音频流重新编码为语音识别将执行的操作:不幸的是,它无法捕获重新编码的音频,如您所见......

0 投票
0 回答
46 浏览

python - SoundRecognition 不起作用,找不到 pyaudio 模块

我正在尝试使用 sound_recognition 构建桌面助手,但它一直在说

但是当我尝试这样做pip install pyaudio时说

我已经尝试pipwin并使用网上的轮文件,我得到了消息

This is not a supported wheel on this platform

或者说什么。请帮我!

0 投票
0 回答
139 浏览

python - Arduino Nano 33 BLE 上的足迹识别

我正在尝试通过使用脚步声训练模型来构建入侵检测设备。
我正在尝试使用 TensorFlow 来做到这一点。
问题是这个例子根本不起作用:我试图创建一个名为“footsteps”的自定义词,在正确的位置创建了一个目录,其中包含 wavs 文件(与示例的 wavs 格式相同),并且,即使脚本完成运行,它也不会产生输出文件(它会打印输出文件应该在的路径,但该目录不存在)也不会产生混淆矩阵(它被打印为“无”)并且它说验证准确率为 0%。

我试图改变方法,从 TensorFlow lite 库的 micro_speech 示例开始。
即使在这里,我产生一个新的特征向量。它工作正常,但 99% 的情况下都无法识别脚步声(显然,因为我只用一个 wav 文件“训练”了“模型”)。

有没有办法用更多的文件来训练那个例子,或者有一种更简单的方法来做我需要做的事情,但我却不知何故错过了?
提前致谢。

0 投票
0 回答
233 浏览

python - 声音识别开始和停止录制 MP3 流

我正在尝试制作一个 Python 脚本,它将记录来自互联网广播 (MP3) 流的本地新闻,就像这样。新闻片段以两种不同的哔哔声开始和结束。

到目前为止,我的解决方案非常缓慢且未经优化:

  1. 使用 crontab 启动脚本(新闻每小时播报一次)。
  2. 录制固定时间的流。
  3. 将录音从 MP3 转换为 WAV。
  4. 对下采样数据集使用 Pearson 相关性(以更快地执行)将记录的 WAV 文件与蜂鸣声的 WAV 文件进行比较。
  5. 搜索最高的 Pearson 相关系数并计算记录文件中出现哔声的时间。
  6. 在计算的时间剪切录制的音频文件。

不用说我的解决方案很糟糕。

理想的解决方案是始终收听流媒体并仅在听到哔哔声时开始/停止录制。

知道我怎么能做到这一点吗?

PS:当我搜索 Google 时,几乎所有文章都涉及语音识别和其他使用 AI 分类器(如 Tensorflow),我认为识别简单的哔声有点过头了。

感谢所有提示和/或建议。

0 投票
2 回答
320 浏览

scikit-learn - 如何为不同长度的特征向量拟合 scikit 模型

我正在做一个声音分类项目,给定一组录音,我试图确定某个录音属于哪个类别。您可能会将其与音乐流派或主题识别(文本主体)问题进行比较,我的样本长度不同,我需要为每个样本精确地分配一个标签。

我将我的特征表示为 2d 矩阵,其中每一列代表音频文件中的一个帧(例如 0.1 秒),每一行是一个仅与该时间帧相关的特征(例如 MFCC 系数)。现在虽然我的行数是固定的,但列数会根据记录的长度而变化。

我将训练和测试数据作为 numpy 数组输入,它们包含每个样本的 2D nxy矩阵,其中n是一个常数(即 13),y是一个变量,它取决于当前样本的长度。

...

不幸的是,scikit-learn 似乎不是这个的忠实拥护者,一次又一次地提高我一个ValueError: setting an array element with a sequence.. 现在我看到了许多解决方案:

  1. 使用其中一个小工具sklearn.feature_extraction对序列中的特征(文本、不同大小的图像等)进行矢量化,尽管我看到的大多数示例都是针对基于文本的问题,所以我不完全确定它们对像这样的音频问题。
  2. 取列的平均值来产生一个与时间无关的特征向量(可以在这里看到https://www.youtube.com/watch?v=N1rcKBHlw-Y
  3. 当使用像 K-NN 这样的模型时,可以手动预先计算距离,绕过 scikit 的“序列还是数组?” 完全检查。

现在在这三个中,我更喜欢类似于 #1 的东西,因为感觉这是 scikit 优化的方法。有任何想法吗?

0 投票
2 回答
70 浏览

android - 在移动设备上进行声音识别训练是否可行?

有大量关于声音分类的文献,其中可能的匹配项是现代世界中发现的任何声音(例如:http ://projects.csail.mit.edu/soundnet/ )。这个问题的不同之处在于它仅限于搜索少数特定的声音,在本地录制和训练。这个问题是关于编写一个移动应用程序的可行性,该应用程序将记录和转换一小组声音(例如,少于 10 个),然后能够“收听”并识别这些声音。

在这个类似的、未回答的 SO question中,作者以门铃的声音为例。我的示例会有所不同,因为我想对狗的发声进行分类。我可能会定义“fido bark”、“rover bark”、“fido whine”、“rover whine”,所以当应用程序处于训练模式时有四个按钮。然后狗会发出声音,人类用户会对每种声音进行分类。然后应用程序将切换到聆听模式,如果某只狗发出某种声音,应用程序将匹配声音并显示哪只狗,以及发生了哪种声音。

在没有外部处理的情况下,在典型的移动设备上编写应用程序(例如上述应用程序)是否可行?如果是这样,怎么做?

0 投票
1 回答
246 浏览

python - 语音识别返回意外错误

所以我收到如下错误:

带有基本的语音/声音识别系统:

我尝试pip install使用 PyAudio 查看错误,但这也不起作用。

我使用:Python 3.8.5 - 文本编辑器:记事本、Notepad++ 和 IDLE - 操作系统:Windows 10 Pro 64 位

随便问什么。提前致谢!

0 投票
0 回答
504 浏览

react-native - Expo:实时获取音频数据并通过 Socket.IO 发送

我想做的应用

我想制作像Shazam这样的音频识别移动应用程序

我想每秒或每个样本通过 Socket.IO 将记录数据发送到基于机器学习的识别服务器(可能每秒发送数据采样率次数太多),然后移动应用程序接收并显示预测结果。

问题

录制时如何获取数据recordingInstance?我阅读了世博会音频文件,但我不知道该怎么做。

至今

我跑了两个例子:

现在我想混合两个例子。感谢您的阅读。如果我可以console.log记录数据,那将有很大帮助。

相关问题

0 投票
0 回答
14 浏览

speech-recognition - 是否有可以区分“B-4”和“D-4”声音的开源、可语音训练的语音或声音识别套件?

我正在努力应对一个已被证明非常困难的挑战。我想构建一个可以接收语音输入以移动棋子的国际象棋游戏原型。

为了保持“简单”,我最初的目标是让程序能够可靠地理解声音“A-1”到“A-8”,然后通过字母表的前 8 个字母,代表 8x8 方格棋盘。

我尝试使用几个语音到文本的 API,但都被证明非常不可靠。这部分是由于我自己的口音,但也因为说 B4 和 C2 之类的话发出的声音显然很难被这些 API 解释。

我开始相信预先录制 64 种声音然后让算法尝试匹配 64 个样本之一上的传入声音可能更可行。

问题是,虽然使用语音到文本 API 非常简单,但我不知道如何处理这条替代路径。我已经做了 20 年的网络开发人员,但没有机器学习或训练模型的经验。希望这不是太疯狂,我只是想训练一个有 64 种声音的算法,或者也许有一个可用的语音识别软件支持用我自己的特殊口音训练它,并且能够识别字母声音之间的细微差别和可靠的数字。

非常感谢任何关于从哪里开始的建议。谢谢!