交互型灯光群控软件平台案例教程3.配UNIT场景
goJhou 发布于2017-11 浏览:8242 回复:25
2
收藏

这里是第3期的交互型灯光群控软件平台案例教程。

在上两期,给各位介绍了

1.如何选择灯光及与灯光初次交互  http://ai.baidu.com/forum/topic/show/492741

2.如何对实体设备合理封装class对象http://ai.baidu.com/forum/topic/show/492754

 

这一期,我们将开始介绍比较核心的内容--UNIT场景配置。

我们访问 unit.baidu.com 进入unit官网,单击正中间立即使用按钮进入后台配置面板。

映入眼帘的就是场景管理菜单页。我们新建一个场景。填入相应的场景名称和描述确定。

单击场景后,我们进入了单元配置页面。

这一页我们将要配置的是意图。

咱的场景是围绕着一枚或数枚灯泡的。那在先前的封装中,我们已经看到了面向对象的强大性了。

接下去,我将围绕开启灯光、关闭灯光、调整亮度、调整颜色、调整色温几个意图围绕教程。剩余的功能请各位自行配置。

 

那首先围绕打开灯光~ 配置前我们先回想一下,我们想把一个灯打开,一般会怎么说?

 

打开灯光。把我的床头灯打开。帮我把灯打开。我要开灯。打开条形灯,打开吸顶灯。

打开我卧室的灯光。把卧室的灯光打开,开卧室的灯。帮我打开我卧室的灯光。把卧室的吸顶灯打开。

由这些样本,我们可以将这个意图下的词槽大致可分为 地名user_place 与 对象user_target 最后的配置效果如下

随后在场景答复上,我们因为在C#中封装了特别丰富的灯泡函数。所以果断勾选执行函数,输入open的执行函数,与c#内的函数名保持一致。

并且不需要把place词槽加入到触发规则中,目的就是不管客户填不填这个词槽都有效。影响的只是对象的问题。

到这为止我们就完成了open意图的配置了,接着我们配置多个意图,各位看图吧,就不多做文字说明了。类似的逻辑

 

关闭意图:

 

调整亮度意图:

 

调整颜色:

 

设置色温:

 

 

定时关闭:

(好像一楼只能插11张图?插不进来了)

 

收藏
点赞
2
个赞
共25条回复 最后由goJhou回复于2017-11
#26goJhou回复于2017-11

因为电脑系统坏了。代码没了。。。

这个案例后续的接入等等,各位可以搜索我的文章。

针对语音唤醒、语音无间断识别、意图分析与执行,都有在相关文章中讲到。

各位可以自行拼接一下。语音采用ActiveX识别,可能对环境要求极高。

如果各位还有兴趣继续研究深入下去的话可以在群里继续问我喔。

非常抱歉。

0
#25goJhou回复于2017-11
#24 kohakuarc回复
direct录音是方便,就是要设置这设置那的。。。

木的办法咯,只有顺从

0
#24kohakuarc回复于2017-11
#23 goJhou回复
反正我那时候找了两三天,只有direct录音方便。用windows自带的类路出来的,通道不符合api
展开

direct录音是方便,就是要设置这设置那的。。。

0
#23goJhou回复于2017-11
#22 kohakuarc回复
不清楚,directsound编程真是感觉好麻烦,兼容性也不好。

反正我那时候找了两三天,只有direct录音方便。用windows自带的类路出来的,通道不符合api

1
#22kohakuarc回复于2017-11
#21 goJhou回复
难道activeX跑的时候会占用directX?

不清楚,directsound编程真是感觉好麻烦,兼容性也不好。

1
#21goJhou回复于2017-11
#20 kohakuarc回复
private WaveFormat mWavFormat; 把这句声明注释掉,程序就正常运行了,可是没解决问题。因为把这个注释掉,录音类就没用了。 还是不明白怎么引发中断的,感觉踩到微软的坑了。
展开

难道activeX跑的时候会占用directX?

1
#20kohakuarc回复于2017-11
#19 goJhou回复
前端不是有h5 api获取音视频流的组件吗 这一块js就能完成吧

private WaveFormat mWavFormat;

把这句声明注释掉,程序就正常运行了,可是没解决问题。因为把这个注释掉,录音类就没用了。

还是不明白怎么引发中断的,感觉踩到微软的坑了。

1
#19goJhou回复于2017-11
#16 kohakuarc回复
大佬,出现了新情况。我把C#录音类集成到ActiveX控件项目的时候,vs2017报以下的错误: 应用程序处于中断模式 你的应用进入了中断状态,但无任何代码显示,因为所有线程之前都在执行外部代码(通常为系统或框架代码) 然后主窗口的输出信息如下: “System.Reflection.ReflectionTypeLoadException”类型的未经处理的异常在 mscorlib.dll 中发生 无法加载一个或多个请求的类型。有关更多信息,请检索 LoaderExceptions 属性。 查了一下,都说是dll的问题,可是我已经引用了相关的directx和directx sound的dll啊,感觉真是要炸了。
展开

