葡京在线开户”新物种”第13交实用心理学大会

葡京在线开户 1

  想实现语音识别已经死遥远了,也尝尝了无数不良,终究要败诉了,原因深多,识别功能不精,个人在技术上没有得逞促成,种种原因,以至于花费了重重时间在上面。语音识别,我尝试了之有科大讯飞、百度语音,微软系。最终要喜欢微软系的简单高效。(勿喷,纯个人感觉)

“ 知识变现、共享经济、超级IP、 黑科技、人工智能、虚拟现实、 新零售、无人超市、胶囊KTV等等 ”

这些炙手可热的名词,你询问多少?

新物种入侵各行各业,每个行业的竞争规则激烈变化。
也许你心存侥幸,觉得新物种离我们生存非常远。

人类从历史中学至之绝无仅有教训,就是人类无法从历史中学至另外教训

落得等同史轮回,那些认为淘宝、微信离自己老远之总人口,已经倒下了时代的舞台,黯淡离场…
2017年11月,当年月份销量630万份的《知音》杂志对外公布上半年纯利润为负数,这是早就风光最的知心人杂志于创刊32年来首糟亏损。

2017年4月,全球率先款性爱机器人“Harmony”公诸于世界,人类亲密关系再同不良给科技挑战,“机器人时代之心性和容易”在网上被周边讨论。

2017年10月,京东举办无人超市,连手机还不要,直接刷脸,无人零售的初世界大门就被人忧推开。

2017年12月,当有着传统培训机构也销售焦头烂额的早晚,喜马拉雅当平龙共出售出1.79亿底在线课程

葡京在线开户 2

以此世界怎么了?为什么我那么拼命、能力为直以增高,却要被“新物种”逼到角落,仓惶离场。那些看似遥不可及的工作,为什么能这么快速地颠覆我们的生?
我才刚好适应扫码支付,无人零售、人工智能又开连而来!

口在的价一次次叫挑战。我们的办事于人工智能取代,我们的灵气也被Alpha
Go打败,甚至连性,也只要让性爱机器人剥夺。在琢磨以及技艺频繁变革之期,我们欠怎么自洽?

2018年3月,”新物种”实用心理学大会,我们特邀了多位国际心理学老师、数位“新物种”的创造者和投资人,与汝同探讨在“新物种”时代如何顺势而也?

时代之进步并无吓人,可怕的凡咱们在前行中之犹疑。在初一年的始,用三龙时间,升级而生之软件,抓住看不显现的时红利,把好制作成新时代之“新物种”。

葡京在线开户 3

大会流程

3月9日12:00前  报到,  入息酒店   

39日14:30-18:00前     
著名萨提亚、九型人格导师蔡敏莉主题发言:《新时代背景下的亲密关系》

3月9日19:30-22:30
超个人心理学权威张宝蕊博士主题发言:《变化时的家庭教育核心是什么》

3月10日09:00-12:00
中国赫赫有名公司教练戴志强主题发言:《新物种的心智模式》

3月10日14:00-18:00
实用心理学泰斗张国维博士主题发言:《从未来羁押今朝》

3月10日19:30-22:30 新物种代表发言

                                                                 
1.私募基金经理黄伟松《如何用新金融轻松致富一个亿》

                                                                   
2‘’游达人谢冰沁《周游世界也堪赚大钱》

                                                                   
3.创始人黄伟强《如何度过人生之颓势》

3月11日09:00-12:00                           
NLP学院创始人黄启团:《升级财富软件》

3月11日14:00-17:00

                                                                     
1,毅资本创始人杨瑞荣《投资人眼中之初物种》

                                                                     
2,学家武志红《生和甚,科技及灵魂》

  最初步投机之想法是自身说一样句话(暂且在控制台上召开Demo),控制台程序会辨别自己说的凡什么,然后显示出来,并且根据自身说之消息,执行相应的行为.(想法深美好,现实非常苦恼)初入语音识别,各种错误各种来,徘徊无肯定的选哪家企业的api,百度上摸各种语音识别的demo,学习参考,可是着实在.NET平台及运行成功的倒是是孤独无几,或许是本人查找方向有题目,经历了森底坑,没一不善成功了,心灰且意冷,打了几糟糕退堂鼓,却总忍受不停止想玩语音识别。

                                                    各师与主题

  可以省我VS中的语音demo

主题相同:《新时代背景下的亲密关系》


主讲:蔡敏莉

人口胡用婚姻?恩格斯说,婚姻是为”创造财产”;生物学家则说,以亲也根基的宗,更方便人类的活。
可今天社会分工更加细,生存不再是单问题了。婚姻有的义早已出了转,网友们早已开吐槽:”本认为找个人呢我挡,没悟出有的风浪都是他带的!

” 当财产不再用婚姻,当在不再需要家族,新的婚姻,靠什么维持

婚,看起是简单个人之行,但有人说,”每对夫妇之铺上,都睡觉在六私”,因为,我们的亲模式都拉动在原生家庭的印记——相爱容易相处难!如何解除原生家庭之魔咒?如何询问伴侣和温馨之情丝需求?知名萨提亚跟九型人格专家蔡敏莉先生以和你享受新时代幸福婚姻之心腹!

葡京在线开户 4

嘉宾简介 蔡敏莉 Monita
Choi(中国香港),国际资深心理治疗专家、资深萨提亚模式治疗师;九型人格全球协会EPTP亚洲中心导师认证委员会主持人;中国九型人格导师协会创始人、荣誉会长。

  葡京在线开户 5

主题二:《变化时之家庭教育核心是什么》 主讲: 张宝蕊


2017年,一各类妈妈以情人围自述”陪孩子写作业至五年级,然后心梗住院了,做了有限独(心脏)支架。”
为了成绩,孩子辛苦家长更麻烦,自身健康恶化不说,温馨之家也化为了战地:吼孩子、夫妻争吵……
是何许人也拿咱逼到这般地步?想想孩子成好,人生就是顺利了呢?什么才是的确控制孩子未来人生幸福之素?家庭教育的着力是啊,只是学教导之支援吗?

