2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩35頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p>  畢 業(yè) 設(shè) 計(jì)(論文)</p><p>  2015 年 5月25 日</p><p> 中文題目基于內(nèi)容的圖像搜索系統(tǒng)</p><p> 英文題目Content-based image search system </p><p><b>  摘要</b></p><p>

2、  隨著網(wǎng)絡(luò)的普及,圖像已成為存儲(chǔ)和展示信息的主要載體。然而,伴隨著信息量的劇增,圖像的識(shí)別和管理就成為了一個(gè)亟需解決的難題。圖像搜索(image search)是近年來(lái)比較熱門(mén)的一項(xiàng)新興技術(shù),根據(jù)圖像的大小、空間等特征,提取圖像的指紋并作為圖像的標(biāo)識(shí)與圖像保存在一起,然后匹配搜索相似圖像。</p><p>  圖像指紋的提取和識(shí)別過(guò)程是本文的研究重點(diǎn)。利用圖像縮小算法縮小圖像尺寸、利用簡(jiǎn)化圖像色彩算法簡(jiǎn)化圖像色

3、彩。使用計(jì)算平均值的方法和進(jìn)制轉(zhuǎn)換算法獲取圖像的指紋密碼。</p><p>  基于內(nèi)容的圖像搜索可以分為對(duì)象表示,特征提取和對(duì)象匹配。在特征提取中有色彩,形狀和空間關(guān)系等特征。把色彩的三維圖片去除掉一些細(xì)節(jié)之后,僅保留圖像的結(jié)構(gòu)、明暗等基本信息。在本文中以選取64個(gè)像素點(diǎn)為例。然后將其轉(zhuǎn)化成64灰度級(jí),也就是說(shuō),所有的像素點(diǎn)總共只有64種顏色。之后計(jì)算其平均值并得到圖像的哈希值作為圖像的指紋用來(lái)匹配搜索圖像,并

4、找到與之相似的圖像。</p><p>  把得到的圖像指紋和圖像路徑一起關(guān)聯(lián)保存到數(shù)據(jù)庫(kù)中,然后運(yùn)用匹配搜索的方式,對(duì)圖像的指紋進(jìn)行檢索。使用jsp完成頁(yè)面和服務(wù)器的交互,實(shí)現(xiàn)基于內(nèi)容的圖像搜索系統(tǒng)。</p><p>  關(guān)鍵字:圖像指紋;圖像搜索;基于內(nèi)容的圖像搜索</p><p><b>  ABSTRACT</b></p>

5、<p>  With the popularity of the network,the image has become the main carrier of information storage and display.However,with the dramatic increase in information,image recognition and management is a need to solve

6、 the problem.Image search is popular in recent years, a new technology,according to the size of the image, spatial characteristics,extract the image of fingerprint and saved as image identification and image together,the

7、n match the search similar images.</p><p>  The extraction of the fingerprint image and the recognition process is the research emphasis in this paper.Using image reduction algorithm to reduce the image size

8、, the use of color image color algorithm simplification images.Using average method to calculate and hexadecimal conversion algorithm of image of fingerprint password.</p><p>  The colour of three-dimensiona

9、l images to get rid of some details, only the basic information such as the structure of the image, light and shade.In this article to select 64 pixels as an example.And then convert it to grayscale 64, that is to say, a

10、ll the pixels of a total of only 64 colors.After calculating the average value and get the hash value of the image as the image of the fingerprint image is used to match the search, and find similar images.Use the JSP pa

11、ge to the server,implement con</p><p>  To get the image of the fingerprint associated with image path saved into the database,then use match the search,to retrieve the image of the fingerprint.</p>&

12、lt;p>  Key Words: Fingerprint image;Image search;Content-based image search </p><p><b>  目錄</b></p><p><b>  第一章 引言1</b></p><p>  1.1課題的研究背景和意義1</p>

13、;<p>  1.2圖像搜索技術(shù)的發(fā)展歷程2</p><p>  1.2.1基于文本的圖像搜索技術(shù)2</p><p>  1.2.2基于內(nèi)容的圖像搜索技術(shù)2</p><p>  1.2.3基于多特征向量的圖像搜索3</p><p>  1.3基于內(nèi)容的圖像搜索系統(tǒng)概述3</p><p>  1.

14、3.1課題的研究目標(biāo)3</p><p>  1.3.2課題的研究?jī)?nèi)容3</p><p>  1.3.3系統(tǒng)概述4</p><p>  第二章 基于內(nèi)容的圖像搜索5</p><p>  2.1基于內(nèi)容的圖像搜索的定義5</p><p>  2.2基于內(nèi)容的圖像搜索算法的設(shè)計(jì)5</p><p

15、>  2.2.1圖像的縮小與放大算法5</p><p>  2.2.2簡(jiǎn)化圖像色彩7</p><p>  2.2.3計(jì)算灰度平均值7</p><p>  2.2.4二進(jìn)制轉(zhuǎn)化為十六進(jìn)制8</p><p>  2.2.5圖像相似度劃分8</p><p>  第三章 基于內(nèi)容的圖像搜索系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)10

16、</p><p>  3.1實(shí)驗(yàn)準(zhǔn)備10</p><p>  3.1.1硬件條件10</p><p>  3.1.2軟件環(huán)境10</p><p>  3.2算法流程圖10</p><p>  3.3縮小圖像的實(shí)現(xiàn)11</p><p>  3.4簡(jiǎn)化圖像色彩的實(shí)現(xiàn)12</p>

17、;<p>  3.5獲得圖像指紋13</p><p>  3.6存儲(chǔ)圖像指紋16</p><p>  3.6.1 創(chuàng)建數(shù)據(jù)庫(kù)表格16</p><p>  3.6.2 建立數(shù)據(jù)庫(kù)連接17</p><p>  3.6.3存儲(chǔ)圖像指紋17</p><p>  3.7匹配搜索圖像19</p>

18、;<p>  3.7.1提取樣本圖像的指紋19</p><p>  3.7.2匹配搜索20</p><p>  第四章 基于內(nèi)容的圖像搜索系統(tǒng)結(jié)果展示22</p><p>  4.1圖像搜索結(jié)果展示22</p><p>  4.2算法運(yùn)行時(shí)間展示25</p><p>  第五章 結(jié)論與展望27

19、</p><p><b>  5.1結(jié)論27</b></p><p><b>  5.2展望27</b></p><p><b>  參考文獻(xiàn)28</b></p><p><b>  致 謝29</b></p><p>&

20、lt;b>  引言</b></p><p>  1.1課題的研究背景和意義</p><p>  隨著計(jì)算機(jī)應(yīng)用及Internet的普及,網(wǎng)絡(luò)購(gòu)物已然成為一種與人們生活息息相關(guān)的商業(yè)活動(dòng)。阿里巴巴網(wǎng)上批發(fā)市場(chǎng),天貓商城,淘寶網(wǎng),拍拍網(wǎng),京東網(wǎng)上商城等一系列的網(wǎng)購(gòu)網(wǎng)站已成為軟件行業(yè)的中流砥柱。他們的存在不僅僅是為廣大消費(fèi)者提供了方便快捷的購(gòu)物服務(wù),也為數(shù)以千萬(wàn)計(jì)的創(chuàng)業(yè)者找到了

21、一條財(cái)富之路。面對(duì)廣大的市場(chǎng)存在的豐厚利潤(rùn)和無(wú)止境的前景,越來(lái)越多的企業(yè)、個(gè)人躋身到電子商務(wù)這個(gè)行業(yè)中來(lái)。然而,到目前為止,幾大主流的購(gòu)物網(wǎng)站:淘寶網(wǎng),天貓商城,京東網(wǎng)上商城,一號(hào)店等等仍然采用的是以關(guān)鍵字搜索的方式來(lái)為消費(fèi)者搜索他們所需要的商品。以關(guān)鍵字的搜索方式已經(jīng)存在很多年了,也確實(shí)很實(shí)用,基本上可以滿(mǎn)足消費(fèi)者對(duì)商品描述的需求。但是,有些時(shí)候,消費(fèi)者可能并不太確定自己需要購(gòu)買(mǎi)的商品應(yīng)該怎么去文字描述,一個(gè)一個(gè)的關(guān)鍵字搜索過(guò)去,也許

22、終會(huì)找到自己需要的商品,但這個(gè)過(guò)程可謂是繁瑣和無(wú)聊。如果有一個(gè)以圖片的方式去搜索,消費(fèi)者把自己需求的商品的大致雛形以圖片的形式表現(xiàn)出來(lái),然后以這個(gè)圖片所為關(guān)鍵字去搜索自己需求的商品,這樣搜索下來(lái)就很快可以找到消費(fèi)者真正需求的商品了。</p><p>  現(xiàn)如今,在網(wǎng)上消費(fèi)的大環(huán)境下,面對(duì)高額的利潤(rùn),IT的幾大巨頭都想分一杯羹。阿里巴巴集團(tuán)的“萬(wàn)能淘寶”,騰訊旗下的“拍拍商城”、“微信店鋪”,百度重金打造的“百度外

