C#中的音频描述符MFCC
我正在做原始的语音识别,需要对我的音频信号进行简单的描述. 现在,我只有我的音频信号中的FFT,但是在那之后我不知道该怎么办.当我尝试使用隐藏的马尔可夫模型时,只有我的训练信号中的FFT,它给了我错误的答案. 您能告诉我任何C#库,这可以帮助我将FFT信号更改为MFCC(MEL频率Cepstrum系数)? 解决方案 我不知道C#的此类库,但是我可以向您展示我从大量具有16 kHz样品频率的Wav-File振幅中提取20 MFCC的实现. 您必须使用MatNet.Numerics和MathNet.Filtering libraries . 只有俄罗斯评论,对不起. using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Numerics; using Math
20 2024-04-26
编程技术问答社区
SRGS XML语法中的语义解释
我有以下XML语法来检测1000或2200之类的数字等. 1 2 3 thousandout="000"; thousand 100out=100; thousand 200out=200; 但是,当用户说例如2100时,我得到了" 2000 100",而不是2100.似乎OUT =零件不起作用.我已经在网上看到了几个示例,并且不知道是否还需
2 2024-04-26
编程技术问答社区
微软语音平台:识别重复的单词
我使用Microsoft语音平台在屏幕上识别输出的语音.但是,我有问题:例如,我有语法(语法和选择的构造 - "红色","绿色","黑色") ) 当我说 - "红绿色黑色"时 - 我只能得到"红色",也许是"红绿色",而不是"红绿色黑色". 一些代码: Thread.CurrentThread.CurrentCulture = new CultureInfo("ru-RU"); Thread.CurrentThread.CurrentUICulture = new CultureInfo("ru-RU"); // Create a new SpeechRecognitionEngine instance. _sre = new SpeechRecognitionEngine(new System.Globalization.CultureInfo("ru-RU")); _sre.SpeechHypothesized += _sre_SpeechHypothesiz
8 2024-04-25
编程技术问答社区
Microsoft Sam,SAPI替代品
我们有一个应用程序,我们正在计划使用Microsoft Speeck API.现在,我们使用Microsoft Sam语音在Windows XP上测试了它,坦率地说,听起来很糟糕...几乎不可能听到声音要说的话. 还有其他更好的声音.是否有任何更新或更新版本更好.还有其他产品,开源项目等可以作为替代方案吗? 只是为了澄清 - 它需要具有某种API,因此我实际上可以对其进行编程. 解决方案 在窗户上我发现的最好的是使用语音API和AT&T自然声音的声音: https://nextup.com/attnv.html 但是,如果有的话,它们非常昂贵.我遇到了使用AT&T的想法,即他们甚至不会出售许可证. 有一个免费的软件替代品,节日:对我来说效果很好的第三个替代方案是将一些项目的语音合成部分转移到OSX.OSX具有一组不错的工具和语音API和相当不错的股票声音.当然,缺点是仅在Apple硬件上运行的OS X下为这些API编写的Prorams. 其他解决方案 A
12 2024-04-25
编程技术问答社区
C# SAPI 5.4语言?
我制作了一个简单的程序,可以使用SAPI 5.4识别语音,我想问我是否可以在TTS和ASR中添加更多语言,谢谢 这是我为您提供的代码,任何人都需要查看它 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using SpeechLib; using System.Globalization; using System.Speech.Recognition; namespace WindowsFormsApplication1 { public partial class Form1 : Form { // Speech Recogni
12 2024-04-25
编程技术问答社区
使用sapi c#创建In proc语音识别?
我用于设置Proc识别引擎的SAPI代码如下: ISpeechRecoContext cpRecoCtx; // create the recognition context cpRecoCtx = new SpeechLib.SpInProcRecoContext(); ((SpInProcRecoContext)cpRecoCtx).Recognition += new _ISpeechRecoContextEvents_RecognitionEventHandler(RecoContext_Recognition); /****** END: set up recognition context *****/ 那么,如何将音频输入设置为C#中的默认音频输入?我在C ++中找到了解决方案,但需要一个用于C#. 解决方案 默认音频输入对象为 SpMMAudioIn . ISpeechRecoContext cpRecoCtx; SpMMAudioIn
12 2024-04-25
编程技术问答社区
我可以从Azure认知服务中获得认可的信心吗?
我正在以c尖锐的窗口形式对文本应用进行演讲.它运行良好并在Visual Studio中运行,但是 我正在使用此代码使用Microsoft Azure认知服务识别.一旦认识到整个过程,我可以以C尖锐的窗口形式获得信心评分? 我该如何解决? 我的代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using Microsoft.CognitiveServices.Speech; using Microsoft.CognitiveServices.Speech.Audio; using Sys
4 2024-04-24
编程技术问答社区
如何在SAPI 5.4中使用C#在听写过程中获得备用的单字?
我正在运行具有语音识别和新技术的用户研究.在实验室测试期间,我需要使用我编程的接口显示所有规定的文本. 目前,我可以在C#中获得替代的整个句子,但是我需要得到单个单词.例如,如果有人说"你好,我的名字是安德鲁",我想为"你好","我的","名称"," is"和"安德鲁"获得替代字句子. 这是我正在使用的处理程序的代码段. public void OnSpeechRecognition(int StreamNumber, object StreamPosition, SpeechRecognitionType RecognitionType, ISpeechRecoResult Result) { int NUM_OF_ALTERNATES = 5; // Number of alternates sentences to be read string recognizedSentence = Result.PhraseInfo.GetText(0, -1
8 2024-04-24
编程技术问答社区
微软语音识别:通配符空白内容
在我的语音引擎中,我激活/脱离多个语法. 在一个特殊的步骤中,我想运行一个语法,仅根据引擎的属性捕获下一个给定句子的音频. 但是要启动/停止匹配某些东西,我认为引擎需要"单词".所以我不知道该怎么做? (底层说明:我的应用程序将所有垃圾音频转换为使用Google语音API的文本,因为说法太糟糕了,kinect上没有) 解决方案 好吧,实际上,不,SR引擎只需要知道传入的音频是"语音样"(通常由音频的光谱特征确定).特别是,您可以使用 AudioPosition 属性和 SpeechDetected 和 RecognitionRejected 将所有被拒绝的音频发送到Google Speeck API的事件. ,您的工作流程看起来像这样: 问用户的问题. 启用适当的语法. 等待拒绝识别或识别. 如果识别,请进行相应的处理 如果拒绝识别,请收集保留音频并发送到Google Speeck Api.
2 2024-04-23
编程技术问答社区
以编程方式导入MS Speech API语音配置文件
我有一台Windows 7计算机对我的声音进行了训练,我想分发我的语音配置文件以及我创建的软件包. 我知道诸如wsrprofile.exe(http://www.microsoft.com/download/en/details.aspx?id=16296)之类的工具,可以保存和加载新的语音配置文件. 但是,在我自己的代码(c#)中是否有一段路程,而无需任何外部工具或应用程序? 预先感谢. 解决方案 您可以按照此处描述的步骤进行操作: http://blogs.msdn.com/B/robch/archive/2007/02/19/transfering-profiles-progragationally.aspx 基本上,要通过编程方式导入配置文件,您将需要创建一些注册表键,并复制/重命名先前保存的文件. 该说明使用SAPI的C ++版本,但该过程肯定对于C#版本有效.
8 2024-04-23
编程技术问答社区
使用C#在windows语音识别中添加新词
我知道如何在C#中使用语音识别 在Windows 7和8中,您可以轻松地使用: 打开语音词典>添加新单词>输入单词的文字>记录麦克风的单词的发音 然后,没关系!这个词将添加到数据库中. 我们还可以使用语音字典编辑单词. 有人知道我们如何使用.NET和编程执行这些步骤? 编辑: 它非常简单,Windows语音字典的数据库有限,我们如何通过.NET C#添加一些其他单词? 例如,Windows语音字典中不存在名称"沙拉".如何将此词及其发音添加到Windows语音字典中? 对不起,我对这个很棒的网站有些新. 解决方案 您需要使用 sapi自动化apis (aka Speechlib)访问 isplexicon 接口. 特别是, a>将在用户词典中添加一个新单词(及其相关的发音).
8 2024-04-23
编程技术问答社区
如何确定SpeechRecognitionEngine的识别词的位置?
我正在探索SpeechRecognitionEngine的功能,我的最终目标是输入WAV文件和该WAV文件的转录,并在开始的WAV文件中输出位置(理想情况下,End)每个字. 我可以让引擎成功识别短语,但是我不明白如何在单词启动时检索音频位置,而不是在识别识别的假设或认可时,等等. . 如果您很好奇这是什么意义,那是在自动化Lipsync动画工作流程中. 感谢您的时间. 解决方案 适当的音频到文本对齐是一项任务,需要与语音识别不同的特定算法.您可以模仿ASR引擎的某些对齐功能,但它可以很好地工作. 对于实现对齐算法,您可以检查CMUSPHINX语音识别工具包: http://cmusphinx.sourceforge.net/?对齐 http://www.bluevincent.com/2011/02/secem-to-toxt-using-java.html 您可以尝试像Nexiwave的商业公司服务 http://nexiwave
10 2024-04-23
编程技术问答社区
在微软语音API中指定一个单词的发音
我正在使用C#中的一个小应用程序,该应用程序使用Microsoft语音API执行语音识别. 我需要在语法上添加一些非英语单词,其发音不遵守英语发音规则. 是否可以使用国际语音字母来指定其发音? 如果是,应该使用哪些方法? 解决方案 在这里实现自定义发音的方法是传递 srgsdocument 到我没有做到这一点,它看起来并不平淡,但这应该让您做自己想做的事.
12 2024-04-23
编程技术问答社区
沃森语音转文字直播C#代码示例
我正在尝试在C#中构建一个将采用音频流的应用程序(目前是从文件中获取的,但后来将是一个网络流),并实时从Watson返回转录,类似演示有人知道我可以在哪里找到一些示例代码,最好是在C#中,这可以帮助我入门? 我尝试了这一点,基于 https://github.com/watson-developer-cloud/dotnet-antard-sandard-sdk/tree/development/src/src/ibm.m.watsondevelopercloud.spechttotext.v1 ,但我得到了当我打电话给识别识别时,一个badrequest错误.我不确定我在这里是否在正确的道路上. static void StreamingRecognize(string filePath) { SpeechToTextService _speechToText = new SpeechToTextService(); _spe
4 2024-04-23
编程技术问答社区
尖叫检测
我正在研究一个需要检测某些语音模式的项目. 例如,"有人在尖叫":因为我不知道那个人是谁,一个孩子,男人,女人...每个人都有自己的声音...等等. 所以,我正在寻找一种检测"尖叫"的方法,例如,保存尽可能多的"尖叫"指纹,那么当我需要检查声音是否是"尖叫"的声音时,我可能会为其创建指纹,然后搜索并查看是否可以在我已经拥有的"尖叫"指纹列表上找到相似之处. 我的方法是使用以下项目之类的内容: https://github.com/addictioncs/soundfingerprinting https://github.com/spotify/spotify/echoptify/echoprint-codegen 每个人都会给我特定声音的独特指纹,对吗? 我的问题是: 我如何能够在"尖叫"指纹列表中搜索相似之处,是否有可能有任何可能产生分数或返回与每个指纹相似的方法有尖叫吗? 谢谢 J.B 解决方案 我的方法是使用以下项目之类的内容:
20 2024-04-22
编程技术问答社区
C#在不识别的情况下返回语音音标
我正在尝试制作像波斯语音的字典(db)这样的人,所以我试图说话并让C#用语音制作,但是问题是我找不到任何事件来找到我所说的话.例如,我们有SpeechRecognized事件,但在识别演讲后被解雇.这是我的代码示例: SpeechRecognizer rec = new SpeechRecognizer(); public Form1(){ InitializeComponent(); rec.SpeechRecognized += rec_SpeechRecognized(rec_SpeechRecognized); // this will fire after recognize rec.SpeechDetected +=new EventHandler(rec_SpeechDetected); // this will fired each time but with no return
0 2024-04-22
编程技术问答社区
在c#中通过语音搜索谷歌
我正在制作自己的jarvis程序,当我说"搜索" +我想要的东西时 打开Goog​​le并搜索"某物".在这里我的代码...(我不粘贴全部) private void Form1_Load(object sender, EventArgs e) { _recognizer.SetInputToDefaultAudioDevice(); _recognizer.LoadGrammar(new Grammar(new GrammarBuilder(new Choices(File.ReadAllLines(@"C:\Users\Cpyros\Desktop\lefteris\Commands.txt"))))); _recognizer.SpeechRecognized += new EventHandler(_recognizer_SpeechRecognized);
2 2024-04-22
编程技术问答社区
对于Watson'的Speech-To-Text Unity SDK,你如何指定关键词?
我正在尝试在沃森的语音到文本Unity SDK中指定关键字,但我不确定如何做. 详细信息页面未显示示例(请参阅此处: https://www.ibm.com/watson/developercloud/doc/speech-to-to-toxt/output.shtml ), 和其他论坛帖子是为Java应用程序编写的(请参阅此处:如何为IBM WATSON SPEECH2TEXT服务指定语音关键字?). 我尝试在"识别"函数中创建的RecognizeRequest类中硬编码这些值,但没有成功: **编辑 - 此功能永远不会被调用 - ** public bool Recognize(AudioClip clip, OnRecognize callback) { if (clip == null) throw new ArgumentNullException("clip"); if (callb
4 2024-04-22
编程技术问答社区
语言学习的语音识别工具
我想在C#中编写一个程序,其中包括对芬兰语或波兰语等语言的有限词汇识别. Microsoft的Speech SDK非常适合英语,但它可以支持像其他语言吗?如果没有,还有哪些其他(希望负担得起的)软件工具可用? 解决方案 请查看Microsoft Server语音平台10.2.它支持STT和TTS. 对于26种语言,包括芬兰语和波兰语! 这是一个可以让您入门的链接. http://www.codeproject.com/kb/audio-video/ttsandsr.aspx 有点迟到,很抱歉.
14 2024-04-21
编程技术问答社区
部分语音识别
我目前在Microsoft的语音引擎方面度过了愉快的时光. 与C#一起设置和使用非常简单,并允许使用比我最初想象的要少的代码行为. . 现在,关键是我真的不知道要处理这一点: 我了解引擎需要开始聆听,然后您说一个单词或一个句子,并且在字典中比较它是否可以看到匹配项.如果是这样,该程序可以做任何您想做的事情. 我抓住了我的头,是我希望引擎"检测"他词典中的单词,其中包含一个或所有单词的完整随机短语. 例如,让我们假设字典具有以下单词: - "读" - "新闻" 我想编写一些可以检测到这些特定单词的东西,例如我说: - "读我的新闻" - "你能阅读新闻吗" - "阅读新闻" ... 我该如何实现? 解决方案 此功能称为"关键字斑点".通常,您无法使用语音识别引擎执行关键字斑点,您需要一个特定的斑点软件包.关键问题是引擎应不断比较两个结果 - 找到一个单词,找不到单词.语音识别只会查找语法中的单词,并且不考虑其他声音.发现仅需要其他算法. 有一个
2 2024-04-20
编程技术问答社区