Hadoop分布式的海量图像检索

2018-05-05 05:42王立陈军峰
现代电子技术 2018年9期
关键词:数据挖掘检索

王立 陈军峰

摘 要: 传统基于内容的图像检索方法通过相似度测量算法获取检索结果,对海量图像存在检索效率低和精度差的弊端,因此设计基于Hadoop分布式的海量图像检索方法,其基于Hadoop云平台对海量数码图像实施分布式运算,采集图像SURF特征,采用K?Means聚类方法将相似图像SURF特征聚集起来,通过TF?IDF数据挖掘技术对图像特征实施量化,进而基于Hadoop平台中的Lucene框架塑造海量图像数据的索引模块和搜索模块,依据用户输入的图像SURF特征塑造海量图像数据索引,完成相似图像的准确检索。实验结果说明,所提图像检索方法检索出的图像质量佳,对海量图像进行检索的效率和精度高。

关键词: Hadoop分布式; 海量图像; SURF特征; K?Means聚类; 检索; 数据挖掘

中图分类号: TN911.73?34; TP391 文献标识码: A 文章编号: 1004?373X(2018)09?0062?06

Abstract: The traditional content based image retrieval method obtains the retrieval results by means of similarity measurement algorithm, which has the disadvantages of poor retrieval accuracy and low retrieval efficiency for massive image. Therefore, a massive image retrieval method based on Hadoop distribution was designed to implement the distributed computing for massive digital image on the basis of its Hadoop cloud platform. The image SURF feature is acquired. And then the K?Means clustering method is used to assemble the SURF feature of similar images together. The TF?IDF data mining technology is used to quantify the image features, and then the index module and search module of massive image data are constructed on the basis of Lucene framework in Hadoop platform. According to the image SURF feature of user input, the data index of massive image was constructed to retrieve the similar images accurately. The experimental results show that the image retrieval method has high retrieval image quality, and high retrieval efficiency and accuracy of massive image.

Keywords: Hadoop distribution; massive image; SURF feature; K?Means clustering; retrieval; data mining

0 引 言

由于当前移动互联网的不断发展和网络服务应用领域的逐渐扩展,产生的用户数据量也不断增长。图像拥有详细、直观的属性,是重要的多媒体数据载体。图像检索方法能够从海量图像数据内采集同目标图像相似度最高的特征以及内容的图像,为用户检索到满足自身兴趣度的图像。随着图像数据量的提升,海量数据的图像检索问题成为相关学者研究的热点。传统基于内容的图像检索方法,通过相似度测量算法获取检索结果,对海量图像数据处理能力差,存在图像检索效率低和精度差的弊端。

面对该问题,本文提出基于Hadoop分布式的海量图像检索方法,提高海量图像检索的效率和精度,增强图像检索质量。

1 Hadoop分布式的海量图像检索

1.1 图像检索的整体框架设计

本文设计的基于Hadoop分布式海量图像检索框架能够对海量的图像进行检索。以往的方法对海量图像的检索任务计算量大且检索时间长[1]。本文设计的基于Hadoop分布式的图像检索框架包括以下模块:

1) 用户与计算机交互模块:其功能是确保计算机接收用户要检索的图像,并对其进行计算机处理,将查询结果返回用户。

2) 图像特征向量提取模块:在Hadoop分布式平台上,将SURF和K?Means算法相结合,进而对海量的图像特征值实施提取。

3) 图像特征聚类及特征量化:采用K?Means聚类算法对图像的特征进行聚类操作,再通过TF?IDF数据挖掘技术对图像特征实施量化处理。

4) 塑造海量图像分布式索引模块以及搜索模块:基于Hadoop平台中的Lucene框架塑造海量图像数据的索引模块和搜索模块,基于用户输入的图像SURF特征塑造海量图像数据索引并完成相似图像的准确检索。

5) 用户图像检索:用户输入需检索图像,计算机获取图像SURF特征和特征量化结果[2],通过分布式索引模块和分布式搜索模块获取准确相似图像搜索结果。