23、賣(mài)”還有一些像“外賣(mài)超人”,“餓了嗎”,“美團(tuán)”等一些新興的公司也都在網(wǎng)上商城在一塊嘗到了不小的甜頭;就連一直以視頻為大家的所知的愛(ài)奇藝,也推出了“愛(ài)奇藝商場(chǎng)”。面對(duì)這個(gè)巨大市場(chǎng),高額的利潤(rùn)和較低的成本,眾多的IT領(lǐng)軍集團(tuán)紛紛加入了網(wǎng)上商城的潮流當(dāng)中。</p><p>  放開(kāi)這些大集團(tuán)不談,我們看下我們身邊;有多少人選擇網(wǎng)購(gòu)。據(jù)阿里巴巴統(tǒng)計(jì):到2013年為止,淘寶網(wǎng)已有超過(guò)5億的注冊(cè)用戶(hù),每天有超過(guò)6000萬(wàn)的

24、固定訪(fǎng)客,同時(shí)每天的在線(xiàn)商品數(shù)已經(jīng)超過(guò)了8億件,平均每分鐘售出4.8萬(wàn)件商品。2014年“雙11”期間,僅38分鐘的時(shí)間,淘寶交易額就已經(jīng)突破百億,全天更是達(dá)到572億的歷史新高。這些數(shù)據(jù)養(yǎng)活的不只是阿里巴巴集團(tuán)的那些人,在這背后可能有數(shù)百萬(wàn)甚至上千萬(wàn)的人靠淘寶生活。面對(duì)巨額數(shù)字,同樣都是做IT的,我們?yōu)槭裁淳筒荒転榇俗鲂┦裁?,去分一杯羹呢?lt;/p><p>  隨著“百度識(shí)圖”、“谷歌以圖搜圖”等一些識(shí)圖網(wǎng)站的

25、發(fā)布,以圖搜索的方式將很快在整個(gè)IT界爆發(fā)?!白R(shí)圖”識(shí)別的是圖,而這個(gè)“圖”可以是風(fēng)景、美食、衣服、首飾、建筑,人物等。有需求的地方就有市場(chǎng),有了市場(chǎng)那么利潤(rùn)也就不遠(yuǎn)了。</p><p>  試想一下:如果你要去旅游,只是要看一下“竹林”或者是“大?!?,沒(méi)有什么明確的要求,也沒(méi)有確切的目的地,只是有那么一個(gè)想去的地方和一個(gè)期望的景色。你愿意傻傻的去旅行社問(wèn)“哪里有好看的……”、“哪里我有喜歡的……”把你的想要描述

26、給你的導(dǎo)游,你覺(jué)得你愿意去這樣問(wèn)嗎?你有那么多閑時(shí)間去問(wèn)嗎?你問(wèn)了之后他們可以給你一個(gè)滿(mǎn)意的答案嗎?當(dāng)你看到一美味佳肴,你會(huì)不會(huì)想親自嘗嘗,或者自己學(xué)一下怎么做呢?在或者你就是想買(mǎi)一雙“鞋子”,買(mǎi)一雙自己看到的喜歡的,沒(méi)有品牌,沒(méi)有名字,你愿意到大街上一家一家店的找過(guò)去嗎?你有那么時(shí)間和精力去為了一瞬間的念想去找嗎?你又真的愿意就這樣放棄嗎?這樣找你確定可以找到嗎?</p><p>  “一切盡在不言中”,太多的

27、東西是我們沒(méi)法用語(yǔ)音描述的;所以就有了圖像,一個(gè)圖像所能存儲(chǔ)的信息量之大,絕對(duì)不是你我的只言片語(yǔ)就可以解釋清楚的。而隨著計(jì)算機(jī)的發(fā)展和Internet的普及,信息量之大也覺(jué)得不是一兩張圖像就可以描述,存儲(chǔ)的。如何在大批量的圖像中,找到自己所需?有了問(wèn)題就要有解決它的想法,本文中將以圖像搜索的方法來(lái)解決這個(gè)問(wèn)題。</p><p>  1.2圖像搜索技術(shù)的發(fā)展歷程</p><p>  圖像搜索

28、技術(shù)的發(fā)展大體上經(jīng)過(guò)三個(gè)階段:基于文本的圖像檢索,基于內(nèi)容的圖像檢索和基于多特征向量的圖像搜索。</p><p>  1.2.1基于文本的圖像搜索技術(shù)</p><p>  基于文本的圖像搜索技術(shù)是最早的圖像檢索技術(shù)(簡(jiǎn)稱(chēng)TBIR)。基于文本的圖像搜索技術(shù)是人工的對(duì)圖像添加一些描述性信息作為圖像的搜索標(biāo)識(shí),和圖像的存儲(chǔ)路徑和圖像的描述信息之間建立連接。運(yùn)用模糊搜索的方法對(duì)圖像的描述信息進(jìn)行檢

29、索,實(shí)現(xiàn)對(duì)圖像搜索。基于文本的圖像搜索和我們常用的關(guān)鍵字搜索的原理是相似的。搜索的只是人工添加的圖像描述信息。</p><p>  但是隨著圖像庫(kù)的增大,人工的對(duì)圖像添加描述信息的方法越來(lái)越不適用。雖說(shuō)對(duì)圖像搜索的效率并不算低,但是對(duì)圖像添加描述信息的工作量也很大。面對(duì)巨大的圖像庫(kù),基于文本的圖像搜索技術(shù)已經(jīng)不能滿(mǎn)足當(dāng)前用戶(hù)的需求。</p><p>  1.2.2基于內(nèi)容的圖像搜索技術(shù)&l

30、t;/p><p>  上個(gè)世紀(jì)90年代初期,數(shù)字圖像庫(kù)的規(guī)模已經(jīng)變得十分大。基于文本的圖像搜索技術(shù)已經(jīng)不能滿(mǎn)足當(dāng)前用戶(hù)的需求。為了解決這個(gè)難題,基于內(nèi)容的圖像檢索技術(shù)(簡(jiǎn)稱(chēng)CBIR)誕生了。不同于基于文本的圖像搜索技術(shù)的是基于內(nèi)容的圖像搜索技術(shù)不需要人工的對(duì)圖像添加描述信息?;趦?nèi)容的圖像搜索技術(shù)是一種綜合集成搜索技術(shù),利用算法程序自動(dòng)提取圖像中的視覺(jué)特征取代基于文本的圖像搜索技術(shù)中的圖像的描述信息(在基于內(nèi)容的圖像

31、搜索系統(tǒng)中,我們稱(chēng)之為圖像指紋),所謂圖像指紋就像人的指紋一樣,可以作為圖像的識(shí)別特征。</p><p>  基于內(nèi)容的圖像搜索技術(shù)提取的視覺(jué)特征包括圖像的顏色、紋理、形狀等特征。用戶(hù)在查找時(shí),只需要用圖像就可以去搜索相似的圖像。不需要知道圖像的名稱(chēng),描述信息等等,就可以在海量圖像庫(kù)中找到自己想要的圖像。</p><p>  1.2.3基于多特征向量的圖像搜索</p><

32、;p>  基于多特征向量的圖像搜索技術(shù)是在基于顏色直方圖特征的圖像搜索技術(shù)的基礎(chǔ)上改進(jìn)得來(lái)的?;陬伾狈綀D特征的圖像搜索技術(shù)簡(jiǎn)單、高效。不過(guò)基于顏色直方圖特征的圖像搜索技術(shù)在追求簡(jiǎn)單、高效的同時(shí),沒(méi)有考慮圖像顏色的空間分布信息。導(dǎo)致了基于顏色直方圖特征的圖像搜索技術(shù)的搜索準(zhǔn)確性非常低。因此,在此基礎(chǔ)上誕生了基于多特征向量的圖像搜索技術(shù)。</p><p>  基于多特征向量的圖像搜索技術(shù)是將圖像內(nèi)容看成若干

33、個(gè)對(duì)象組成的集合,利用圖像分割技術(shù)得到圖像的主要對(duì)象,然后根據(jù)對(duì)方的顏色、位置和形狀等基本特征計(jì)算圖像間內(nèi)容的相似度,然后進(jìn)行匹配。該方法與基于顏色直方圖搜索技術(shù)相比,可以更加準(zhǔn)確高效的搜索出用戶(hù)所需內(nèi)容的圖像,提高了對(duì)圖像檢索的精度[4]。</p><p>  1.3基于內(nèi)容的圖像搜索系統(tǒng)概述</p><p>  1.3.1課題的研究目標(biāo)</p><p>  本課

