999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Hadoop平臺的圖像檢索模型

2017-01-14 21:11:57王柏翔姜佳鵬
計(jì)算機(jī)時(shí)代 2016年12期

王柏翔+姜佳鵬

摘 要: 處理海量圖像數(shù)據(jù)問題時(shí),針對傳統(tǒng)的圖像檢索方法計(jì)算速度慢、檢索效率低的問題,借助HBase和Hadoop分布式技術(shù)對海量數(shù)據(jù)超強(qiáng)的讀寫能力,提出一種適用于大數(shù)據(jù)背景下的基于Hadoop平臺的圖像檢索模型。該圖像檢索模型提供了圖像數(shù)據(jù)處理的可序列化數(shù)據(jù)類型,并通過輸入模塊實(shí)現(xiàn)大數(shù)據(jù)背景下數(shù)據(jù)類型的轉(zhuǎn)換及海量圖像的輸入。理論驗(yàn)證了該模型為特征提取、圖像處理等并行處理算法提供了可行的方案。

關(guān)鍵詞: 圖像檢索; HBase; Hadoop; 并行處理

中圖分類號:TP391 文獻(xiàn)標(biāo)志碼:A 文章編號:1006-8228(2016)12-35-04

hods have the problems of lower computation speed and lower retrieval efficiency for processing massive image data. To solve these problems, this paper proposes a retrieval model applied to storage and process massive image data, which with the help of read and write property of Hadoop distributed technology and HBase. This model provides serializable data types for processing image data, and through the input module realizes the data type conversion and massive image input in big data background. The theory proves that the proposed model can provide a feasible solution for parallel processing algorithms of feature extraction, image processing and so on.

Key works: image retrieval; HBase; Hadoop; parallel processing

0 引言

從圖像檢索技術(shù)的發(fā)展看,基于文本標(biāo)注的圖像檢索和基于圖像內(nèi)容的檢索方法提高了圖像特征提取、相似度對比[1],但是大數(shù)據(jù)時(shí)代,對現(xiàn)有的圖像處理、表達(dá)與度量等方面增加了存儲圖像數(shù)據(jù)及高效處理海量數(shù)據(jù)集的要求。

傳統(tǒng)的基于內(nèi)容的圖像檢索方法,是對圖像采用單機(jī)單線程進(jìn)行特征提取及圖像處理,然后將經(jīng)過處理后的圖像特征存入關(guān)系型數(shù)據(jù)庫中。發(fā)起檢索請求時(shí),遍歷關(guān)系型數(shù)據(jù)庫對比查詢到的圖像特征和全庫特征,對其結(jié)果進(jìn)行排序即為檢索的結(jié)果。現(xiàn)今圖像數(shù)據(jù)快速增長,即使采用多線程技術(shù)處理圖像也不能完全解決存儲海量圖像數(shù)據(jù)及其處理效率的問題,更不用說簡單依賴單計(jì)算機(jī)的處理能力的傳統(tǒng)圖像處理技術(shù)。

采用HBase和Hadoop分布式技術(shù)[2-3]對海量數(shù)據(jù)進(jìn)行基于內(nèi)容的數(shù)據(jù)圖像模型,解決了海量圖像數(shù)據(jù)的存儲與傳輸問題,并且原設(shè)計(jì)的圖像檢索算法可直接移植至分布式環(huán)境并行處理。該思想依賴基于Map-Reduce的并行模型并行檢索大數(shù)據(jù)圖像。

大數(shù)據(jù)背景下的圖像數(shù)據(jù),80%以上是以MB為單位的小文件,針對大文件的基于HDFS的分布式存儲技術(shù)不適用。基于HBase和Hadoop分布式技術(shù)可實(shí)現(xiàn)系統(tǒng)層的小文件合并,實(shí)現(xiàn)全局命名,有良好的通用性[4]。

1 技術(shù)背景

1.1 基于內(nèi)容的圖像檢索技術(shù)

基于內(nèi)容的圖像檢索的特點(diǎn)是對圖像數(shù)據(jù)內(nèi)容本身的操作處理。具體處理流程如圖1所示。

圖像特征的提取,雖然實(shí)現(xiàn)的算法各不相同,但提取的結(jié)果一般為文本表示的矩陣或數(shù)字。如今的計(jì)算機(jī)圖像處理接口對數(shù)字圖像的存取簡化為對字節(jié)流的獲取與輸出。基于內(nèi)容的圖像檢索技術(shù)之所以快速發(fā)展,一個重要原因就是只專注于研究圖像處理算法,而忽略存取圖像耗費(fèi)的資源。