葡京在线开户 6

心理学家认为,家庭教育不是扶助学校让男女灌输孩子知识,而是帮助他成立正常美的思维模式。此次大会,超个人心理学家张宝蕊博士,讲述如何当更为当存活的教育体制下,依然会有较高之自价值以及典型的心智模式。这,才是家庭教育的主干!

嘉宾简介
张宝蕊,
美国跨个人心理研究院超个人心理学哲学博士;现任美国Sofia
大学超个人心理系硕博士生导师,中国区负责人。30年心理咨询与治疗师,训练讲师。一直以举行中西文化及心理学的结合研究工作;中国超个人心理研究中心创办人。

  第一独凡是今底支柱-稍后还取。

主题三:《新物种的心智模式》 主讲:戴志强


这个世界唯一非移的便是移,面对一时之变动,有人倒下,有人腾飞:互联网来了,有人工作因此失败,而其余一些人形成成为电商赚个盆满钵满;移动网络来了,纸媒倒下了,有的编辑因此失业,而部分也借打媒体成为网红,从此呼风唤雨;AI时代就要来了,又将会晤生出什么吧?

乘胜一代之变型,为什么有人为变而亡,有人也因变而充分?其实,决定你命的没有是环境,而是你的心智模式!

所谓”心智模式”,就是一个丁想想模式、情绪模式以及自信心系统的总数。那些能够适应时代变之”新物种”,他们的心智模式及咱们来哪里不同?他们身上发生怎么样我们从未的特质?他们相了什么样我们尚无看的事物?
此次大会,著名企业教练、管理心理学家戴志强先生,将和汝分享《新物种的心智模式》,带你活动上前人性的世界,从外及他,把温馨从招具有超强适应力的新物种!大家都于迈入,你还等什么?

嘉宾简介
戴志强,马来西亚籍唐人
,曾凭跨国集团高层管理多年,其课程理论及实践具有,讲课风格亲和,风趣,睿智。学生所称道的是外机智的洞察力和丰富的工商管理经验。著有《心灵之开门者》

葡京在线开户 7

  第二独和老三个是微软系的网自带的System.Speech.dll和看了微软博客中的平等篇稿子要去尝试的Microsoft.Speech.dll
可惜文章写的不可开交好之,我尝试也是失败   的,并且发现一个题目,就是英文版的微软语音识别是废的(Microsoft.Speech.Recognition),而中文版的话音合成是不行的(Microsoft.Speech.Synthesis).,因    此,我只得将简单只dll混合使用,来达成自己怀念使的效力,最终效果真达到了,不过倒是是无比简单的,一旦识别词汇多起,这识别率直接降低,我直接认为是采样  频率之问题,可是怎么呢搜不至采样频率之习性或是字段,如有会的对象可于我点消息,让我也意外起,哈哈。

主题四:《从未来看今朝》 主讲:张国维


眼前几天,比特币升到了2万美元/枚,美国可有人打楼上跳下,因为他往为10美元/枚之标价卖掉了5000枚,错过了绝对富豪的时!
俗话说,有钱难打早知道。早知道房价会疯涨,十年前借钱都打;早知道比特币升及2万美金一朵,2009年1300比较特币才更换一美元的当儿就该大大方方买进……”早明白”有差不多要!
过去上特别的困难,今天转看都是小菜一碟;同样,今天底艰苦,如果站于未来的角度看,也许根本微不足道!方向比努力要,都说”贫穷限制了自的想象力”,其实限制而的非是穷,是您对前景之预见!
新物种大会,我们约了实用心理学泰斗级导师张国维博士,运用催眠以及时线之技能,带您失去到未来,以终为初始,从未来看今朝,厘清一年的大方向,为前途开一个神之支配

葡京在线开户 8


  第四个是百度语音识别demo,代码简洁许多,实现难度好,可是多少细节很多,需要小心,然后是雷区挺多之,但是也,指导活动来雷区的说明书却是极端少了,我是  踩了雷,很痛的那群。

主题五:《如何用新金融轻松赚钱一个亿》 主讲:黄伟松


为了获利,有的人:”陪聊,陪酒,陪笑,赔本”;”没有死的阶级,只发过不了事的台阶”;”为了想做的从业,我们举行了过多休思做的转业。”

……
挣钱似乎是平等起十分为难的从,当王健林说,”设定一个有点目标,比如先赚他一个亿”,大家都笑笑了,怎么可能?

告相信,这个世界真有人了在你想过的生存。黄伟松先生虽是这么的人口,他使用经济知识,成为新金融时代之”新物种”,成功为钱生钱,轻松过亿。有人努力赚,有人轻松赚钱,你一旦改成哪一样种人?由乃说了算!

嘉宾简介
黄伟松先生,
广州同盛丰悦资产管理企业的奠基者兼基金经理。十年以上之实业经营更、十年以上的金融投资经历,加上十年以上的心理学上,开创了外非常之投资理念。金融领域遍地黄金,就扣留你发出没有发出手腕去捡拾了。黄伟松先生因为在意让修心,修得矣心静如水的投资心态,创建了一样模拟能关停大脑的投资理念,创下了十二年资金增值50倍增之傲人成绩。

葡京在线开户 9

 

主题六:《周游世界也得挣大钱》 主讲:谢冰沁 “


葡京在线开户 10

而忙在写PPT时,阿拉斯加的鳕鱼正跳出水面;你看堆积如山底报表时,梅里雪山底金丝猴刚好爬上树尖;你挤进地铁时,西藏之山鹰一直盘旋云端……”
世界那么深,我思念去看望,对君吧,还只有是相同句口号也?、

君还于斗争的当儿,29年度的谢冰沁已经走过99个国家之475
单城市,最远登陆南极大洲。她周游世界,不仅没有费老人一样分割钱,还当都有所两拟自己之房屋。她是怎完成的?如何玩着玩着即管巴实现了?本次大会,我们特邀了这般同样员新物种,以它的亲身经历,讲述如何当周游世界的而实现财富自由。