34、題將以實(shí)現(xiàn)圖相似圖像的搜索為目標(biāo),在實(shí)現(xiàn)對(duì)相似圖像搜索的基礎(chǔ)上,提高圖像搜索的準(zhǔn)確率和搜索效率。</p><p>  本課題對(duì)圖像的縮小與放大算法、圖像色彩簡(jiǎn)化算法進(jìn)行深度研究。提高圖像縮小算法的精度和效率。同時(shí)將圖像色彩簡(jiǎn)化算法運(yùn)用到圖像搜索技術(shù)中,對(duì)圖像進(jìn)行色彩簡(jiǎn)化以完成對(duì)圖像的搜索。</p><p>  1.3.2課題的研究?jī)?nèi)容</p><p>  現(xiàn)有的大多

35、數(shù)方法關(guān)注的是圖像背景,而不是整體,這樣就可能會(huì)導(dǎo)致檢索的錯(cuò)誤。為了解決圖像檢索系統(tǒng)面臨的虛假特征點(diǎn)的匹配問(wèn)題,運(yùn)用圖像上下文來(lái)驗(yàn)證一致性問(wèn)題以去除錯(cuò)誤匹配[8]。</p><p>  大多數(shù)現(xiàn)有的方法仍然致力于大規(guī)模的二進(jìn)制代碼學(xué)習(xí),然而這些方法會(huì)占有大量的資源,而準(zhǔn)確性和效率并不高,為了解決這個(gè)問(wèn)題,運(yùn)用操作矩陣算法,可以顯著的降低計(jì)算代碼的學(xué)習(xí)成本。案例研究表明[9],三個(gè)圖像基準(zhǔn)一百萬(wàn)樣本,確鑿的功效,量

36、化方法的圖像檢索是可行的,效率和準(zhǔn)確性都很高。</p><p>  本課題將重點(diǎn)研究對(duì)圖像的相似搜索。并將搜索結(jié)果以網(wǎng)頁(yè)的形式展現(xiàn)給用戶(hù)。</p><p><b>  1.3.3系統(tǒng)概述</b></p><p>  隨著計(jì)算機(jī)應(yīng)用及Internet的普及,圖像庫(kù)也在不斷的劇增,怎么在擁有海量圖像的圖像庫(kù)中,快速的搜索出所需要的圖像已經(jīng)成為急需解

37、決的問(wèn)題。</p><p>  本系統(tǒng)將以一種嶄新的方式實(shí)現(xiàn)對(duì)圖像的識(shí)別,并對(duì)其進(jìn)行匹配。找到圖像庫(kù)中已有的與用戶(hù)圖像相似的目標(biāo)圖像。</p><p><b>  算法步驟描述:</b></p><p>  1.把彩色圖像進(jìn)行縮小得到8*8尺寸的圖像,經(jīng)過(guò)縮小之后圖像總共只有64個(gè)像素點(diǎn),去掉了圖像的細(xì)節(jié),只保留了圖像的結(jié)構(gòu)、明暗等基本信息。&

38、lt;/p><p>  2.簡(jiǎn)化圖像色彩,將縮小后的圖像轉(zhuǎn)化為64級(jí)灰度,也就是說(shuō)只有64種顏色。</p><p>  3.計(jì)算所有64個(gè)像素點(diǎn)的灰度平均值。</p><p>  4.比較每個(gè)像素的灰度:將每個(gè)像素的灰度,與平均值進(jìn)行比較。大于或等于平均值,記為1;小于平均值,記為0。得到64位二進(jìn)制。</p><p>  5.把64位二進(jìn)制,以

39、4位為單位依次轉(zhuǎn)化為16進(jìn)制。</p><p>  6.把得到的16進(jìn)制作為圖像的指紋密碼和圖像的路徑一起保存到數(shù)據(jù)庫(kù)中。</p><p>  算法實(shí)現(xiàn)的技術(shù)關(guān)鍵:</p><p>  1.縮小圖像尺寸、去除圖像細(xì)節(jié),只保留圖像結(jié)構(gòu)、明暗等基本信息。</p><p>  2.簡(jiǎn)化圖像色彩,將圖像轉(zhuǎn)化為64級(jí)灰度。</p><

40、;p>  3.計(jì)算灰度平均值。</p><p><b>  算法實(shí)現(xiàn)的基本要求</b></p><p>  1.代碼規(guī)范,提高可讀性和可改性。</p><p>  2.規(guī)范注釋?zhuān)^(guān)點(diǎn)明確,易懂。</p><p>  3.數(shù)據(jù)普通,結(jié)果準(zhǔn)確。</p><p>  4.結(jié)論正確,經(jīng)得起推敲<

41、;/p><p>  基于內(nèi)容的圖像搜索系統(tǒng)在未來(lái)的網(wǎng)絡(luò)應(yīng)用中,必將占據(jù)重要的一部分。為人們的生活服務(wù)增加更多別致的色彩。而其商業(yè)用途廣泛,市場(chǎng)前景開(kāi)闊,具有開(kāi)發(fā)的價(jià)值和意義。</p><p><b>  基于內(nèi)容的圖像搜索</b></p><p>  2.1基于內(nèi)容的圖像搜索的定義</p><p>  基于內(nèi)容的圖像搜索是使

42、用程序自動(dòng)提取圖像的指紋特征,對(duì)圖像進(jìn)行搜索的圖像搜索技術(shù)。</p><p>  基于內(nèi)容的圖像搜索技術(shù)不同于基于文本的圖像搜索技術(shù),基于文本的搜索的技術(shù)檢索的是人們手工對(duì)圖像添加的描述信息。基于內(nèi)容的圖像搜索系統(tǒng)則是根據(jù)圖像本身經(jīng)過(guò)一系列的程序處理之后,自動(dòng)提取出來(lái)的一個(gè)圖像僅有的指紋密碼,用來(lái)標(biāo)識(shí)和區(qū)分圖像。</p><p>  提取的圖像的指紋就好像人的指紋一樣。不同的是,對(duì)于人來(lái)說(shuō)

43、只能說(shuō)指紋一樣可以確定是同一個(gè)人;而不能說(shuō)兩個(gè)相似的指紋的就說(shuō)他們是兩個(gè)相似的人。而對(duì)象圖像的指紋,只是對(duì)圖像用某一種方法提取的一些特征點(diǎn),這些特征點(diǎn)的提取完全取決于提取的方法和圖像本身。同一張的圖像,用不同的方法提取的圖像的指紋可能不同,用同樣的方法選擇的特征點(diǎn)不同,提取的指紋也可能不同。對(duì)于圖像的識(shí)別和搜索,如何保證提取到的圖像指紋是正確的,又能唯一標(biāo)識(shí)這些圖像才是圖像搜索的關(guān)鍵。對(duì)于圖像的指紋,兩個(gè)相同的指紋不一定是同一張圖像,而

44、同一個(gè)圖像不能因?yàn)閹状尾煌奶崛《玫讲煌闹讣y。</p><p>  基于內(nèi)容的圖像搜索的目的就是在海量的圖像庫(kù)中找到與目標(biāo)圖像相似的圖像。而圖像庫(kù)所存儲(chǔ)的信息量之大覺(jué)得不僅僅限于幾十張上百?gòu)埖膱D像。為了證明基于內(nèi)容的圖像搜索算法的高效性和實(shí)用性。在本次報(bào)告中,將采用1000張圖像作為實(shí)驗(yàn)用的圖像庫(kù);運(yùn)用oracle數(shù)據(jù)庫(kù)保存圖像的指紋和路徑。使用JAVA高級(jí)程序語(yǔ)言作為開(kāi)發(fā)語(yǔ)言;JDK1.6開(kāi)發(fā)工具包;MyE

45、clipse 8.5作為開(kāi)發(fā)平臺(tái);Internet Explorer 10作為實(shí)驗(yàn)結(jié)果的展示平臺(tái);tomcat 6.0作為服務(wù)器。完成對(duì)基于內(nèi)同的圖像搜索算法的實(shí)驗(yàn)。</p><p>  2.2基于內(nèi)容的圖像搜索算法的設(shè)計(jì)</p><p>  2.2.1圖像的縮小與放大算法</p><p>  對(duì)于圖像的縮小,不是我們常見(jiàn)的尺寸的縮小。而是直接去掉一系列的像素點(diǎn),僅

