当前位置:首页 > 教学设计 > 3d建模软件 基于web3d智能交互技术应用研究
 

3d建模软件 基于web3d智能交互技术应用研究

发布时间:2019-05-07 03:51:39 影响了:

  摘要:利用vrml和javascript结合构建和改变3d场景, java speech API和语音引擎实现语音交互,这两点使得web交互可以真实模拟现实交流,更真实,方便。
  关键词:Vrml;场景交互;语音交互
  中图分类号:TP393文献标识码:A文章编号:1009-3044(2012)21-5172-02
  Applied Research Based on Web3d Interactive Technology
  CHEN Yu-ling, XIANG Zhuo-yuan
  (School of Information and Safty Engineering,Zhongnan University of Economics and Law,Wuhan 430000,China)
  Abatract: Use VRML combined with JavaScript to construct and change 3d scene, Use Java speech API and speech engine to realize voice interaction. The two points make it that web interaction can simulate real communication, and be more real, convenient.
  Key words: Vrml; scene interaction; speech interaction
  随着互联网和软件的不断发展和对人们工作和生活的不断渗透,产生了对各种智能交互系统的需求,在工作和生活中的各种信息查询、检索和信息分析和指导、以及智能辅助和决策系统中,都有这种需求。充分发挥网络的没有时空限制、受众广泛、数据信息量大,将数字展览融入到3D虚拟社区的架构上,使得虚拟社区能像真实环境一样有效、有趣。
   1 3D场景技术
  1.1 vrml场景创建
  VRML(Virtual Reality Modeling Language)即虚拟现实建模语言,是一种用于建立真实世界的场景模型或人们虚构的三维世界的场景建模语言,也具有平台无关性。VRML的对象称为结点,子结点的集合可以构成复杂的景物。结点可以通过实例得到复用,对它们赋以名字,进行定义后,即可建立动态的VR(虚拟世界)。为了构建真实精细的3d场景,可以采用3dmax辅助建模后导出为vrml语言,继续用vrml语言进行更改完善。
  1.2场景交互
  VRML不同于其他虚拟技术的一大特点就是其有着很好的交互性。VRML的交互方法主要分为三类,一类是通过VRML内部的Script节点与其他高级语言编写的脚本程序、VRML事件以及各种感应器配合进行交互,这种方法的交互能力有限,只能做一些简单交互,不能提供丰富的交互手段。另一种就是通过利用JAVA APPLET调用EAI(External Authoring Interface)进行交互。还有一种是通过HTML语言中的JavaScript脚本直接改变VRML中节点属性值从而达到交互的目的,这种交互方法适用范围很大,能够设计出丰富的交互界面[3]。本此研究主要采用第三种方法,用法方便简单,如下:
  设置场景属性:document.CC3D.setNodeEventIn(node,field, value);获取场景属性:document.CC3D.getNodeEventOut(node,field);
   2语音交互技术
  2.1简介
  Java Speech API是一套语音技术接口规范,包含三方面的内容:语音引擎中心、语音识别引擎和语音合成引擎,组织成三个包:javax.speech,javax.speech.recognition和javax.speech.synthesis,允许开发人员将语音技术整合到Java applet和应用程序的用户界面中。但JSAPl只提供了接口标准,不同开发者实现该接口时,使用的方法会各不相同[2]。例如可以运用cloudgarden的cgjsapi实现。
  2.2语音合成
  JSAPI语音合成引擎具有基本功能如下:1)合别器模式和属性:从JSAPI引擎中心继承而来,确定要创建识别引擎的更具体的模式和属性;2)合别结果:对识别器处理完语音输入后给出的结果进行管理;3)异常或错误处理。
  EngineList syns = Central.availableSynthesizers(null);
  final SynthesizerModeDesc desc = (SynthesizerModeDesc)syns.elementAt(2);
  Voice[] vcs = desc.getVoices();
  Voice vc= vcs[0];
  synth = Central.createSynthesizer(desc;); synth.allocate(); synth.waitEngineState(synth.ALLOCATED); synth.getSynthesizerProperties().setVoice(v);
  2.3语音识别
  JSAPI语音识别引擎具有基本功能如下[2]:1)识别器模式和属性:从JSAPI引擎中心继承而来,确定要创建识别引擎的更具体的模式和属性;2)识别语法:限定语音表达方式的词汇和句式,语法有规则名称和标识。标识可以分组或选择。可以使用外部语法规则文件或者内部语法规则设置;3)识别结果:对识别器处理完语音输入后给出的结果进行管理;4)异常或错误处理。例子代码如下:
  grammar robot;

猜你想看
相关文章

Copyright © 2008 - 2022 版权所有 职场范文网

工业和信息化部 备案号:沪ICP备18009755号-3