面向.NET的SVG图形查询系统的设计

2022-09-11

随着Internet技术的普及和发展, 图形图像技术作为Web浏览技术的基础, 发挥着至关重要的作用, 但是, 目前的Internet技术在图形图像方面, 应该说还处在年轻阶段。随着应用的逐渐深入, 图像技术自身的一些缺点, 如文件较大、在不同设备上的查询并显示效果不一样等问题日益突一出。正是在这种局面下, SVG应运而生。

1 SVG图形查询系统的分析

1.1 SVG的概念界定及内涵

SVG是一种使用XML来描述二维图像的语言。它允许3种形式的图像对象存在:矢量图形、点阵图像和文本。各种图像对象能够组合、变换, 并且修改其样式, 也能够定义成预处理对象。文本是XML名字空间中的有效字符, 这些字符能被作为SVG图像的关键字而存留在搜索引擎中。下面的代码是一个通常的独立SVG文件的头部标识:

其中, 建立了"本文件基于XML 1.0, 编码方式是iso-8859-1"的基本信息[1]。

1.2 系统的需求分析

基于SVG图形查询系统结合了基于图像内容的检索和基于图像特征的检索, 其搜索的实现是建立在一套规范的SVG标准之上。在本系统中对SVG图像的搜索通过两种方式实现:快速查询和特征查询。

特征查询要比快速查询准确地多。但是有一个很重要的原因, 限制了我们完全采用这种方法, 这个原因就是上面提到的查询速度。如何在速度和准确度取得一个平衡点, 这就是设计查询系统时地第一个问题。如何在确保一定准确度的前提下, 尽量的提高访问速度?采用快速查询和特征查询相辅相成, 在很大程度上缓和了速度和准确度的矛盾。在一般情况下, 使用者可以通过快速查询迅速的得到查询结果;在有特殊条件时或者高要求的准确度时, 采用特征查询。

2 SVG图形查询系统的设计

2.1 SVG图形特征提取的设计

由于本文研究的SVG查询系统要对所有的SVG图形像特定的元素或属性进行提取, SVG图形查询系统特征提取的好坏, 将直接影响到SVG图形查询系统的性能, 直接关系到整个系统的查询准确度、查询效果和查询效率。本文研究的SVG图形查询系统对于特征提取技术的基本要求快速准确, 特征选取时主要考虑了下列四项原则:图像的区分能力:特征的意义直观, 区分能力强;图像的描述能力:一次查询中能检索到的最大图像数 (无关图像的排除能力) ;特征计算复杂度;特征的存储空间需求[2]。

对于复杂对象的特征提取操作, 本文实现的方法是首先将复杂对象结构化为简单对象, 然后通过对简单对象 (即六种基本形状) 的提取来完成。一般来说, 对于SVG的六种基本形状的提取工作可以通过对应的元素标记进行提取, 但是在SVG中存在着path路径元素这种描述复杂形状的情况就无法通过提取元素内容来描述。由于提取出的path路径元素中的坐标序列无法用于图形查询的形状特征表示, 本文使用path坐标序列中相邻坐标描述的相互连接线之间存在的角度序列来描述形状特征;并根据path坐标序列中相邻坐标计算欧氏距离形成的距离序列来描述形状特征。

2.2 SVG图形存储的设计

本文研究的S V G图形查询系统所涉及到的三类容器信息都是对自身包含的容器或图元的描述, 而非系统领域内的业务描述, 所以在描述容器类的数据时, 直接采用在容器对象节点插入属性的方式来进行设计, 而不使用MetaData来对其信息进行描述。使用SVG元素对三类容器的简单设计示例如下所示:

2.3 SVG图形发布交互的设计

本文研究的SVG图形发布交互则采用的是异步交互的方式来处理客户端的数据请求和服务端的数据响应, 客户端向服务端发出数据请求后, 并不是一直等待服务端的响应, 而是继续其它工作, 当服务端处理完数据后, 将数据返回给客户端, 客户端收到数据后, 然后对数据进行处理, 然后在更新浏览器中页面的显示内容。本文研究的SVG图形发布交互框架如图1所示。

送至数据服务端后, 服务端首先加载用户所访问图形的动态数据描述文件, 即相应的X M L文件, 然后服务端根据X M L文件中的描述信息向系统中的实时数据服务、历史数据服务等来获取相应的数据, 然后数据服务段将获取到的数据回传至Web客户端。Web客户端受到数据响应后, 然后对相应的数据进行解析, 然后根据数据内容来更新SVG图形中的图元显示状态。

3 结语

总之, S V G在本质上是X M L的一个应用, 它与当前已有的和未来将有的其它XML应用之间存在着天然的交融, 从而使这些前程远大的技术和应用之间的协作变得十分简单。此外, SVG基于纯文本的特性, 使它具备了像文字信息一样的可检索性, 从而将使人们对Web图形检索的梦想成为现实。

摘要:本文在明确SVG内涵以及系统需求的基础上, 详细设计了面向.NET环境的SVG图形查询系统, 主要涉及到:SVG图形的特征提取、存储以及发布交互等。

关键词:SVG图形,查询系统,XML

参考文献

[1] 刘啸, 毕咏年.基于XML的SVG应用指南[M].北京科海集团公司, 2006.

[2] (美) Bill Trippe、Kate Binder[著].高伟, 英宇[译].SVG设计:在下一代Web站点中使用可缩放矢量图形[M].北京:机械工业出版社, 2007.

上一篇:中药颗粒剂辅料的应用与发展探析下一篇:浅谈如何培养低年级学生的写话能力