46、僅保留圖像的機(jī)構(gòu)、明暗等一些基本信息。圖像的放大也不是我們所熟悉的對(duì)圖像尺寸的放大。這里所說(shuō)的圖像放大算法是根據(jù)圖像的本身在其中添加一些像素點(diǎn),達(dá)到圖像放大的效果。</p><p>  圖像縮小是一種比較簡(jiǎn)單的算法。圖像縮小只要選取要保留的像素點(diǎn),去掉多余的像素點(diǎn)。對(duì)于要保留像素點(diǎn)的選取也是十分講究的,選取的像素點(diǎn)不能過(guò)于集中,不用主觀(guān)的去選取某一個(gè)位置,這些的點(diǎn)的選取應(yīng)該是按照?qǐng)D像的比例,選取圖像的固定位置。在

47、基于內(nèi)容的圖像搜索中,圖像縮小算法運(yùn)用在基于內(nèi)容的圖像搜索算法的第一步,也是至關(guān)重要的一步,因?yàn)楹竺娴拿恳徊蕉家褂眠@一步的結(jié)果,這里出現(xiàn)任何的錯(cuò)誤都可能導(dǎo)致實(shí)驗(yàn)的失敗。所以在這一步中,謹(jǐn)慎選取圖像的64個(gè)像素點(diǎn),就8*8像素點(diǎn)。通俗的講也就是橫8豎8。64個(gè)像素點(diǎn)的選取是按照?qǐng)D像的比例選取的,比如原圖是640*640像素的,則選取的像素點(diǎn)(如表2.1所示),這些像素點(diǎn)的選取一定要有一個(gè)自己確定的規(guī)律性,另外圖像是否等比例縮小也至關(guān)重要

48、。在本文中對(duì)于圖像是縮小采用的是圖像的不等比例縮小。</p><p>  表2.1 64個(gè)像素點(diǎn)的選取</p><p>  圖像的放大算法相比于圖像的縮小的算法就要復(fù)雜的多。對(duì)于圖像的放大在本次試驗(yàn)中沒(méi)有用到,在此處只做簡(jiǎn)單的描述,不做詳細(xì)的介紹。</p><p>  對(duì)于圖像的放大,主要是在原有的圖像中,根據(jù)一定的規(guī)律添加一些像素點(diǎn)。而添加的難點(diǎn)就在于要怎么添加,

49、添加什么樣的像素點(diǎn)進(jìn)去。一張完美的圖像在我們程序員眼里不應(yīng)該僅僅是表象的那樣信息,而應(yīng)該是一個(gè)一個(gè)的點(diǎn),細(xì)化一些應(yīng)該是一個(gè)一個(gè)的數(shù)值。而就是這些數(shù)值組合成了一張張完美的圖像。圖像放大就是要往圖像里面添加一些像素點(diǎn),其實(shí)也就是往里面填充一個(gè)一個(gè)的數(shù)值,而這些數(shù)值的選取才是問(wèn)題的關(guān)鍵。</p><p>  為了減小放大的圖像和原圖的差異,這些值的選取就顯得非常重要了。怎么縮小這個(gè)差距。我們采取平均值的方法,計(jì)算要插入

50、像素點(diǎn)位置周?chē)袼攸c(diǎn)的平均值,作為要插入的像素點(diǎn)的值。這樣就有效的減少了圖像放大帶來(lái)的視覺(jué)變化。</p><p>  2.2.2簡(jiǎn)化圖像色彩</p><p>  簡(jiǎn)化圖像色彩是提取圖像指紋密碼的關(guān)鍵步驟。如何把三維的彩色圖像轉(zhuǎn)化為二維的灰度圖像,也是圖像指紋提取的關(guān)鍵。</p><p>  在這里用的到轉(zhuǎn)化方法是移位算法,計(jì)算灰度值。</p><

51、p>  假設(shè)彩色的RGB值(Red-Green-Blue 紅綠藍(lán))表示為pixels,則_red、_green、_blue可以表示為:</p><p><b>  公式(1);</b></p><p><b>  公式(2);</b></p><p><b>  公式(3);</b></p

52、><p>  由公式(1)、(2)、(3)可以得到灰度值garyValue:</p><p><b>  公式(4)。</b></p><p>  根據(jù)上述公式和2.2中得到的像素點(diǎn),可以計(jì)算得到每個(gè)像素點(diǎn)的灰度值。經(jīng)過(guò)計(jì)算得到的灰度值garyValue可能是小數(shù)。而在后續(xù)的算法中,還是要對(duì)灰度值進(jìn)行取舍,因此小額的數(shù)值損失不會(huì)對(duì)算法最終的準(zhǔn)確性產(chǎn)

53、生影響。所以在這里把得到的灰度值garyValue強(qiáng)制轉(zhuǎn)化成整形(即JAVA語(yǔ)言中的Int數(shù)據(jù)類(lèi)型),這樣不僅不會(huì)影響算法的準(zhǔn)確性,更能在一定的程度上提高算法的效率。</p><p>  經(jīng)過(guò)這一步的計(jì)算,原有的圖像已經(jīng)完全被轉(zhuǎn)化成了64個(gè)0到63的整數(shù)。而這些數(shù)字隱含了原有圖像的所有信息。</p><p>  拿到這些數(shù)字已經(jīng)完成了算法的最重要的兩步。而如何利用這些看似無(wú)關(guān)的數(shù)字,如何去

54、識(shí)別圖像呢?這就需要下面的一系列關(guān)于這些數(shù)字的計(jì)算。所以對(duì)于前面的至關(guān)重要的兩步,是絕對(duì)不能出現(xiàn)任何錯(cuò)誤的,否則后面的計(jì)算將是毫無(wú)意義的。</p><p>  2.2.3計(jì)算灰度平均值</p><p>  對(duì)于灰度平均值的計(jì)算可以說(shuō)是算法中最簡(jiǎn)單的一步。簡(jiǎn)單地說(shuō),就是根據(jù)公式(4)計(jì)算得到一系列灰度值的平均值。在本次實(shí)驗(yàn)中,一共取了64個(gè)像素點(diǎn),也就是一共64個(gè)灰度值。</p>

55、<p>  64個(gè)灰度值我們分別記為,,...,;那么平均值(avgValue)計(jì)算公式為:</p><p>  所有灰度值的和為: 公式(5)</p><p>  根據(jù)公式(5),可以得到:</p><p><b>  公式(6) ;</b></p><p>  由公式(6)可以得到圖像的灰度平均

56、值。經(jīng)過(guò)計(jì)算和算法的需要。把大于等于灰度平均值的灰度值記為1,小于灰度平均值的灰度值記為0;經(jīng)過(guò)研究和計(jì)算,這樣做不會(huì)影響算法的準(zhǔn)確性,還能在一定程度上提高搜索的效率。提高算法的實(shí)用性。這樣就可以得到一個(gè)64位的二進(jìn)制的圖像的指紋密碼。在試驗(yàn)中是要把得到的指紋密碼保存到oracle數(shù)據(jù)庫(kù)中,64位的二進(jìn)制保存起來(lái)將會(huì)占用大量的空間。而在最后進(jìn)行匹配搜索的時(shí)候也將消耗大量的資源,使得算法的運(yùn)行效率大大降低。在結(jié)合最后搜索的時(shí)候是要匹配的指

57、紋中不同位置二進(jìn)制的數(shù)量。而不需要原有的64位二進(jìn)制。因此,接下來(lái)要做的就是怎么方便快捷的把64位二進(jìn)制完全無(wú)誤的存儲(chǔ)的oracle數(shù)據(jù)庫(kù)中。</p><p>  2.2.4二進(jìn)制轉(zhuǎn)化為十六進(jìn)制</p><p>  如何把64位的二進(jìn)制指紋密碼,縮減成16位的十六進(jìn)制指紋密碼是本節(jié)的重點(diǎn)。二進(jìn)制轉(zhuǎn)化十六進(jìn)制需要先把二進(jìn)制轉(zhuǎn)化為十進(jìn)制作為中間橋梁,在轉(zhuǎn)化為十六進(jìn)制。</p>&

