如何在 Javascript(或 Flask WebApp)中实现语音 'Identification'?

How to implement Speech 'Identification' in Javascript (or a Flask WebApp)?

我需要实现语音 'identification',即。 通过匹配 his/her 语音 ,猜测尝试登录的人是否实际上是 him/her。 考虑到这种情况,应用程序无法识别此人,但用户自己正在尝试登录,那么他可能会使用 pin 绕过它,在初始设置期间进行设置。

我正在使用 Python 和 Flask 来构建 webapp,并在问题中包含了 javascript,以便了解可能的方法。 到目前为止,我从一些来源了解到它,但我无法找到可能的解决方案,关于堆栈溢出,以及 'few' 博客文章。

我能找到的最好的 'possible' 解决方案是 Microsoft 的认知语音服务 - https://azure.microsoft.com/en-us/services/cognitive-services/speaker-recognition/

我也想过用Recorder.js录音,然后在服务器端解析,但是实现不了

所以,我想要一种在 Web 应用程序上实现它的方法,即使是一个简单的要点和一些关于使用 MS 认知服务的代码(我确实阅读了文档页面,但没有太大帮助),或者通过 python 完成会很有帮助。

https://docs.microsoft.com/en-us/azure/cognitive-services/speaker-recognition/home 上的文档会有所帮助。请注意,API 参考有点击 link 次。它解释了高级流程(使用“注册”进行培训)。

我们有speaker identification, which is distinguishing who is speaking from a group of known voices that you train with. You need to provide labelled data (meaning examples of a known speaker talking): see https://westus.dev.cognitive.microsoft.com/docs/services/563309b6778daf02acc0a508/operations/5645c3271984551c84ec6797

或 请遵循以下 link 语音 SDK 示例。 https://docs.microsoft.com/en-us/azure/cognitive-services/speech-service/

您可以使用批量转录 api 并启用二值化。 https://docs.microsoft.com/en-us/azure/cognitive-services/speech-service/batch-transcription

正如@Ram 指出的,我们可以使用 Microsoft Cognitive Services,我们使用它来实现它。

首先,我们需要一个来自微软的用于认知语音服务的 API 密钥(他们提供了一个 2 个密钥和一个端点,可以免费试用 7 天,无需任何卡,另一个免费版本用于也许一年,有卡的详细信息) 在此处获取 API 密钥:https://azure.microsoft.com/en-in/try/cognitive-services/?unauthorized=1

然后,我浏览了Microsoft 的文档,但对它没有任何帮助。 有用的是:https://github.com/rposbo/speaker-recognition-api

所有的文件我都翻遍了,'needed'部分主要在speech-recognition-api-demo-core.js和demo.html 先了解它到底是干什么的,然后才能在你的页面上实现它。 这实际上得出了答案,因为这就是 'can' 使用 Javascript 实现的方式。 Extra - https://github.com/AdityaGupta150/ProtoMain - 我们只使用了 Robin posbo 代码中需要的部分(你不能只复制粘贴,先理解它),并实现了它,你可以在 templates/verification 中看到.html