1.2 基于Hadoop的分布式技術(shù)

MapReduce分布式計(jì)算模型和Hadoop分布式文件系統(tǒng)HDFS(Hadoop Distributed File System)是Hadoop的核心。Hadoop提供分布式文件系統(tǒng)、通用I/O組件和接口以及分布式數(shù)據(jù)處理模式和執(zhí)行環(huán)境。

MapReduce是一種簡單的用于數(shù)據(jù)處理的編程模型,支持C++、Python和Java等多種編程語言。MapReduce的并行性使大規(guī)模數(shù)據(jù)的分析能在多個計(jì)算機(jī)上并行執(zhí)行,提高效率的同時(shí)降低了消耗。

1.3 HBase數(shù)據(jù)庫

HBase數(shù)據(jù)庫是分布式列存儲數(shù)據(jù)庫,有超強(qiáng)的讀寫性能,底層通過HDFS存儲數(shù)據(jù),支持隨機(jī)查詢和Map Reduce的批量式計(jì)算。

用Java編寫的HBase支持其他編程語言,提供原生的操作API。HBase的數(shù)據(jù)和坐標(biāo)以字節(jié)數(shù)組形式存儲,即支持任意類型的數(shù)據(jù)存儲。HBase不存放空表格,只存放有內(nèi)容的表格單元,其稀疏性適用于存儲文件數(shù)據(jù)[5]。

2 模型設(shè)計(jì)與實(shí)現(xiàn)

2.1 模型整體架構(gòu)

Hadoop集群的一系列優(yōu)勢如集群規(guī)模靈活、成本低廉、其承載的MapReduce模型有高效的并行計(jì)算能力。高效并行處理圖像特征數(shù)據(jù)需要借助MapReduce模型,既能移植到現(xiàn)有的特征提取算法中,也能以圖像的可序列化數(shù)據(jù)類型在分布式環(huán)境中存儲、傳輸和操作。使用HBase面向列擴(kuò)展的分布式數(shù)據(jù)庫對圖像數(shù)據(jù)以字節(jié)數(shù)組的形式進(jìn)行壓縮式存儲和快速查詢。因此,本文選擇HBase為數(shù)據(jù)存儲庫,MapReduce模型實(shí)現(xiàn)并行處理,建立海量圖像分布式檢索模型。

檢索模型的整體架構(gòu)如圖2所示,主要分為圖像輸入模塊、分布式集群模塊和檢索結(jié)果顯示模塊。圖像輸入模塊對圖像數(shù)據(jù)進(jìn)行預(yù)處理,將獲取到的網(wǎng)絡(luò)圖像轉(zhuǎn)換成可序列化圖像數(shù)據(jù)類型[6-8],并轉(zhuǎn)換成字節(jié)數(shù)組存儲在HBase中;分布式集群模塊以可序列化的圖像數(shù)據(jù)類型為接口實(shí)現(xiàn)并行圖像檢索;檢索結(jié)果顯示模塊主要還原相似度較高的圖像文件,并將其顯示或保存到指定的計(jì)算機(jī)硬盤。

2.2 可序列化的圖像數(shù)據(jù)類型

可序列化的數(shù)據(jù)類型要適用于分布式存儲和傳輸,便于處理數(shù)據(jù),因此系統(tǒng)設(shè)計(jì)的Hadoop API中基本的可序列化類型都有其對應(yīng)的Java API基本數(shù)據(jù)類型。Java API中的BufferedImage是常用的處理圖像的類,將對象本身轉(zhuǎn)換成字節(jié)數(shù)組,進(jìn)而轉(zhuǎn)換成Text類型。Text類型最大值是2GB,通過可變長的int型以字符串編碼形式存儲海量圖像數(shù)據(jù)。此外,BufferedImage類帶有圖像常用的數(shù)據(jù)信息。

ImageWritable類的具體實(shí)現(xiàn),如圖3所示。其中ImageWritable的構(gòu)造方法需由BufferedImage對象作參數(shù);私有函數(shù)parse Bytes實(shí)現(xiàn)將BufferedImage轉(zhuǎn)換為字節(jié)數(shù)組,進(jìn)而轉(zhuǎn)換成Text類型。第二個Text類型和第三個Text類型分別保存的是圖像文件的后綴名及獲取圖像的網(wǎng)址。

2.3 HBase的數(shù)據(jù)庫設(shè)計(jì)