嘉宾简介
谢冰沁
(千帆远澋),新华社签摄影师、旅行自媒体独立撰稿人环球旅行者、酒店体验师,近年来共走过99个邦的475
单城市,最远登陆南极次大陆。

  首先来探,现在市场上主流语音识别设计方式:

主题七:《如何过人生之下坡路》 主讲:黄伟强



葡京在线开户 11

《可兰经》有讲:人生如波涛上的月影,永远没有说话安静的时节。
活着从由得落,当照人生之下坡路,一个心理人如何自处?
作为一个创业者,作为一个享14年经历的心理人,在受生活暴击之后,他移动了出去,用外多年的体验和您享受:心理学如何确实使用至工作跟生存,你用赢得:
如何用心理学发现生活的真相? 如何错过许本着低谷期的心思?
哪些实用方法可帮助您运动来低谷?

嘉宾简介
黄伟强先生,壹心理创始人
,一个于心理学领域专注了14年的互联网人。2011年创壹心理,5年积累了1700万用户。2015年在央视财经频道大型节目《创业英雄汇》首轮子得到30员投资人全票通过,破节目开播纪录。

  1、离线语音识别

主题八:《升级财富软件》 主讲:黄启团


“如果一个人口干定了他与钱的关系,基本上就可知搞定生活之各个方面。”因为财富的差,我们去自己不过渴望的那些美好事物:陪伴家人的工夫、去押世界之想……
曾经“一铺养三代表”,现在就算有三只商铺也不一定养得生好。时代当改,硬件靠不鸣金收兵,我们前途因什么?
起,大脑的软件,也就算是若的自信心和思模式!
根据心理学研究,我们的抱成果由表现创造,而人之作为一直受控于我们的思想观念,而想被最为要之是咱们的信心。也就是说,我们怀念如果怎样的人生,取决于我们生命的”软件”–信念系统。
决定你人生高度的,不是你的硬件而是软件。智能手机不断提升,你的软件为是时候需要提升了。透过升级财富软件,实现好的财大气粗。

嘉宾简介
黄启团,
闻名心理学老师,专注于心理学应用20年,成功投资NLP学院、壹心理等机构,集导师、企业家、投资人于一致身。著有《只以目中无人》。

葡京在线开户 12

  离线语音识别很好明,就是语音识别库在地头或局域网内,无需发起远程连接。这个呢是本人那会儿之想法,自己作一模拟语音识别库,然后根据其中的始末设计想只要之表现要。利用微软系的System.Speech.dll中的口音识别与语音合成作用。实现了简易的国语语音识别功能,但是如果自身将语音识别库逐渐加大,识别率就更加小,不知是本人电脑麦克风不行还是别原因。最终给打击,放弃。当我碰着读书百度语音时,也发觉了距离线语音识别库,但是呢官方并不曾于来切实的操作流程及规划思路,我也没失去深入了解,有工夫我若可以打听一番。

主题九:《投资人眼中的新物种》 主讲:杨瑞荣




经济学家预测市场,股评家预测股票和算命先生算命一样,用词含糊、模凌两而,大多时候说了齐白说,因为她们之预计及他们的我利益连无严密。
可投资人对投资目标的预测虽不相同了,他们可是着实钱白银往投资对象身上砸钱之!投资人是什么样判定一个总人口是不是值得投资的呢?
如果您是投资人,你会投资你协调为?具备什么样的特质才会创巨大的商家?如何才能够于好拥有这些特质?
本次大会我们请到了举世闻名投资人,远毅资本创始人杨瑞荣先生同君分享《投资人眼中的新物种》,透过他的享受,也许你晤面更为值钱。

嘉宾简介
杨瑞荣,原北极光资本同人
,现远毅资本的齐人。远毅资本是一模一样下顾以及健康医疗及经济技术领域的风险投资基金。杨先生发过20年增长的投资、运营经验和大面积的政府背景。从2004年自外先后当兰馨亚洲任职投资总监与以北极光供职董事总经理,在消费、医疗健康和经济技术相当行业投资了森打响之创业公司。

葡京在线开户 13

 

主题十:《生以及生,科技与灵魂》 主讲:武志红


葡京在线开户 14

本良数量和人为智能的定义越来越流行,并带动被丁无比的遐想:如果人工智能出现了,人类会咋样?
机器智能意义上的人造智能,据说都得以除掉各种比较简单、机械、可更的行事,例如扫地、洗衣、自动开、医学诊断等等。

确含义及之人工智能,也尽管发生自由意志和心境情感的人造智能,被视为人类最终一个申明,因为一旦出现,人类就好给代了。
尽管发生这些担心,但人造智能与雅数目,仍然以势不可挡的矛头在腾飞。
薄弱的、自恋的、有自由意志、有情绪情感的人类,真的好给代表吗?
未必,因为人类有灵魂,人类的薄弱的处在,也刚好是人类的宝贵的处。
所谓灵魂,根本之少数凡,人类还在追求情感,并因此当情感关系遇改换得软,但脆弱的感知,就是全人类灵魂之验证。
所谓情感,就是“我”永远在物色“你”,一旦自身确实找到你,那就算是合二为一。
如果人工智能真会因为太的链接而结尾老生自由意志,那人类该怎么处置?
本次大会,著名心理学家武志红先生以起人类历史进步之可观,与汝追《生和特别,科技及灵魂》。

嘉宾简介
武志红
,心乐土·武志红心理咨询中心创始人,《广州日报》心理专栏作家。致力为用心理学视角解读中国总人口心理,是礼仪之邦最接地气的心理学家。他是十几照心理学畅销书作者,著有《为何家会伤人》《身体知道答案》《你不怕是答案》《感谢自己之未健全》等。

趟大会

2017“反脆弱”第12到实用心理学大会

葡京在线开户 15

“升维2016”实用心理学大会

葡京在线开户 16

“连接2015”实用心理学大会