本文图像检索框架首先利用SURF算法对图像的特征向量进行提取,对特征向量进行K?Means聚类得到统一的特征向量,接着采用TF?IDF数据挖掘技术对特征向量实施量化[3]。用户输入图像,提取特征向量并对其进行聚类得到统一特征向量,通过分布式索引模块和分布式搜索模块基于图像特征向量获取准确图像检索结果,详细的图像检索流程图用图1描述。

1.2 图像SURF特征提取

SURF特征提取是在空间尺度中搜索极值点,以此来描绘图像尺度不变的局部特征,局部特征越明显越能描绘图像。因为SURF具有较强的鲁棒性和对光线感知不明显等特征,多被用于进行物体识别和3D模型建立。图像在尺度空间中处理图像信息时,采用尺度参数来描绘各种尺度下的视觉效果[4],连续的尺度参数下能获取连续的尺度空间,连续的尺度空间能得到图像的本质特征。采用高斯卷积核尺度进行特征提取。图像[Ix,y]的尺度空间[Lx,y,σ]由高斯函数[Gx,y,σ]和[Ix,y]进行卷积操作得出:

多尺度空间表示方法有小波理论表示法、非线性尺度表示法和金字塔表示法。用金字塔表示法进行多尺度空间表示是对原图像进行降采样操作,降采样操作后得到各种尺度空间的图像[5],原始图像为金字塔的最底层,按照图像大小依次从下至上排列,最终构成金字塔形状模型。金字塔层数[n]由最底层的原始图像和最高层的采样图像决定,金字塔层数[n]的计算公式为:

式中:[M,N]为图像的原始尺寸;[t]表示金字塔顶端图像的最小维度的对数。

为了得到连续的尺度空间,对原始图像的金字塔每层图像进行高斯模糊操作,得到的每层图像都包括多张高斯模糊图像,以每层图像为一组,采用降采样得到更多组且得到的组中底层图像由前组图像的倒数第三张图像隔点获得。高斯金字塔模型如图2所示。

1.3 图像特征的聚类

基于1.2节获取图像SURF特征,采用K?Means聚类算法对图像SURF特征实施聚类分析,该聚类算法将获取的图像SURF特征当成采样点,对采样点和聚类中心进行测量,将类似采样点分为一簇,最终实现同种图像SURF特征的聚类,为后续图像索引和搜索提供依据。K?Means聚类算法流程如下:

1) 在数据点中随机选取[K]个中心点。

2) 对这些点进行初始聚类操作[6]。

3) 计算各个数据点到聚类中心的距离,选取最小距离的聚类中心[Cm。]

4) 将[k]个聚类中心重新划分,并与原始聚类中心进行对比,若两次结果不同或不同时收敛某个范围,返回过程2)重新进行聚类操作,结果相同则结束聚类。

数据点到聚类中心的计算公式如下:

采用SURF算法对图像进行特征向量提取,会得出大量的特征向量。数据点的随机选取会造成迭代多次得不到准确的聚类中心,计算机处理速度变缓。改进后的算法对特征点进行随机数据抽样,从整体提取部分数据代表整体进行研究[7],随机抽样不改变原始数据的特征和规律。

则随机抽样样本方差为:

1.4 图像特征的量化

TF?IDF是一种信息检索与数据挖掘技术,可用来评价一组文字在文档中的重要性。若这组文字在该文档中出现的频率高于出现在其他文档中的频率[8],则这组文字具有较高的辨识度。

在进行SIFT特征提取和K?Means特征聚类后,产生[K]个聚类中心,将每个聚类中心都视为一组视觉文字,采用TF?IDF表达式可以计算每组视觉文字的TF?IDF值,将图像信息用向量的形式表示出来,解决了SURF特征的归一化难题,实现了图像SURF特征的量化。

1.5 Hadoop平台下基于Lucene的图像检索