58、lt;p>  在本次課題中是把64位的二進(jìn)制每4位組合成一起轉(zhuǎn)化為十六進(jìn)制。4位二進(jìn)制的選取順序沒(méi)有特征的要求。但必須要保證圖像庫(kù)中所有的圖像選取的二進(jìn)制都是相同的順序。按要2.2中縮小圖像的方法將圖像縮小得到的應(yīng)該是8*8圖像,一共是64個(gè)像素點(diǎn),到本節(jié)是64位二進(jìn)制??梢孕蜗蟮陌堰@64位二進(jìn)制比作一個(gè)8*8矩陣的64個(gè)點(diǎn)。在這一步中,選取4位二進(jìn)制的時(shí)候需要保證所有的圖像都采用相同的選取方法。比如第一個(gè)4位二進(jìn)制選取矩陣的(0

59、,1),(0,2),(0,3),(0,4)4個(gè)像素點(diǎn),那么所有的圖像庫(kù)的圖像選取4位二進(jìn)制的時(shí)候第一個(gè)4位二進(jìn)制都必須選取這4個(gè)來(lái)轉(zhuǎn)換第一個(gè)十六進(jìn)制。以此類(lèi)推,直至無(wú)重復(fù)的選取到所有點(diǎn),即取夠16組4位二進(jìn)制。</p><p>  然后就可以根據(jù)二進(jìn)制轉(zhuǎn)換十六進(jìn)制的一般步驟進(jìn)行進(jìn)制變換;二進(jìn)制轉(zhuǎn)化為十進(jìn)制可以根據(jù)二進(jìn)制轉(zhuǎn)化十進(jìn)制公式:例如二進(jìn)制數(shù)abcd,轉(zhuǎn)化為十進(jìn)制為:。</p><p>

60、;  把二進(jìn)制轉(zhuǎn)化為十進(jìn)制之后可以根據(jù)十進(jìn)制與十六進(jìn)制的對(duì)應(yīng)關(guān)系,將十進(jìn)制轉(zhuǎn)化為十六進(jìn)制,從而完成從二進(jìn)制到十六進(jìn)制的轉(zhuǎn)換。</p><p>  根據(jù)上述的轉(zhuǎn)化規(guī)則,就可以得到一個(gè)16位的十六進(jìn)制數(shù)。也就是圖像的指紋密碼。</p><p>  算法運(yùn)行到這里已經(jīng)完全了準(zhǔn)備工作?,F(xiàn)在要做的就是把得到16位十六進(jìn)制數(shù)也就是圖像的指紋密碼保存到oracle數(shù)據(jù)庫(kù)中,保存類(lèi)型為varchar2類(lèi)型

61、。</p><p>  2.2.5圖像相似度劃分</p><p>  所謂相似,可以理解為有多少一樣,也可以理解為有多少不一樣。很顯然一樣的越多相似程度就越高,不一樣的越多相似的程度就越低。</p><p>  經(jīng)過(guò)對(duì)16位十六進(jìn)制的指紋密碼進(jìn)行匹配得到:</p><p>  1.不同位數(shù)小于等于5的時(shí)候,圖像的像素程度很高;</p&g

62、t;<p>  2.不同位數(shù)在5到10之間的時(shí)候,圖像有相似之處,但相似的程度不高;</p><p>  3.不同位數(shù)大于10的時(shí)候,兩張圖像沒(méi)有相似點(diǎn),兩張圖像完全不同。</p><p>  根據(jù)這個(gè)結(jié)論,就可以完成對(duì)數(shù)據(jù)庫(kù)中相似的圖像的搜索了。為了保證算法結(jié)果更具說(shuō)服力,在下面章節(jié)中,將進(jìn)行實(shí)時(shí)實(shí)驗(yàn)。</p><p>  基于內(nèi)容的圖像搜索系統(tǒng)的設(shè)

63、計(jì)與實(shí)現(xiàn)</p><p><b>  3.1實(shí)驗(yàn)準(zhǔn)備</b></p><p>  為了更好的進(jìn)行說(shuō)明基于內(nèi)容的圖像搜索算法的可行性和實(shí)用性,本文將對(duì)算法進(jìn)行試驗(yàn)。為了保證試驗(yàn)的順利進(jìn)行,需要一些硬件環(huán)境和軟件環(huán)境。</p><p><b>  3.1.1硬件條件</b></p><p>  軟件的運(yùn)

64、行需要硬件平臺(tái)的支持。本次實(shí)驗(yàn)所用的電腦至少需要同時(shí)運(yùn)行MyEclipse 、Internet Explorer,因此需要運(yùn)行內(nèi)存2G及以上;算法結(jié)果展示需要大量的本地內(nèi)存圖像需要占用很大的硬盤(pán)空間,電腦硬盤(pán)需要在100G以上;軟件安裝需要操作系統(tǒng)的支持,本次開(kāi)發(fā)根據(jù)系統(tǒng)開(kāi)發(fā)和運(yùn)行需求,需要電腦的操作系統(tǒng)在Windows XP及以上版本。</p><p><b>  3.1.2軟件環(huán)境</b>

65、;</p><p>  軟件的運(yùn)行需要一定的條件的支持,開(kāi)發(fā)軟件同樣也是需要一定的軟件環(huán)境支持開(kāi)發(fā)工作。在本次實(shí)驗(yàn)中,選取的是JAVA語(yǔ)言作為開(kāi)發(fā)語(yǔ)言,Oracle數(shù)據(jù)庫(kù)作為開(kāi)發(fā)使用數(shù)據(jù)庫(kù),tomcat作為試驗(yàn)用服務(wù)器,Internet Explorer作為實(shí)驗(yàn)結(jié)果展示平臺(tái)。因此需要一些必要的條件:</p><p>  MyEclipse 8.5或以上版本 需支持JDK1.6;</p

66、><p>  Oracle 10g或以上版本;</p><p>  Tomcat 6.0 或以上版本作為程序運(yùn)行的服務(wù)器;</p><p>  4.Internet Explorer 10或以上版本。</p><p><b>  3.2算法流程圖</b></p><p>  算法過(guò)程主要分為以下幾個(gè)步

67、驟(如圖3.1):</p><p>  步驟1.縮小圖像8*8尺寸,根據(jù)一定的規(guī)律選擇圖像要保留的64個(gè)像素點(diǎn),必須保證每張圖像選取的像素點(diǎn)都是在相同的相對(duì)位置;</p><p>  步驟2.使用移位操作的方法將色彩圖像簡(jiǎn)化色彩,轉(zhuǎn)化為64級(jí)灰度,轉(zhuǎn)化之后是64位0-63之間的數(shù)字;</p><p>  步驟3.計(jì)算灰度平均值,也就是計(jì)算步驟2得到的64位0-63之

68、間的數(shù)字的平均值;</p><p>  步驟4.灰度平均值和灰度值比較,大于等于灰度平均值記為1,小于灰度平均值記為0,可得到64位二進(jìn)制;</p><p>  步驟5.把64位二進(jìn)制轉(zhuǎn)化為16位十六進(jìn)制,作為圖像的指紋密碼;</p><p>  步驟6.將得到的16位十六進(jìn)制指紋密碼保存到Oracle數(shù)據(jù)庫(kù)中。</p><p>  圖3.1

69、 算法流程圖</p><p>  根據(jù)圖3.1算法流程圖,可以很明顯的看到算法的基本步驟。每個(gè)步驟之間環(huán)環(huán)相扣,任何一個(gè)環(huán)節(jié)的錯(cuò)誤都可能導(dǎo)致整個(gè)程序運(yùn)行失敗。因此在算法的每一步計(jì)算中都要謹(jǐn)慎。</p><p>  3.3縮小圖像的實(shí)現(xiàn)</p><p>  在本小節(jié)中采用的圖像的不等比例縮小。也就是說(shuō)無(wú)論原來(lái)的圖像的尺寸的比例是怎么樣的,經(jīng)過(guò)本節(jié)的劃算之后都是等比例的

70、圖像;實(shí)現(xiàn)圖像縮小的核心JAVA源代碼如下:</p><p>  在JAVA源碼中;target就是縮小的圖像。但在此處已經(jīng)是面目全非。經(jīng)過(guò)上面源碼的處理之后原有圖像已經(jīng)變?yōu)?4個(gè)像素點(diǎn),只保留了圖像的結(jié)構(gòu)、明暗等基本信息。</p><p>  圖像縮小的主要原理是去掉一些像素點(diǎn),也可以說(shuō)是選擇一些要保留的像素點(diǎn)。本次實(shí)驗(yàn)中,需要處理的結(jié)果是提取64個(gè)像素點(diǎn)。本次選取的像素點(diǎn)是固定在原圖像

71、的8分位置。對(duì)于所有的圖像的縮小都是選取圖像相對(duì)于這個(gè)位置的像素點(diǎn)。</p><p>  3.4簡(jiǎn)化圖像色彩的實(shí)現(xiàn)</p><p>  在本小節(jié)中,主要實(shí)現(xiàn)對(duì)已經(jīng)縮小過(guò)的圖像進(jìn)行色彩簡(jiǎn)化。簡(jiǎn)化后圖像是64級(jí)灰度。經(jīng)過(guò)本節(jié)算法的處理之后圖像已經(jīng)變?yōu)?4個(gè)0-63的整數(shù)(在下面章節(jié)中有對(duì)灰度值進(jìn)行在不影響算法準(zhǔn)確性的前提下的約算,所以在本小節(jié)中,對(duì)灰度值的計(jì)算也采用了取整的思想)。具體的實(shí)現(xiàn)的

