基于Windows 10 IoT Core 的语音识别

小白****18 UID.2869430
2016-12-09 发表

本帖最后由 小白961218 于 2016-12-9 21:39 编辑

***附件停止解析***

基于树莓派2和Windows 10 IoT Core ,用一些简单的***链接停止解析***(英文)制作一个简单的家庭设备自动化概念的样本。

***图片停止解析***

需要的硬件:
1.树莓派2
2.一个USB接口的麦克风
3.绿色和红色的LED灯各一个
4.一个单通道的继电器
5.通用型电灯

***图片停止解析***

需要的软件
***附件停止解析*** ***链接停止解析***

***图片停止解析***
连线
1.两个LED灯分别接GPIO引脚5和引脚6
2.继电器接GPIO引脚13
3.继电器的3.3V接口接树莓派的3.3V接口
4.继电器的GND接树莓派的GND
5.电灯接继电器
6.USB型麦克风接树莓派的USB接口
***附件停止解析***

***图片停止解析***
原理
这个设备可以通过语音识别对连接在树莓派上的不同设备进行打开与关闭的操作。在这个小型设备上我连接了一个绿色的LED灯和一个红色的LED灯以及用一个单通道继电器连接了一个电灯。如果你说“打开红灯”,它就会打开连接着引脚5的红灯;“打开绿灯”,它就会打开连接着引脚6的绿灯;“打开电灯”,它就会打开连接着引脚13的电灯。

***图片停止解析***
代码部分
关于win10上的语音识别代码,你应该:
1.创建和初始化语音识别对象
2.添加和编译约束语法文件 ***链接停止解析***(英文)
3.开始一个连续的语音识别会话
4.用处理器处理语音识别结果
以下是我的语法文件(***链接停止解析***)
[mw_shl_code=xml,true]<?xml version="1.0" encoding="utf-8" ?>
<grammar
version="1.0"
xml:lang="en-US"
root="automationCommands"
xmlns="http://www.w3.org/2001/06/grammar"
tag-format="semantics/1.0">

<rule id="root">
<item>
<ruleref uri="#automationCommands"/>
<tag>out.command=rules.latest();</tag>
</item>
</rule>

<rule id="automationCommands">
<item>
<item> turn </item>
<item>
<ruleref uri="#commandActions" />
<tag> out.cmd=rules.latest(); </tag>
</item>
<one-of>
<item>
<ruleref uri="#locationActions" />
<tag> out.target=rules.latest(); </tag>
</item>
<item>
<ruleref uri="#colorActions" />
<tag> out.target=rules.latest(); </tag>
</item>
</one-of>
<item>
<ruleref uri="#deviceActions" />
<tag> out.device=rules.latest(); </tag>
</item>
</item>
</rule>

<rule id="commandActions">
<one-of>
<item>
on <tag> out="ON"; </tag>
</item>
<item>
off <tag> out="OFF"; </tag>
</item>
</one-of>
</rule>

<rule id="locationActions">
<one-of>
<item>
bedroom <tag> out="BEDROOM"; </tag>
</item>
<item>
porch <tag> out="PORCH"; </tag>
</item>
</one-of>
</rule>

<rule id="colorActions">
<one-of>
<item>
red <tag> out="RED"; </tag>
</item>
<item>
green <tag> out="GREEN"; </tag>
</item>
</one-of>
</rule>

<rule id="deviceActions">
<one-of>
<item>
light <tag> out="LIGHT"; </tag>
</item>
<item>
led <tag> out="LED"; </tag>
</item>
</one-of>
</rule>
</grammar> [/mw_shl_code]

当语音识别系统基于你所提供的语法文件成功识别语音时,系统会调用处理器处理的结果。在处理器中我们可以根据需要识别的语音设置标签,标签会成为我们创建的语法文件的一部分,你可以看见在语法文件中有一些具体的标签,这些标签会在识别结果中出现,我们可以检查这些标签是否出现,将这个应用程序写入特定的GPIO,我们可以决定干什么。

***图片停止解析***
演示视频
[media=x,500,375]https://www.youtube.com/watch?v=MN18Uo_063g[/media]

***图片停止解析***
更多关于代码
***链接停止解析***

(Via:***链接停止解析***)

标签: Windows 语音识别

敬告:
为防止不可控的内容风险,本站已关闭新用户注册,新贴的发表及评论;
你现在看到的内容只是互联网用户曾经发表的言论快照,仅用于老用户留存纪念,且仅与科技行业相关,全部内容不代表本站观点及立场;
本站重新开放前已针对包括用户隐私、版权保护、信息安全、国家政策在内的各种互联网法律法规要求,执行了隐患内容的自查、屏蔽和删除;
本站目前所属个人主体,未有任何盈利安排与计划,且与原WFUN.COM所属公司不存在任何关联关系;
如果本帖内容或者相关资源侵犯到您的合法权益,或者您认为存在问题,那么请您务必点此举报或投诉!
全部回复:
duo****ing UID.1257754
2016-12-09 使用 Lumia 650 回复

膜拜,感觉应该可以做一个pci的板卡,作为家庭语音控制中心

忧****颜 UID.2871401
2016-12-11 回复

膜拜大神,感谢分享

本站使用Golang构建,点击此处申请开源鄂ICP备18029942号-4联系站长投诉/举报