- 1、本文档共50页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1 绪论
近年来,随着计算机性能的逐步提高和各领域对计算机使用的不断深入,人与计算机的交互活动越来越成为人们日常生活中的一个重要组成部分。手势交互作为一种新的人机交互方式被越来越多地采用,特别是基于视觉的手势交互,由于其简单、自然、直观等特性已成为手势交互的重要方式之一。人的手势作为人们日常生活中最广泛使用的一种交流方式,手势识别的研究受到了越来越广泛的关注,然而由于手势本身具有的多样性、多义性,以及时间和空间上的差异性等特点,加之人手是复杂的变形体以及视觉本身的不适定性,使手势识别成为一个具有挑战性的多学科交义的研究课题Human-Computer Interaction)。这一新型交互方式的发展经历了分别由键盘和鼠标为主要工具的界面,虽然至今仍是以使用键盘和鼠标为主,但其使用过程中暴露出来的不便捷、不自然,在很大程度上限制了人机交互的进一步发展。所以,为了使计算机朝着高性能、高智能和高可靠性方面发展,我们需要更深度的研究人机交互活动。近几年,随着计算机技术的迅猛发展,研究自然和谐的人机交互技术(HCI)变得异常活跃,同时也取得了可喜的成就。
基于手势识别的交互活动在自然性和易用性上有其独特的优势,这也是该类交互方式成为研究热点的重要原因。而在手势识别中,因手势输入方式的不同也可分为诸多类,其中,以基于视觉的手势识别最为简易且有代表性。所以,如何基于视觉信息对手势进行识别是近来研究人员的关注所在。
手势,是一种普通的肢体语言,指人手或手臂有目的或有意义的运动。作为一种非常重要的交流方式,它不仅是对于口语的补充,其本身也是人类语言发展过程的一部分。也因此,手势在很多方面都有着十分重要的应用。特别是虚拟现实技术的发展,更进一步促进了手势识别的研究。虚拟现实技术作为一种新的人际交互技术,是指利用计算机技术生成虚拟的声音、图像等构成虚拟环境,刺激用户的感官,同时向用户提供三维输入技术,使用户能以日常生活的经验、技能与虚拟环境进行交互。
此外,随着多媒体技术的发展、计算机性能的不断提高,计算机己经具备了处理语音、图形、图像和文字等多种通信媒体的能力,从计算机到用户的通信带宽得到了进一步的提高。所以,未来计算机的发展方向必然是研究新的输入方式,进一步扩大通信带宽,提高计算机的性能,使用户更便捷的与计算机进行交互活动。其中手势识别技术是一种重要的研究内容,以手指的具体形态来标识的手势识别系统已经开始应用在诸多领域。当然,由于研究难度的限制,目前还有很大的空间可以研究。
1.2国内外研究现状
基于手势识别的幻灯片控制系统是一个由众多需求引导、涉及多项技术难点、学科综合性强的课题本课题研究目的是对现有的算法进行综合、改进,得到一个系统,同时根据得到的,设计一个虚拟交互环境,来实现真实世界物体与虚拟环境的互动。本课题旨在2 背景技术
本章主要介绍了在实现中所用到的主要技术,主要包括是一种使用非常广泛的计算机编程语言。是一种静态数据类型检查的,支持多重编程范式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、制作图标等等泛型程序设计等多种程序设计风格。? C++设计成静态类型、和C同样高效且可移植的多用途程序设计语言 ? C++设计成直接的和广泛的支援多种程序设计风格(程序化程序设计、资料抽象化、面向对象程序设计、泛型程序设计) ? C++设计成给程序设计者更多的选择,即使可能导致程序设计者选择错误。 ? C++设计成尽可能与C兼容,籍此提供一个从C到C++的平滑过渡。 ? C++避免平台限定或没有普遍用途的特性。 ? C++不使用会带来额外开销的特性。 ? C++设计成无需复杂的程序设计环境。出于保证语言的简洁和运行高效等方面的考虑,C++的很多特性都是以库(如STL)或其他的形式提供的,而没有直接添加到语言本身里使用new和delete进行动态内存分配和释放
运算符new和delete是C++新增的运算符,提供了存储的动态分配和释放功能。它的作用相当于C语言的函数malloc()和free(),但是性能更为优越。使用new较之使用malloc()有以下的几个优点:
(1)new自动计算要分配类型的大小,不使用sizeof运算符,比较省事,可以避免错误。 (2)自动地返回正确的指针类型,不用进行强制指针类型转换。 (3)可以用new对分配的对象进行初始化。 : (1)int* p; p=new int[10]; //分配一个含有10个整数的整形数组 delete[] p; //删除这个数组 (2)int* p p=new int (100);//动态分配一个整数并初始化使用inline内联函数替代宏调用
对于频繁使用的函数,C语言建议使用宏调用代
文档评论(0)