本文設(shè)計(jì)的圖像檢索模型針對海量圖像,因此,采用HBase數(shù)據(jù)庫存儲圖像內(nèi)容的數(shù)據(jù)及預(yù)處理后的數(shù)據(jù)。因?yàn)樾墟I要求定長且惟一,所以本文采用MD5摘要處理圖像獲取的路徑或網(wǎng)址。HBase中單元格的默認(rèn)塊大小是64KB,對列值沒有長度限制,此外行鍵長默認(rèn)小于65536。為了不影響圖片的存取效率,對于小圖像文件則不對圖像字節(jié)數(shù)組分段。對HBase的數(shù)據(jù)表設(shè)計(jì)見表1。

2.4 圖像輸入模塊

ImageWritable類只是一種MapReduce模型中鍵/值對值的數(shù)據(jù)類型,將將圖像文件輸入HBase數(shù)據(jù)庫或分布式文件系統(tǒng)的常規(guī)的做法是繼承Hadoop API的文件輸入格式類(FileInputFormat)。FileInputFormat認(rèn)為一個計(jì)算機(jī)本地圖像文件是一個文件分片,將其轉(zhuǎn)換成自定義的可序列化類。該圖像檢索模型主要由MapReduce并行模型和一個Web服務(wù)器組成,其中Web服務(wù)器具有文件上傳和瀏覽的功能。MapReduce模型是實(shí)現(xiàn)獲取圖像數(shù)據(jù)和格式轉(zhuǎn)換的程序。本地圖像通過Web服務(wù)器轉(zhuǎn)換成網(wǎng)絡(luò)圖像,并將記錄網(wǎng)絡(luò)圖像地址的文本文件作為輸入。Map過程獲取文件流,生成BufferedImage對象,并轉(zhuǎn)換成ImageWritable對象,然后通過SequenceFile文件保存到HDFS中。此外,也可以通過ImageWritable類將響應(yīng)的圖像字節(jié)數(shù)組保存在HBase中。將圖像數(shù)據(jù)存儲在HDFS的MapReduce流程圖如圖4所示。

2.5 分布式集群模塊

分布式集群模塊主要包括圖像預(yù)處理、特征提取及相似度計(jì)算。通過ImageWritable,可以從HBase或HDFS獲取所需圖像數(shù)據(jù),然后將現(xiàn)有選用的預(yù)處理生成的BufferedImage對象構(gòu)建ImageWritable對象,通過Reduce寫入HBase或HDFS的SequenceFile中。MapReduce過程中,特征提取與預(yù)處理不同之處是輸出數(shù)據(jù)的類型是數(shù)字類型還是文本類型。相似度計(jì)算及其排序的輸入輸出的數(shù)據(jù)類型都是數(shù)字類型或者文本類型。分布式集群模塊的實(shí)現(xiàn)如表2所示。

2.6 檢索結(jié)果的顯示模塊

檢索結(jié)果的顯示模塊中,將輸入模塊作為待檢模塊,相似度計(jì)算并排序后,讀取相似度高的圖像集合對應(yīng)的圖像數(shù)據(jù)并轉(zhuǎn)換成BufferedImage對象,通過UI界面顯示,將檢索結(jié)果保存到本地計(jì)算機(jī)硬盤中。

3 Image Writable類的封裝與實(shí)現(xiàn)

本文圖像檢索模型的核心類是Image Writable類。圖像檢索首先要實(shí)現(xiàn)對象轉(zhuǎn)換,即BufferedImage和byte[],圖像文件后綴名從網(wǎng)址中抓取。基于Java編程實(shí)現(xiàn)對ImageWritable類的封裝與實(shí)現(xiàn)。具體代碼如下:

其中ImageIO類用于讀取和生成圖像,是Java API的常用圖像工具類。getBytes()將BufferedImage轉(zhuǎn)換成byte[]對象,byte[]對象用于建立Text對象。Text類保證數(shù)據(jù)存儲和傳輸?shù)恼_性、可靠性。ImageWritable類實(shí)現(xiàn)的Writable接口二進(jìn)制讀寫流算法如下:

4 結(jié)束語

本文提出的基于Hadoop平臺的圖像檢索模型實(shí)現(xiàn)了存取和檢索圖像數(shù)據(jù)的功能。該圖像檢索技術(shù)采用HBase的分布式列存儲數(shù)據(jù)庫,通過Map-Reduce實(shí)現(xiàn)并行檢索圖像,提高了檢索速度,數(shù)據(jù)輸入靈活,可并行處理大數(shù)據(jù)圖像,適用于重構(gòu)現(xiàn)有的圖像檢索系統(tǒng)。但該模型是假設(shè)在不受噪音影響的條件下檢索,這也是下一步需要研究和改進(jìn)的地方。

