我不确定这是否可能,但无论如何,
我在 winform C# 应用程序中使用using System.Speech.Recognition;
。
我想知道是否可以不仅识别语音,还可以识别声音,以某种方式识别不同声音之间的差异
从每个单独的语音中获取接近于阅读乘数内容的内容,例如,从两个同时或单独说话的用户作为不同的两个。
或者至少可能是一些控制背景响度的方法,例如,如果AudioLevelUpdated
事件允许我看到输入音量,但也可能存在一些特定的方式来将响亮的声音与额外的噪音或背景中的声音分开
System.Speech.Recognition
不会帮助您进行语音识别。 System.Speech.Recognition
用于语音转文本。向其添加语法可提高其效率。您可以训练 Windows 桌面以获得更好的转换。请参阅控制面板中的语音识别。
有几个第三方库可用于语音识别。若要消除噪音,可以参考 C# 中的声音可视化工具。
您可以在 msdn 论坛上找到有趣的讨论。
我认为你应该看看CRIS,它是Microsoft认知服务的一部分,至少对于你关于噪音的问题。
CRIS 是一种自定义语音服务,其基本用途是使用自定义声学模型(如背景噪声(和使用示例学习词汇来提高语音转文本的质量。
您可以导入:
-
声学数据集
-
语言数据集
-
发音数据集
例如,在声学模型中,您有:
-
Microsoft对话模型,用于识别以对话风格说出的语音(即针对他人的语音(。
-
Microsoft 搜索和听写模型,用于定向到应用程序的语音,例如命令、搜索查询或听写。
预览版中还提供说话人识别 API