葡京在线开户 17

“看见2014”实用心理学大会

“引爆2013”实用心理学大会

“起航2012”年实用心理学大会

“升级2011”实用心理学大会

2010年实用心理大会

挪安排 地点:广州市凤凰城酒店

时:2018年3月9-11日 投资 标准席位:2980元/人(三总人口之上团报2380元/人)

VIP席位:5980元/人(三人数之上团报5380元/人)

(仅限30名额,含VIP学员聚餐、VIP优先通道、与导师近距离交流)

地方以广州

预订票:15920685608

微信号: qh582236850

葡京在线开户 18

 1 using System;
 2 //using Microsoft.Speech.Synthesis;//中文版tts不能发声
 3 using Microsoft.Speech.Recognition;
 4 using System.Speech.Synthesis;
 5 //using System.Speech.Recognition;
 6 
 7 namespace SAssassin.SpeechDemo
 8 {
 9     /// <summary>
10     /// 微软语音识别 中文版 貌似效果还好点
11     /// </summary>
12     class Program
13     {
14         static SpeechSynthesizer sy = new SpeechSynthesizer();
15         static void Main(string[] args)
16         {
17             //创建中文识别器  
18             using (SpeechRecognitionEngine recognizer = new SpeechRecognitionEngine(new System.Globalization.CultureInfo("zh-CN")))
19             {
20                 foreach (var config in SpeechRecognitionEngine.InstalledRecognizers())
21                 {
22                     Console.WriteLine(config.Id);
23                 }
24                 //初始化命令词  
25                 Choices commonds = new Choices();
26                 string[] commond1 = new string[] { "一", "二", "三", "四", "五", "六", "七", "八", "九" };
27                 string[] commond2 = new string[] { "很高兴见到你", "识别率", "assassin", "长沙", "湖南", "实习" };
28                 string[] commond3 = new string[] { "开灯", "关灯", "播放音乐", "关闭音乐", "浇水", "停止浇水", "打开背景灯", "关闭背景灯" };
29                 //添加命令词
30                 commonds.Add(commond1);
31                 commonds.Add(commond2);
32                 commonds.Add(commond3);
33                 //初始化命令词管理  
34                 GrammarBuilder gBuilder = new GrammarBuilder();
35                 //将命令词添加到管理中  
36                 gBuilder.Append(commonds);
37                 //实例化命令词管理  
38                 Grammar grammar = new Grammar(gBuilder);
39 
40                 //创建并加载听写语法(添加命令词汇识别的比较精准)  
41                 recognizer.LoadGrammarAsync(grammar);
42                 //为语音识别事件添加处理程序。  
43                 recognizer.SpeechRecognized += new EventHandler<SpeechRecognizedEventArgs>(Recognizer_SpeechRRecongized);
44                 //将输入配置到语音识别器。  
45                 recognizer.SetInputToDefaultAudioDevice();
46                 //启动异步,连续语音识别。  
47                 recognizer.RecognizeAsync(RecognizeMode.Multiple);
48                 //保持控制台窗口打开。
49                 Console.WriteLine("你好");
50                 sy.Speak("你好");
51                 Console.ReadLine();
52             }
53         }
54 
55         //speechrecognized事件处理  
56         static void Recognizer_SpeechRRecongized(object sender, SpeechRecognizedEventArgs e)
57         {
58             Console.WriteLine("识别结果:" + e.Result.Text + " " + e.Result.Confidence + " " + DateTime.Now);
59             sy.Speak(e.Result.Text);
60         }
61     }
62 }

 

  2、在线语音识别。

  在线语音识别是我们当前次用语音文件发送到长途服务为主,待远程服务为主匹配解决后拿匹配结果开展返回的进程。其应用的相似是Restful风格,利用Json数据往返识别结果。

  刚开学习科大讯飞的话音识别,刚开头什么吗非明了,听朋友推荐加上自己百度学习,科大讯飞都说好不错,也博得在情绪去学习学习,可是windows平台下才发生C++的demo,无奈自己是C#,虽说语言很老程度达到未分开家,可是不思过于辛苦,网上搜了一个demo,据说是极全的C#本的讯问飞语音识别demo,可是当张中错综复杂的源代码时,内心是忧的,这里是直通过一样栽办法引用c++的函数,运行了该demo,成功了,能大概的录音然后识别,但是小地方存在问题,也得无至解决方案,不得已,放弃。

  后来,百度语音吸引我了,七月份时时,重新开始看百度语音的demo,官网demo比较简单,尝试着上了一下,首先你沾百度语音开放平台去创造以得App
key 和Secret
key,然后下充斥在demo,在构造函数或者字段中而且可能写入配置文件中,将即时点儿独获的key写副,程序会根据当下片单key去发起呼吁的。就像开头所说,这是当线语音识别,利用Restful风格,将语音文件上传至百度语音识别中心,然后识别后以回执数据返回到我们的先后中,刚开头,配置的时刻自己技术不怎么样,配置各种离谱,地雷开始踏上了,总要炸几不良,最终还是能用demo中之测试文件识别出,算是自己个人的一模一样多少步把.(如果发意中人正碰见踩雷问题,不妨可及自家旅探索,或许我吧无了解,但在自己踩了之中间足足我理解了,哈哈)

  葡京在线开户 19

 

  接下是计划思路的题目,语音识别能学有所成了,语音合成为会成功了,这里要留意,语音识别以及语音合成而分头开通,并且立即点儿单都来App
