基于分布式的直方图检索方法研究及实现
程秀峰1, 祝颂2, 夏立新1
1 华中师范大学信息管理系 武汉 430079
2 中南民族大学计算与实验中心 武汉 430074
摘要

基于内容的图像检索在检索效率和检索性能等方面一直存在着限制与不足。为提高图像检索效率,对基于内容的图像检索和分布式计算进行研究,提出一种基于图像颜色模型向直方图转换的分布式检索方法DHCIR (Distributed Image Retrieval method based on Color Model to Histogram Conversion),并基于该方法进行系统设计及实现。通过实际测试,该算法能够提供稳定、快速、高效的图像检索服务,提高图像检索的计算效率与准确性。

关键词: 直方图; 颜色模型; 基于内容; 图像检索; 分布式
中图分类号:G354
Design and Application of Distributed Image Retrieval Based on Color Model to Histogram Conversion
Cheng Xiufeng1, Zhu Song2, Xia Lixin1
1Department of Information Management, Huazhong Normal University, Wuhan 430079,China
2Center of Computing & Experimenting,South-Central University for Nationalities, Wuhan 430074,China
Abstract

The retrieval efficiency and the retrieval capability are considered as two major problems existing in CBIR systems. In order to improve the retrieval efficiency,the authors present a new CBIR application based on large databases in distributed environment using DHCIR (Distributed Image Retrieval method based on Color Model to Histogram Conversion) algorithm by reviewing past researches in CBIR and distributed computing. A new image retrieval system using this method is also developed. The test results show this application can provide stable, fast and efficient image retrieval functions to improve the retrieval speed and accuracy.

Keyword: Histogram; Color space; Content-based; Image retrieval; Distribution
1 引 言

随着互联网技术日益发展,基于内容的图像检索 (Content Based Image Retrieval, CBIR)[ 1]已成为信息检索的研究热点。基于内容的图像检索的目的是能让用户根据图像的颜色、像素、灰度、纹理以及几何形状等特征描述信息匹配近似图像, 与传统的基于文本的图像检索技术(Text-Based Image Retrieval,TBIR)[ 2]所不同的是它利用了图像本身的视觉特征和上下文联系进行图像检索。在情报学领域,需要考虑基于图形图像的情报检索功能与其应用效果,并利用已有的方法和技术提高待检索图形图像的对比分析能力。

颜色直方图模型具有执行效率高、图像特征反映明显的优势。利用直方图模型的这种优势,将其与某种任务分配机制结合,发展出能够对图像进行高效检索的算法模型并加以实现是CBIR应用研究领域的一个重要方向。分布式技术是一种检索任务分布机制。将其与图形图像检索进行结合,比单一提高图像检索算法效率本身有效。通过分布式技术,可以在科学研究与实际工作中大幅提高图形图像检索效率。将上述两种成熟稳定的方法进行结合,能够更好地提高图形图像检索效率,并能将其广泛应用于实际情报搜集比对工作中,这对情报学领域内的图形图像信息检索研究具有实践意义。

与现有的CBIR的其他算法比较,直方图模型具有对图像尺寸、形状、视角依赖性小等特点,十分适合在分布式环境下对图像进行匹配检索。本文基于传统直方图模型,将图像的颜色特征转化为描述特征的颜色直方图,并与分布式网络技术结合,设计了一套基于图像颜色模型向直方图转换的分布式检索方法DHCIR,并实现了该检索系统。

2 相关研究概况

CBIR面临的问题主要在于计算性能和检索效率的限制,这导致很多检索系统在实际应用中无法充分发挥图像检索算法的优势。国外研究者在解决这些问题方面做了大量实践工作,最早成功应用基于内容的图像检索技术的是IBM的QBIC[ 3]系统。此外,比较著名的系统还包括伊利诺伊大学香槟分校(University of Illinois at Urbana-Champaign,UIUC)的MARS[ 4]系统、麻省理工学院(Massachusetts Institute of Technology,MIT)的Photobook[ 5]系统、加州大学伯克利分校(University of California,Berkeley)的Digital Library Project[ 6],以及哥伦比亚大学(Columbia University)的VisualSeek[ 7]等。目前国内外对于CBIR的研究方向逐渐由特定环境下的小型数据库图像检索向基于Web和分布式的大型关系型数据库系统以及视频检索[ 8]、3D图像检索[ 9]等转变。

