1、第八章 多媒体数据库概述一、学习目的与要求 n本章对传统数据库与多媒体数据库进行了比较,要求掌握多媒体数据库的特点以及由此产生的特殊要求。了解传统数据库模型应用于多媒体数据描述时的不足之处。熟悉检索与查询在多媒体数据库中的基本知识,分布式数据库的特点和实现途径。对数据库标准语言SQL和Microsoft SQL Server 2000有基本了解。二、考核知识点与考核目标n掌握多媒体数据的特点、熟悉多媒体数据库的分类和对数据模型的要求。掌握多媒体数据库检索与查询的方式及特点。熟悉分布式多媒体数据库系统的特点及实现途径。n了解数据库语言SQL和SQL Server的特点、组成及简单历史。二、考核知
2、识点与考核目标n识记:关键字查询、可视化查询、语义查询、OODB、OO、DDL、DML、C/S、SQL。n理解:多媒体数据、关系数据模型、面向对象数据模型、同步特性、全文检索技术、基于内容的图像检索、基于内容的视频检索、基于内容的音频检索、分布式多媒体数据库系统的特点、RPC、ODBC、SQL Server 2000。关于数据库n数据库是“按照数据结构来组织、存储和管理数据的仓库”。关于数据库n数据库通常分为层次式数据库、网络式数据库和关系式数据库三种。而不同的数据库是按不同的数据结构来联系和组织数据的。关于数据库n所谓数据结构是指数据的组织形式或数据之间的联系。如果用D表示数据,用R表示数据
3、对象之间存在的关系集合,则将DS(D,R)称为数据结构。关于数据库n例如,设有一个电话号码簿,它记录了n个人的名字和相应的电话号码。为了方便地查找某人的电话号码,将人名和号码按字典顺序排列,并在名字的后面跟随着对应的电话号码。这样,若要查找某人的电话号码(假定他的名字的第一个字母是Y),那么只须查找以Y开头的那些名字就可以了。该例中,数据的集合D就是人名和电话号码,它们之间的联系R就是按字典顺序的排列,其相应的数据结构就是DS(D,R),即一个数组。关于数据库n数据结构种类 数据结构又分为数据的逻辑结构和数据的物理结构。数据的逻辑结构是从逻辑的角度(即数据间的联系和组织方式)来观察数据,分析数
4、据,与数据的存储位置无关。数据的物理结构是指数据在计算机中存放的结构,即数据的逻辑结构在计算机中的实现形式,所以物理结构也被称为存储结构。这里只研究数据的逻辑结构,并将反映和实现数据联系的方法称为数据模型。关于数据库n数据结构种类 目前,比较流行的数据模型有三种,即按图论理论建立的层次结构模型和网状结构模型以及按关系理论建立的关系结构模型。关于数据库n层次结构模型 层次结构模型实质上是一种有根结点的定向有序树。其特点是将数据组织成一对多关系的结构。关于数据库n层次结构模型 按照层次模型建立的数据库系统称为层次模型数据库系统。IMS(Information Management System)是
5、其典型代表。关于数据库n层次结构模型 IMS数据库是IBM公司开发的两种数据库类型之一。IMS是最早的大型数据库管理系统,其数据库模式是多个物理数据库记录型(PDBR)的集合。每个PDBR对应层次数据模型的一个层次模式。关于数据库n网状结构模型 按照网状数据结构建立的数据库系统称为网状数据库系统,是具有多对多类型的数据组织方式。能明确而方便地表示数据间的复杂关系。关于数据库n网状结构模型 典型代表是DBTG(Data Base Task Group 数据库任务组)。用数学方法可将网状数据结构转化为层次数据结构。关于数据库n网状结构模型 1969年美国的CODASYL(数据库系统语言协会)组织提
6、出了一份“DBTG报告”,以后,根据DBTG报告实现的数据库系统一般称为DBTG系统。现有的网状数据库系统大都是采用DBTG方案的。关于数据库n关系结构模型 关系式数据结构把一些复杂的数据结构归结为简单的二元关系。由关系数据结构组成的数据库系统被称为关系数据库系统。关于数据库n关系结构模型 在关系数据库中,对数据的操作几乎全部建立在一个或多个关系表格上,通过对这些关系表格的分类、合并、连接或选取等运算来实现数据的管理。dBASEII就是这类数据库管理系统的典型代表。关于数据库n关系结构模型 dBASE是第一个在微型计算机上被广泛使用的数据库管理系统(DBMS),由Ashton-Tate在CP/
7、M系统上发布,然后又发布了Apple II、Apple Macintosh、UNIX、VMS和IBM PC的DOS平台上发布,并在DOS平台上成为几年中最畅销的软件。dBASE并没有能成功转换到Microsoft Windows平台并逐渐被如Paradox,Clipper,FoxPro,和Microsoft Access等新产品所替代。关于数据库n关系结构模型 目前广泛使用的微机数据库管理系统都是关系型数据库系统。Oracle、Sybase、Informix、Ingres等著名关系数据库管理系统虽然也可以在高档微机上使用,但由于它们比较复杂,对环境要求较高,因此优势主要体现在大、中、小型机系统
8、和客户/服务器系统上。目前国内使用最为广泛的微机数据库还当属xBASE类产品,国外则还包括Paradox、Access、Clipper等等。关于数据库n关系结构模型 xBASE类产品包括dBASE、dBASE、dBASE、Plus、dBASE、Clipper、FoxBASE+、FoxPro等,它们虽然由不同的软件厂商研制,但具有相同的语言特征,都与dBASE、dBASE 兼容。1、多媒体数据的特点n数据量n数据长度n数据模型n数据定义及操作n数据的时间特性和版本概念n数据传送1、多媒体数据的特点n能够管理数值、文字、表格、图形、图像、声音等多种媒体的数据库称为多媒体数据库。1、多媒体数据的特点
9、n多媒体数据库应具备的功能2、多媒体数据库的发展实现多媒体数据库系统的途径:n扩充关系数据库方法n面向对象的方法n超文本(或超媒体)方法2、多媒体数据库的发展n所谓面向对象就是基于对象概念,以对象为中心,以类和继承为构造机制,来认识、理解、刻画客观世界和设计、构建相应的软件系统。n对象是由数据和容许的操作组成的封装体,与客观实体有直接对应关系。n一个对象类则定义了具有相似性质的一组对象。n继承性是对具有层次关系的类的属性和操作进行共享的一种方式。2、多媒体数据库的发展对多媒体数据库的研究类型n面向对象数据库的研究n对关系数据库进行扩充3、多媒体数据库的数据模型n数据模型是数据库管理系统中用于提
10、供信息数据表示和操作手段的形式构架,数据模型通常由数据结构、数据操作和完整性约束三部分组成。3、多媒体数据库的数据模型n数据结构是对数据库系统静态特性的描述,是所研究的对象类型的集合,这些对象是数据库的组成部分。对象一般分为两类:一类是与数据类型、内容、性质有关的对象,另一类是与数据之间关联有关的对象。在数据库系统中,一般按照数据结构的类型来命名数据模型。3、多媒体数据库的数据模型n数据操作是对数据库系统动态特性的描述。数据库主要有两大操作:检索和更新(包括插入、删除、替换、修改)。数据模型要定义这些操作的确切含义、操作符号、操作规则以及实现操作的语法。3、多媒体数据库的数据模型n完整性约束是
11、实现数据库完整性规则的集合。所谓完整性规则,是指给定的数据模型中,数据以及它们之间关联所具有的制约和依存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据库数据的正确、有效、相容和一致。3、多媒体数据库的数据模型多媒体数据具有复合性、分散性、时序性的特点。n复合性是指数据的形式多种多样。n分散性是指有关联的数据可以分散地存储在不同的机器、不同的设备上,可以用不同的(甚至是异构的)数据库系统来存储与管理。n时序性要求在编组成员信息单元的时候要保证在时间上的同步和空间上的搭接。3、多媒体数据库的数据模型多媒体数据模型可以分为以下三类:n关系数据模型n面向对象数据模型n超文本数据模型3
12、、多媒体数据库的数据模型关系数据模型中对非格式化数据处理的能力和技术策略主要有三种。3、多媒体数据库的数据模型 面向对象(Object Oriented,OO)的数据模型允许现实世界的对象以更接近于用户思维的方式来描述,而且具有描述和处理聚集层次、概括层次的能力,能支持抽象数据类型和行为,可扩充性和共享性好,适于表示和处理多媒体信息,也适于多媒体数据库中各种媒体数据的存取与不同操作的实现。3、多媒体数据库的数据模型n把面向对象的方法和数据库技术结合起来可以使数据库系统的分析、设计最大程度地与人们对客观世界的认识相一致。面向对象数据库系统是为了满足新的数据库应用需要而产生的新一代数据库系统。3、
13、多媒体数据库的数据模型n面向对象数据库从面向程序设计语言的扩充着手使之成为基于面向对象程序设计语言的面向对象数据库。例如:ONTOS、ORION等,它们均是C+的扩充,熟悉C+的人均能很方便地掌握并使用这类系统。3、多媒体数据库的数据模型n超媒体数据模型 4、多媒体数据库检索与查询n查询语言数据库极其重要的特性之一,是鉴别一个数据库管理系统成功与否的重要依据。4、多媒体数据库检索与查询n关键字查询每个对象都带有精确描述其内容的标签(或关键字),然后通过该关键字进行快速查询。4、多媒体数据库检索与查询n可视化查询可视化查询允许用户发出视图查询,并将其转化成低层的查询原语,所以可被看做是查询模型与
14、用户间的接口,通过该接口用户用不完全 或相似的图片来实现模糊查询。可视化查询不仅包括数字字符表达式,还包括非数字字符表达式如图像、图标、样本帧等。4、多媒体数据库检索与查询n语义查询采用索引、模式匹配等多种技术,要求数据库中信息的表示必须包括隐含或明显的语义。明显的语义可以通过声明的知识表达技术实现。4、多媒体数据库检索与查询n全文检索技术就是给定一个字符或字符串的逻辑表达式,在全文数据库中进行相应的检索,查出与指定表达式相匹配的出现,并将这些出现的原文件作为检索结果返回给用户。4、多媒体数据库检索与查询n从建立索引库的方法来分,全文检索可分为基于字表的全文检索和基于词表的全文检索。n从文档的
15、组织形式来分,全文检索可分为常规文档全文检索和超文本的全文检索。n从文档作品的载体形式来分,全文检索系统可以分为基于光盘文档的全文检索和基于网络文档的全文检索。4、多媒体数据库检索与查询n万维网文档的全文检索技术4、多媒体数据库检索与查询 基于内容的信息检索根据媒体对象的语义和上下文联系进行检索,具有如下特点:n从媒体内容中提取信息线索n近似匹配n大型数据库的快速检索n多种检索手段4、多媒体数据库检索与查询基于内容的图像检索由计算机根据图像的颜色和形状特征自动地从图像数据库中提取所需图像。4、多媒体数据库检索与查询基于内容的图像检索的特点:n处理速度、准确度、算法的鲁棒性具备更高的性能。n具备
16、各种实现算法和较高的检索速度。n根据实际的应用领域对图像进行准确的分类。n从媒体内容中提取信息线索。n对图像的匹配主要是针对图像中的内容特征进行相似性匹配。n由于内容表达的不精确性,可以保证就是在检索中不会将相关的图像漏掉。4、多媒体数据库检索与查询补充:鲁棒性 鲁棒性就是系统的健壮性。它是在异常和危险情况下系统生存的关键。比如说,计算机软件在输入错误、磁盘故障、网络过载或有意攻击情况下,能否不死机、不崩溃,就是该软件的鲁棒性。算法的鲁棒性算法的稳定性。就是被测数据出现“震动”(受到干扰)时,算法得到的结论是否相对稳定。4、多媒体数据库检索与查询基于内容的图像检索的内容:n颜色n纹理n形状n对
17、象4、多媒体数据库检索与查询基于内容的视频检索帧:直接从视频中抽取的每一幅图像,是视频流的最小单位。镜头:视频序列经过时序分割后的结果,是基于内容的视频检索中的最小语义单元。关键帧:为了减少数据量,提高检索效率,从镜头中提取的一帧或多帧图像来表达镜头的特殊的视频帧。场景:在镜头的基础上,为了抽取高一级的语言单元,需要聚类相似的镜头为场景。故事单元:相同的场景经过聚类后形成的。4、多媒体数据库检索与查询补充:聚类 将物理或抽象对象的集合分成由类似的对象组成的多个类的过程被称为聚类。由聚类所生成的簇是一组数据对象的集合,这些对象与同一个簇中的对象彼此相似,与其他簇中的对象相异。4、多媒体数据库检索
18、与查询一个典型的CBVR包括:n媒体库视频等媒体本身n特征库对媒体库内容和结构的描述,其中还包括一个索引库,用来对特征库中各种特征进行快速匹配。4、多媒体数据库检索与查询一个典型的CBVR包括:n方法库是特征提取以及特征匹配的方法集合。n检索界面对于一个实用的检索系统来说,用户是通过检索界面和系统进行交互的。4、多媒体数据库检索与查询基于内容的音频检索采用以下几种形式提交查询:示例用户选择一个声音例子表达其查询要求,查找出与该声音在某些特征方面相似的所有声音。直喻通过选择一些声学/感知物理特性来描述查询要求,如亮度、音调和音量等。4、多媒体数据库检索与查询基于内容的音频检索采用以下几种形式提交
19、查询:拟声发出与要查找的声音性质相似的声音来表达查询要求。主观特征用个人的描述语言来描述声音。浏览除了在分类的基础上浏览目录外,重要的是基于音频的结构进行浏览。4、多媒体数据库检索与查询基于内容的音频检索方法基于语音技术的检索 语音检索是以语音为中心的检索,采用语音识别等处理技术。主要技术包括有:n利用大词汇语音识别技术进行检索n基于子词单元进行检索n基于识别关键词进行检索n基于说话人的辨认进行分割4、多媒体数据库检索与查询基于内容的音频检索方法音频检索 音频检索是以波形声音为对象的检索。4、多媒体数据库检索与查询基于内容的音频检索方法音频检索n声音训练和分类:通过训练来形成一个声音类,即表达
20、某类声音的类模型。声音分类就是把声音按照预定的类组合。n听觉检索:听觉感知特性,可以自动提取并用于听觉感知的检索,也可以提取其他能够区分不同声音的声学特征,形成特征矢量用于查询。4、多媒体数据库检索与查询基于内容的音频检索方法音频检索n音频分割:通过信号的声学分析并查找声音的转变点就可以实现音频的分割。转变点是度量特征突然改变的地方。转变点定义信号的区段,然后这些区段就可以作为单个的声音处理。4、多媒体数据库检索与查询基于内容的音频检索方法音乐检索音乐检索是以音乐为中心的检索,利用音乐的音符和旋律等音乐特性来检索。音乐检索利用的是诸如节奏、音符、乐器特征等。5、分布式多媒体数据库系统n特点实时
21、性5、分布式多媒体数据库系统n特点同步特性 从同步的描述和同步的实现这两个方面来考虑。5、分布式多媒体数据库系统n特点同步特性同步的描述,即采用什么样的方法去描述多媒体对象之间的同步集成关系。5、分布式多媒体数据库系统n特点同步特性空间同步的实现,要考虑网络通信的能力。5、分布式多媒体数据库系统n特点同步特性时序同步,分为内同步和外同步。n内同步指连续媒体内部帧之间的时序同步。n外同步则指不同媒体之间的时序同步。5、分布式多媒体数据库系统n特点同步特性基于交互的同步包括两个方面的问题:n再同步的确定n位置的确定5、分布式多媒体数据库系统n特点服务质量 QoS是网络的一种安全机制,是用来解决网络
22、延迟和阻塞等问题的一种技术。对Qos的描述必须考虑到用户展示设备的状况和用户对展示的特殊需求。5、分布式多媒体数据库系统n特点体系结构 分布式多媒体数据库系统的体系结构是将各种不同的局部多媒体数据库经过全局模式层得到统一。5、分布式多媒体数据库系统n特点客户服务器结构数据交换的方式主要有:1.结果交换2.对象交换3.页面交换5、分布式多媒体数据库系统n实现途径1.远程调用范型2.中间件技术6、结构化查询语言nSQL(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。同时也是数据库脚本文件的扩展名。
23、6、结构化查询语言nSQL语言结构简洁,功能强大,简单易学,所以自从IBM公司1981年推出以来,SQL语言得到了广泛的应用。如今无论是像Oracle、Sybase、DB2、Informix、SQL Server这些大型的数据库管理系统,还是像Visual Foxpro、PowerBuilder这些PC上常用的数据库开发系统,都支持SQL语言作为查询语言。6、结构化查询语言nSQL语言包含4个部分:数据定义语言(DDL),例如:CREATE、DROP、ALTER等语句。数据操作语言(DML),例如:INSERT(插入)、UPDATE(修改)、DELETE(删除)语句。6、结构化查询语言nSQL
24、语言包含4个部分:数据查询语言(DQL),例如:SELECT语句。数据控制语言(DCL 用来设置或者更改数据库用户或角色权限的语句),例如:GRANT、REVOKE、COMMIT、ROLLBACK等语句。6、结构化查询语言nSQL的功能1.SQL 面向数据库执行查询;2.SQL 可从数据库取回数据;3.SQL 可在数据库中插入新的记录;4.SQL 可更新数据库中的数据;5.SQL 可从数据库删除记录;6、结构化查询语言nSQL的功能6.SQL 可创建新数据库;7.SQL 可在数据库中创建新表;8.SQL 可在数据库中创建存储过程;9.SQL 可在数据库中创建视图;10.SQL 可以设置表、存储
25、过程和视图的权限。6、结构化查询语言nSQL中的五种数据类型字符型VARCHAR、CHAR VARCHAR型和CHAR型数据的这个差别是细微的,但是非常重要。他们都是用来储存字符串长度小于255的字符。假如你向一个长度为四十个字符的VARCHAR型字段中输入数据Bill Gates。当你以后从这个字段中取出此数据时,你取出的数据其长度为十个字符字符串Bill Gates的长度。现在假如你把字符串输入一个长度为四十个字符的CHAR型字段中,那么当你取出数据时,所取出的数据长度将是四十个字符。字符串的后面会被附加多余的空格。6、结构化查询语言nSQL中的五种数据类型文本型TEXT(Sql Serv
26、er)使用文本型数据,你可以存放超过二十亿个字符的字符串。当你需要存储大串的字符时,应该使用文本型数据。6、结构化查询语言nSQL中的五种数据类型数值型SQL支持许多种不同的数值型数据。可以存储整数 INT、小数 NUMERIC、和钱数 MONEY。6、结构化查询语言nSQL中的五种数据类型逻辑型BIT 如果你使用复选框(CHECKBOX)从网页中搜集信息,你可以把此信息存储在BIT型字段中。BIT型字段只能取两个值:0或1。6、结构化查询语言nSQL中的五种数据类型日期型DATETIME VS SMALLDATETIME(Sql Server)一个 DATETIME型的字段可以存储的日期范围
27、是从1753年1月1日第一毫秒到9999年12月31日最后一毫秒。6、结构化查询语言n支持多媒体数据的数据类型 对于多媒体数据的管理大都采用表+实体的方法,即多媒体数据以文件形式存放于指定的计算机目录下,在数据库表中只反映多媒体数据文件的存储路径。6、结构化查询语言补充:SQL Server 是一个关系数据库管理系统。它最初是由Microsoft、Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UNIX 操作系统上的应用。7、多媒体数据保存与获取示例