Key和Secret Key
虽然是同样的,但是还是只要顾,不然语音合成就见面有题目之。接下来要考虑的问题虽,百度语音的计划思路是依据文件识别,但是我们着想的卓绝多之尽管是自我一直麦克风语音输入,然后识别,这吗是我之想法,接下解决当下同一问题,设计思路是,我用输入的信作文件形式保留,等自输入了,然后便调用语音识别方法,这不就是实行了啊,确实也是足以的,此处,又起进入雷区了,利用NAudio.dll文件落实录音功能,这个保险得在Nuget中下载。

 1 using NAudio.Wave;
 2 using System;
 3 
 4 namespace SAssassin.VOC
 5 {
 6     /// <summary>
 7     /// 实现录音功能
 8     /// </summary>
 9     public class RecordWaveToFile
10     {
11         private WaveFileWriter waveFileWriter = null;
12         private WaveIn myWaveIn = null;
13 
14         public void StartRecord()
15         {
16             ConfigWave();
17             myWaveIn.StartRecording();
18         }
19 
20         private void ConfigWave()
21         {
22             string filePath = AppDomain.CurrentDomain.BaseDirectory + "Temp.wav";
23             myWaveIn = new WaveIn()
24             {
25                 WaveFormat = new WaveFormat(16000, 16, 1)//8k,16bit,单频
26                 //WaveFormat = new WaveFormat()//识别音质清晰
27             };
28             myWaveIn.DataAvailable += new System.EventHandler<WaveInEventArgs>(WaveIn_DataAvailable);
29             myWaveIn.RecordingStopped += new System.EventHandler<StoppedEventArgs>(WaveIn_RecordingStopped);
30             waveFileWriter = new WaveFileWriter(filePath, myWaveIn.WaveFormat);
31         }
32 
33         private void WaveIn_DataAvailable(object sender,WaveInEventArgs e)
34         {
35             if(waveFileWriter != null)
36             {
37                 waveFileWriter.Write(e.Buffer,0,e.BytesRecorded);
38                 waveFileWriter.Flush();
39             }
40         }
41 
42         private void WaveIn_RecordingStopped(object sender,StoppedEventArgs e)
43         {
44             myWaveIn.StopRecording();
45         }
46     }
47 }

 

这里控制器中动用WaveInEvent不会见报错,可即便以当下前面,我用底凡WaveIn类,然后径直报错了

“System.InvalidOperationException:“Use
WaveInEvent to record on a background thread””

  于StackOverFlow上找到了缓解方案,就是用WaveIn类换成WaveInEvent类即可,进入类里看一下,其实发现都是援引和一个接口,甚至说简单单近乎的构造都是平模子一样的,只是一个用来GUI线程,一个用以后台线程。一切就绪,录音也能够实现,可是当自己查自己之录音文件时,杂音好多,音质不侵袭,甚至是直接失真了,没什么用,送百度也识别失败,当用采样频率提高至44k时不时效应好好,录音文件特别对,但是问题来了,百度语音识别规定的pcm文件只能是8k-16bit,糟心,想更换成外格式的文本,采取减少形式保留,但是要是将采样频率降下去,这个力量即使够呛不好,识别为是变成了问题。不得不说,这还要逐步来解决哈。

  进入今天重头戏,这吗是本身博客园第一篇随笔文章,该讲点重点了,微软认知服务,七月中旬底时段接触到了必应的口音识别api,在微软bing官网里,并且其中的分辨功能,让我大喊,这识别率太强了。然后想搜寻她的api,发现文档全是英文材料,糟心。把资料看罢,感觉用办法特别对,也是长途调用的法,但是api呢,官网找了老半天,只有文档,那时也尚无看上面的产品,试用版啊的,只能看在,却非能够因此,心累。也即在当时几龙,重新看了下必应的语音识别文档,才接触到之词–“微软认知服务”,    
恕我见闻太浅,这个好东西却从未听了,百度一查,真是对,微软最好牛了,这个里面包含多api,语音识别都只是算多少菜一独自,人脸识别,语义感知,等等很牛之职能,找到Api,找到免费试用,登录获得app的secret
key ,便可以据此起了。下载一个demo,将secret
key输入,测试一下,哇塞,这识别功能,简直了,太胜了。并且由百度中视不少结出,使用及微软认知服务语音识别功能的可怜少,我啊因此有描绘一点东西的想法。

  我拿demo中的累累地方压缩出来直接形成了一个控制器程序,源码如下

  1 public class SpeechConfig
  2     {
  3         #region Fields
  4         /// <summary>
  5         /// The isolated storage subscription key file name.
  6         /// </summary>
  7         private const string IsolatedStorageSubscriptionKeyFileName = "Subscription.txt";
  8 
  9         /// <summary>
 10         /// The default subscription key prompt message
 11         /// </summary>
 12         private const string DefaultSubscriptionKeyPromptMessage = "Secret key";
 13 
 14         /// <summary>
 15         /// You can also put the primary key in app.config, instead of using UI.
 16         /// string subscriptionKey = ConfigurationManager.AppSettings["primaryKey"];
 17         /// </summary>
 18         private string subscriptionKey = ConfigurationManager.AppSettings["primaryKey"];
 19 
 20         /// <summary>
 21         /// Gets or sets subscription key
 22         /// </summary>
 23         public string SubscriptionKey
 24         {
 25             get
 26             {
 27                 return this.subscriptionKey;
 28             }
 29 
 30             set
 31             {
 32                 this.subscriptionKey = value;
 33                 this.OnPropertyChanged<string>();
 34             }
 35         }
 36 
 37         /// <summary>
 38         /// The data recognition client
 39         /// </summary>
 40         private DataRecognitionClient dataClient;
 41 
 42         /// <summary>
 43         /// The microphone client
 44         /// </summary>
 45         private MicrophoneRecognitionClient micClient;
 46 
 47         #endregion Fields
 48 
 49         #region event
 50         /// <summary>
 51         /// Implement INotifyPropertyChanged interface
 52         /// </summary>
 53         public event PropertyChangedEventHandler PropertyChanged;
 54 
 55         /// <summary>
 56         /// Helper function for INotifyPropertyChanged interface 
 57         /// </summary>
 58         /// <typeparam name="T">Property type</typeparam>
 59         /// <param name="caller">Property name</param>
 60         private void OnPropertyChanged<T>([CallerMemberName]string caller = null)
 61         {
 62             this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(caller));
 63         }
 64         #endregion event
 65 
 66         #region 属性
 67         /// <summary>
 68         /// Gets the current speech recognition mode.
 69         /// </summary>
 70         /// <value>
 71         /// The speech recognition mode.
 72         /// </value>
 73         private SpeechRecognitionMode Mode
 74         {
 75             get
 76             {
 77                 if (this.IsMicrophoneClientDictation ||
 78                     this.IsDataClientDictation)
 79                 {
 80                     return SpeechRecognitionMode.LongDictation;
 81                 }
 82 
 83                 return SpeechRecognitionMode.ShortPhrase;
 84             }
 85         }
 86 
 87         /// <summary>
 88         /// Gets the default locale.
 89         /// </summary>
 90         /// <value>
 91         /// The default locale.
 92         /// </value>
 93         private string DefaultLocale
 94         {
 95             //get { return "en-US"; }
 96             get { return "zh-CN"; }
 97 
 98         }
 99 