前端不是有h5 api获取音视频流的组件吗 这一块js就能完成吧

1
#18笔墨哥回复于2017-11

步骤和流程都很清晰~

0
#17goJhou回复于2017-11
#16 kohakuarc回复
大佬,出现了新情况。我把C#录音类集成到ActiveX控件项目的时候,vs2017报以下的错误: 应用程序处于中断模式 你的应用进入了中断状态,但无任何代码显示,因为所有线程之前都在执行外部代码(通常为系统或框架代码) 然后主窗口的输出信息如下: “System.Reflection.ReflectionTypeLoadException”类型的未经处理的异常在 mscorlib.dll 中发生 无法加载一个或多个请求的类型。有关更多信息,请检索 LoaderExceptions 属性。 查了一下,都说是dll的问题,可是我已经引用了相关的directx和directx sound的dll啊,感觉真是要炸了。
展开

233333.这我还真帮不了你了。activeX我也就做过一次项目。都是引用自己封装的类的。

0
#16kohakuarc回复于2017-11
#15 goJhou回复
bs架构做插件的是蛮烦的。一般bs架构都是做数据可视化的

大佬,出现了新情况。我把C#录音类集成到ActiveX控件项目的时候,vs2017报以下的错误:

应用程序处于中断模式

你的应用进入了中断状态,但无任何代码显示,因为所有线程之前都在执行外部代码(通常为系统或框架代码)

然后主窗口的输出信息如下:

“System.Reflection.ReflectionTypeLoadException”类型的未经处理的异常在 mscorlib.dll 中发生
无法加载一个或多个请求的类型。有关更多信息,请检索 LoaderExceptions 属性。

查了一下,都说是dll的问题,可是我已经引用了相关的directx和directx sound的dll啊,感觉真是要炸了。

0
#15goJhou回复于2017-11
#14 kohakuarc回复
微软新出Edge浏览器好像也不能兼容ActiveX,感觉真是有些hold不住。不过这么多年的技术积累,ActiveX总不能说废就废了吧?毕竟这种插件的功能也是蛮重要的,否则怎么用C#进行网页开发啊,ASP.NET都不用混下去了。
展开

bs架构做插件的是蛮烦的。一般bs架构都是做数据可视化的

1
#14kohakuarc回复于2017-11
#12 goJhou回复
噗。写前端的。。 activeX只能在IE上跑   太废了

微软新出Edge浏览器好像也不能兼容ActiveX,感觉真是有些hold不住。不过这么多年的技术积累,ActiveX总不能说废就废了吧?毕竟这种插件的功能也是蛮重要的,否则怎么用C#进行网页开发啊,ASP.NET都不用混下去了。

1
#13kohakuarc回复于2017-11
#12 goJhou回复
噗。写前端的。。 activeX只能在IE上跑   太废了

没办法,感觉C#比较好学,所以现在基本用的C#编程。前端的技术,其实有些也蛮复杂的。考虑到兼容性和实际应用,前端其实不比后端简单多少。后端其实主要就是用代码管管数据库了。

1
#12goJhou回复于2017-11
#11 kohakuarc回复
UNIT咱还没怎么仔细研究过,这几天在钻研怎么用vs2017搞ActiveX控件,感觉挺复杂的
展开

噗。写前端的。。

activeX只能在IE上跑   太废了

1
#11kohakuarc回复于2017-11
#10 goJhou回复
依靠UNIT,啥事都能办了。233333

UNIT咱还没怎么仔细研究过,这几天在钻研怎么用vs2017搞ActiveX控件,感觉挺复杂的

1
#10goJhou回复于2017-11
#9 kohakuarc回复
日常打卡,大佬的技术实力已经是天下皆知了 =0=

依靠UNIT,啥事都能办了。233333

1
#9kohakuarc回复于2017-11

日常打卡,大佬的技术实力已经是天下皆知了 =0=

1
#8goJhou回复于2017-11

最后能实现这样的效果就很好啦~那第3期就到这结束啦,这一章节比较快的讲解了如何配置UNIT。如果想深入了解每个位置的细节,可以移步至

1.如何最大化利用UNIT的特性进行开发 Impulse干货系列:1.如何合理设置对话单元  http://ai.baidu.com/forum/topic/show/492598 

2.如何最大化利用UNIT的特性进行开发 Impulse干货系列:2.如何让UNIT快速学习

 http://ai.baidu.com/forum/topic/show/492599

3.如何最大化利用UNIT的特性进行开发 Impulse干货系列:3. C#接入UNIT&使用词槽作为参数来执行函数

 http://ai.baidu.com/forum/topic/show/492600

 

下一期我们将会去接入百度ASR及UNIT平台。敬请期待

1
#7goJhou回复于2017-11

之后进入训练与验证页面,单击 训练并生效新模型 

单击训练模型并生效到沙盒,等半小时生效等待启动成功后,可在左侧对话测试框内尽可能虐待它。

1
TOP
切换版块