- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Microsoft Speech SDK 来实现一个使用语音识别的软件。
我为识别引擎提供了一个非常正常的语法,但是当启动引擎并说出正确的内容时,它识别出我说的是什么,但返回的结果对象的置信度值为 -1。
此外,结果中包含的所有 SemanticValue 对象的置信度也为 -1。
我在相关的 MSDN 页面中找不到这样的结果的含义,实际上只是写了典型的置信度值应该在 0 和 1 之间。
-1 值是什么意思?跟语法有关系吗?
编辑:附加信息:
最佳答案
在 SAPI 中,SREngineConfidence 试图将短语置信度从供应商特定的语音引擎传递到引擎独立的 SAPI 客户端。 SREngineConfidence 在“Microsoft Speech SDK 版本 5.1 SR 引擎供应商移植指南”中描述了一些有趣的行为
http://msdn.microsoft.com/en-us/library/ee431799(v=VS.85).aspx#_Toc503606917说:
It is possible for confidence score information to be included in recognition results. On each phrase element there are two confidence fields that the engine can set. These have both a Confidence (three-level) field and an SREngineConfidence (floating-point) field. If the engine does not explicitly set any of these values, SAPI will try and produce reasonable default values for them. It will produce the Confidence values by averaging the levels for each of the words in the phrase or property, and it will set the SREngineConfidence values to -1.0.
然后说:
If this field is not being used, the engine sets this confidence to -1.0.
可能会给您一些见解的另一个资源是 http://gotspeech.net/forums/thread/3613.aspx .一个帖子说:
In principle, the SREngineConfidence score is a value between 0.0 and 1.0 {higher value meaning higher confidence}. But older versions of the SR engines like 5.1 don't honor this contract precisely, and I don't think the value can really be used with those engines. Only the Hi, Medium, and Low scores in the other Confidence field are usable.
If I remember rightly, you need a more recent version of the SR engine, like the versions that ship with Microsoft Office 2003 or Vista to get a meaningful number in the SREngineConfidence field.
编辑:
我相信 System.Speech.Recognition 确实是 SAPI 的 .net 包装器(参见 http://msdn.microsoft.com/en-us/magazine/cc163663.aspx)。我怀疑上面引用的描述置信度为 -1 的评论可能仍然适用于您使用 System.Speech。我猜您看到的 -1 与提到的问题相同。
我的理解是 XP 没有包含识别器。 Microsoft Office 版本随附。所以,我不确定你真正运行的是哪个识别器引擎。你有安装Office 2003吗?或者您是否安装了像 Dragon 这样的第三方引擎?
您说您安装了识别器 5.1。上面的 GotSpeech.NET 链接说:
But older versions of the SR engines like 5.1 don't honor this contract precisely, and I don't think the value can really be used with those engines.
我建议尝试以下方法:
再补充一点。这是一个从 wav 文件中识别的简短示例:
SpeechRecognitionEngine myRecognizer = new SpeechRecognitionEngine();
Grammar myGrammar = CreatePizzaGrammar(); // uses GrammarBuilder to create a pizza ordering grammar
myRecognizer.LoadGrammar(myGrammar);
myRecognizer.SetInputToWaveFile("LargeCheese.wav"); // recording of ordering a pizza
RecognitionResult result = myRecognizer.Recognize();
string s = result.Text;
float confidence = result.Confidence;
关于speech-recognition - 为什么我的 Microsoft 语音识别结果的置信度总是等于 -1?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5220264/
我只是尝试使用 Microsoft.Speech.dll; 为文本转语音运行简单的 Microsoft 示例 using System; using Microsoft.Speech.Synthesi
微软似乎提供了不少语音识别产品,我想知道它们之间的区别。 有Microsoft Speech API ,或 SAPI。但不知何故Microsoft Cognitive Service Speech A
我希望编写一个应用程序,将语音到文本转换为仓库应用程序,反之亦然。主要用例是运算符(operator)将在仓库中佩戴耳机并将指令发送回服务器并从仓库软件接收指令以拣选和打包订单。我们将使用由 Wind
我正在探索 python 中的谷歌云语音 api。我正在关注这个 link .我也提到了这个 stackoverflow link .但是我对设置环境变量感到震惊。 我做过的事情: 1.安装gclou
在尝试让 Speech to Text(IBM 语音网关 IVR 应用程序)识别字母数字字符串时,我想知道我是否可以创建一个自定义语法或实体来限制 STT 仅识别单个字母和数字,不包括完全的话。例如,
是否可以将来自Web Speech API的合成语音用作Web Audio API音频上下文中的SourceNode? 最佳答案 实际上,我问过要在Web Speech邮件列表中添加此内容,并且基本上
使用 Microsoft Speech API 转录中/大型音频文件(每个文件约 6-10 分钟)的最佳方法是什么?像批处理音频文件转录这样的东西? 我使用了 https://docs.microso
我的 .wav 文件长度只有 4 秒。即使在多次重试并在云端运行后,我仍然不断收到以下错误 * upload completely sent off: 12 out of 12 bytes
我找到了一些描述如何使用 Google 语音 API 的文章 ( http://mikepultz.com/2011/03/accessing-google-speech-api-chrome-11/
我使用 google 语音转文本 API 从音频中获取字幕,但是当音频太长时,通常超过 60 分钟,重试次数过多会失败。它说:google.api_core.exceptions.GoogleAPIC
我有一些来自 System.Speech.Recognition 的简单代码可以正常工作: using (var recognizer = new SpeechRecognitionEngine(ne
Windows 10。我在“设置”中安装了日语 TTS 语音。现在,当我在 Speech API 5.4 OneCore 中使用语音枚举时(虽然不是在 5.4 中),我得到 6 个语音: 大卫 齐拉
当我提交对太长文本的综合请求时,我收到以下错误: google.api_core.exceptions.ResourceExhausted: 429 Received message larger t
我是 C# 的新手,也是 Speech.Recognition 的新手。我搜索了很长时间的教程,但没有找到那么多,我什至不确定我是否正确包含了所有内容。 我下载了: SDK Runtime Langu
我有一个奇怪的要求,即在我现有的应用程序中我有 Text2Speech 并且为此,我使用了 AVSpeechSynthesizer 来语音文本,但现在要求改变了,现在我需要将 HTML 文件数据转换为
我使用 Google Speech API 通过 Python 识别 .OGG 文件音频中的越南语语音。但它不会返回任何结果。 最佳答案 至少在英文版的Google Speech API中,需要使用F
我想从手机录制音频,然后将其发送到谷歌语音非流媒体 API。我可以使用 Capture.captureAudio() 进行录音,但是我不知道音频编码和采样率是什么,因为它们是必需的 for the a
我使用谷歌云语音到文本 API 将音频转换为文本。 对于 .raw文件它工作正常 但是对于 .wav文件它给了我类似的错误: Google::Gax::RetryError Exception: Ga
.NET 中有两个类似的用于语音识别的命名空间和程序集。我试图了解其中的差异以及何时适合使用其中之一。 程序集 System.Speech(在 System.Speech.dll 中)有 System
通过流式 API (Performing Streaming Speech Recognition on an Audio Stream) 使用 Google Cloud Speech API, 我们
我是一名优秀的程序员,十分优秀!