72、核心JAVA源代碼如下:</p><p>  上述源碼中是用移位算法,對(duì)于圖像的RGB值分別進(jìn)行移位操作。_red對(duì)應(yīng)圖像的R值,_green對(duì)應(yīng)圖像的G值,_blue對(duì)應(yīng)圖像的B值。對(duì)R值0xFF右移16位,對(duì)B值0xFF右移8位,之后根據(jù)2.2.2節(jié)中的公式(3)可以計(jì)算得到灰度值。之后進(jìn)行強(qiáng)制轉(zhuǎn)化成整型。</p><p>  在上述JAVA源碼中,采用移位的方法對(duì)圖像進(jìn)行簡(jiǎn)化。其中p

73、ixels表示3.3章節(jié)中縮小圖像得到的像素點(diǎn)。對(duì)于64個(gè)像素點(diǎn)灰度值的計(jì)算依次調(diào)用這個(gè)方法就可以了,具體實(shí)現(xiàn)的核心JAVA源代碼如下:</p><p>  在上面的JAVA源碼中,使用兩次for循環(huán)嵌套,對(duì)3.3章節(jié)中得到的64個(gè)像素點(diǎn)進(jìn)行遍歷。對(duì)每個(gè)像素點(diǎn)進(jìn)行灰度轉(zhuǎn)化。可以得到64級(jí)灰度值。</p><p><b>  3.5獲得圖像指紋</b></p>

74、;<p>  在3.4節(jié)中,已經(jīng)獲得了圖像的64級(jí)灰度值。本節(jié)的重點(diǎn)就是根據(jù)這些灰度值獲得圖像的指紋密碼。在本次算法中,采用計(jì)算平均值的方法,大于等于灰度平均值的灰度級(jí)記為1,小于灰度平均值的灰度級(jí)記為0;這樣就可以得到64位的二進(jìn)制數(shù)。具體實(shí)現(xiàn)的核心JAVA源代碼如下:</p><p><b>  1.計(jì)算灰度平均值</b></p><p>  對(duì)3.

75、4簡(jiǎn)化圖像色彩得到的64級(jí)灰度值計(jì)算其平均值,使用for循環(huán)灰度值數(shù)組的總和,然后用求得的組合除以數(shù)組的長(zhǎng)度就可以得到圖像的灰度平均值。</p><p>  2.大于等于灰度平均值的灰度級(jí)記為1,小于灰度平均值的灰度級(jí)記為0</p><p>  對(duì)64級(jí)灰度值的數(shù)組使用for循環(huán)就行遍歷,用數(shù)組中的每個(gè)值和上一步中得到的平均值用if-else語(yǔ)句進(jìn)行判斷,大于等于平均值則記為1,小于平均值

76、則記為0,這樣就可以得到64位的二進(jìn)制。</p><p>  3.二進(jìn)制轉(zhuǎn)化為十六進(jìn)制獲得圖像的指紋密碼</p><p>  對(duì)于二進(jìn)制轉(zhuǎn)化為十六進(jìn)制,首先要把二進(jìn)制以4位為單位轉(zhuǎn)化為十進(jìn)制,然后根據(jù)得到的十進(jìn)制數(shù)在轉(zhuǎn)化為十六進(jìn)制。</p><p>  若轉(zhuǎn)化得到的十進(jìn)制小于等于9,則轉(zhuǎn)化為十六進(jìn)制之后還是原來(lái)的。若轉(zhuǎn)化得到的十進(jìn)制大于等于10小于等于15,則轉(zhuǎn)化

77、十六進(jìn)制分別用“a”、“b”、“c”、“d”、“e”、“f”表示十進(jìn)制中的10、11、12、13、14、15、16。具體的實(shí)現(xiàn)如下。</p><p>  本次實(shí)驗(yàn)采用的是直接將二進(jìn)制轉(zhuǎn)化為十進(jìn)制,然后在轉(zhuǎn)化為十六進(jìn)制。這其中的十進(jìn)制在轉(zhuǎn)化過(guò)程中僅僅起到了橋梁的作用,不作為最終結(jié)果保存。而簡(jiǎn)化圖像色彩得到的是64位二進(jìn)制。這樣就要先把二進(jìn)制以四位為單位轉(zhuǎn)化為十進(jìn)制。再把得到的十進(jìn)制轉(zhuǎn)化為十六進(jìn)制。最后得到圖像的指紋

78、密碼。</p><p><b>  3.6存儲(chǔ)圖像指紋</b></p><p>  3.6.1 創(chuàng)建數(shù)據(jù)庫(kù)表格</p><p>  Oracle 簡(jiǎn)表語(yǔ)言:</p><p>  由于系統(tǒng)只需要一張表,不用考慮表的關(guān)聯(lián)問(wèn)題,只需要表達(dá)清楚表中各個(gè)字段的約束條件就可以了。number在表中表示表的主鍵,為圖像的唯一約束條件。

79、route是圖像的本地路徑,用在展示算法搜索結(jié)果的jsp頁(yè)面中以顯示圖像。secure為提取的圖像指紋密碼,用于相似圖像的搜索。</p><p>  3.6.2 建立數(shù)據(jù)庫(kù)連接</p><p>  Images類(lèi)是圖像表對(duì)應(yīng)的實(shí)體類(lèi),iamgeId是圖像的唯一標(biāo)識(shí),route是圖像路徑,secure是圖像的指紋密碼也就是前面得到的八位十六進(jìn)制。</p><p>  

80、由于在實(shí)驗(yàn)中需要保存大量的圖像路徑和圖像指紋密碼。所有在實(shí)際操作中選擇了用數(shù)據(jù)庫(kù)保存圖像的路徑和指紋密碼。而沒(méi)有選擇看起來(lái)更簡(jiǎn)單的文件。因?yàn)樵趯?duì)文件操作時(shí),無(wú)論是讀文件還是寫(xiě)文件都很容易出現(xiàn)IOException,對(duì)于異常的處理無(wú)論是將異常直接拋出還是進(jìn)行捕獲都需要消耗大量的資源。甚至還可能造成系統(tǒng)崩潰。選擇Oracle數(shù)據(jù)庫(kù),只有在保存圖像的時(shí)候需要使用到流的操作,而這些步驟可以在程序運(yùn)行之前完成。就算是出現(xiàn)異?;蛘咤e(cuò)誤,也有調(diào)試和修

81、改的機(jī)會(huì)。不會(huì)造成系統(tǒng)的崩潰。</p><p>  為了保證代碼的安全和提高可讀性。本次實(shí)驗(yàn)采用了接口,對(duì)具體的實(shí)現(xiàn)方法進(jìn)行了封裝。僅僅對(duì)外開(kāi)放接口。如果需要被外界程序調(diào)用,直接開(kāi)放接口,就可以避免程序源碼的泄露。提高程序的安全性。</p><p>  3.6.3存儲(chǔ)圖像指紋</p><p>  使用Hibernate建議數(shù)據(jù)庫(kù)連接,用來(lái)存儲(chǔ)和查詢(xún)數(shù)據(jù)。使用自動(dòng)生成

82、的ID的方法進(jìn)行添加數(shù)據(jù)</p><p>  Hibernate 的配置文件的核心代碼如下:</p><p>  在配置文件中,圖像表主鍵采用序列號(hào),自動(dòng)生成。路徑和指紋分別使用Hibernate中的“string”類(lèi)型和圖像實(shí)體類(lèi)一一映射。</p><p>  完成Hibernate配置之后就要使用Hibernate建議服務(wù)器與數(shù)據(jù)庫(kù)之間的連接,以完成對(duì)圖像指紋的

83、插入和查詢(xún)。</p><p>  連接數(shù)據(jù)庫(kù)的方法作為靜態(tài)的輔助方法存在,在系統(tǒng)中起到輔助作用。主要是用于建立服務(wù)器和數(shù)據(jù)庫(kù)之間的連接,為后續(xù)的插入和查詢(xún)數(shù)據(jù)庫(kù)提供輔助功能。</p><p>  提取圖像指紋,并把游離狀態(tài)的圖像指紋和圖像路徑持久化到數(shù)據(jù)庫(kù)中,在這一步中,在持久化之后一定要提交事件并關(guān)閉數(shù)據(jù)庫(kù)連接。</p><p><b>  3.7匹配搜