參考文獻(xiàn)(References):

[1] 李向陽,莊越挺,潘云鶴.基于內(nèi)容的圖像檢索技術(shù)與系統(tǒng)[J].

計(jì)算機(jī)研究與發(fā)展,2001.38(3):344-354

[2] Borthakur D. The hadoop distributed file system:

Architecture and design[J]. Hadoop Project Website,2007.11(11):1-10

[3] White T. Hadoop:the definitive guide[J]. O'reilly Media Inc

Gravenstein Highway North,2010.215(11):1-4

[4] 朱曉麗,趙志剛.一種基于HBase的海量圖片存儲技術(shù)[J].信

息系統(tǒng)工程,2013.8:22-24

[5] 朱敏,程佳,柏文陽.一種基于HBase的RDF數(shù)據(jù)存儲模型[J].

計(jì)算機(jī)研究與發(fā)展,2013.50(s1):23-31

[6] 鄭欣杰,朱程榮,熊齊邦.基于Map Reduce的分布式光線跟

蹤的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2007.33(22):83-85

[7] 李倩,施霞萍.基于Hadoop Map Reduce圖像處理的數(shù)據(jù)類

型設(shè)計(jì)[J].軟件導(dǎo)刊,2012.11(4):182-183

[8] 張良將,宦飛,王楊德.Hadoop云平臺下的并行化圖像處理

實(shí)現(xiàn)[J].信息安全與通信保密,2012.10:59-62

主站蜘蛛池模板: 国产91高跟丝袜| 狠狠ⅴ日韩v欧美v天堂| 色哟哟色院91精品网站| 国产激爽爽爽大片在线观看| 欧美成人怡春院在线激情| 一本大道无码日韩精品影视| 国产在线观看99| 波多野结衣久久高清免费| 国产精品亚洲一区二区三区z| 国产一级毛片网站| 免费国产黄线在线观看| 人人91人人澡人人妻人人爽| 国产精品夜夜嗨视频免费视频| 国产精品一区二区在线播放| 99re免费视频| 久久人与动人物A级毛片| 日韩视频免费| 2021国产精品自拍| 女人18一级毛片免费观看| 亚洲成人一区在线| 精品无码国产自产野外拍在线| 国产美女在线观看| 国产精品思思热在线| 欧美午夜在线观看| 欧美精品高清| 青青久视频| 成人va亚洲va欧美天堂| 国产综合日韩另类一区二区| 伊伊人成亚洲综合人网7777| 国产91小视频| 中文精品久久久久国产网址| 亚洲无码免费黄色网址| 亚洲午夜福利精品无码| 99re热精品视频中文字幕不卡| 欧美色图久久| 伊人久久久大香线蕉综合直播| 国产毛片不卡| WWW丫丫国产成人精品| 亚洲一区二区无码视频| 成人福利在线免费观看| 国产精品3p视频| 2020国产精品视频| 色噜噜综合网| 2021最新国产精品网站| 日韩天堂视频| 狠狠色香婷婷久久亚洲精品| 日韩欧美国产综合| 婷婷丁香色| 免费一级毛片在线观看| 国产成人无码Av在线播放无广告| 欧美区日韩区| 午夜欧美在线| 午夜精品国产自在| 日韩欧美中文| 午夜不卡视频| 国产网友愉拍精品| 国产白浆在线| 久久久久亚洲精品成人网| 国产精品 欧美激情 在线播放| 久久国产精品电影| 国产永久免费视频m3u8| 亚洲一级毛片在线播放| 久久无码av三级| 丁香亚洲综合五月天婷婷| 欧美人与牲动交a欧美精品| 蜜芽一区二区国产精品| 国产欧美日韩18| 亚洲成人网在线播放| 国产免费一级精品视频| 亚洲精品无码av中文字幕| av一区二区三区高清久久| 日韩欧美视频第一区在线观看| 婷五月综合| 91精品国产情侣高潮露脸| 国产精品久久久久久久久久98| 伊人久久久大香线蕉综合直播| 韩日无码在线不卡| 久久精品国产精品一区二区| 国产精品自在拍首页视频8| 国产一区二区丝袜高跟鞋| 免费国产小视频在线观看| 欧美国产三级|