本文设计分布式索引模块以及分布式搜索模块,实现海量图像检索时的索引以及搜索。分布式索引模块基于Hadoop平台中的Lucene框架塑造海量图像数据的索引,分布式搜索模块将索引库分段完成海量图像数据的并行搜索。

1.5.1 分布式索引模块设计

实现海量图像數据的多节点并行化操作能够增强海量图像数据的操作效率,采用Hadoop中的MapReduce模式为海量图像数据塑造倒排索引库[9],可塑造分布式索引模块,详细的内容如下:

1) 设计MapReduce的输入数据格式是<图像元数据信息,图像数据信息>。

2) 主节点分割海量图像操作任务为不同的子任务,同时将这些任务通过计算节点实施操作,计算节点通过本地图像实施Map操作,采集图像SURF特征,获取图像SURF特征的倒排索引。

3) Reduce 对Map获取的图像SURF倒排索引结果实施融合,同时向HDFS文件中存储融合结果。

详细的分布式图像索引流程图用图4描述。从中能够看出,主控制节点对总体索引模块中的计算节点实施分布式操作,计算节点操作的局部任务。

1.5.2 分布式搜索模块设计

通过Hadoop平台中的MapReduce编程框架规划分布式搜索模块。该模块基于Lucene索引文件实现海量图像数据的搜索,该索引文件中包括一个或多个分段,各分段中包括一个或多个文档,各文档用于描述一个图像文件,一个文档由4个图像SURF特征构成,本文设计的Lucene索引结构用图5描述。可以看出,本文方法在不同的计算节点中设置图5中的索引结构,搜索图像特征时,主控制节点对倒排索引库实施分段操作[10],各计算节点对局部分段实施搜索,获取局部相似结果集,同时对该结果集实施统计以及再次排序,最终得到准确的图像搜索结果。

2 实验与分析

2.1 检索结果分析

实验在MirFlicker图像集中随机采样20万张输入数据进行图像搜索,设置聚类中心为170,将第一张图像作为待检索图像进行检索,实验获取本文方法的检索结果如图6所示,检索结果1~5为检索输出图像,按照检测结果相似度进行排列,从结果可以看出,检索图像1~5与待检索图像相似度高。本次检索结果优秀,令人满意。

2.2 检索性能分析

实验对图像检索方法的检索精度以及检索耗时情况实施分析,进而验证本文方法在海量图像检索过程中具有较高的检索性能。实验在MirFlicker图像集中选取不同万张图像为输入数据,聚类中心为170,将基于内容的图像检索方法作为对比方法,用图像的查全率和准确率对不同方法的检测效果进行分析,检测公式如下:

实验还分别对基于内容的图像检索方法和本文检索方法运行下的不同数量的待检测图像进行颜色直方图、颜色布局、Tamura纹理和边缘直方图的检测。不同方法的平均检索时间用表1描述,用折线图描述的结果如图8所示。

分析表1和图8可得,当检索的图像数量小于10万幅时,基于内容的图像检索方法的检索耗时低于本文方法,主要是因为本文方法对图像数据实施检索时,需要对任务实施调度以及分配,耗费了较多时间。而当检索的图像数据提升到100万幅时,本文方法的检索耗时略低于基于内容的图像检索方法,当图像数据提升到1 000万幅时,本文方法的检索耗时远远低于基于内容的图像检索方法,当图像数量为5 000万和1亿幅时,基于内容的图像检索方法已经不能检索出图像数据,而本文方法只需很短的时间则可完成海量图像的检索。能够看出,本文方法针对海量图像具有较高的检索效率。主要是因为本文图像检索方法利用MapReduce模型,对图像特征点进行降维操作简化了运算过程,对图像的检索效果最好。

3 结 论

本文提出基于Hadoop分布式的海量图像检索方法,基于Hadoop云平台对海量数码图像实施分布式运算,依据Hadoop平台中的Lucene框架塑造海量图像数据的索引模块和搜索模块,实现了图像的准确检索。

参考文献

[1] 朱为盛,王鹏.基于Hadoop云计算平台的大规模图像检索方案[J].计算机应用,2014,34(3):695?699.

