山东大学《人机交互技术》课程上机实验指导书.docx
《山东大学《人机交互技术》课程上机实验指导书.docx》由会员分享,可在线阅读,更多相关《山东大学《人机交互技术》课程上机实验指导书.docx(51页珍藏版)》请在冰豆网上搜索。
山东大学《人机交互技术》课程上机实验指导书
《人机交互技术》课程
实验指导书
山东大学
计算机科学技术学院
齐鲁软件学院
《人机交互技术》课程实验教学大纲
一.实验教学的目的
通过《人机交互技术》实验课程的实践,使学生了解《人机交互技术》与计算机图形、程序设计、认知心理学以及计算机硬件的发展等领域密切相关,并加深学生对人机交互知识的理解,增强学生的实际运用能力和开发高可用性的交互界面的能力。
二.实验教学的任务
通过案例学习,让学生了解不同的人机交互模型设计类型,以及成功与失败案例所带来的启示。
通过原型设计使学生了解原型的作用,并了解用户需求对设计一个良好人机交互界面的重要性。
通过原型和界面评估,使学生掌握针对交互系统的评估方法。
三.具体实验题目名称和学时分配、适用专业及实验性质(设计性、综合性、验证性)
序号
实验项目名称
学时
适用专业
实验性质
必开/选开
备注
1
虚拟人机交互模型的建立:
利用VRML构造一个如图所示的模型(可以使用各种建模工具建模,然后导入VRML),可以在通过浏览器够从各个角度观察此模型,并能使之简单地运动。
要求有简单交互功能。
8
计算机科学技术/软件工程
设计性
必开
在普通PC机房进行,要求环境,建模工具3DMAX,虚拟场景标注语言VRML,
2
用微软的语音合成软件与识别软件做一个具有语音提示功能的界面,要求设计交互模型,根据实际应用情况来确定是否要用语音。
4
计算机科学技术/软件工程
设计性
选开
MSSpeechSDK,在公共PC机房,要求配有语音卡、耳麦、扬声器等多媒体设备
3
人机交互系统的评估
4
计算机科学技术/软件工程
综合性
选开
提交所评估的系统评估报告
4
(1)基于三维空间的定位设备的空间位置信息的获得与处理
(2)基于三维立体扫描仪采集数据
2
计算机科学技术/软件工程
演示性
选开
人机交互与虚拟现实专业实验室
5
基于O3D的虚拟漫游交互学习系统:
利用O3D构建一个如图所示的虚拟场景,结合某个主题创建一个知识学习体系,丰富场景中多媒体展示形式,支持多用户漫游和虚拟环境中的人人交互、人物交互等。
8
计算机科学技术/软件工程
综合性
必开
在普通PC机房进行,要求环境,建模工具Maya,游戏引擎O3D,游戏开发环境AptanaStudio
6
基于android的二维交互游戏:
利用android2.1以上系统,搭建二维游戏平台,通过键盘鼠标交互方式,实现综合养成、解谜、休闲、角色扮演和移动应用的3G游戏。
8
计算机科学技术/软件工程
综合性
必开
在普通PC机房进行,要求环境,eclipse,android2.1
四.单项实验的内容、要求
实验环境与设备及案例的学习
通过对实验设备与环境及案例的学习,了解各种人机交互界面类型,加深学生对人机交互系统的理解。
按要求设计、制作交互系统原型(工具不限原型)
掌握原型设计方法,并运用原型开发工具设计原型。
在原型制作之前,力争全面了解实验需求。
了解交互系统与交互界面设计的开发环境,掌握相关开发工具的使用方法。
评价并改进原型
了解评价原型的方法,通过评估来发现原型中存在的可用性问题,并改进原型。
按照改进的原型设计交互界面系统。
4.评估
掌握人机交互系统与界面的评估方法。
五.实验教材或讲义名称
见山东大学《人机交互技术实验指导书》
六.实验考核标准
1.优秀
能按实验指导书独立完成实验,正确使用仪器设备,能灵活、熟练地运用相关知识,实验数据及计算结果准确,实验报告(含图表)清晰无误。
良好
能按实验指导书基本独立完成实验,正确使用仪器设备,能比较熟练地运用相关知识,实验数据及计算结果基本准确,实验报告(含图表)质量较好。
中等
能在教师指导下顺利完成实验,会使用仪器设备,尚能运用相关知识,实验数据及计算结果有明显错误,实验报告(含图表)质量一般。
及格
能在教师指导下完成实验,会使用仪器设备,运用相关知识能力较差,实验数据及计算结果有较大错误,基本达到实验最低要求。
不及格
不能完成实验,或抄袭他人实验报告,或实验数据及计算结果有多处重大错误。
七.与其他课程的联系与分工
本实验课前续先修课为:
计算机程序设计,如Visualc++programming,或Java;
计算机图形学,
八.要求掌握的开发工具
OpenGL,VRML,O3D,android语言等辅助开发工具。
九.为达到本课程的目的和要求所采取的措施
1.要求实验室配备本实验所需的设备和器材。
每人配备计算机一台,要求具有CPU是P4以上,内存128MB以上,硬盘20GB以上,并配备网卡、光驱,实验室中具有集线器、网线等,并配备相应的软件光盘。
2.承担实验教学的教师和实验员提前作好实验准备。
3.实验之前,要求学生对每个实验的内容进行预习。
4.要求学生按时上机,交实验报告。
5.指导实验的教师和实验员要耐心辅导,帮助学生解决实验中出现的问题,认真批改实验报告。
十.编制依据
本实验教学大纲的编写按照《人机交互技术》课程教学大纲对实验环节的要求编写。
参加本大纲制订编写人员:
屠长河,蒋志方,徐延宁,程敏,王璐
本课程所在实验室:
人机交互与虚拟现实实验室
实验室主任签字:
系主任签字:
主管教学院长签字:
制定时间:
2010年3月
实验一利用VRML进行简单人机交互系统的创建
(一)实验目的
1.通过建立一个简单的基于IE和VRML浏览插件CORTVRML的人机交互系统,使同学了解基于INTERNET的简单人机交互系统的基本特征和基本构建方法。
2.了解和掌握VRML插件CORTVRML的使用方法
3.掌握基本的网络虚拟现实标记语言VRML的使用方法。
4.掌握在网络环境下的人机交互的实现技术。
(二)实验硬件软件环境
普通PC机
WindowsXP操作系统
IE浏览器
(三)实验开发工具简介
1.虚拟现实建模语言VRML
VRML(VirtualRealityModelingLanguage)是一种建模语言,也就是说,它是用来描述三维物体及其行为的,可以构建虚拟境界(VirturalWorld)。
VRML的基本目标是建立因特网上的交互式三维多媒体,基本特征包括分布式、三维、交互性、多媒体集成、境界逼真性等。
(1)VRML基本工作原理
用文本信息描述三维场景,在Internet网上传输,在本地机上由VRML的浏览器解释生成三维场景,解释生成的标准规范即是VRML规范。
VRML执行模式如下图所示。
由图可以看出VRML的交互与动画都是由事件驱动的。
VRML场景可以接受两种事件驱动:
从路由语句传过来的入事件及由外部程序接口写入的直接事件。
(2)VRML的基本特性
①平台无关性;②网络传输高速性;③实时性;④可扩充性
(3)VRML的建模
VRML为虚拟环境的建立提供了规范,综合了现有三维软件景象描述语言的优点。
它有基本元素、顶点、线和面的定义,坐标变换有缩放、旋转和平移,并有优化的数据结构。
VRML浏览器的主要功能是读入VRML代码文件,并把它解释成图形映像。
VRML语言具有的基本物体有:
球体、锥体、柱体、立方体和文本等,这些基本物体为创建景像提供了方便。
VRML的语法虽然并不复杂,但比较烦琐,如果需要设计房间内的装饰不仅需要设置各种器材的材质,还需要设置相应的位置,因此其代码量是相当可观的,因而目前有许多创建VRML文件模型的软件,可以把其它三维格式的文件转换成VRML文件,如3DSMAX、RAW等。
但是若采用上述软件完成的三维模型都是手工在各个视图中绘制出来的,费时费力,而且不够真实准确,对于那些需要采用大量数据来准确描述构造物时,或者被描述的这些物体非常不规则,则很难用手工精确创制。
(4)VRML开发设计开发工具VrmlPad
VRML的发展历史不长,但由于其强大的功能和诱人的应用前景,许多支持VRML的专业编辑系统不断涌现,如常见的Internet3DSpaceBuilder、CosmoWorld、VrmlPad、3dsmax等。
这些编辑系统功能专一且强大,更可贵的是使用方便、简单。
下面介绍的是一款由ParallelGraphics公司出品的VRML专业程序编辑系统VrmlPad,版本为2.1版。
VrmlPad具有以下主要功能特点:
(a)可编辑本地或网络上的远程文件,可压缩存储;
(b)支持高级查找、使用书签、分色显示、自动侦错等编辑功能;
(c)支持多步取消和重复操作;
(d)采用树形结构显示场景构造;
(e)支持在浏览器中对场景预览;
(f)有功能强大的软件发布向导;
(g)VrmlPad环境中可以处理和执行其他语言编写的外部应用程序;
(h)提供文件列表功能,方便用户管理系统目录。
VrmlPad2.1版专用编辑器可以从网上下载或从FTP服务器上下载获得。
把VrmlPad专用编辑器软件复制到C盘根目录的某个目录下,双击(vpad2.1)图标,出现如图1:
5所示的对话框。
在对话框中选(Setup)按钮,然后单击(OK)按钮,便会自动完成VrmlPad2.1版编辑器安装。
双击(VrmlPad)图标,可以启动VrmlPad专用编辑器。
启动后的VrmlPad编辑器主界面如下图所示。
VrmlPad编辑器工作环境由标题栏、菜单栏、常用工具栏、功能窗口和编辑窗口等组成。
标题栏位于整个VrmlPad编辑器主界面的顶端。
菜单栏位于VrmlPad编辑器标题栏下方,包括文件、编辑、视图、工具和帮助菜单。
常用工具栏位于VrmlPad编辑器菜单栏的下方,主要包括文件的打开、存盘、剪切、粘贴、运行等常用快捷工具。
功能窗口位于VrmlPad编辑器的左部,包括FileList(文件列表)、Resources(资源)、SceneTree(场景树)。
文件列表显示所有目录文件;场景树显示VRML源文件中的节点树;资源显示编辑代码的.class文件。
编辑窗口位于VrmIPad编辑器的右部的空白处,是编写VRML源程序的场所。
每当创建一个新的VRML源文件时,在编辑窗口的第一行自动显示#VRMLV2.0utf8,然后在此基础上可以编写VRML源程序。
VrmlPad编辑器具有自动检错功能,在编写VRML源程序的过程中,如果出现编写错误或语法错误等,系统会自动进行检查,将出现错误的地方用红色点下划线加以标注。
使用者可以根据自己的需要重新设置VrmlPad编辑器的各种功能。
依次选择“Tools(工具)”→“Options(设置)”,显示选项设置界面,如下图所示。
选项设置界面包含General、Editor、Format、NodeFolds、Tree、FileList、ShortcutKeys和Preview8个选项卡,用以对编辑器进行设置。
(1)在General选项卡中,可对系统、保存选项、下载选项、VRML扩展进行设置。
(2)在Editor、Format选项卡中,可对编辑器和文本显示进行设置,包括字体、大小、前景、背景、颜色等设置。
(3)在NodeFolds选项卡中,可以对不敏感节点进行设置。
(4)在Tree选项卡中,可对SceneTree(场景树)、ResourceView(资源显示)进行设置。
(5)在FileList选项卡中,可对文件进行有关设置,包括常规、鼠标选择、是否在新窗口中打开文件夹和起始目录等设置。
(6)在ShortcutKeys选项卡中,可对快捷键进行管理,修改原始定义的快捷键及定义新的快捷键等。
若想恢复对系统快捷键的默认值,单击“ResetAll”按钮。
(7)在Preview选项卡中,一个区用来设置当从外部浏览器打开文件进行预览时浏览器的尺寸,另一个区用来设置当前打开文件夹时浏览器的尺寸。
VrmlPad编辑器支持在浏览器中预览,采用树型结构显示场景,具有高级查找、分色显示、自动侦错、取消操作、重复操作和使用书签等功能。
VrmlPad编辑器可以编辑本地和远程文件,可以处理和执行其他语言编写的外部应用程序,有强大的网络发布向导功能,并提供文件列表功能,便于用户编程和文件的目录管理。
2.CORTVRMLVRML浏览器
该浏览器是ParallelGraphics公司推出的VRML浏览器,除了很好的支持VRML97NURBS外,还支持多种自己规定的扩展功能,如键盘输入、拖放控制FLASH等,它也是业内第一个(也是唯一)支持最新EAI功能的VRML浏览器。
(1)下载安装
从网上搜索VRML浏览器插件CORTVRML.EXE
安装插件后直接集成在ie中了,如果是完整版本的ie就不用插件了,ie自己就能打开wrl格式的文件。
(2)使用
安装VRML插件cortvrml后的浏览器主要包括以下部分:
工具栏一,工具栏二,控制菜单框。
其操作界面如下图所示:
#工具栏一的使用
自上而下的按钮分别是:
(a)Walk模式,这是缺省的用户观察方式选项,观察者在空间中是以漫步的方式进行的,按下鼠标左键往不同的方向拖动鼠标,可以实现前进、后退、左转、右转等观察行为,也可以用键盘上的四个方向键,上键向前,下键后退,左右键转头;
(b)Fly模式,该种模式是方便观察者在空间中以飞行的方式浏览的(即取消了重力),操作大体同Walk模式;
(c)Study模式,该种模式下,浏览者可以对于观察物体进行旋转观察;
(d)Plan方式,是前后平移按钮;
(e)Pan方式,左右平移按钮;
(f)Turn方式,观察者在空间中无法改变自己的位置,只能改变自己的观察方向;
(g)Roll方式,观察者在空间中无法改变自己的位置,只能以观察方向为轴线旋转自己的观察方向。
#工具栏二的使用:
自左到右的按钮分别是:
(a)Goto方式,是将鼠标变成瞄准状态,点击虚拟场景中的任何物体的任何一点,就使观察者迅速移动到其旁边;
(b)Align方式,是当观察者的视角进行多次变换后,视角经常发生倾斜,通过点击该按钮后,以便用户的视角恢复正常;
(c)View选择方式,点击后,进入上个视角;
(d)View选择方式,进入下个视角;
(e)Restore按钮,是重新装载VRML文件按钮;Fit按钮,是将整个观察物体放于视角中最合适的位置。
#控制菜单框的使用
是在场景中通过点击鼠标右键调出的菜单,其中的选项自上而下分别是:
(a)Viewpoints,选择视角;
(b)Headlight,浏览的时候是否要头顶灯;
(c)NavigationSpeed,控制浏览速度;
(d)FullScreen,屏幕显示大小;
(e)HideToolbars,控制工具栏的显示与否;
(f)ShowConsole,控制平台显示与否。
(四)实验内容
利用VRML构造一个如图所示的模型(可以使用各种建模工具建模,然后导入VRML),可以在通过浏览器够从各个角度观察此模型,并能使之简单地运动。
要求有简单交互功能。
(五)实验步骤
1.使用VRML编辑器编写该系统的VRML代码,设计场景和对象模型,进行人机交互操作的代码设计
2.体会交互过程和实现方法
3.在CORTVRMLVRML浏览器中
4.在CORTVRMLVRML浏览器中使用菜单和工具条观察模型的运动,进行对象运动和场景运动人机交互的操作。
(六)实验报告要求
1.整理实验结果,编写实验报告;
2.总结实验心得体会。
实验二带有语音提示功能的界面设计与开发
(一)实验目的
1.通过开发一个简单的具有语音提示功能的人机交互系统,使同学了解多通道交互系统的优点和交互模型的构建方法。
2.理解语音合成技术的基本原理。
3.了解和掌握Microsoftspeechsdk的使用方法。
(二)实验器材
1.配有语音卡、耳麦、扬声器等多媒体设备的PC机
2.Windows操作系统
3.MSSpeechSDK
(三)实验说明
1.MSSpeechSDK简介:
为解决语音引擎之间不兼容的问题,微软推出了一套语音应用程序开发的软件开发资源包SpeechSDK,方便开发人员使用资源包开发语音识别和语音合成的应用程序,隔离了应用软件与语音引擎之间的联系,使得语音引擎的更换不会影响到应用程序的设计。
2.SpeechSDK基本工作原理
作为应用程序开发者,只需调用speechsdk中的函数,即可实现语音合成与语音识别功能。
3.下载安装
从Microsoft官方下载站点搜索SpeechSDK5.1并下载安装,中文语言包可选择安装。
安装好SpeechSDK后,语音控制程序将被添加到“控制面板”->“语音”选项中。
利用下图对话框可以设置语音识别和文字-语音转换的各项属性,包括语言、语调、语速和输入设备等。
(四)实验内容和步骤
在visualc++或.net环境下,用微软的SpeechSDK实现一个具有语音提示功能的界面,要求设计交互模型,并根据实际应用情况来确定是否要用语音。
调用Speechsdk的方法简述如下:
首先在visualc++主窗口的菜单栏中选择“工程”-> “设置” 。
在弹出对话框中选择“c/c++”选项卡,在分类中选择“preprocessor”,在附加包含路径中,输入speechsdk安装路径下的include目录,如:
C:
\ProgramFiles\MicrosoftSpeechSDK5.1\Include
然后选择“link”选项卡,在分类中选择“Input”,在附加库路径中,输入speechsdk安装路径下的lib目录,如:
C:
\ProgramFiles\MicrosoftSpeechSDK5.1\Lib\i386
程序中的关键代码如下:
#include
#include//引入头文件,以调用SDK中的API
UpdateData();
ISpVoice*pVoice=NULL;
if(FAILED(CoInitialize(NULL)))
{
AfxMessageBox("ErrortointiliazeCOM");
return;
}//初始化COM
HRESULThr=CoCreateInstance(CLSID_SpVoice,NULL,CLSCTX_ALL,IID_ISpVoice,(void**)&pVoice);
if(SUCCEEDED(hr))
{
hr=pVoice->SetVolume(80);//音量控制0~100
hr=pVoice->SetRate(0);//语速控制-5~5
hr=pVoice->Speak(L“helloworld”,SPF_DEFAULT,NULL);//语音的内容
ISpObjectToken*spToken=NULL;
if(SUCCEEDED(SpFindBestToken(SPCAT_VOICES,L"language=804",NULL,&SpToken)))
{ pVoice->SetVoice(SpToken);//切换至中文语音模式,language=804代表中文,409代表英文
pVoice->Speak(L"世界你好",SPF_DEFAULT,NULL);
SpToken->Release();
}
if(SUCCEEDED(SpFindBestToken(SPCAT_VOICES,L"language=409",L"Name=MicrosoftMike",&SpToken)))//说话人控制
{
pVoice->SetVoice(SpToken);
pVoice->Speak(L"ThisisMikespeaking",SPF_DEFAULT,NULL);
SpToken->Release();
}
pVoice->Speak(L"你好",SPF_IS_XML,NULL);//也可直接写成xml标签的格式
pVoice->Speak(L"Thissoundsnormalbutthepitchdropshalfwaythrough",SPF_IS_XML,NULL);//声调控制,-代表低音,+代表高音
pVoice->Release();
pVoice=NULL;
}
CoUninitialize();
Speechsdk还有很多功能,详见安装目录下的帮助文档。
实验步骤:
1.熟悉Text-To-Speech(TTS)基本函数的调用方法,编程实现最简单的语音合成原型系统。
2.体会交互过程和实现方法。
3.设计一个完整的人机交互界面,在适当的环节嵌入语音合成模块,实现语音提示功能。
(五)实验报告要求
1.整理实验结果,填入相应表格中,并写出逻辑表达式。
2.小结实验心得体会。
3.回答思考题。
实验三人机交互系统的评估
(一)实验目的
1.了解人机交互系统的评估方法
2.掌握人机交互系统评估的步骤
(二)实验硬件软件环境
普通PC机
WindowsXP操作系统
IE浏览器
(三)实验说明
利用教材上介绍的可用性分析方法选择一个感兴趣的网站、教学系统的可用性分析。
请同学担当用户进行测试,并设计一个用户调查问卷进行分析。
(四)实验内容和步骤
1.选择一个自己感兴趣的网站,进行人机交互方面的分析和评估
2.设计用户调查问卷
3.通过用户调查问卷采集用户数据
4.对所采集的数据进行统计
5.根据所得统计的数据对此网站系统进行综合分析和评估
(1)网站简介,描述一下网站的行业,分类,客户群分析等
(2)网站基本架构和设计思路
(3).网站的栏目设计分析
(4)网站的布局设计分析
(5)网站的色彩运用分析
(6)网站的字体运用分析
(7)网站的图片和动画运用分析
(8)网站的总体特色
(9)网站的导航设计
(10).附录网站可用性调查表(如果有的话)
6.给出对此网站系统的改进意见
(五)实验报告要求
参考教材第5章可用性分析与评估的一些指标表达自己的观点。
篇幅在5000~6000文字,页码在10~20P左右。
1.整理实验结果。
2.小结实验心得体会。
实验五基于O3D的虚拟漫游交互学习系统
(一)实验目的
1.通过建立一个简单的基于IE和O3D的人机交互虚拟漫游系统,使同学了解基于O3D的简单人机交互系统的基本特征和基本构建方法。
2.了解和掌握O3D的使用方法和场景构建技术。
3.掌握在网络环境下基于O3D的人机交互的实现技术。
(二)实验硬件软件环境
普通PC机
WindowsXP操作系统
Firefox浏览器
(三)实验开