100         /// <summary>
101         /// Gets the Cognitive Service Authentication Uri.
102         /// </summary>
103         /// <value>
104         /// The Cognitive Service Authentication Uri.  Empty if the global default is to be used.
105         /// </value>
106         private string AuthenticationUri
107         {
108             get
109             {
110                 return ConfigurationManager.AppSettings["AuthenticationUri"];
111             }
112         }
113 
114         /// <summary>
115         /// Gets a value indicating whether or not to use the microphone.
116         /// </summary>
117         /// <value>
118         ///   <c>true</c> if [use microphone]; otherwise, <c>false</c>.
119         /// </value>
120         private bool UseMicrophone
121         {
122             get
123             {
124                 return this.IsMicrophoneClientWithIntent ||
125                     this.IsMicrophoneClientDictation ||
126                     this.IsMicrophoneClientShortPhrase;
127             }
128         }
129 
130         /// <summary>
131         /// Gets the short wave file path.
132         /// </summary>
133         /// <value>
134         /// The short wave file.
135         /// </value>
136         private string ShortWaveFile
137         {
138             get
139             {
140                 return ConfigurationManager.AppSettings["ShortWaveFile"];
141             }
142         }
143 
144         /// <summary>
145         /// Gets the long wave file path.
146         /// </summary>
147         /// <value>
148         /// The long wave file.
149         /// </value>
150         private string LongWaveFile
151         {
152             get
153             {
154                 return ConfigurationManager.AppSettings["LongWaveFile"];
155             }
156         }
157         #endregion 属性
158 
159         #region 模式选择控制器设置
160         /// <summary>
161         /// Gets or sets a value indicating whether this instance is microphone client short phrase.
162         /// </summary>
163         /// <value>
164         /// <c>true</c> if this instance is microphone client short phrase; otherwise, <c>false</c>.
165         /// </value>
166         public bool IsMicrophoneClientShortPhrase { get; set; }
167 
168         /// <summary>
169         /// Gets or sets a value indicating whether this instance is microphone client dictation.
170         /// </summary>
171         /// <value>
172         /// <c>true</c> if this instance is microphone client dictation; otherwise, <c>false</c>.
173         /// </value>
174         public bool IsMicrophoneClientDictation { get; set; }
175 
176         /// <summary>
177         /// Gets or sets a value indicating whether this instance is microphone client with intent.
178         /// </summary>
179         /// <value>
180         /// <c>true</c> if this instance is microphone client with intent; otherwise, <c>false</c>.
181         /// </value>
182         public bool IsMicrophoneClientWithIntent { get; set; }
183 
184         /// <summary>
185         /// Gets or sets a value indicating whether this instance is data client short phrase.
186         /// </summary>
187         /// <value>
188         /// <c>true</c> if this instance is data client short phrase; otherwise, <c>false</c>.
189         /// </value>
190         public bool IsDataClientShortPhrase { get; set; }
191 
192         /// <summary>
193         /// Gets or sets a value indicating whether this instance is data client with intent.
194         /// </summary>
195         /// <value>
196         /// <c>true</c> if this instance is data client with intent; otherwise, <c>false</c>.
197         /// </value>
198         public bool IsDataClientWithIntent { get; set; }
199 
200         /// <summary>
201         /// Gets or sets a value indicating whether this instance is data client dictation.
202         /// </summary>
203         /// <value>
204         /// <c>true</c> if this instance is data client dictation; otherwise, <c>false</c>.
205         /// </value>
206         public bool IsDataClientDictation { get; set; }
207 
208         #endregion
209 
210         #region 委托执行对象
211         /// <summary>
212         /// Called when the microphone status has changed.
213         /// </summary>
214         /// <param name="sender">The sender.</param>
215         /// <param name="e">The <see cref="MicrophoneEventArgs"/> instance containing the event data.</param>
216         private void OnMicrophoneStatus(object sender, MicrophoneEventArgs e)
217         {
218             Task task = new Task(() =>
219             {
220                 Console.WriteLine("--- Microphone status change received by OnMicrophoneStatus() ---");
221                 Console.WriteLine("********* Microphone status: {0} *********", e.Recording);
222                 if (e.Recording)
223                 {
224                     Console.WriteLine("Please start speaking.");
225                 }
226 
227                 Console.WriteLine();
228             });
229             task.Start();
230         }
231 
232         /// <summary>
233         /// Called when a partial response is received.
234         /// </summary>
235         /// <param name="sender">The sender.</param>
236         /// <param name="e">The <see cref="PartialSpeechResponseEventArgs"/> instance containing the event data.</param>
237         private void OnPartialResponseReceivedHandler(object sender, PartialSpeechResponseEventArgs e)
238         {
239             Console.WriteLine("--- Partial result received by OnPartialResponseReceivedHandler() ---");
240             Console.WriteLine("{0}", e.PartialResult);
241             Console.WriteLine();
242         }
243 
244         /// <summary>
245         /// Called when an error is received.
246         /// </summary>
247         /// <param name="sender">The sender.</param>
248         /// <param name="e">The <see cref="SpeechErrorEventArgs"/> instance containing the event data.</param>
249         private void OnConversationErrorHandler(object sender, SpeechErrorEventArgs e)
250         {
251             Console.WriteLine("--- Error received by OnConversationErrorHandler() ---");
252             Console.WriteLine("Error code: {0}", e.SpeechErrorCode.ToString());
253             Console.WriteLine("Error text: {0}", e.SpeechErrorText);
254             Console.WriteLine();
255         }
256 
257         /// <summary>
258         /// Called when a final response is received;
259         /// </summary>
260         /// <param name="sender">The sender.</param>
261         /// <param name="e">The <see cref="SpeechResponseEventArgs"/> instance containing the event data.</param>
262         private void OnMicShortPhraseResponseReceivedHandler(object sender, SpeechResponseEventArgs e)
263         {
264             Task task = new Task(() =>
265             {
266                 Console.WriteLine("--- OnMicShortPhraseResponseReceivedHandler ---");
267 
268                 // we got the final result, so it we can end the mic reco.  No need to do this
269                 // for dataReco, since we already called endAudio() on it as soon as we were done
270                 // sending all the data.
271                 this.micClient.EndMicAndRecognition();
272 
273                 this.WriteResponseResult(e);
274             });
275             task.Start();
276         }
277 
278         /// <summary>
279         /// Called when a final response is received;
280         /// </summary>
281         /// <param name="sender">The sender.</param>
282         /// <param name="e">The <see cref="SpeechResponseEventArgs"/> instance containing the event data.</param>
283         private void OnDataShortPhraseResponseReceivedHandler(object sender, SpeechResponseEventArgs e)
284         {
285             Task task = new Task(() =>
286             {
287                 Console.WriteLine("--- OnDataShortPhraseResponseReceivedHandler ---");
288 
289                 // we got the final result, so it we can end the mic reco.  No need to do this
290                 // for dataReco, since we already called endAudio() on it as soon as we were done
291                 // sending all the data.
292                 this.WriteResponseResult(e);
293 
294             });
295             task.Start();
296         }
297 
298         /// <summary>
299         /// Called when a final response is received;
300         /// </summary>
301         /// <param name="sender">The sender.</param>
302         /// <param name="e">The <see cref="SpeechResponseEventArgs"/> instance containing the event data.</param>
303         private void OnMicDictationResponseReceivedHandler(object sender, SpeechResponseEventArgs e)
304         {
305             Console.WriteLine("--- OnMicDictationResponseReceivedHandler ---");
306             if (e.PhraseResponse.RecognitionStatus == RecognitionStatus.EndOfDictation ||
307                 e.PhraseResponse.RecognitionStatus == RecognitionStatus.DictationEndSilenceTimeout)
308             {
309                 Task task = new Task(() =>
310                 {
311                     // we got the final result, so it we can end the mic reco.  No need to do this
312                     // for dataReco, since we already called endAudio() on it as soon as we were done
313                     // sending all the data.
314                     this.micClient.EndMicAndRecognition();
315                 });
316                 task.Start();
317             }
318 
319             this.WriteResponseResult(e);
320         }
321 
322         /// <summary>
323         /// Called when a final response is received;
324         /// </summary>
325         /// <param name="sender">The sender.</param>
326         /// <param name="e">The <see cref="SpeechResponseEventArgs"/> instance containing the event data.</param>
327         private void OnDataDictationResponseReceivedHandler(object sender, SpeechResponseEventArgs e)
328         {
329             Console.WriteLine("--- OnDataDictationResponseReceivedHandler ---");
330             if (e.PhraseResponse.RecognitionStatus == RecognitionStatus.EndOfDictation ||
331                 e.PhraseResponse.RecognitionStatus == RecognitionStatus.DictationEndSilenceTimeout)
332             {
333                 Task task = new Task(() =>
334                 {
335 
336                     // we got the final result, so it we can end the mic reco.  No need to do this
337                     // for dataReco, since we already called endAudio() on it as soon as we were done
338                     // sending all the data.
339                 });
340                 task.Start();
341             }
342 
343             this.WriteResponseResult(e);
344         }
345 
346         /// <summary>
347         /// Sends the audio helper.
348         /// </summary>
349         /// <param name="wavFileName">Name of the wav file.</param>
350         private void SendAudioHelper(string wavFileName)
351         {
352             using (FileStream fileStream = new FileStream(wavFileName, FileMode.Open, FileAccess.Read))
353             {
354                 // Note for wave files, we can just send data from the file right to the server.
355                 // In the case you are not an audio file in wave format, and instead you have just
356                 // raw data (for example audio coming over bluetooth), then before sending up any 
357                 // audio data, you must first send up an SpeechAudioFormat descriptor to describe 
358                 // the layout and format of your raw audio data via DataRecognitionClient's sendAudioFormat() method.
359                 int bytesRead = 0;
360                 byte[] buffer = new byte[1024];
361 
362                 try
363                 {
364                     do
365                     {
366                         // Get more Audio data to send into byte buffer.
367                         bytesRead = fileStream.Read(buffer, 0, buffer.Length);
368 
369                         // Send of audio data to service. 
370                         this.dataClient.SendAudio(buffer, bytesRead);
371                     }
372                     while (bytesRead > 0);
373                 }
374                 finally
375                 {
376                     // We are done sending audio.  Final recognition results will arrive in OnResponseReceived event call.
377                     this.dataClient.EndAudio();
378                 }
379             }
380         }
381         #endregion 委托执行对象
382 
383         #region 辅助方法
384         /// <summary>
385         /// Gets the subscription key from isolated storage.
386         /// </summary>
387         /// <returns>The subscription key.</returns>
388         private string GetSubscriptionKeyFromIsolatedStorage()
389         {
390             string subscriptionKey = null;
391 
392             using (IsolatedStorageFile isoStore = IsolatedStorageFile.GetStore(IsolatedStorageScope.User | IsolatedStorageScope.Assembly, null, null))
393             {
394                 try
395                 {
396                     using (var iStream = new IsolatedStorageFileStream(IsolatedStorageSubscriptionKeyFileName, FileMode.Open, isoStore))
397                     {
398                         using (var reader = new StreamReader(iStream))
399                         {
400                             subscriptionKey = reader.ReadLine();
401                         }
402                     }
403                 }
404                 catch (FileNotFoundException)
405                 {
406                     subscriptionKey = null;
407                 }
408             }
409 
410             if (string.IsNullOrEmpty(subscriptionKey))
411             {
412                 subscriptionKey = DefaultSubscriptionKeyPromptMessage;
413             }
414 
415             return subscriptionKey;
416         }
417 
418         /// <summary>
419         /// Creates a new microphone reco client without LUIS intent support.
420         /// </summary>
421         private void CreateMicrophoneRecoClient()
422         {
423             this.micClient = SpeechRecognitionServiceFactory.CreateMicrophoneClient(
424                 this.Mode,this.DefaultLocale,this.SubscriptionKey);
425 
426             this.micClient.AuthenticationUri = this.AuthenticationUri;
427 
428             // Event handlers for speech recognition results
429             this.micClient.OnMicrophoneStatus += this.OnMicrophoneStatus;
430             this.micClient.OnPartialResponseReceived += this.OnPartialResponseReceivedHandler;
431             if (this.Mode == SpeechRecognitionMode.ShortPhrase)
432             {
433                 this.micClient.OnResponseReceived += this.OnMicShortPhraseResponseReceivedHandler;
434             }
435             else if (this.Mode == SpeechRecognitionMode.LongDictation)
436             {
437                 this.micClient.OnResponseReceived += this.OnMicDictationResponseReceivedHandler;
438             }
439 
440             this.micClient.OnConversationError += this.OnConversationErrorHandler;
441         }
442 
443         /// <summary>
444         /// Creates a data client without LUIS intent support.
445         /// Speech recognition with data (for example from a file or audio source).  
446         /// The data is broken up into buffers and each buffer is sent to the Speech Recognition Service.
447         /// No modification is done to the buffers, so the user can apply their
448         /// own Silence Detection if desired.
449         /// </summary>
450         private void CreateDataRecoClient()
451         {
452             this.dataClient = SpeechRecognitionServiceFactory.CreateDataClient(
453                 this.Mode,
454                 this.DefaultLocale,
455                 this.SubscriptionKey);
456             this.dataClient.AuthenticationUri = this.AuthenticationUri;
457 
458             // Event handlers for speech recognition results
459             if (this.Mode == SpeechRecognitionMode.ShortPhrase)
460             {
461                 this.dataClient.OnResponseReceived += this.OnDataShortPhraseResponseReceivedHandler;
462             }
463             else
464             {
465                 this.dataClient.OnResponseReceived += this.OnDataDictationResponseReceivedHandler;
466             }
467 
468             this.dataClient.OnPartialResponseReceived += this.OnPartialResponseReceivedHandler;
469             this.dataClient.OnConversationError += this.OnConversationErrorHandler;
470         }
471 
472         /// <summary>
473         /// Writes the response result.
474         /// </summary>
475         /// <param name="e">The <see cref="SpeechResponseEventArgs"/> instance containing the event data.</param>
476         private void WriteResponseResult(SpeechResponseEventArgs e)
477         {
478             if (e.PhraseResponse.Results.Length == 0)
479             {
480                 Console.WriteLine("No phrase response is available.");
481             }
482             else
483             {
484                 Console.WriteLine("********* Final n-BEST Results *********");
485                 for (int i = 0; i < e.PhraseResponse.Results.Length; i++)
486                 {
487                     Console.WriteLine(
488                         "[{0}] Confidence={1}, Text=\"{2}\"",
489                         i,
490                         e.PhraseResponse.Results[i].Confidence,
491                         e.PhraseResponse.Results[i].DisplayText);
492                     if (e.PhraseResponse.Results[i].DisplayText == "关闭。")
493                     {
494                         Console.WriteLine("收到命令,马上关闭");
495                     }
496                 }
497 
498                 Console.WriteLine();
499             }
500         }
501         #endregion 辅助方法
502 
503         #region Init
504         public SpeechConfig()
505         {
506             this.IsMicrophoneClientShortPhrase = true;
507             this.IsMicrophoneClientWithIntent = false;
508             this.IsMicrophoneClientDictation = false;
509             this.IsDataClientShortPhrase = false;
510             this.IsDataClientWithIntent = false;
511             this.IsDataClientDictation = false;
512 
513             this.SubscriptionKey = this.GetSubscriptionKeyFromIsolatedStorage();
514         }
515 
516         /// <summary>
517         /// 语音识别开始执行
518         /// </summary>
519         public void SpeechRecognize()
520         {
521             if (this.UseMicrophone)
522             {
523                 if (this.micClient == null)
524                 {
525                     this.CreateMicrophoneRecoClient();
526                 }
527 
528                 this.micClient.StartMicAndRecognition();
529             }
530             else
531             {
532                 if (null == this.dataClient)
533                 {
534                     this.CreateDataRecoClient();
535                 }
536 
537                 this.SendAudioHelper((this.Mode == SpeechRecognitionMode.ShortPhrase) ? this.ShortWaveFile : this.LongWaveFile);
538             }
539         }
540         #endregion Init
541     }

   于马上其间起几乎独援文件可以由此nuget包下载,基本没什么问题。

本着了这里注意的一个题材虽,下载Microsoft.Speech的早晚一定是简单个包都亟待下载,不然会报错的,版本要是4.5+以上的。

葡京在线开户 20

  只待替换默认的key就实行,程序即使只是走起,效果真是特别6

葡京在线开户 21

 

 

这识别率真是十分好特别好,很乐意,可是此微软的免费试用只有一个月,那便只好当是月里多让它们放结果了哄。

 

 

  第一篇博客我推荐了微软认知服务-语葡京在线开户音识别api,亲僧体会了精,才想以那个当做首篇博客内容。

   2017-08-20,望技术有变为后能够返见自己之步子。