自从颜色直方图在20世纪90年代由Swain等[ 10]提出以来,颜色直方图模型不仅成为信息检索领域的重要工具,而且由于其描述图像颜色等特征的准确性高、执行高效等特点已经成为在现代分子物理[ 11]、医学医药[ 12]、商业图像识别[ 13]等众多领域广泛应用的典型模型。将直方图用于图像检索理论研究方面,一些新的算法也被提出,例如Han等提出的用于图像检索扩展颜色直方图模型[ 14],Park等对直方图模型进行改进,提出了一套利用直方图进行图像内容检索的方法[ 15], Lin等提出的基于空间分布的直方图检索CPM方法[ 16]。Mejdoub等提出了嵌入式网格树(Embedded Lattices Tree)方法分析直方图的检索性能[ 17]。Liu等提出的MultiTexton直方图模型[ 18],Brunelli等总结了利用直方图进行低维图像检索的特征,并提出一种新的直方图容量曲线来反映直方图的密度分布函数[ 19]

3 直方图以及各颜色模型向直方图模型的转换

直方图模型的基础是灰度变换。把一幅图像的中每个像素的灰度值设定在一定灰度空间[0, n-1]中,则可以根据分布在不同灰度空间中的像素个数得出一个1×N矩阵,从而得出描述图像像素灰度分布的直方图。从概率的观点来理解,灰度出现的频率可看作其出现的概率,这样直方图就对应于概率密度函数(Probability Density Function,PDF),而概率分布函数就是直方图的累积和,即概率密度函数的积分,若直接从代表每种灰度的像素数目的直方图来观察,常用图1来表示:

图1 灰度直方图的表示

依据这样的方法,将图像按不同颜色模型的向量值在各基色轴上的分布在三维数轴上标出,即可得出颜色空间分布情况,如式(1)[ 20]计算了一种颜色向量在数轴上的分布情况。

H(k)= ,k=0,1…L-1 (1)

其中,k表示图像的特征值,L是特征可取值个数,nk是图像中具有特征值为k的像素个数,N是像素总数。

由于单个颜色模式不能较好地代表图像的颜色特征,因此采用了RGB, YIQ, CMY, HSI这4种颜色综合处理的方法, 如果一种颜色模型不能有效反映图像的相似性, 则可以用另外三种颜色模型进行比对,综合得出最优结果。式(2)至(4)[ 21]分别描述了CMY模型、YIQ模型、HSI模型与RGB模型之间的关系和转换方法。

= - (2)

= (3)

H=

B>G

S=MAX(R,G,B)-MIN(R,G,B), I=(4)

4 直方图之间相似度的计算和分布式图像检索算法
4.1 直方图之间相似度的计算

