毕业设计(论文)彩色图像检索方法的研究与系统实现

上传人:1666****666 文档编号:36827793 上传时间:2021-11-01 格式:DOC 页数:30 大小:144KB
返回 下载 相关 举报
毕业设计(论文)彩色图像检索方法的研究与系统实现_第1页
第1页 / 共30页
毕业设计(论文)彩色图像检索方法的研究与系统实现_第2页
第2页 / 共30页
毕业设计(论文)彩色图像检索方法的研究与系统实现_第3页
第3页 / 共30页
点击查看更多>>
资源描述
彩色图像检索方法的研究与系统实30摘要:随着互联网与存储技术的不断发展,人们可以获得的各种形式的信息数量也在迅速增长中。在图像信息方面,随着大规模图像集的出现,能否自动而快速地从中找到需要的图像,日益成为人们关注的焦点。如何提供一种快速有效的方法来检索这些内涵丰富的图像信息成为当今检索领域的研究热点。本文设计实现了一个基于内容的检索系统对于给定的例子图像,系统搜索制定目录并根据与例子图像的相似性程度数值俺升序排列相符合的图像。关键词:图像检索;基于颜色和纹理;基于直方图;遗传算法;基于内容Color Image Retrieval Method and SystemXXXAbstract: With the Internet and storage technology development, people can get information on various forms of rapid growth in the number. Information in images, with the emergence of large-scale image set, can automatically and quickly find the images need to increasingly become the focus of attention. How to provide a quick and effective way to retrieve these images with rich information retrieval become the hot area of research.In this paper, design and implementation of a content-based retrieval system for a given example image, the system directory and search formulation example in accordance with the degree of similarity of image I in ascending numerical order with the image.Keywords: Image Retrieval; based on the color and texture; based on the histogram; genetic algorithm; content-based目录摘要:1Abstract1目录2第一章 绪论41.1选题背景41.2图像检索方法的研究综述41.2.1基于文本的检索41.2.2基于内容的检索方法51.2.3基于基本特征提取算法71.2.4图像检索系统的性能指标和评价准则81.3基于内容图像检索技术的现状和发展方向91.3.1现有CBIR系统91.3.2图像检索技术的未来发展10第二章 系统分析122.1系统需求分析122.2可行性分析122.3系统的功能分析132.4数据库设计152.4.1建立SQL数据库152.5连接数据库16第三章 详细设计163.1界面设计:163.2代码实现183.2.1静态文本的代码183.2.2按钮的代码实现193.3疑难问题的解决243.3.1如何添加ADO Data控件243.3.2 DataGrid控件的应用24第四章 系统的实现与论文的完成264.1 编码264.2测试264.3索引的建立27第五章 总结和展望285.1课题研究总结285.2存在的问题及个人解决方法28个人总结29致谢30参考文献:31第一章 绪论1.1选题背景随着互联网与存储技术的不断发展,人们可以获得的各种形式的信息数量也在迅速增长中。在图像信息方面,随着大规模图像集的出现,能否自动而快速地从中找到需要的图像,日益成为人们关注的焦点。如何提供一种快速有效的方法来检索这些内涵丰富的图像信息成为当今检索领域的研究热点。传统的图像检索技术是基于文本的检索技术。文本检索技术可以追溯到70年代末,它依靠人工对图像进行手工注解,然后根据关键字对图像进行检索。目前很多大型图像数据库以及WEB上大部分的图像搜索引擎使用的都是这种技术。在这些图像库或搜索引擎中,图像只被松散地按类组织在一起,比如:动物、自然场景、人体诸如此类。所有这些图像的索引都由人工标注,在标注过程中,标注者列出他认为重要的或用户可能会感兴趣的物体以及对图像的描述。这种基于文本的图像检索方式的缺陷在于:一是要对规模不断庞大的图像库一一进行人工标注,代价太大;二是由于图像中包含着极为丰富的信息,而不同的人对于图像会有不同的感知与理解,因此难以避免标注过程中的主观性和不精确性。将基于文本关键字的检索方法直接应用到图像检索中会存在很多局限性1。遗传算法 GA(Geneticalgorithm)是一种效仿了自然界中种群的进化过程的人工智能搜索技术。由于遗传算法的整体寻优策略以及优化计算时不依赖梯度信息,使其具有在复杂的多维空间中搜索全局最优解的能力。在相关反馈中引入遗传算法,使系统具备自学习的能力。在检索的过程中,遗传算法将用户反馈作为初始值,快速搜索到全局的最优解。使用遗传算法改进的相关反馈,能够在特征空间中检索到更多的相关图像。1.2图像检索方法的研究综述由于在应用过程中,越来越多的地方需要用到图像检索技术,迫切的需要促使研究人员为此提出了各种各样的解决方法和理论。目前,检索的方法基本分为两大类:基于文本的检索,基于内容的检索。1.2.1基于文本的检索现阶段,真正进入普通意义上的实用阶段的图像检索方法,基本上还都是采用了基于文本的检索方法。这种方法,实际上就是靠人工为图像进行标注,用对图像的一些描述信息来作为检索时的关键字,如作者、标题、大致内容、创作时间等。广泛流行的商用搜索引擎,如GOOGLE、百度。这种检索的策略,实际上是抛开了图像信息本身,其实质还是传统的文本信息检索。而且,显而易见的是,由于不同的人对同一幅图像可能有不同的理解,从而不可避免的造成了二义性。并且由于现实情况的复杂性,要建立能够完整表达图像信息的关键字是十分困难的,几乎不可能办得到。同时,随着图像的不断增多,人工标注的工作量也会急剧攀升。所以,使用这种方法,虽然在一定程度上缓解了人们的迫切需要,但往往不能取得令人满意的效果,应用范围受到极大的限制。所以说,基于文本的图像检索方法,只能是权宜之策,而不是最终的解决之道。1.2.2基于内容的检索方法基于内容的图像检索2(Content Based Image Retrieval,CBIR)是基于内容检索技术(Content Based Retrieval,CBR))的一种是近些年发展起来的侧重于挖掘图像本身特征的一种检索策略。图像的内容即图像的特征,而基于内容的检索就是通过两幅图像的特征匹配,即图像特征的相似性度量来实现的。要进行图像特征匹配首先要进行特征提取。图像的特征分为低层物理特征(如颜色、纹理、形状、轮廓等)和高层语意特征(是人对图像的概念级的反映,如对图像的个人感受等)。高层特征在目前的条件下,一般通过人工注释的方法来实现,也就是前面说的基于文本的图像检索方法,这种方法要实现自动化有较大的困难,且主观性太强,不利于标准化的实现。而低层次的颜色、纹理、形状等特征则相对较容易提取,也可较客观地反映图像之间的差别。基于内容的查询方法和基于文本的查询方法相比,有这样几个特点:(l)采用从图像中提取出来的颜色、纹理、形状等真实特征来作为检索的依据,而不是人为的文字评价;(2)对这些特征进行相似性度量,即采用近似查询的方法;(3)多采用示例查询的方法QBE(QuerybyExample),即给出示例图像,再从图库中查找与之相似的结果图像来。如果将图像检索和图像理解相比的话,两者在基础技术上比较相似,但还是存在着许多重要的不同之处的。比如,CBIR并不需要计算机识别出具体的目标是什么,计算机可以在完全不了解具体内容的意义的情况F,而找出若干幅类似的图像来,另外,图像检索是模糊的相似性判断,检索结果应尽可能包含图像库中的所有相关图像,并且允许在结果中存在不相关的图像,而不同于图像识别那样必须找出明确的、完全相似的内容。采用CBIR方法开发的第一个功能较为齐全的系统,要属IBM公司Almadell研究中心开发的QBIC3(QuerybyImageContent)系统,它可以利用颜色、纹理、形状和草图等多种方法进行检索,用户只需给出示例图像或草图,就可方便地在图像库中找到相似的图像来。美国加州大学伯克利分校与加州水资源部合作进行了Chabot计划,开发系统用于检索水资源部大量的水资源方面的图片。另外,密歇根州立大学也开发了一种商标、图标图像检索系统,该系统通过计算归一化的颜色直方图之间的欧氏距离,并用Canny算子提取边缘点,用边缘点的方向直方图来表示形状,从而综合了颜色和形状两种特征,使得检索精确度有较大的提高。目前,国内也有很多研究机构和人员在积极参与研究荃于CBIR的图像检索方法,并有许多成果出现。1.2.2.1CBIR系统的基本工作原理总的来说,基于内容的图像检索是一个复杂的工作过程,涉及到认知科学、人工智能、图像处理、图像识别和数据库检索等多个方面,是一个综合的学科领域,有着广阔的应用前景。而实现一个CBIR系统也必须要考虑以下几个关键的步骤:(1)选择适当的图像特征或特征的组合来构成特征空间;(2)选择有效的算法提取特征,并组建特征库;(3)根据相似性度量算法确定图像间的相似程度;第一步中图像特征的选择是CBIR系统的标志,它在很大程度上影响了系统其他方面的实现。下面分别对步骤(1)和(3)进行一些讨论,步骤(2)在以后碰到具体的提取特征时再具体讨论。1.2.2.2按特征空间对CBIR系统的分类根据所选取的不同特征空间,CBIR系统可以分为以下几类:令基于象素特征这种方法的优点在于其特征提取相对较简单,但作为特征的轮廓难于结构化,只适用于检索有着较明确布局的图像,使用范围有限。这方面的代表有T.Kato的研究小组开发的“艺术博物馆系统”4基于颜色特征基于颜色特征的检索算法统计图像的全局颜色特性,具有旋转不变性、平移不变性和尺度不变性的特点,并且提取相对较容易,是简便有效的图像描述工具。但它反映的是图像的总体特征,缺乏对空间关系信息的捕捉,错检率比较高。引入适当的空间域信息可以改进系统的检索效果。令基于纹理特征这种方法在特征提取时的计算量较大。对于有大片均匀纹理区域的图像,检索效果较好,但如果是纹理变化较多,显得有些“杂乱”的图像,则以上方法并不理想。墓于形状特征形状特征符合人对图像的认识是驻要集中在某个目标区域这个事实,但对图像的分割缺乏可靠的技术手段,经常要依靠人工或半人工的方法勾勒目标形状边界,操作繁复。基于概念特征图像的概念特征,接近于人类思想的理解,是最理想的特征。但在现阶段的技术条件下,由于机器视觉、人工智能和神经网络等相关技术还不够成熟,通常只在定义好的问题领域才能有效地获取高层知识,所以应用范围还非常有限。使用基于概念特征实现的图像检索系统有麻省理工学院的Photobook系统5。1.2.2.3CBIR的相似性度量方法在确定并提取了图像特征后,就要涉及到如何比较两幅图像的相似程度了。在图像检索中,一般是由用户给出草图或例图来进行查询,所以查询要求的表达不是精确的。同时,图像之间的比较,也不像图像识别那样的要求精确。所以,为了判断两幅图像之间的相似程度,就需要有一个距离值的计算问题。这个距离的计算与使用的特征描述方法是密切相关的。如使用直方图来对选定的图像特征进行描述,则在计算时可以使用直方图相交的方法。这种方法最早由Swain于1991年提出6。当然,后来又有人考虑到人类本身的视觉特性,采用比较接近人类视觉特性的色度频谱上的分段匹配方法。1.2.3基于基本特征提取算法目前比较常见的特征提取算法主要包括基于颜色、纹理、形状等特征的方法,对这些特征进行提取是CBIR最直接的方法。一基于颜色的特征提取10颜色特征是图像最底层、最直观、最明显的物理特征,通常对噪声、图像质量的退化、尺寸、分辨率和方向等的变化具有很强的鲁棒性,是绝大多数基于内容的图像和视频检索的多媒体数据库中使用的特征之一。颜色特征的主要描述方法有:1颜色直方图(Color Histogram)。其核心思想是在颜色空间中采用一定的量化方法对颜色进行量化,然后统计每一个量化通道在整幅图像颜色中所占的比重。颜色直方图具有旋转不变性(Rotation Invariance)、尺度不变性(Scale Invariance)和平移不变性(Translation Invariance),因此它被广泛的应用到图像检索中。常用的颜色空间有RGB和HSV空间,量化的方法有均匀量化、基于主观感知的量化等。2颜色矩(Color Moment)。类似于描述形状的区域矩不变量,颜色矩的数学基础是任何颜色分布均可由它的矩来刻画,颜色矩的主要思想是在颜色直方图的基础上计算出一些统计量,如一阶中心矩、二阶矩等,用这些统计量来表示颜色特征。3颜色相关图(Color Correlogram)。其主要思想是用颜色对相对于距离的分布来描述信息,它反映了像素对的空间相关性,以及局部像素分布和总体像素分布的相关性,并且容易计算,特征范围小,效果好。4颜色一致性矢量(Color Coherence Vectors,CCV)。本质上是一种引入空间信息改进的直方图算法,统计了图像中各颜色最大区域的像素数量。通过分离开一致性像素和非一致性像素,比直方图算法具有更好的区别效果。颜色特征是一种全局特征,描述了图像或图像区域所对应景物的表面性质。由于颜色对图像或图像区域的方向、大小等变化不敏感,所以颜色特征不能很好地捕捉图像中对象的局部特征。1.2.4图像检索系统的性能指标和评价准则检索的目标是发现和提取需要的图像。为了判定各种检索算法的优劣,要求我们考虑所检索出来的相似图像的数量和排列次序,所以,我们定义以下两个重要的参数,作为性能指标和计量准则:查全率和准确率。这两个参数的定义如下:查全率=检索出来的有关联的结果/图像库中所有关联的结果(1-1)查准率=检索出来的有关联的结果/检索出来的所有结果(1-2)从定义中我们可以看出,查全率反映了检索算法找到关联结果的全面程度,它涉及到漏检的问题;而查准率则反映了算法每次检索出来有效关联结果的能力,它涉及到误检的问题。显而易见的,查全率和查准率的云!算都需要知道图库中真实的存储内容,所以这两个参数可用于实验系统的研究,而对实际系统的评价则不适用。类视觉特性的色度频谱上的分段匹配方法。1.3基于内容图像检索技术的现状和发展方向1.3.1现有CBIR系统随着CBIR技术的发展,市场也涌现出了一些CBIR系统,目前已有的CBIR系统主要包括:QBIC、Virage、PhotoBook、VisualSEEK、Netra、MARS等71QBIC:QBIC系统是由IBM公司第一个商业化的基于内容的图像检索系统。QBIC系统支持基于范例图像的查询方式,也支持通过由用户构造的草图、轮廓和选定的色彩和纹理样式的查询方式,以及其它一些查询方式。在QBIC系统中,色彩特征用RGB,YIQ,Lab和MTM颜色空间和k维颜色直方图等来表示。采用的纹理特征是用改进的Tamura纹理表示法,其本质是粗糙度、对比度和方向性三个特征的结合。形状特征主要包括形状区域、圆周率、离心率、主轴方向和一些代数不变矩。QBIC系统是极少数考虑到高维特征索引问题的系统之一,在它的索引子系统中,首先用KL变换来完成维数缩减,然后采用R*树来构造多维索引结构。在QBIC的最新版系统中,基于文本的关键字查找方式与基于内容的相似性查找方式相结合,共同完成查找功能。2Virage:Virage是由Virage有限公司开发的基于内容的图像检索引擎。同QBIC系统一样,它也支持基于色彩、色彩布局、纹理和结构特征的视觉查询功能。但Virage要比QBIC在技术上向前迈进了一步,Virage支持以上四种基本查询的任意组合后的查询方式,用户还可以根据需要来调整一些基本图像特征的权重。Jeffery等人进一步提出了图像管理的开放式框架。他们将图像的视觉特征分为两类:一类是通用特征(如色彩、形状或纹理),一类是领域相关的特征(如用于人脸识别、癌细胞检测的特征),根据不同领域的具体需要,各种有用的基本特征就可以加入到这个开放式结构中。3PhotoBook:PhotoBook是美国麻省理工学院的多媒体实验室所开发的用于图像查询和浏览的交互式工具。它由三个子系统组成,分别负责提取形状、纹理、人脸特征。用户可以分别在这三个子系统中根据相应的特征来进行查找。在PhotoBook更新一些的版本FourEyes中,Picard等人提出了把用户加入到图像注释和检索过程中的想法。更进一步,由于人的感知是主观的,他们又提出了“模型集合”来结合人的因素。实验表明,这种方法对于交互式图像注释来说非常有效。4VisualSEEK、WebSEEK:VisualSEEK是基于视觉特征的搜索引擎,WebSEEK是一种面向WWW的文本或图像搜索引擎,它们都是由哥伦比亚大学开发的。这两个系统的主要技术特点是采用了图像区域之间空间关系和从压缩域中提取的视觉特征。系统所采用的视觉特征是颜色集和基于小波变换的纹理特征。为了加快检索速度,系统采用基于二叉树的索引算法。VisualSEEK同时支持基于视觉特征的查询和基于空间关系的查询。WebSEEK是一个面向WWW的搜索引擎,它由三个主要模块组成,分别是图像/视频采集模块,主题分类和索引模块,查找、浏览和检索模块,该搜索引擎不仅支持基于关键字的查找,还支持基于视觉内容的查找。5Netra:Netra系统是在UCSB大学的Alexandria数字化图书馆项目中用于图像检索的原型系统。它从分割后的图像区域中提取色彩、纹理、形状和空间位置信息,并依靠这些信息从数据库中查找相似的区域。Netra在研究方面的主要特点包括采用了基于Gabor滤波器的纹理特征,基于神经网的“图像词典”的构造和基于边缘流的图像分割。6MARS:MARS是伊利诺斯大学Urbana-Champaign分校(UIUC)开发的。MARS无论在研究角度还是应用领域都和其它的图像检索系统有很大的差异。这主要体现在MARS是一个多学科交叉融合的产物,包括计算机视觉、数据库管理系统以及传统的信息检索技术。MARS在科研方面的主要特点包括数据库管理系统(DBMS)和信息检索技术(IR)的结合,索引和检索技术的融合,以及计算机和人的融合。MARS系统的重点并不在于找到所谓“最好”的图像特征,而在于根据实际的应用环境和用户需要在检索框架中动态的组合调整各种不同的图像特征。MARS在图像检索领域正式提出了相关反馈的体系结构,相关反馈技术在各种层次上融合到检索的过程中,包括查询向量的优化,相似度算法的自动选择,以及图像特征权重的调整。1.3.2图像检索技术的未来发展尽管各种图像搜索引擎为快速、大量地查找网上图像信息创造了条件,而基于内容特征的图像库检索技术亦为图像数据的检索从可视角度开辟了一条更为准确直观的途径,但仍存在一些有待研究的热点问题。89(1)两类图像检索技术的结合现有的图像搜索引擎主要侧重于对图像内容的语义描述,而图像库检索技术则侧重于图像内容的特征提取,二者虽侧重不同但却互相补充。如果能将二者结合起来取长补短,则网络的图像检索技术必有新的进展。已有的图像搜索引擎在信息的自动加工和标引方面都有待提高,需要开发出计算机自动识别和标引图像的算法和技术,以完善现有的检索功能,并与己有的成熟的图像库检索技术相结合,这是今后应该研究的一个课题。而且,图像库检索技术也应面向网络,利用网络技术进行改造,提供新的www访问界面代替原来的应用系统界面。同时将巨大的图像库资源利用网络实现共享。(2)对基于内容编码技术的研究目前,国际上还没有通用的基于内容的编码标准。20世纪90年代初,国际上就开始了对基于内容的图像信息检索方面的研究。从基本的颜色检索,到综合利用多种图像特征进行检索,大量原型系统己经推出,其中,部分已投入到实际应用中以检验其有效性。同时,MPEG一7标准作为基于内容的多媒体编码标准也正在制定当中,即将成为国际标准中的一员。因此,应尽快对MPEG一7标准进行研究,分析其编码的实质,在此基础上进一步研究基于内容检索的系统,使我国基于内容的图像检索尽快走向实际应用阶段。(3)对用户查询接口的研究这涉及到用户对图像内容的感知表达、交互方式的设计、用户如何形成并提交查询等方面。现代多媒体信息系统的一个重要特征就是信息获取过程的可交互性,人在系统中是主动的。除了提供示例和描绘查询基本接日之外,用户的查询接口应提供丰富的交互能力,使用户在主动的交互过程中表达对图像语义的感知,调整查询参数及其组合,最终获得满意的查询结果。用户的查一询接口应该是直观易用的,底层的特征选择对用户是透明的。这里涉及到如何把用户的查询表达转换为可以执行检索的特征矢量,如何从交互过程中获取用户的内容感知,以便选择合适的检索特征等问题。随着网上多媒体的广泛应用,对图像的检索需求将会越来越迫切。未来的图像检索技术将是网络技术和基于内容的图像库检索技术的结合。随着多媒体信息处理技术的日益发展和深化,图像信息的加工、处理和检索标准的出台,网上的图像检索技术将会日趋完善,而图像搜索引擎也将成为Iniernet上的新宠。总之,该技术的应用前景是十分广阔的,它必将在各个领域当中占据主导地位,并带动相关产业的发展,促进多媒体信息化的交流。第二章 系统分析 2.1系统需求分析本系统的总目标是为用户提供迅速、高效的服务,减免了手工处理的繁琐与误差,准确快速地反映图像检索的结果,从而提高服务质量,获得更好的效益。根据市场的需求具体的目标包括:(1)对图像的变动进行处理(2)对图像进行修改(3)查询匹配功能(4)图像打印功能(5)用户管理功能其中查询匹配功能是图形检索系统的核心部分它是一个可以用多种方法实现彩色图像检索的系统,其主要的检索方法有:(1)基于直方图的查询(2)基于颜色特征的查询(3)基于区域特征的查询(4)基于内容特征的查询2.2可行性分析可行性分析11是指在允许的成本、性能要求下,分析每项需求实施的可行性,提出需求实现的相关风险,包括与其它需求的冲突,对外界因素的依赖和技术障碍。可行性分析包括操作可行性、技术可行性、经济可行性和进度可行性。下面是对图像检索系统的可行性分析。(1)操作可行性:鉴于本系统的特点,Windows友好的用户界面和本系统良好的安全性设置,可以使系统操作员和用户很好的掌握使用方法。在开发过程中,我们还尽量给操作员以方便,并且该系统简单易操作,易维护,减少了不必要的麻烦。(2)技术可行性:从目前比较流行的数据库开发、管理软件来看;对于比较简单的中小型数据库,Visual C+ 6.0和SQL的结合无疑是在实际应用中较为成功的一种解决方案。前者为用户提供了Windows所一贯坚持的非常友好、操作简单的用户界面.;后者则可对数据库实施操作、维护和权限识别功能,也可通过与语句的结合对数据库进行更为复杂的操作。对本系统而言,上述的结合方式是可行的。(3)经济可行性:本系统开发完成后可缩减工作时间,提高工作效率,而且简单易操作,不需对使用人员进行培训,不管是在资金上还是效率上都能达到预期的效果。(4)进度可行性:鉴于本系统的目标要求和特点,能够保证在预期的时间内完成该系统的研究和设计。2.3系统的功能分析图像在图像库中的检索,计算机技术的全面普及打破了人工检索的麻烦提高了管理效率的同时是管理员能够有序、全面地对图像进行管理。该系统可以完成图像的基本操作管理,如查询、修改、增加、删除以及存储等操作,迅速完成图像匹配检索,快速打印出图像。因此我们设计的菜单属性的结构图为:基本信息管理图像查询系统管理帮助图像录入直方图查询用户管理关于图像删除区域特征查询修改密码图像基本信息表颜色特征查询退出系统内容特征查询图2.1菜单项的属性 图像检索系统基本信息管理图像查询系统管理帮助图图像录入图图像删除直直方图查询区区域特征查询颜颜色特征查询内内容特征查询用用户管理修密改密码退退出系统关关于图2.2 系统的功能模块使用Windows操作系统,开发维护系统即Visual C+ 软件系统,一套数据库SQL即可。它们这间的关系如图2.3所示:数据库数据库应用程序开发人员用户用户用户图2.3简单的应用系统根据上面的需求分析,设计好数据库系统,然后开发应用程序可以考虑的窗体的系统,每一个窗体实现不同的功能,可以设计下面的几个模块图像录入:用来实现图像的载入图像删除:对于失效的图像进行删除图像查询:通过各种不同的方法实现图像查询用户管理:对于使用数据库的用户进行管理赋予不同的权限帮助:对于在应用系统中遇到的困难可以通过帮助程序来解决2.4数据库设计这里的数据库采用SQL,用ADO作为连接数据对象。2.4.1建立SQL数据库首先启动SQL Service 2000服务管理器,服务管理器界面:图2.4 SQL Service服务管理器 打开企业管理器 新建TXJSXT数据库并在数据库中新建表格Czyxxb用户表存储用户的基本信息和用户级别图2.5Czyxxb用户表2.5连接数据库在Visual C+环境下,我们采用”Microsoft ActiveX Data Objects 2.0 Library”,来进行VC和SQL数据库的连接。具体的操作过程见第五章的遇到的问题与解决方案一节。第三章 详细设计3.1界面设计:首先我们启动Visual C+软件,建立工程框架图,选择一个基本的对话框控件来设计主界面,如图所示:图3.1新建工作区间图3.2新建工作区间属性的选择创建好工程后,进入个子界面的设计,这里我们只介绍核心部分的界面设计和代码的构成,首先我们进到Resources板块中找到dialog文件夹,单击打开可以看到内部的文件,这里我们选择IDD_TXJSXT_DIALOG用鼠标左键双击,进入到TXJSXT的界面设计中,设计好的界面如图图3.3 查询页面的设计3.2代码实现3.2.1静态文本的代码在“关键图”的静态文本中主要的语句为 RefreshDisplay()表示更新结果窗口显示在“相似度和文件路径”的静态文本中主要的代码实现为CTXJSXTDlg:CTXJSXTDlg(CWnd* pParent /*=NULL*/): CDialog(CTXJSXTDlg:IDD, pParent)m_hIcon = AfxGetApp()-LoadIcon(IDR_MAINFRAME);void CTXJSXTDlg:DoDataExchange(CDataExchange* pDX)CDialog:DoDataExchange(pDX);BEGIN_MESSAGE_MAP(CTXJSXTDlg, CDialog)ON_WM_SYSCOMMAND()ON_WM_PAINT()ON_WM_QUERYDRAGICON()ON_BN_CLICKED(IDC_BUTTON1, OnButtonLoad)ON_BN_CLICKED(IDC_BUTTON2, OnOK)ON_BN_CLICKED(IDC_BUTTON3, OnCancel)ON_EN_CHANGE(IDC_EDIT1, OnSelchangeListFounded)END_MESSAGE_MAP()BOOL CTXJSXTDlg:OnInitDialog()CDialog:OnInitDialog();ASSERT(IDM_ABOUTBOX & 0xFFF0) = IDM_ABOUTBOX);ASSERT(IDM_ABOUTBOX AppendMenu(MF_SEPARATOR);pSysMenu-AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);SetIcon(m_hIcon, TRUE);/ Set big iconSetIcon(m_hIcon, FALSE);/ Set small iconreturn TRUE; / return TRUE unless you set the focus to a control3.2.2按钮的代码实现“选择关键图”按钮的名称为OnButtonLoad其代码为:HCURSOR CTXJSXTDlg:OnQueryDragIcon()return (HCURSOR) m_hIcon;void CTXJSXTDlg:OnButtonLoad() char szFilter = Bmp File (*.bmp)0*.bmp0All Files (*.*)0*.*00;/文件滤波器CFileDialog dlg(TRUE);CString strTemp;CString strTemp1;CString strNamaFile;ULONG ulJumlahRecords;int iLoopRecNo = 0;CxImage imgTemp;CxImage rfft1;CxImage ifft1;int iWidth = 256;int iHeight = 256;int iPixelSize = 1; / 1=GrayScale, 3=24bpp, 4=32bppint iBlockSize = 16;int i = iWidth/iBlockSize;int j = iHeight/iBlockSize;int iRow;int iCol;int iLoopRow;int iLoopCol;double dTemp;int iBlockNum = 0;long lVal1;BYTE *pImage;ulJumlahRecords = 0L;dlg.m_ofn.lpstrFilter = szFilter;if( dlg.DoModal() = IDOK )strNamaFile = dlg.GetPathName();m_imgLoaded.Load(strNamaFile, CXIMAGE_FORMAT_BMP);RefreshDisplay();if( !m_imgLoaded.IsValid() ) return;imgTemp.Copy(m_imgLoaded);imgTemp.Resample(iWidth, iHeight);imgTemp.FFT2(&imgTemp, &imgTemp, &rfft1, &ifft1);pImage = rfft1.GetBits();for(iRow = 0; iRow iHeight; iRow += iBlockSize)for(iCol = 0; iCol iWidth; iCol += iBlockSize )m_KeySignatureiBlockNum = 0.0;dTemp = 0.0;for(iLoopRow = 0; iLoopRow iBlockSize; iLoopRow+ )for(iLoopCol = 0; iLoopCol iBlockSize; iLoopCol+ )lVal1 = pImage(iRow+iLoopRow)*iPixelSize*iWidth) + (iCol+iLoopCol)*iPixelSize);dTemp += (double) lVal1;m_KeySignatureiBlockNum = sqrt(dTemp);iBlockNum+;dTemp = 0;for(i = 0; i 256; i+ )dTemp += m_KeySignaturei;for(i = 0; i 256; i+ )m_KeySignaturei /= dTemp;elseAfxMessageBox(Please select a BMP file!);return;开始搜索按钮名称为 OnOK 代码为:void CTXJSXTDlg:OnOK() CDirDialog dlg;dlg.m_strSelDir = C:;dlg.m_strWindowTitle = Select .JPEG File(s) Directory;dlg.m_strTitle = Browse Folder for .BMP files location;m_strExtension = *.BMP;if( dlg.DoBrowse(this) )m_strBeginPath = dlg.m_strPath;m_dwJumlahFile = 0x0;CWinThread* pThreadAsu = AfxBeginThread(SiapCariRecursive, this);退出搜索的按钮名称为 ONCancel 代码为:CDialog:OnCancel();文件编辑器的代码为:void CTXJSXTDlg:OnSelchangeListFounded() CString strTemp1;CString strTemp2;CStringArray strArr;CTokenEx t;m_ListFound.GetText(m_ListFound.GetCurSel(), strTemp1);t.Split(strTemp1, , strArr);m_imgFound.Load(strArr2, CXIMAGE_FORMAT_BMP);RefreshDisplay();3.3疑难问题的解决3.3.1如何添加ADO Data控件在本程序中多次用到ADO Data控件、DataGrid控件和DataCombo控件,在这里也遇到了一些问题,下面就具体介绍将这些控件添加到应用程序中的方法。首先在“Project”菜单下选择“Add To Project”/“Components and Controls Gallery”选项系统弹出“Components and Controls Gallery”对话框双击“Registered Active Controls”文件夹双击“Microsoft ADO Data Control6.0(sp4)(OLEDB)”单击“确定”按钮,弹出“Confirm Classes”对话框取默认值,单击“OK”按钮,返回“Components and Controls Gallery”对话框,单击“Close”按钮,ADO Data控件就添加成功了。 DataGrid控件和DataCombo控件的添加步骤和ADO Data控件基本相同,只是在添加DataGrid控件是,选择“Microsoft DataGrid Control6.0(SP5)(OLEDB)”选项,在添加DataCombo控件是,选择“Microsoft DataCombo Control,Version6.0(OLEDB)”选项。3.3.2 DataGrid控件的应用在DataGrid控件使用的同时,可以在控件上直接添加和修改表中的数据,但是在查询中一般不可以修改表中的数据,所以要将DataGrid控件对表的操作禁用,需要在“All”选项卡中进行设置,其中“AllowAddNew”是添加,“AllowArrows”是字段名,“AllowDelete”是删除,“AllowUpdata”是修改,可以根据需要自行设置。第四章 系统的实现与论文的完成目前软件测试仍然是保证软件可靠性的主要手段。测试阶段的根本任务是发现并改正软件中的错误。本系统的实验过程中在调试上可谓是费了很大的功夫,有时候是增加了新的代码而原来的系统没有进行备份,要在恢复原来的系统可真是犯了愁,为此,在这方面我也吃了不少亏。在软件工程课上老师也介绍了一些让我们工作顺利的知识,其中软件测试是软件开发过程中最艰巨最繁重的任务,本系统的测试主要分为单元测试、集成测试和验收测试三个基本的阶段。在测试过程中发现的软件的错误要及时改正,这就是调试的任务。为了改正错误,首先必须确定错误的准确位置,这是调试中最困难的工作,这需要审慎周密的思考和推理。测试和调试是软件测试阶段中的两个非常密切的过程,他们往往交替进行。4.1 编码程序设计语言是人和计算机通信的最基本的工具,他的特点必然会影响人的思维和解题方式,会影响人和计算机通信的方式和质量,也会影响其他人阅读和理解程序的难易程度。因此,编码之前最重要的一项工作就是选择合适的程序设计语言,本系统的设计选择的是VC+程序设计语言,其主要的原因就是它的功能强大并且能够很好的和SQL数据库进行连接。为了是源代码的逻辑简明清晰,易读易懂在编码的时候应该尽量的遵守程序的内部文档要包括恰当的标识符和适当的注解,如果用缩写则缩写的规则应该一致;数据说明的次序应该标准化,比如按照数据结构和数据类型确定的次序;语句构造应该间接而直接,不能为了提高效率而使用过于复杂的语句。4.2测试单元测试集中检测设计的最小单元模块。单元测试时可以采用人工测试和计算机测试两种不同的测试方法。对于具体的测试过程此处不再详细介绍。集成测试是测试和组装软件的系统化技术,例如,子系统测试就是将各个模块窗体连接起来一起进行测试,主要的目标就是发现与接口有关的问题。例如,数据穿过接口时可能丢失;一个模块对另一个模块的疏忽而造成有害的影响等这些错误都应小心的注意才行。验收测试则是系统的所以程序模块连接好之后所进行的总体的测试。本系统在这个方面的测试则是一个败笔,我也在这里浪费了很多时间,让我的信心受到一次一次的打击。4.3索引的建立本论文的格式设计完全按照学院的格式要求进行配置,在目录和索引的建立方面则采用了Windows2003提供的目录和索引功能来实现,首先,在“格式”菜单下的“格式与样式”命令中调出“格式与样式”的任务窗格,再按照论文格式的要求修Microsoft Office Word自带的标题一、标题二、标题三和正文的格式,对文章进行格式的修改和设计,最后在论文的合适位置插入索引,具体的步骤是:“插入”|“引用”|“目录和索引”在弹出的对话框中的目录选项卡中选择合适的目录显示级数和制表符前导符的格式,单击确定按钮,即可插入理想的目录和索引。第五章 总结和展望5.1课题研究总结本课题验证了基于内容的多种方法的图像检索系统的实现,整个过程是一个逐步逼近的过程。基于内容的图像检索系统应具有很强的交互能力,是现在信息社会下人们检索图像信息的必要途径,它是图像数据库的一个重要的方面。课题的研究追索前人研究的成果进行学习。目前,世界各国的相关研究人员沿着基于内容的图像检索研究方向也已成功的开发出许多带有商业性质或者研究性质的CBIR系统,相信它会继续得到发展和改进。5.2存在的问题及个人解决方法在本系统的设计实现中遇到的主要困难就是连接数据库,针对这个问题我查了很多参考书也请教了一些这方面学的比较好的同学找到了解决的方法12在用程序代码实现调用数据库之前,我们首先应该在Windows的ODBC数据源管理器中注册数据库TXJSXT。具体步骤如下。(1) 选择“开始”|“程序”|“管理工具”|“数据源(ODBC)”命令,打开Windows系统提供的ODBC数据源管理器,在对话框内选择“用户DNS”栏,然后单击“添加”按钮,出现“创建新数据源”对话框。(2) 在“创建新数据源”对话框中,在列表中选择用户为其安装数据源的驱动程序为SQL Server。然后单击“完成”按钮。(3) 系统会显示“Microsoft ODBC SQL Server DNS配置”向导,在向导中,将数据源名称填写为“TXJSXT”,服务器应选择当前所使用的SQL Server服务器名称。填写完毕后,单击“下一步”按钮(4) 向导会要求用户选择SQL Server验证方式,填写登陆ID和密码。然后,单击“下一步”按钮。(5) 向导会提示更改默认的数据库,这里我们应该选择图像检索系统的数据库名称TXJSXT。然后,单击“下一步”按钮(6) 其他设置保持系统默认,然后单击“完成”按钮。在系统中注册数据库TXJSXT完毕后,我们就可以在程序中连接数据库了。 参考文献:1李向阳,庄越挺,潘云鹤.基于内容的图像检索技术与系统J.计算机研究与发展,2001,38(3):347-3522熊回香.Internet上的图像信息检索技术J.情报学报,2005,24(2):222-227.3M Flickner,HSawhney,WNiblack.Query by image and video content: the QBIC systemJ.IEEE Computer, 1995 ,28(9):23-324何清法,李国杰.综合分块主色和相关反馈技术的图像检索方法.计算机辅助设计与图形学学报2001年10期:912-917.5李向阳,庄越挺,潘云鹤.基于内容的图像检索技术与系统.计算机研究与发展,2001.3:344-354.6swainMJ,BallardDH.ColorIndex.InternationalJournalofComPuterVision,1991,7(1):11-32.7洪安祥.基于内容的图像检索若干论题研究.博士学位论文,浙江大学,2003.8李向阳,鲁东明,潘云鹤.基于色彩的图像数据库检索方法的研究.计算机研究与发展,1999,36(3):359-3639顾燕.基于内容的图像检索方法及其实验系统设计.河海大学硕士论文,2002,310李凤云,郭全花.基于内容图像检索中的颜色分析和检索技术J.河北建筑工程学院学报,2004,22(2):106-110.11张海藩.软件工程导论(第五版).北京:清华大学出版社,2008.2ISBN 978-16478-4.12刘大玮,马传宝,孙颖洁.SQL Server数据库项目案例导航.北京:清华大学出版社,2005.7 ISBN 7-302-11115-4
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸下载 > CAD图纸下载


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!