




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、目录TOC o 1-5 h z摘要2Abstract3 HYPERLINK l bookmark4 第一章绪论4 HYPERLINK l bookmark6 1.1引言4 HYPERLINK l bookmark8 CBIR的研究目的及意义5 HYPERLINK l bookmark10 CBIR的研究现状6 HYPERLINK l bookmark12 第二章CBIR系统环境及框架8 HYPERLINK l bookmark14 2.1前言8 HYPERLINK l bookmark16 CBIR的系统功能9 HYPERLINK l bookmark18 CBIR的实例系统11 HYPERL
2、INK l bookmark36 第三章基于Oracle数据库的图像检索系统设计14 HYPERLINK l bookmark38 系统组织结构14 HYPERLINK l bookmark48 数据库的设计及系统调用方法15 HYPERLINK l bookmark64 系统交互界面的设计与实现18 HYPERLINK l bookmark66 第四章结束语20 HYPERLINK l bookmark68 工作总结20 HYPERLINK l bookmark70 进一步的工作20致谢错误!未定义书签。 HYPERLINK l bookmark72 参考文献21 摘要基于内容的图像检索是9
3、0年代以来逐渐兴起的一个新的研究方向。传统的图像检索方法是以数据库技术为基础、以大工作量的人工标注为代价的基于文本的检索。而我们要研究的基于内容的图像检索,就是要以计算机视觉技术为依托,根据图像的视觉特征(内容),以模式匹配的方法进行以计算机为主导的图像检索。它大大减少了人工标注的沉重负担,提高了检索的速度和效率,为图像检索的应用提供了更广阔的前景。首先是构建一个图像检索系统的最基本技术,包括图像的预处理,图像的颜色、纹理特征的提取及表示,视觉特征相似度量及两图像间的距离计算。其次我们介绍了为提高系统效率而采用的性能优化方法,它可以从提高检索的准确度和速度两个角度考虑,分别对应于将人的因素引入
4、检索过程的自相关反馈方法和事先对图像集进行聚类以减少检索的计算量的矢量量化方法。总之,本文在重点分析我们系统的基础上,还对国内外其它的典型系统作了介绍;在介绍系统中用到的一些关键技术实现方法的同时,详细分析了其背景知识和理论依据;描述了系统的总体结构。关键词:基于内容的图像检索,颜色特征,纹理特征,数据库。AbstractContentBasedImageRetrieval(CBIR)hasbeenaveryactiveresearchareasince1990s,withthethrustfromtwomajorresearchcommunities,DatabaseManagementan
5、dComputerVision.ThetraditionalapproachofImageRetrievalisbasedonthetechnologyofDatabaseManagementSystems(DBMS),withthecostofheavyburdenofmanualannotation.TheproposedContentBasedImageRetrieval,however,isanewapproachbasedonComputerVision,PatternRecognitionwhichperformthecomputer-centeredimageretrievala
6、ccordingtothecontentofimages.First,thebasictechniquesforestablishingthepraticalCBIRsystem,suchas,imageprocessing,theextractingofvisualfeaturesforimageandthecomputingofsimilaritybetweenvisualfeaturesofdifferentimagesandfurthermorethecomputingofdistancebetweenimages.Second,theadvancedapproachtoimprove
7、systemperformance.Theycanbedividedintotwocategories:oneforimprovingtheaccuracyofretrievalandtheotherforimprovingthespeedofretrieval,inoursystem,formermethodisrelevancefeedbackandthelatterisvectorquantitation.Lateron,usingsemanticfeatureofimagesinCBIRsystem.Themodelforcombiningsemanticfeatureandvisua
8、lfeaturesofimagesintoonesystemisproposedInconclusion,thepurposeofthispaperistryingtobeacomprehensivearticleforCBIRsystem:Besidesconcentrateonoursystem,weintroducedsomeotherfamoussystemstoo.Inadditiontopresentedsomeimportantmethodsusedinoursystem,wealsogettothebottomoftheirtheoreticaloriginationandba
9、ckgroundknowledge.Therearealsosomedetailedanalysesoftypicalalgorithmsandnecessaryexperimentresultsinthispaper.Keywords:ContentBasedImageRetrieval,Color,Texture,Database第一章绪论引言随着互联网的逐渐普及和相关应用技术迅速发展,尤其是多媒体技术的迅速发展,人们正面对着越来越多日益增长的信息,而信息早已成为当今生活中极其重要的一种资源,能否有效的对这种资源进行利用也已经成为人们最关注的问题之一。计算机信息检索技术正是作为解决这一问题
10、的关键环节开始被人们所认识和研究的。从20世纪60年代开始,便有越来越多的人逐渐投入到这项工作中来。到了80年代后期,基于自由文本的搜索技术发展已比较成熟,一定程度上使得我们能够从互联网和大型数据库里检索出期望的信息。除了技术成熟之外,文本检索直观方便,且实现简单,具有得天独厚得优势。在今天,基于文本的检索仍然占据了信息检索应用的主要部分,并且可以预见在今后相当长的时间里仍将如此。然而同时,信息检索的对象也在不断的扩展。多媒体信息已逐渐成为信息的主导形式,它融合包含了图像、图形、文本、声音、视频等的种种内容,原本单纯的文本检索显然已经不能够适用于多媒体信息检索的各个方面,因此人们开始研究针对多
11、媒体信息的新的检索技术。研究表明,视觉信息在多媒体信息中起着主导作用,其所包含的信息量很大,而且人的视觉系统的识别和处理能力也非常强大。在视觉信息系统中起着关键性作用的是图像信息。人们在日常生活当中会不断的接收到大量的图像信息。这些图像信息除了包含静态图像之外,还包含视频、图形、动画,乃至各种符号文字。与此同时,科学文化、商业、教育、娱乐、医疗等各个领域也都在不断的产生着新的图像数据,如NASA的地球观测系统每天就能产生约1TB左右的图像数据。图像信息所包含的内容丰富多变,并且其内容常因人们视觉主观感受的不同而存在差别。传统的图像检索和管理技术在图像内容描述和检索方面往往会因缺乏灵活性而显得过
12、于呆板,而且面对复杂应用或大量不断变化着图像资源时效率低下。新的图像检索和管理技术已经成为人们日常工作生活的迫切需要。其技术根本在于对图像内容的获取和管理,只有这样,才能实现图像系统的智能化和高效率。最终我们需要考虑的是一个综合了多个研究领域,如数字图像处理,图像理解,数据库,信息检索,计算机视觉和人工智能等的图像信息检索及管理的方法。CBIR的研究目的及意义传统的图像检索方法是使用文本信息来描述图像的内容.通过对文本关键字的检索匹配达到检索图像的目的。这种方式直观简单,而且能够从用户角度表达图像内容的高层语义。早期的图像数据库如KodakPictureExchangeSystem(KPX),
13、ThePressLinkLibrary等都采用了这种检索方式在图像数据库规模不大,图像内容相对简单的时候,基于文本的检索方式能够达到令人满意的效果。然而,随着图像数据库规模越来越大,并且图像中所包含的信息和内容也越来越丰富,传统的文本检索方式己不能够胜任。一方面,文本描述和关键字设定主要依靠人的工作,自动化程度很低,费时费力:另一方面,对于复杂的图像,不同的人有不同的主观感受,因此可能造成文本信息的不稳定,从而会影响检索结果的准确性和可靠性。上世纪90年代初,基于内容的图像检索(Content-BasedImageRetrieval,CBIR)技术的出现突破了传统图像检索方法的局限性。它利用图
14、像处理,图像理解等技术获得图像以及图像中对象的内容信息并加以表示,检索则根据图像的内容语义和上文联系进行.基于内容的图像检索提供了一种在海量图像或视频库中进行有效检索的方法,因而在许多领域都有着重要的应用价值,在某种程度上已经实用或正处于研究阶段的应用方向士要包括:互联网应用主要包括多媒体搜索引擎,电子商务,视频点播等。生物医学中的应用主要包括癌细胞识别,显微图像、X光图像及超声图像的分析处理。CT,MRI及Y射线图像分析处理,病理组织切片分析,染色体分析,内脏大小形状及异常检查,热像分析和红外像分析等。遥感航大中的应用主要包括多光谱卫星图像分析,地形、地图和国土普查,地质矿藏勘探,森林资源勘
15、探、分类、防火,水利资源探查及洪水泛滥检测,海洋及渔业资源监测预报,气象及大气预报图的合成及分析预报,大文探测和分析,道路交通检测和管理等。工业应用主要包括零件和产品的无损检测,纺织、刺绣的花型和图案设计等。军事及公安领域的应用主要包括军事侦察、定位和引导,目标识别与制导,雷达地形侦察,人像鉴定识别,印章鉴定识别等。总之,CBIR技术是解决多媒体信息检索的有效途径。海量图像数据库的检索是其主要的应用方向。技术的不断发展和新技术的产生为CBIR提供了广阔的前景,人们日常生活和工作的众多方面都会成为CBIR的应用领域,CBIR也将为人们带来新的体验和感受。CBIR的研究现状自从基于内容的图像检索诞
16、生之日起,技术的不断进步和美好前景使人们对其的关注也在与日俱增。今天,涉及到CBIR的各个方面的最大研究工作正在投入进行中。这些工作主要包括以下几个方面:1.图像语义特征的提取和表示。图像的语义特征可分为底层语义特征和高层语义特征。底层语义特征是从图像视觉特征出发获得的,包括颜色特征、形状特征、纹理特征等等。对颜色特征而言。颜色直方图是最早和目前采用最为广泛的描述方式,由Swain和Ballard于1991年提出。除此之外,Stricker等提出了颜色矩的方法:Smith等还提出了颜色集的概念,Kankanhalli等则采用了颜色聚类的方法。颜色特征可作为全局特征和局部特征考虑,为了考查图像的
17、局部特征,通常采用的方法是对图像进行分割或分块。对形状特征而言,较为成熟的播述方法有斜率直方图边缘点方向直方图边界链码,形状不变矩等。然而形状特征的提取相对比较困难,一般只适用于简单图形或二值图像。纹理特征可分为基于统计的纹理特征和基丁结构的纹理特征。Haralick提出了灰度共生矩阵(Co-occurrenceMatrix)的概念,并由此提取其统计特征作为图像纹理的描述中提出的Tamura纹理能较好的对应于人类的视觉感知,引入了MRSAR(Multi-ResolutionSimultaneousAuto-RegressiveModel)模型:使用了树式小波变换和Gabor小波变换来提取图像纹
18、理特征图像的高层语义特征往往与人的主观认识有关,因此对其的表示和提取更加困难.2图像数据库的生成和索引。为了进行基于内容的检索而提取的图像特征矢量需要存放在数据库中,以便管理和索引。这些特征矢量往往维数可高达数十维。在组合检索时甚至是上百维,并且特征矢量之间需要进行复杂的联合、比对、以及成组的插入删除等操作。如何有效的对图像数据库进行组织和索引是关系到CBIR系统性能的重要因素。这涉及到高维索引技术以及数据库技术。目前这方面的研究工作主要针对于对高维索引的降维方法和建立多维索引的方法,以及对关系数据库的改进以便给予多媒体数据更好的支持等等。3.CBIR系统结构接口CBIR的应用主要有两类,一类
19、是面向特定领域的应用,另一类是面向网络的应用。具体来说,不同场合和不同目的的CBIR系统,其所拥有的功能,数据库组织,系统环境和检索机制等也不相同,因此需要有与之相匹配的系统结构作为支撑,以发挥出CBIR的最大功效。目前,CBIR的各个功能模块的划分已得到普遍的认可,进而产生了拥有清晰层次结构的系统框架。在系统环境方面,基于Web模式的CBIR系统因具有非常广阔的应用前景而受到人们越来越多的关注。另外,分布式的检索系统能够突破集中式体系结构的局限,在系统相应速度、检索速度和稳定性方面拥有更为良好的性能,因而也在人们的研究范围之内。第二章CBIR系统环境及框架前言实现基于内容的图像检索的一个重要
20、方面是CBIR系统本身。作为技术和算法的实现平台和载体,良好的系统构架所提供的易维护性、可扩充性和稳定性等等是实现CBIR设计目标的重要保证:另外,系统所提供的方便友好的用户交互手段也是CBIR得以实用的必要条件。自从基于内容的图像检索诞生以来,人们对CBIR系统应用模式的研究也在不断的进行中。随着互联网的不断发展和Internet上图像数据的迅速增加,目前,设计和实现面向网络环境的CBIR系统已经成为该领域未来主要的发展方向.在网络环境的应用系统设计主要可遵循两种模式,即Client/Server模式和Browser/Server模式,二者有各自的优缺点和适用范围。一般来说,C/S模式中客户
21、端的计算资源能够得到更好的利用,很多工作可以在客户端完成,如:自定义的用户界面,丰富多变的交互方式,用户查询要求的抽象表示及调整,以及检索结果的组织、缓存和显示等等;然而胖客户所引发的诸如系统维护和更新困难等问题在C/S模式下很难得到解决,另外客户端与用户操作系统平台的相关性也使得系统的应用受到局限。相比之下,B/S模式使用遵循一系列统一标准的Browser作为客户端,用户可以跨平台使用系统所提供的服务。同时,由于应用程序逻辑部分和绝大多数计算工作都由服务器端集中处理,因此整个系统的维护和更新任务也将能够集中在服务器端进行,从而使得这一过程变得更加简单可靠。另一方面,Browser风格的客户端
22、能够提供清晰统一的用户界面,使得用户的操作更加方便容易。除此之外,随着Web技术的发展,目前大多数浏览器都通过对Java等的支持在一定程度上弥补了仅使用单纯的Web页面与用户交互时的局限性。然而,CBIR系统的层次结构相对复杂,因此无论是选择C/S模式还是B/S模式,在进行系统的设计与实现时都应当对系统的可理解性,可扩充性,可复用性以及负载平衡等方面给予充分的考虑,这需要软件工程和软件方法学等方面理论技术的指导。而在这一点上,Model/View/Controller(MVC)是被广泛接纳和采用的设计模式。MVC模式体现了问题分层的思想。传统的MVC模式仅针对程序设计方法而言,随着对问题认识的
23、深入,MVC模式的含义也发生了变化,其涵盖面得到了扩展,从而成为了系统设计阶段应用程序框架构建的一种指导方法。一般而言,Model指的是数据模型,也就是问题的表示,它代表了所处理的对象。模型可大可小,从一种数据结构到整个应用程序对象都可以作为某种意义上的模型,然而无论是哪种模型,都要求对其所表示对象进行合理的封装;View指的是Model的展示以及与用户的交互方式,因此通常会涉及到系统的用户界面,是应用程序与用户的接口部分。一个Model可能会拥有多个与之相关的View;Controller指的是应用程序逻辑,它负责响应用户输入和程序事件,改变Model的状态,并控制协调整个应用程序的流程,维
24、持系统内部逻辑的一致性。与C/S模式相比,B/S模式在实现时系统层次的划分通常更加明确,这种层次划分是由B/S模式中较为固定的系统框架原型所决定的。而B/S模式的系统框架往往与MVC模式的出发点有很多共通之处,因此,在B/S模式下MVC模式的引入会更加简单自然。在设计和实现基于内容的图像检索系统时,首先要根据实际应用情况权衡利弊,选择适当的系统环境;接下来需要充分考虑基于内容检索系统的功能要求,并对其进行分解和模块化工作:最后在此基础上对各个模块考虑采用适当的设计模式进行实现。以上是CBIR系统环境和框架设计的主要方面。CBIR的系统功能一个完整的CBIR系统通常由两个子系统构成:即图像数据库
25、生成子系统和图像查询子系统。前者负责离线(Off-line)提取图像特征并创建索引,后者负责在线(On-line)检索图像。每个子系统有可进一步按功能划分为相应的子模块,整个CBIR系统的功能框架如图3.1所示,各部分的具体含义如下:图像预处理在对图像进行特征提取之前,可能需要对图像进行一系列预处理的工作,如调整图像的大小、去噪、图像的增强等等。目的是统一图像的尺寸或者提高图像的质量.以便接下来的处理能够获得更好的效果。对象的标识除了预处理,某些情况下还可能需要对图像做进一步的标识,如图像边缘的检测,图像对象的分割等等。这些信息能够有效的指导接下来特征提取任务的作用范围和具体方法的选择。尤其是
26、在对象分割明确的情况下,特征提取将能够获得关于图像高层语义的更多信息。特征提取即针对图像的局部(分块或标识出的对象)或全局,提取能够表示图像语义特征的数据,并将所提取的特征与图像关联起来,保存在图像库中。图像数据库图像数据库可分为两个部分:图像库和特征库。图像库中存放的是图像的原始数据及其对应的基本信息;特征库中存放的是图像库中图像对应的特征数据。一般而言,图像原始数据可以直接利用诸如BLOB的数据类型存放在数据库中,然而更常见的做法是利用文件系统保存,而数据库中只存放相关的文件索引。特征库中所存放的特征一般以向量的方式组织,对于高维的特征向量还可以利用树、聚类等高维索引技术提高索引的效率。另
27、外,CBIR系统中所使用的辅助知识也可以组织成知识库,保存在图像数据库中。用户查询接口用户查询接口的一个重要作用是提供让用户提交查询需求的手段,如按示例检索,按草图检索,随机浏览等等;另外,用户的查询应当可以针对图像不同的视觉特征,还应当可以针对图像的某一局部或是全部等等。查询接口的另一个重要作用是检索结果的返回和显示,这是实现检索目的所必不可少的。用户相关反馈相关反馈是提高检索精度的有效手段。它需要用户参与检索的过程,通过评价每次检索结果的方式来干预检索引擎的行为,从而期望下一步检索能够得到更加满意的结果。检索引擎检索引擎负责根据用户的检索需求,在图像数据库中通过特征匹配的方法进行检索。并将
28、检索结果予以保存。检索引擎可能包含了多种检索策I略,它们各自使用不同的特征匹配方法,针对不同的检索需求,检索引擎选择适当的检索策略。对象标识*比特征提取1科检索引華4囹像数据裤f图喙斥、特W)j一_数据库生成子系统;劃像責询于系统(Off-line):(On-line)图2.1CBIR的功能框图CBIR的实例系统基于内容的图像检索从诞生至今,已经吸引了大量研究机构、人学、乃至企业的关注。人们在开展研究T作的同时,也开发出了许多CBIR的原型系统。这些原型系统大都被安置在Internet上供演示和试用,然而,也有一些系统的成果已经成功的实现了商业化,如在OracleTM810中提供了ImageD
29、ataCartridges和VirtuallmageRetrievalCartridges,采用的即是Virage公司的图像查询引擎.下面我们将对目前主要的CBIR实例系统做简单的介绍:QBICQBIC(QueryByImageContent)是由IBMT.J.Watson研究中心于90年代开发的。它的出现对子CBIR系统框架和技术产生了深远的影响,因此最常被人们作为CBIR的原型系统而广泛引用。QBIC提供对大型图像和视频数据库的查询检索,支持多种混合的检索方式,包括基于图像颜色及其分布、纹理、形状、用户构造的草图、多对象(Multi-Object)以及基于示例图像的查询(QBE),同时也提
30、供了一组丰富的图形用户接口。QBIC中使用的颜色特征为k=64的颜色直方图;纹理特征为Tamura纹理表示的一种改进,即粗糙度、对比度和方向的结合:形状特征包括面积、圆形度、偏心度、主轴偏向和一组代数不变矩。QBIC是少数考虑了高维特征索引的系统之一,其索引模块先使用K-L变换降低特征维数,再利用R*树构造多维索引结构OQBIC同时支持基于文本关键字的汽询和基于图像内容相似性的查询,并将二者结合在一起。VisualSeek/WebSeekVisualSeek是由美国哥伦比亚大学电子工程系与电信研究中心图像和高级电视实验室共同开发的图像检索系统,其姊妹系统WebSeek是面向WWW的文本和图像搜
31、索工具。VisualSeek支持两种CBIR技术:基于颜色直方图和基于颜色区域空间位置关系的查询。系统使用的视觉特征包括颜色集(ColorSet)和基于小波变换的纹理特征。采用的索引结构是基于二叉树的索引结构VirageVirage由美国Virage公司开发,支持基于图像颜色、颜色布局、纹理和结构指对象的边界信息)的可视化查询Virage比QBIC更进一步,支持由上述四个原子查询的任意组合,其最大特点在于:用户可以按自己的需要调整这些检索特征的权值,从而可以控制检索的方向。Virage还提出了图像管理的一个开发式框架,将视觉特征称为原语(Primitive),并按通用型(颜色、形状和纹理等)和
32、领域相关型(如面部识别、癌细胞检测等)分类。不同的“原语”可以按领域的要求加入开放式框架。MARSMARS(MultimediaAnalysisandRetirevalSystem)是由美国UUC(UniversityofIllinoisatUrbana-Champaign)大学开发的。它与其他系统在研究范围和技术上都有不同,是对计算机视觉、数据库管理系统和信息检索三个领域进行交又研究的结果MARS系统的研究重点在于如何把不同的视觉特征组织成为一个可以动态适应于不同应用和不同用户的、具有实际意义的检索机制。MARS正式提出了针对图像检索的相关反馈(RelevenceFeedback)结构。该结
33、构通过用户反馈对系统参数进行调整,以求能满足用户的特定需求。PhotobookPhotobook是由美国MTr媒体实验室开发的用于图像浏览和搜索的一套交互式工具。其检索使用形状、纹理和面部外形三种特征,同时还能结合文本关键字进行查询。在Photobook的最近的扩展版本FourEyes中,考虑到没有一个单独的特征可以很好的表示一组任意的图像集,提出了一个基于统计学习的“模型集”(SocietyofModels)概念,提供了基于用户提供的图像进行特征的交互性学习的方法。该方法在交互式图像注释中很有效。除了以上介绍的CBIR系统之外,比较成功的类似系统还有:美国德克萨斯大学的CIRES系统:美国斯
34、坦福大学的SIMPLIcity(Semantics-sensitiveIntergratedMatchingforPictureLibraries)系统;UCSBAlexandriaDigitalLibrary的Netra原型系统;UCBerkley大学的Chabot系统等。另外,国内一些科研机构和院校也设计实现了一些CBIR原型系统:如浙江大学的基于图像颜色的检索系统PhotoNavigator:中科院计算机技术研究所的多媒体信息检索系统MIRES;华中科技大学图像处理和智能系统中心的PicSeeker原型系统等。第三章基于Oracle数据库的图像检索系统设计3.1系统组织结构实现一个基于O
35、racle数据库的图像检索系统,该系统运行于MicrosoftWindowsXP/2000操作系统上,目前己有的功能是:图像的顺序浏览、基于范例的图像检索。系统可分为以下几个部分Oracle数据库为了提高系统的效率及智能化程度,图像及其特征信息必须加以保存,文件方式的保存方法由于使用不灵活以及不能很好的支持查询,图像检索系统已经很少用到;Oracle数据库是全球用户量最多的数据库,具有使用灵活、稳定可靠、及对存储查询的优化方便等优点,又由于它是一个Window:和UNIX操作系统通用的数据库系统,可以很方便的在各个系统中移植,且在网络支持方面已有很多的可利用资源,因此,为了使我们的系统能够在将
36、来有更大的应用空间,我们使用Oracle数据库作为我们的图像检索系统的底层数据库。系统与Oracle数据库接口在定义好数据库结构后,系统与数据库的接口部分就是我们开发人员所必须加以考虑的因素了,如何充分利用Oracle数据库的各种数据支持,发掘其对多媒体数据及随机查询的强大支持,选择一个高效的系统与数据库接口方法是问题的关键在于。特征提取及图像处理子系统在数据库问题解决之后,基于内容的图像检索的核心部分就浮出水面:如何选择图像的视觉特征,如何确定这些特征的表示方法,如何组织和归整多种特征及特征表示以达到更好的图像检索效果,这些问题决定了一个图像检索系统的优劣。同时,为了提高系统效率以及方便用户
37、的个性化查询,还需要对图像做一些预处理。图像文本标注及管理子系统尽管基于内容的图像检索是当前研究的主流,但基于文本的检索同样有其不可替代的优点,目前各种图像检索系统中无一例外地保留了文本检索的功能。它具有方便Web方式的查询,有利于用户在没有可用图像作为范例时使用系统,同时用层次化关键字结构也可以方便大图像数据库的分类管理。统一的用户界面在实现了基于图像视觉特征和语义特征的检索后,我们需要一个统一的用户交互界面将两种检索功能结合起来,使用户可以方便的从一种检索转到另一种检索,同时两种检索的结果可以互相利用。下面是我们系统中上述五个部分的系统结构图:图象视觉、语义特征相结合的统一用戸脊询界面可视
38、化的用户友好界面图象文本标注、存储、特征提取及图象处理子系统管理子系统tVC与Oracle接口TheOnicteObjectsforOLEC+Oracle数据库图象视觉特征库、文本标注库图象其他信息库(文件名等)图3.1系统结构图面将详细讲解系统的各个部分数据库的设计及系统调用方法由于我们使用了Microsoft公司的VisualC十十作为主要的系统开发工具,下面将详细讨论VC与Oracle数据库的接口问题,这曾经是我们系统开发的一个难点,也是大家选择不同公司的产品进行系统开发经常会碰到的问题。1.VC与Oracle数据库的接口ORACLE公司自1979年推出基于SQL标准的关系数据库产品到1
39、997年版本8的推出,ORACLE数据库以其支持大数据库、多用户的高性能事务处理,对业界各项工业标准的支持,完整的安全和完整性控制,支持分布式数据库和分布处理,具有可移植性、可兼容性和可连接性等突出优点倍受用户喜爱,根据MG1992年全球UNIX数据库的市场报告,ORACLE占市场销售量的50%。而在客户端的开发工具方面,VisualC+也因其强大的功能和高度的灵活性等特点深受广大程序员的喜爱,因此下面我们将介绍使用VisualC+开发基于ORACLE数据库应用程序的三种方法。使用PRO*C开发数据库应用工作原理:PRO系列是ORACLE公司提供的在第三代高级程序设计语言中嵌入SQL语句来访问
40、数据库的一套编译程序。程序员用相应的高级语言编写嵌入SQL语句的PRO源程序后运行相应的预编译程序。把嵌入的SQL语句转换成标准的ORACLE调用并生成目标源程序,即纯高级语言格式的源程序,然后就可以将这些源程序加入用户的程序中调用.在VC中使用PRO*C源文件一般有程序头和程序体两部分组成。程序头包含宿主变量说明,通讯区定义和C外部表示符的说明等。程序体一般由若干函数组成。使用时,先用PRO*C编写所需的操作数据库的子程序再运PRO*C预编译程序把PRO*C源程序转换成相应的CPP源程序,将该程序插入到用户工程文件夹中并在需要对插入函数进行调用的模块中说明函数,然后就可以在此模板中说明函数,
41、然后就可以在此模块中调用所需的函数。使用ODBC中间访问数据库工作原理:ODBC主要有驱动程序和驱动程序管理器组成,驱动程序是一个用以支持ODBC函数调用的模块,每个驱动程序对应于相应的数据库,当应用程序从基于一个数据库系统移植到另一个时,只需要改应用程序中有ODBC管理程序设定的与相应数据库系统对应的别名即可。驱动程序管理器可连接到所有ODBC应用程序中,他负责管理应用程序中ODBC函数与DLL中函数的绑定。在VC中使用ODBC:VC+中提供了CDatabase。CRecordset,CRecordView,CBDException和CFieldExchange五个类,这些类封装了ODBCS
42、DK函数,从而使用户可以无需了解SDK函数就可以很方便的操作支持ODBC的数据库.CDatabase类:封装了与数据库建立连接,控制事物的提交和回滚及执行SQL语句地方法。CRecordset类:封装了大部分操作数据库的方法,包括浏览,修改记录等。CRecordView类:提供了与recoordset对象相连接的试,可以建立视中的控件与数据库数据的对应。CDBException类:提供了对数据库操作的异常处理,可以获得操作异常的相关返回代码CFieldExchange类:提供了用户变量与数据库字段之间的数据交换,如果不需要使用自动类型,你将不用直接调用该类的函数2OracleObjectfor
43、OLE开发数据库应用工作原理:他的类库是一个提供编程接口访问Oracle对象服务器的C+类库,它是用OLE的方式实现的。Oracle提供的是一个在程服务器,也就是服务器将与应用程序在同一个地址空间内,它以DLL方式提供。应用程序在访问数据库之前必须先加载Oracle对象服务器,然后与Oracle对象服务器通信。Oracle不必关心怎麽和服务器通信,只管操作类库就行。但必须有C+开发知识及开发环境,而且应该有SQL的知识。在VC中使用OracleObjectForOLEC+ClassLibrary它的使用方法与使用微软封装后的ODBC基本一样,再加入对象的类中,类库提供一种允许控件能象文本和列表框一样直接链接到一个数据库的列上的类,这种类支持运行时绑定。运用OracleObjectForOLEC+ClassLibrary开发的步骤:1通过调用OStatup方法初始化类库连接数据库操纵数据库断开数据库通过调用OShutdown方法卸载类库系统交互界面的设计与实现人机交互界面作为一个独立的重要的研究领域受到了世界各计算机厂家的关注,成为计算机行业的有一竞争领域。从计算机技术的发展过程来看,人机交互界面技术还引导了相关软硬件技术的发展,是新时代计算机系统取得成
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025健康管理师关键试题及答案分享
- 茶艺师职业生涯中的挑战考题及答案
- 高分秘诀:健康管理师考试的试题及答案
- 2025健康管理师考试高频试题及答案
- 未来技术在健康管理中的试题及答案
- 茶文化活动的策划及推广试题及答案
- 妇幼保健员考试实践课程有效性研究试题及答案
- 2025年度水利工程用工服务与管理合同
- 二零二五年度临时工劳动合同与员工绩效考核及奖励制度
- 二零二五年度智慧城市建设股权分红与项目合作合同
- 6Sigma六西格玛项目立项申请表
- FZT 73022-2019 针织保暖内衣
- 2024届北京市丰台区等5区高三下学期一模英语试题(解析版)
- 墙式消火栓检查维保记录表
- 我国医疗保障现状问题
- 工程项目部安全生产治本攻坚三年行动实施方案
- 家电以旧换新风险管控与应对策略
- 第三单元名著阅读《经典常谈》-2023-2024学年八年级语文下册同步教学课件
- 排污许可证申请与核发技术规范 火电(二次征求意见稿)
- QB-T 2673-2023 鞋类产品标识
- 《中国帕金森病诊疗指南(第四版)》(2023)要点
评论
0/150
提交评论