DHCIR方法包括图像直方图相似度描述算法和分布式图像检索算法两部分。直方图相似度描述算法的基本思想是将图像的颜色特征用直方图表示,图像上每个像素在各原色轴上的数值作为直方图的参数,将这些衡量一幅图像的颜色特征的值进行比较得出图像相似度[ 22]。用颜色直方图的方式转化图像,所需的计算量相对于图像纹理和形状描述要少,算法执行的效率和可靠性相对较高。对于直方图的相似性度量,笔者在服务器端部署了一个服务器组群来计算客户端传来的直方图比值,匹配查询图像,得到两幅图像的相似度。 笔者提出,两幅直方图的相似度遵循如下定义:如果H1和H2是1×N的直方图矩阵,H1和H2的相似性值可以描述为(H1-H2TM(H1-H2)的形式:

Mij=

其中,M是N×N的相似矩阵,Dij是颜色i和j的对比度,Dmax是Dij对于任意i, j的最大值。

4.2 分布式图像检索算法

分布式计算一直是检索领域提高计算性能和检索效率的主要方法之一,它能够根据计算机集群中机器的性能,将大量的计算图像直方图差异的任务分配给集群中合适的机器进行处理,并将处理结果进行收集、对比、排序[ 23]。笔者提出的算法及定义描述如下:

定义1:P指数据库中可检索的全体图像集合,Pi是第i-1张图像。H是图像的直方图集合,Hi是第i-1张图像的直方图。 H是与P的一一映射Pi↔Hi,分别表示Pi经F(Pi)转换后的直方图参数, C是待检索的图像序列。

定义2:Q是服务器IP集合,例如 →{221.198.0.1…221.198.0.255},R和S分别为正在使用的服务器和闲置的服务器,R∪S≡Q,(Ri,Sj)∈Q,当服务器都处于空闲状态(初始状态)时,R=φ(i=0), Q=S,Qj=Sm(m=0…i+j)。

定义3:序列M(i,t)是处理任务序列,其中i是定义1中H的第i个元素;t是定义2中S的第t个元素。

当待检索图像序列C的第k(k≠0)张图像Ck∈C(k=1…ζ)对数据库中可检索的全体图像集合P进行检索查询时,HCDC算法开始执行,具体步骤如下:

(1)对于查询图像Ck, H的元素一次加入M, = H0,Hi⇒M。

(2)查找S中CPU占用率最小的St,将任务分配到St上,St的选择如下[ 24]

ST.time=(5)

其中,IT表示CPU空闲时间,UT表示CPU使用时间,KT表示内核使用时间,PCT为空闲时间, PCTT为CPU总使用时间。

(3) =

(4)释放 , 累加k和i。

(5)循环步骤(1)至步骤(4),M即变成了和Ck最为接近的H排列。

(6)此时R=S,Q=φ,查询完成并返回M。

5 系统设计

该系统采用C/S架构,使用Java语言进行跨平台系统开发,采用Oracle 10g关系型数据库进行图像与直方图存取。

5.1 功能设计

为了在系统中实现全面的图像检索功能,不仅需要针对图像的颜色空间进行检索,必要的时候也需要对图像的标签进行文档检索,另外需要对用户的上传和下载权限进行设置,如图2所示:

图2 系统的功能流程设计

图2可以看出,用户注册登录后可以选择采用关键字和直方图两种方式进行检索。如果采用直方图进行检索,则可以选择先上传或者下载图像,然后在上传或者下载的图像中选择一幅图像进行相似性检索,也可以先用图像标签进行关键字查询,根据用户自身需要,选择结果集中的某一幅图像进行相似性检索。这样做的目的是要充分考虑到用户的使用习惯,实现个性化查询。

5.2 系统结构与数据库设计

在该系统中,首先输入需要进行检索的图像,通过直方图计算模块对图像的RGB、YIQ、CMY、HSI颜色模型进行计算,并向分布式计算模块提交图像匹配查询指令与待匹配目标图像的各颜色直方图。分布式计算模块根据提交的匹配查询指令,通过图像查询模块对数据库中待检索的图像数量进行计算,形成与待检索图像数量相同的计算任务,并将计算任务根据计算机集群中机器的数量、性能、工作状态等信息,按照分布式图像检索算法进行分配。被分配了任务的机器将从分布式计算模块中取得待匹配目标图像的各颜色直方图,并根据分配的任务,先通过图像查询模块对数据库中图像的各颜色直方图进行查询,再利用直方图对比模块对目标图像的直方图和数据库中图像直方图进行匹配计算。待匹配计算完成后,直方图对比模块将计算结果返回给分布式计算模块。分布式计算模块对所有收回的结果进行图像相似度排序处理,将排序后的序列返回给图像查询模块。图像查询模块根据收到的排序后的计算结果,从数据库中提取对应的图像信息,并将图像按照相似度进行输出。系统结构与数据库设计如图3所示:

图3 系统结构与数据库设计

图像存储设计中,每一个图像都具有一个RGB、YIQ、CMY、HSI颜色信息,以数组的形式存储在Oracle数据库中, 图像以原始文件的形式存储在硬件磁盘介质中,存储地址以字符串的形式存储在Oracle数据库中。

5.3 系统架构

客户端上部署直方图计算模块、图像查询模块和分布式计算模块,集群服务器中的每台机器上部署图像查询模块、直方图对比模块,客户端与集群中的机器通过RMI远程服务调用的方式进行通信。系统架构设计如图4所示:

图4 系统架构设计

采用这种结构进行系统设计,能够充分发挥分布式计算的优势,减轻客户端进行图像对比的计算工作压力,利用服务器集群提高图像匹配检索效率。同时,Oracle数据库能够支持多用户并发连接,具有较高的存取效率,适合存取图像直方图信息。

6 性能测试

本系统测试分为上传/下载测试、图像检索效率对比测试和网络环境下分布式检索测试。测试的目的主要是考察算法的性能、执行效率和网络负载能力等。

(1)图像上传/下载测试

在该测试中,选取9张图像分别做了3组上传和下载测试。经实验发现,上传速度很大程度上取决于客户端的硬件水平。实验的客户端硬件配置为Intel(R) Pentium(R) 4, 主频3.0 GHz,内存1GB, 操作系统Windows XP, 显卡256MB。所测得的上传/下载时间与图像大小关系如图5所示:

图5 系统上传/下载速率测试

可以看出,上传和下载速率对于1MB以内的图像都是比较稳定的,随着图像大小的增加,上传/下载时间在1MB左右显著增加。需要说明的是,图像的传输效率还受图像的像素、压缩方式等因素影响,但是由于和反应速度最相关的仍是图片的大小,所以这里只对图像大小和速度的关系进行测试。

(2)图像检索效率对比测试

在分布式环境下,基于图像标签的关键字检索比直方图检索方式在理论上更有效率,但是图像标签并不能完全反映图像内容,有时图像标签的内容与图像内容完全不相关。为客观评估两种方法对于4种颜色模型的效率,分别选取5组数据,每组2 000张图片进行测试。5组图像运用两种检索方法在多服务器测试环境中的检索时间,如图6所示。

图6 图像检索时间对比测试

图6可以看出,基于图像标签的关键字检索在检索效率上确实比直方图检索更为高效, 该方法在短时间内检索出大量图像, 比直方图检索更具优势。将单机环境下使用两种检索方法所得到的结果数量在表1中进行比对,得到的结论是关键字检索结果少于直方图检索结果,这说明在检全率上直方图检索比关键字检索效率更高。这是因为图像的颜色相似性比关键字相似性覆盖面更大。同时可以看出,随着服务器的数量增加,相应检索时间恒定在3.5秒左右,这是因为系统负载的原因。

表1 检索结果(图像数量)对比

(3)网络环境下分布式检索测试

在测试中,笔者发现在服务器集群中部署适当数量的服务器明显有助于增加检索性能,缩短检索时间。但是部署更多服务器对于提高检索能力的作用有限。随着服务器数量的增加,检索时间将会恒定在一定范围内。网络环境下分布式检索测试如图7所示。

图7 网络环境下分布式检索测试

图7显示了远程连接时间与部署服务器数量之间的关系,可以发现,仅仅增加服务器数量并不能永远减少检索时间, 这是因为分布式计算采用了远程方法调用RMI, 每次计算任务分配需要连接集群中各个服务器,服务器数量增多,连接时间加大,在图像较少的情况下,网络连接时间会比直方图对比计算时间更长。 所以,随着服务器数量的增加,客户端需要建立长时间的远程连接,从而消耗了时间。虽然服务器数量有助于计算性能的提升,但是连接时间的增加实际上消耗了检索时间。经验证,8-10台服务器组成的服务器集群在本系统检索效率和成本上是最优的。

(4)实际应用效果

该系统在分布式环境下运行状况良好。如图8所示,系统显示了YIQ颜色模式下检索一张图像后的检索结果。

图8 分布式的直方图检索

7 结 语

本文提出了一种基于图像颜色模型向直方图转换的分布式检索方法DHCIR,建立了一个基于颜色分析的分布式图像检索系统,它既可以采用4种颜色的直方图模型作为检索方法,也具有关键词查询功能。笔者将DHCIR算法和关键词查询进行结果比对分析, 并通过实际测试得出了系统的检索效率和客户端连接时间,解释了检索性能和连接时间之间的矛盾而产生检索瓶颈的原因。CBIR在最近10年中一直是十分重要的研究领域,其研究的目的是提高检索效率和检索精度。目前分布式图像检索研究的发展趋势有:分布式算法的研究和对于图像几何形状的分析,后者的重要性是显而易见的。因此,基于图像几何形状的检索和如何突破服务器数量和连接时间的瓶颈是今后研究的目标。

The authors have declared that no competing interests exist.

作者已声明无竞争性利益关系。

参考文献
[1] Eakins J, Graham M. Content-based Image Retrieval[R]. JISC Technology Applications Programme Report, 1999. [本文引用:1]
[2] Salton G, Buckley C. Term Weighting Approaches in Automatic Text Retrieval[J]. Information Processing and Management, 1988, 24(5): 513-523. [本文引用:1] [JCR: 0.817]
[3] Arkin E M, Chew L P, Huttenlocher D P, et al. An Efficiently Computable Metric for Comparing Polygonal Shapes[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence Archive, 1991, 13(3): 209-216. [本文引用:1]
[4] Huang T S, Mehratra S, Ramchand ran K. Multimedia Analysis and Retrieval System (MARS) Project[J]. Journal of VLSI Signal Processing, 1998, 20(1-2): 137-150. [本文引用:1] [JCR: 0.732]
[5] Pentland A, Picard R W, Sclaroff S. Photobook: Content-based Manipulation of Image Databases[J]. International Journal of Computer Vision, 1996, 18(3): 233-254. [本文引用:1] [JCR: 3.623]
[6] Wilensky R. The UC Berkeley Digital Library Project: Re-thinking Scholarly Information Dissemination and Use[C]. In: Proceedings of the 3rd European Conference on Research and Advanced Technology for Digital Libraries. 1999: 853-854. [本文引用:1]
[7] Smith J R, Chang S F. VisualSeek: A Fully Automated Content-based Image Query System[C]. In: Proceedings of the 4th ACM International Conference on Multimedia. 1996: 87-98. [本文引用:1]
[8] Yu C C, Jou F D, Lee C C, et al. Efficient Multi-resolution Histogram Matching for Fast Image/Video Retrieval[J]. Pattern Recognition Letters, 2008, 29(13): 1858-1867. [本文引用:1] [JCR: 1.266]
[9] Pan X, You Q, Liu Z, et al. 3D Shape Retrieval by Poisson Histogram[J]. Pattern Recognition Letters, 2011, 32(3): 787-794. [本文引用:1] [JCR: 1.266]
[10] Swain M J, Ballard D H. Color Indexing[J]. International Journal of Computer Vision, 1991, 7(1): 11-32. [本文引用:1] [JCR: 3.623]
[11] Levine B G, Stone J E, Kohlmeyer A. Fast Analysis of Molecular Dynamics Trajectories with Graphics Processing Units—Radial Distribution Function Histogramming[J]. Journal of Computational Physics, 2011, 230(9): 3556-3569. [本文引用:1] [JCR: 2.138]
[12] Quellec G, Lamard M, Cazuguel G, et al. Wavelet Optimization for Content-based Image Retrieval in Medical Databases Original Research Article[J]. Medical Image Analysis, 2010, 14(2): 227-241. [本文引用:1] [JCR: 4.087]
[13] Phan R, Androutsos D. Content-based Retrieval of Logo and Trademarks in Unconstrained Color Image Databases Using Color Edge Gradient Co-occurrence Histograms[J]. Computer Vision and Image Understand ing, 2010, 114(1): 66-84. [本文引用:1] [JCR: 1.232]
[14] Han J, Ma K K. Fuzzy Color Histogram and Its Use in Color Image Retrieval[J]. IEEE Transactions on Image Processing, 2002, 11(8): 944-952. [本文引用:1] [JCR: 3.199]
[15] Park J, An Y, Kang G, et al. Defining a New Feature Set for Content-Based Image Analysis Using Histogram Refinement[J]. International Journal of Imaging Systems and Technology, 2008, 18(2-3): 86-93. [本文引用:1] [JCR: 0.639]
[16] Lin S D, Chen K, Yang X. Image Indexing by Color Plane Moment[J]. International Journal of Imaging Systems and Technology, 2002, 12(4): 139-148. [本文引用:1] [JCR: 0.639]
[17] Mejdoub M, Fonteles L, BenAmar C, et al. Embedded Lattices Tree: An Efficient Indexing Scheme for Content Based Retrieval on Image Databases[J]. Journal of Visual Communication and Image Representation, 2009, 20(2): 145-156. [本文引用:1] [JCR: 1.195]
[18] Liu G H, Zhang L, Hou Y K, et al. Image Retrieval Based on Multi-text on Histogram[J]. Pattern Recognition, 2010, 43(7): 2380-2389. [本文引用:1] [JCR: 2.632]
[19] Brunelli R, Mich O. Histograms Analysis for Image Retrieval[J]. Pattern Recognition, 2001, 34(8): 1625-1637. [本文引用:1] [JCR: 2.632]
[20] Efford N. Digital Image Processing: A Practical Introduction Using Java[M]. New Jersey: Addison Wesley, 2000. [本文引用:1]
[21] Cowlishaw M F. Fundamental Requirements for Picture Presentation[J]. Proceedings of the Society for Information Display, 1985, 26(2): 101-107. [本文引用:1]
[22] Strelkov V V. A New Similarity Measure for Histogram Comparison and Its Application[J]. Pattern Recognition Letters, 2008, 29(13): 1768-1774. [本文引用:1] [JCR: 1.266]
[23] 何楚, 王思贤, 廖孟扬. 基于内容的图像搜索的算法模型与分布式方案[J] . 小型微型计算机系统, 2002, 23(5): 544-547. [本文引用:1]
[24] Stallings W. Computer Organization and Architecture: Designing for Performance[M]. Columbus, Ohio: Prentice Hall, 2006. [本文引用:1]