84、索圖像</b></p><p>  在提取圖像指紋之后要對(duì)圖像就行匹配搜索,匹配搜索是對(duì)圖像指紋的搜索。和傳統(tǒng)意義上的文字匹配類(lèi)似。 </p><p>  3.7.1提取樣本圖像的指紋</p><p>  根據(jù)3.3、3.4、3.5三個(gè)小節(jié)可以獲得原有樣本圖像的指紋。依次對(duì)樣本圖像進(jìn)行縮小、簡(jiǎn)化色彩、圖像指紋提取得到圖像的指紋密碼。</p>

85、<p>  提取樣本圖像指紋的方法必須采用數(shù)據(jù)庫(kù)中原有圖像的提取圖像指紋方法一致。這樣才能保證搜索結(jié)果的穩(wěn)定性和算法實(shí)現(xiàn)結(jié)果的準(zhǔn)確性。完成樣本圖像指紋密碼的提取之后,就要建立數(shù)據(jù)庫(kù)的連接并查詢(xún)數(shù)據(jù)庫(kù)中所有圖像的指紋密碼,然后用樣本的圖像的指紋密碼就行匹配。</p><p><b>  3.7.2匹配搜索</b></p><p>  提取了樣本圖像的指紋密碼

86、之后就要完成樣本圖像和數(shù)據(jù)庫(kù)中原有圖像之間的匹配,在完成這個(gè)匹配之前我們要完成對(duì)數(shù)據(jù)庫(kù)中圖像指紋的查詢(xún)。</p><p>  這個(gè)方法的返回結(jié)果就是數(shù)據(jù)庫(kù)中原有圖像的集合。在服務(wù)器中,Images對(duì)象包含圖像指紋的屬性。接下來(lái)要做的就是對(duì)圖像指紋進(jìn)行匹配。在數(shù)據(jù)庫(kù)中可能會(huì)出現(xiàn)沒(méi)有與樣本圖像相似或者只存在于樣本圖像相似度不高的圖像。因此,在這里做了一個(gè)判斷:如果數(shù)據(jù)庫(kù)中沒(méi)有與樣本圖像相似程度較高(不同數(shù)小于等于5)

87、的圖像,就把相似程度不高(不同大于5小于等于10)的圖像搜索出來(lái)。</p><p>  這樣就保證了用戶(hù)對(duì)圖像搜索不出來(lái)相似圖像的尷尬局面。也完善了算法的準(zhǔn)確性和實(shí)用性。</p><p>  基于內(nèi)容的圖像搜索系統(tǒng)結(jié)果展示</p><p>  4.1圖像搜索結(jié)果展示</p><p>  本小節(jié)主要是對(duì)圖像搜索結(jié)果的展示,用實(shí)驗(yàn)結(jié)果說(shuō)明本算法搜

88、索結(jié)果的準(zhǔn)確性。并舉例說(shuō)明了算法在生活中的實(shí)用性和市場(chǎng)應(yīng)用前景。</p><p>  圖4.1 案例1搜索用圖(左)和搜索結(jié)果(右)</p><p>  圖4.1中左側(cè)圖為搜索用圖,左側(cè)人物與右側(cè)搜索結(jié)果中的人物相似程度很好,在右側(cè)搜索結(jié)果中,可以明顯看到結(jié)果與搜索原圖有相似。</p><p>  說(shuō)明一下,基于內(nèi)容的圖像搜索不同于人對(duì)人臉識(shí)別。同人眼的視覺(jué)不一樣。

89、也許人眼看到的相似對(duì)于基于內(nèi)容的圖像搜索系統(tǒng)可能是不相似的。基于內(nèi)容的圖像搜索是根據(jù)圖像是結(jié)構(gòu)、色彩等進(jìn)行匹配的結(jié)果。而實(shí)現(xiàn)僅僅選取了64個(gè)像素點(diǎn)作為實(shí)驗(yàn)用樣本。所以,本文搜索的相似程度不高也在預(yù)料之中。如果需要提高搜索的相似程度可以選取更多的相似點(diǎn)作為實(shí)驗(yàn)樣本,也可以在劃分相似度的時(shí)候把圖像的相似度定義的更高一些。本次實(shí)驗(yàn)只是選取了少量的圖像。當(dāng)圖像的數(shù)據(jù)量足夠大的時(shí)候,完全可以選取更多的相似點(diǎn),選取更多的相似像素點(diǎn)作為相似圖像的判定

90、標(biāo)準(zhǔn)。</p><p>  圖4.2是“百度識(shí)圖”的搜索結(jié)果,與圖4.1本實(shí)驗(yàn)系統(tǒng)的搜索結(jié)果相比極為相似??梢哉f(shuō)明本次實(shí)驗(yàn)的結(jié)果是很準(zhǔn)確的。</p><p>  圖4.2 “百度識(shí)圖”搜索用圖(左)和搜索結(jié)果(右)</p><p>  根據(jù)同一張圖片搜索對(duì)比可以看到本文所研究的基于內(nèi)容的圖像搜索算法搜索結(jié)果和已經(jīng)成熟上市的“百度識(shí)圖”搜索結(jié)果類(lèi)似。且具有與“百度識(shí)圖

91、”一比的實(shí)力。</p><p>  圖4.3 案例2搜索用圖(左)和搜索結(jié)果(右)</p><p>  圖4.3左圖是一款手表的圖像,右圖是搜索結(jié)果圖像。由于算法主要是實(shí)現(xiàn)對(duì)相似圖像搜搜,所以未對(duì)圖像添加其他的輔助屬性。如果對(duì)圖像添加一些如價(jià)格、規(guī)格、說(shuō)明性的文字,融入到購(gòu)物網(wǎng)站中,那么就足以實(shí)現(xiàn)以圖搜圖的購(gòu)物方式了。近期手機(jī)淘寶客戶(hù)端也推出了拍立淘的功能。只要拿起手機(jī)拍張照片就可以搜索相

92、似的淘寶商品。看來(lái)淘寶已經(jīng)發(fā)現(xiàn)了這個(gè)商機(jī),也足以說(shuō)明基于內(nèi)容的圖像搜索系統(tǒng)的廣闊前景和實(shí)用性。</p><p>  圖4.4 案例3搜索用圖(上)和搜索結(jié)果(下)</p><p>  圖4.4上圖是一張風(fēng)景的圖像,下圖是搜索結(jié)果的圖像。如果對(duì)圖像添加一些輔助屬性將圖像展示為某一地區(qū)的風(fēng)景。也就可以做成旅游向?qū)В瑸橛慰吞峁└奖憧旖莸穆糜温肪€(xiàn)。在現(xiàn)在還沒(méi)有任何的景區(qū)推出圖像搜索功能搜索景點(diǎn)風(fēng)

93、景,如果這樣做成旅游向?qū)?,?yīng)用前景定將十分開(kāi)闊。</p><p>  經(jīng)過(guò)上面三個(gè)簡(jiǎn)單的圖像搜索案例展示,基本上可以看出基于內(nèi)容的圖像搜索算法的搜索結(jié)果是可以滿(mǎn)意相似圖像搜索的基本要求的。在購(gòu)物導(dǎo)游等方便都有廣泛的應(yīng)用前景。</p><p>  4.2算法運(yùn)行時(shí)間展示</p><p>  本次算法的展示時(shí)間是從服務(wù)器接收到客戶(hù)端發(fā)出的請(qǐng)求到服務(wù)器對(duì)客戶(hù)端作出響應(yīng)的時(shí)

94、間。而不是用戶(hù)看到的點(diǎn)擊搜索到出現(xiàn)搜索結(jié)果的圖像。對(duì)于不同的客戶(hù)、不同的瀏覽器、網(wǎng)絡(luò)環(huán)境等都可能會(huì)影響程序的響應(yīng)時(shí)間。因此,試驗(yàn)中選取了從服務(wù)器接收到客戶(hù)端發(fā)出的請(qǐng)求到服務(wù)器對(duì)客戶(hù)端作出響應(yīng)的時(shí)間作為程序的響應(yīng)時(shí)間,這個(gè)時(shí)間也就是服務(wù)器接受到客戶(hù)端的請(qǐng)求發(fā)來(lái)的圖像信息,對(duì)發(fā)來(lái)的圖像進(jìn)行指紋提取,建立數(shù)據(jù)庫(kù)連接,查詢(xún)數(shù)據(jù)庫(kù)以及與數(shù)據(jù)庫(kù)中查找到信息匹配的過(guò)程。</p><p>  ·在第一次搜索需要耗時(shí)12