ZHU Weisheng, WANG Peng. Large?scale image retrieval solution based on Hadoop cloud computing platform [J]. Journal of computer applications, 2014, 34(3): 695?699.

[2] 郭飞,詹炳宏,刘刚.基于Hadoop的服饰图像存储与检索关键技术研究[J].计算机应用研究,2014,31(4):1086?1089.

GUO Fei, ZHAN Binghong, LIU Gang. Research on key technology of clothing image storage and retrieval based on Hadoop [J]. Application research of computers, 2014, 31(4): 1086?1089.

[3] 吴松洋,张熙哲,王旭鹏,等.基于Hadoop的高效分布式取证:原理与方法[J].电信科学,2014,30(1):31?38.

WU Songyang, ZHANG Xizhe, WANG Xupeng, et al. An efficient distributed forensic system based on Hadoop: principle and method [J]. Telecommunications science, 2014, 30(1): 31?38.

[4] 蔡晓东,华娜,吴迪,等.云平台上基于图像特征索引的并行检索系统技术研究[J].电视技术,2015,39(13):24?26.

CAI Xiaodong, HUA Na, WU Di, et al. Research on parallel retrieval system based on image feature index on cloud platform [J]. Video engineering, 2015, 39(13): 24?26.

[5] 刘有耀,李彬.基于Hadoop的测试数据处理系统设计与实现[J].电子技术应用,2015,41(7):140?143.

LIU Youyao, LI Bin. Design and implementation of test data processing system based on Hadoop [J]. Application of electronic technology, 2015, 41(7): 140?143.

[6] 刘贤熜,宋斌.基于Hadoop的海量数据TCP报文重组技术[J].计算机工程,2016,42(10):113?117.

LIU Xiancong, SONG Bin. Hadoop?based mass data TCP packet reassembly technology [J]. Computer engineering, 2016, 42(10): 113?117.

[7] 孙卫真,王秀锦,徐远超.交通信息分布式处理中的Hadoop调度算法优化[J].计算机工程与设计,2014,35(4):1269?1273.

SUN Weizhen, WANG Xiujin, XU Yuanchao. Optimization of Hadoop scheduling algorithms on distributed system for traffic information processing [J]. Computer engineering and design, 2014, 35(4): 1269?1273.

[8] 胡静泓,李德文,黄文君,等.一种流程工业的分布式海量报警管理系统[J].上海交通大学学报,2015,49(11):1660?1664.

HU Jinghong, LI Dewen, HUANG Wenjun, et al. A distributed mass alarm management system in process industry [J]. Journal of Shanghai Jiao Tong University, 2015, 49(11): 1660?1664.

[9] 余征,龚勋,李天瑞,等.Hadoop的小图片处理技术及其在人脸特征提取上的应用[J].小型微型计算机系统,2015,36(8):1891?1895.

YU Zheng, GONG Xun, LI Tianrui, et al. Small image processing techniques in Hadoop and its application on facial feature extraction [J]. Journal of Chinese computer systems, 2015, 36(8): 1891?1895.

[10] 彭天强,粟芳.基于深度卷积神经网络和二进制哈希学习的图像检索方法[J].电子与信息学报,2016,38(8):2068?2075.

PENG Tianqiang, SU Fang. Image retrieval based on deep convolutional neural networks and binary Hashing learning [J]. Journal of electronics & information technology, 2016, 38(8): 2068?2075.

猜你喜欢
数据挖掘检索
探讨人工智能与数据挖掘发展趋势
2019年第4-6期便捷检索目录
基于并行计算的大数据挖掘在电网中的应用
数据挖掘技术在中医诊疗数据分析中的应用
《国外医药抗生素分册》第37卷1~6期(2016年)目次检索
专利检索中“语义”的表现
一种基于Hadoop的大数据挖掘云服务及应用
数据挖掘的分析与探索
基于GPGPU的离散数据挖掘研究
国际|标准|检索