多媒体通信实验报告一.doc_第1页
多媒体通信实验报告一.doc_第2页
多媒体通信实验报告一.doc_第3页
多媒体通信实验报告一.doc_第4页
多媒体通信实验报告一.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

面向对象技术在多媒体数据库中的应用作者:高瑞(班级:2008211101学号:08210022)摘 要 面向对象编程技术是一种计算机编程架构,其基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成。该技术达到了软件工程的三个主要目标:重用性、灵活性和扩展性。为了实现整体运算,每个对象都能够接收信息、处理数据和向其它对象发送信息。由此面向对象技术得到了广泛的应用。该文主要研究了面向对象技术在多媒体数据库中的应用,重点讨论基于面向对象的多媒体数据库系统的实现。关键词 多媒体 面向对象 多媒体数据库 DirectShowApplication of Object-oriented technology in Multimedia DatabaseName: Gao Rui(class:2008211102 student number:08210022)Abstract:Object-oriented programming technology is one kind of computer programming framework。Its basic principle is that a computer program is up to the individuals which can rise the subroutine function of a combination of elements or object. This technology has reached three of the software engineering goals: reusability, flexibility and expansibility. In order to realize the overall operation, each object can receive information, data processing and send information to other objects. Thus object-oriented technology has been used widely. This paper mainly studies the object-oriented technology in the application of multimedia database based on object oriented and the realization of the multimedia database system.Key words multimedia; object-oriented; multimedia database1多媒体数据库概述1.1多媒体数据库的基本特征第一,媒体的种类比较多,从而加大了数据处理的难度;第二,数据量和媒体间量的差异很大,使数据库中的存储和组织方法受到影响;第三,多媒体不仅改变了数据库的接口,使其声、图、文并茂,同时也改变了数据库的操作形式,尤其是查询机制和查询方法。可见,多媒体对数据库的影响涉及到数据库的用户接口、数据模型、体系结构、数据操纵,包括应用等许多方面。1.2多媒体数据库的层次结构根据多媒体数据的特点,可将多媒体数据库分为四层,如图一所示。媒体支持层是第一层,为实现对各种媒体的最基本数据的管理和操纵。第二层是数据模型层,完成多媒体数据的逻辑存储与存取,并通过概念数据模型为上层的用户接口和多媒体数据存储存取建立一个在逻辑上统一的通道。第三层是多媒体用户接口层,完成用户对多媒体信息的查询描述并得到多媒体信息的查询结果。第四层是用户。用户用户接口层数据模型层媒体支持层 图一 多媒体数据库的层次结构划分1.3多媒体数据库的管理根据多媒体数据呈现的特点,可知数据库的管理要求能够具备一些基本功能。即必须能够表示和处理各种媒体的数据,能够反映和管理各种媒体数据的特性或关联,能够满足媒体数据独立性,能够具备开放功能,提供独立于外设和格式的接口。可见,多种媒体有着不同的数据结构与操作要求。面向对象技术所具有的特点正好符合多媒体应用的这些要求,面向对象的数据库管理方式是目前多媒体数据管理较为理想的一种方式。2 面向对象技术概述2.1面向对象技术面向对象技术的核心概念是对象,即对一个信息及相应处理的描述。对象是一种特殊的数据结构,包括对象的形状数据及对此数据进行的各种操作。面向对象技术通过对现实世界总对象的抽象以及对各个对象之间的相互关系、相互作用的描述实现有现实世界到目标系统的映射。2.2 面向对象技术中的几个重要概念1. 类。类是具有相同属性(数据和操作)对象集合的描述,或者说是一组具有相同模板对象类型的抽象和说明。对象都是通过类来创建的。类中创建一个对象,就是创建一个类的实例。2. 封装性。封装是将一个实体的属性(数据信息)和操作(程序代码)集成为一个整体而使之成为对象模型。封装隐藏了对象中的信息,对象之间通信只能在特定的界面上进行,这样一来,对象的修改就可以限制在对象内部,而不会对系统造成全面的影响,增强了数据操作的安全性。3. 继承性。继承是相关对象类之间的一种数据和操作的共享机制。面向对象概念中的类是定义一些特定对象行为模板,当一个子类继承了父类,那么在父类中定义的属性和操作也将成为子类的组成部分。子类不仅可以继承父类对象的部分或全部属性和方法,还可以拥有自己的属性和方法。继承性具有双重作用,一是可以减少代码冗余,二是可以通过协调性来减少相互之间的接口。4. 多态。多态性是允许将父类设置成为和一个或更多的他的子类相等的技术,赋值之后,父类就可以根据当前赋值给它的子类的特性以不同的方式运作。实现多态,有二种方式,覆盖和重载。覆盖,是指子类重新定义父类的虚函数的做法。重载,是指允许存在多个同名函数,而这些函数的参数表不同(或许参数个数不同,或许参数类型不同,或许两者都不同)。3 面向对象的多媒体数据库面向对象数据库模型中的对象、属性、方法、消息及对象类的层次结构和继承等特点能够方便地解决多媒体消息管理所面临的问题。在面向对象的系统中,将类似的对象组合在一起,形成一个对象类,其属性名和定义在这些属性上的方法相同。它们响应同样的消息系统中的对象,除了具有聚合的联系外,还有一种概括的联系。3.1面向对象的数据库模型多媒体对象呈现异构性和复杂性的特点,面向对象的数据库模型具备很强的抽象能力,能够较好地表示带有异构性和复杂性的数据对象,因而为数据库的构造提供了一个良好的条件。封装允许多媒体类型通过一个公共的界面进行访问和操纵,即使系统发生演变,媒体的操纵仍然能保持一致;继承能够有效减少媒体数据的冗余存储,也是聚集分层和特性传播的基本方法;对象类与实例的概念有效地维护了多媒体数据的语义信息。也为聚集抽象提供了一种可行的方法。面向对象的数据模型完全适宜多媒体数据库中的各种多媒体数据的存取与不同操作的实现。3.2面向对象数据库系统的实现3.2.1对象类型系统的建立建立恰当的类型系统来支持多媒体的多种数据类型的管理。如图二所示。Base ObjectContinuous ObjectStatic ObjectGraphicsCompositeVideoAudioTextImageAVIBMPGIFJPEGMPEGWAVMID图二 多媒体类型系统3.2.2面向对象数据库系统结构根据系统模型的功能,设计基于面向对象模型的多媒体数据库应用系统结构。如图三所示。应用软件数据库API编程接口数据存取(索引)时态模型数据模型(面向对象)图像视频声音文本图三 应用系统结构3.2.3面向对象数据库系统的存储结构和存取方法 面向对象的DBMS中的处理对象是由存储在磁盘上的多媒体数据组成的,如何设计有效地对象存储结构和存取方法对系统实现非常重要。目前,存储结构的实现方法主要分为以下两大类:1. 基于现有关系系统存储结构的方法。这种方法中的每个对象类存放在一个关系中,任何对象在进入系统后,DBMS自动分配一个全库唯一的系统标识符,该标识符在对象的生命周期中不能由系统或用户改变。通过存放在对象元组中增加另一对象的系统标识符体现对象间的联系。系统对相关对象类建立索引,当用户要求按“聚合”或“概括”联系查询时,系统就可以使用连接索引进行查询。2. 重新设计更符合多媒体对象特点的存储结构方法。可将其按逻辑模型中定义的拓扑顺序存放,以实现多媒体对象的快速存取。3.3 DirectShow技术在多媒体数据库中的应用3.3.1DirectShow概述DirectShow是微软公司在ActiveMovie和Video for Windows的基础上推出的新一代基于COM(Component Object Model)的流媒体处理的开发包,与DirectX开发包一起发布。DirectShow使用一种叫Filter Graph的模型来管理整个数据流的处理过程,运用DirectShow,我们可以很方便地从支持WDM驱动模型的采集卡上捕获数据,并且进行相应的后期处理乃至存储到文件中。这样使在多媒体数据库管理系统(MDBMS)中多媒体数据的存取变得更加方便。它广泛地支持各种媒体格式,包括Asf、Mpeg、Avi、Dv、Mp3、Wave等,为多媒体流的捕捉和回放提供了强有力的支持。3.3.2 DirectShow的基本原理DirectShow使用一种叫Filter Graph的模型来管理整个数据流的处理过程;参与数据处理的各个功能模块叫做Filter;各个Filter在Filter Graph中按一定的顺序连接成一条“流水线”协同工作。大家可以看到,按照功能来分,Filter大致分为三类:Source Filters、Transform Filters和Rendering Filters。Source Filters主要负责取得数据,数据源可以是文件、因特网、或者计算机里的采集卡、数字摄像机等,然后将数据往下传输;Transform Filters 主要负责数据的格式转换、传输;Rendering Filters主要负责数据的最终去向,我们可以将数据送给声卡、显卡进行多媒体的演示,也可以输出到文件进行存储。值得注意的是,三个部分并不是都只有一个Filter去完成功能。恰恰相反,每个部分往往是有几个Filters协同工作的。比如,Transform Filters可能包含了一个Mpeg的解码Filter、以及视频色彩空间的转换Filter、音频采样频率转换Filter等等。除了系统提供的大量Filter外,我们可以定制自己的Filter,以完成我们需要的功能。3.3.3基于DirectShow的多媒体应用系统的开发第一步,环境的设置。安装好Microsoft DirectX SDK后,需设置VC编译环境,包括:在VC系统目录中添加DirectX SDK的include和lib目录;创建工程;选择函数调用协议;添加已编译基类源代码生成的库Strmbase.lib。第二步,过滤器的设计。DirectShow单元是称为过滤器的软件组件,过滤器是可以在媒体流上执行操作的软件组件。在DirectShow中,应用所执行的任何任务都是通过将系列过滤器连接在一起。因此一个过滤器的输出的另一个过滤器的输入。一组相互连接的过滤器称为过滤器图。第三步,流媒体播放实现的核心代码。4 结束语本文论述了面向对象技术在多媒体数据库中应用的模型以及实现的方法。面向对象技术在多媒体系统开发与设计中的应用为多媒体数据库管理系统提供了良好的发展方向,特别是在复杂系统的模拟、表达和处理能力上更有独到之处。随着面向对象技术的发展和进步,多媒体数据库的研究将会更加深入,必将给多媒体数据库领域带来更加辉煌的前程。参考文献1玉琢,沈洪,黄荣怀等.多媒体技术M.北京:清华大学出版社,1999.2功明,关永,赵春等.面向对象数据库发展和研究J.计算机应用研究,2006(1):1-4.3胡晓峰

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论