95、31毫秒:</p><p>  ·重啟tomcat服務(wù)器,運(yùn)行程序耗時(shí)1266毫秒:</p><p>  ·再次重啟tomcat服務(wù)器,運(yùn)行程序耗時(shí)1208毫秒:</p><p>  在第一次運(yùn)行程序的時(shí)候需要連接數(shù)據(jù)庫(kù),查詢(xún)數(shù)據(jù)庫(kù)而獲取數(shù)據(jù)庫(kù)中保存的圖像指紋密碼。而第一次之后運(yùn)行程序查詢(xún)數(shù)據(jù)庫(kù)這一步可以直接使用緩存中的數(shù)據(jù)代替,而不需要重新連接

96、、查詢(xún)數(shù)據(jù)庫(kù);只需要對(duì)jsp頁(yè)面?zhèn)鬟^(guò)來(lái)的圖像就行處理獲取其指紋密碼,然后和緩存中的圖像指紋密碼進(jìn)行匹配就可以得到圖像搜索結(jié)果。因而運(yùn)行效率大大提高。</p><p>  ·不重啟tomcat服務(wù)器,運(yùn)行搜索程序耗時(shí)60毫秒:</p><p>  ·不重啟tomcat服務(wù)器,再次運(yùn)行搜索程序耗時(shí)48毫秒:</p><p>  ·不重啟to

97、mcat服務(wù)器,再次運(yùn)行搜索程序耗時(shí)40毫秒</p><p>  再次運(yùn)行程序可以發(fā)現(xiàn),服務(wù)器的響應(yīng)時(shí)間縮短了近30倍,這完全是人腦可以識(shí)別的時(shí)間差。由一秒多縮短到不足0.1秒,也足以說(shuō)明了正確的運(yùn)行了緩存中的數(shù)據(jù)。有效的提高了程序運(yùn)行的效率。</p><p>  根據(jù)上面對(duì)算法運(yùn)行時(shí)間的測(cè)試,可以清晰看到算法的運(yùn)行時(shí)間是十分的快速的。首次運(yùn)行程序在1200毫秒左右,1秒的響應(yīng)時(shí)間在大多數(shù)

98、用戶(hù)眼中是可以接受的。第二次運(yùn)行搜搜程序,程序運(yùn)行的時(shí)候可以控制在100毫秒內(nèi)也就是不足0.1秒。這樣的速度在大多數(shù)人眼中都算得上是高速了。足以證明算法的可用性。</p><p>  在實(shí)際中,我們?cè)L問(wèn)“百度識(shí)圖”的時(shí)間,從上傳成功到頁(yè)面顯示出搜索結(jié)果一般是在2s到5s之間(根據(jù)秒表計(jì)時(shí)結(jié)果)。而基于內(nèi)容的圖像搜索算法,從服務(wù)器讀取到數(shù)據(jù)到服務(wù)器做出響應(yīng)運(yùn)行時(shí)間在0.1s左右。因此,基于內(nèi)容的圖像搜索算法在運(yùn)行時(shí)

99、間上具有可行性。</p><p><b>  結(jié)論與展望</b></p><p><b>  5.1結(jié)論</b></p><p>  經(jīng)過(guò)對(duì)算法的反復(fù)推敲和多次試驗(yàn),可以得到算法搜索結(jié)果準(zhǔn)確,運(yùn)行效率高,可以滿(mǎn)足當(dāng)今廣大用戶(hù)對(duì)相似圖像搜索結(jié)果的需求。算法的速度可以控制在0.1秒內(nèi),足以滿(mǎn)足廣大用戶(hù)對(duì)系統(tǒng)響應(yīng)時(shí)間的需求。因此

100、可以得出結(jié)論:基于內(nèi)容的圖像搜索系統(tǒng)從結(jié)果準(zhǔn)確性和運(yùn)行速度上都可以滿(mǎn)足用戶(hù)需求,是一個(gè)很好的算法。</p><p>  經(jīng)過(guò)對(duì)算法的可行性分析,可以看出算法的可行性很高。是一個(gè)使用的圖像搜索項(xiàng)目。在對(duì)算法就是設(shè)計(jì)和實(shí)現(xiàn)后可以看到,基于內(nèi)容的圖像搜索系統(tǒng)運(yùn)行時(shí)間快,相似圖像搜索結(jié)果準(zhǔn)備,可以運(yùn)用和推廣。</p><p><b>  5.2展望</b></p>

101、<p>  基于內(nèi)容的圖像搜索系統(tǒng)在計(jì)算機(jī)應(yīng)用及Internet普及的時(shí)代,應(yīng)用面將會(huì)不斷擴(kuò)大需求,市場(chǎng)需求也會(huì)不斷增大。隨著手機(jī)淘寶客戶(hù)端拍立淘功能的上線(xiàn),拍照購(gòu)物也將成為一種潮流,甚至還有可能取代關(guān)鍵詞搜索購(gòu)物。在如今Internet快速發(fā)展和網(wǎng)購(gòu)的普及,圖像搜索購(gòu)物也必將成為一種新的購(gòu)物潮流。基于內(nèi)容的圖像搜索系統(tǒng)有其存在的價(jià)值和意義。</p><p>  基于內(nèi)容的圖像搜索系統(tǒng)也可以運(yùn)用到中

102、醫(yī)藥檢索中,可以根據(jù)中藥的圖像對(duì)草藥圖像庫(kù)就行相似度搜索,尋找與原有藥品相似的植物,從而發(fā)現(xiàn)原有中草藥的替代品或者新的功能的中草藥。</p><p>  IT屆巨頭“阿里巴巴”最近推出的手機(jī)淘寶客戶(hù)端中,新增了“拍立淘”的功能,這個(gè)功能實(shí)現(xiàn)了以圖像的方法搜索在線(xiàn)商品的方法。雖然,“拍立淘”功能目前只適用于對(duì)“包包”和“衣服”的搜索,但這也是圖片購(gòu)物時(shí)代開(kāi)啟的征兆。面對(duì)巨額的市場(chǎng),圖片購(gòu)物也一定會(huì)在未來(lái)的購(gòu)物模式中

103、占有一席之地。</p><p>  因此,基于內(nèi)容的圖像搜索系統(tǒng)在未來(lái)的互聯(lián)網(wǎng)中,擁有很大的發(fā)展空間和應(yīng)用前景。具有深度研究的價(jià)值。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1]趙建成。基于內(nèi)容的圖像檢索技術(shù)的研究與應(yīng)用[D],華東師范大學(xué),2007。</p><p>  [2]李向陽(yáng),莊越挺

104、,潘云鶴。基于內(nèi)容的圖像檢索技術(shù)與系統(tǒng)- 計(jì)算機(jī)研究與發(fā)展[C]。</p><p>  [3]熊回香?;趦?nèi)容的圖像檢索技術(shù)的發(fā)展方向[M],計(jì)算機(jī)應(yīng)用-信息處理《現(xiàn)代圖書(shū)情報(bào)技術(shù)》, 2005。</p><p>  [4]王濤,胡事民,孫家廣?;陬伾?空間的圖像檢索[D]- 軟件學(xué)報(bào)。</p><p>  [5]劉巍,王峰。基于多維特征向量的圖像檢索技術(shù)研究-圖

105、像識(shí)別與處理[C]- 中國(guó)科技信息, 2013。</p><p>  [6]沈新寧,王小龍,杜建洪?;陬伾韵嚓P(guān)圖和互信息的圖像檢索算法復(fù)旦大學(xué)信息科學(xué)與工程學(xué)院[D]-計(jì)算機(jī)工程, 2014。</p><p>  [7]朱黎輝,李曉寧,張瑩,蒲華秀,吳純潔?;谛螤钐卣骷凹y理特征的中藥材檢索方法[D], 四川師范大學(xué)計(jì)算機(jī)科學(xué)學(xué)院;成都中醫(yī)藥大學(xué)中藥材標(biāo)準(zhǔn)化教育部重點(diǎn)實(shí)驗(yàn)室

106、計(jì)算機(jī)工程與設(shè)計(jì),2014。</p><p>  [8]Yang, Li Lin, Yang ; Lin, Zhouchen ; Zha, Hongbin Low Rank Global Geometric Consistency for Partial-Duplicate Image Search Pattern Recognition (ICPR)[C], 2

107、014。</p><p>  [9]Y Li, C Chen, W Liu, J Huang - Proc. Sub-Selective Quantization for Large-Scale Image SearchAAAI Conference on Artificial[M], 2014.</p><p>  [10]J Wang, X Hu

108、a - US Patent Intelligent Image Search Results Summarization and Browsing[M]20,140,321,761, 2014 .</p><p>  [11]朱玉濱,基于SIFT的圖像檢索技術(shù)研究[D] 碩士 吉林大學(xué) 2014。</p><p><b>  致 謝</b></p>&

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論