亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于層次索引的圖像檢索方法及系統(tǒng)的制作方法

文檔序號(hào):6519978閱讀:170來(lái)源:國(guó)知局
一種基于層次索引的圖像檢索方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明涉及一種基于層次索引的圖像檢索方法,包括步驟:步驟1:對(duì)庫(kù)圖像提取二進(jìn)制特征,并存入特征庫(kù);步驟2:對(duì)特征庫(kù)中的每個(gè)二進(jìn)制特征隨機(jī)提取24位作為新特征組成新數(shù)據(jù)集;步驟3:對(duì)新數(shù)據(jù)集建立聚類索引,使搜索空間分為多層;步驟4:接收查詢圖像,提取查詢圖像的查詢特征,對(duì)查詢特征隨機(jī)提取24位構(gòu)成新查詢特征,并將新查詢特征與新數(shù)據(jù)集中的二進(jìn)制特征進(jìn)行匹配,完成初步過(guò)濾并得到候選集合;步驟5:將候選集合中的所有特征與原查詢特征進(jìn)行相似度計(jì)算,得到多個(gè)相似特征構(gòu)成相似數(shù)據(jù)集,完成圖像檢索。本發(fā)明與基于sift特征的索引結(jié)構(gòu)相比,該索引結(jié)構(gòu)使得檢索效率明顯提升,空間資源消耗降低。
【專利說(shuō)明】—種基于層次索引的圖像檢索方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種基于層次索引的圖像檢索方法及系統(tǒng),屬于大規(guī)模圖像檢索領(lǐng)域。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)和多媒體技術(shù)的飛速發(fā)展,互聯(lián)網(wǎng)上的圖像數(shù)量已達(dá)到了數(shù)千億級(jí)并呈現(xiàn)不斷增長(zhǎng)的趨勢(shì)。以著名社交網(wǎng)站Facebook和圖像分享網(wǎng)站Flicker為例,截止到2011年6月,F(xiàn)acebook約有1000億副圖像,F(xiàn)licker用戶每天上傳的圖像就有450萬(wàn)副。如何建立有效的檢索機(jī)制,在浩瀚的圖像庫(kù)中實(shí)現(xiàn)快速、有效的目標(biāo)圖像檢索,成為多媒體領(lǐng)域亟待解決的問(wèn)題。
[0003]圖像的檢索問(wèn)題可以分為基于關(guān)鍵字的圖像檢索和基于內(nèi)容的圖像檢索?;陉P(guān)鍵字的圖像檢索需要人工對(duì)圖像標(biāo)注,賦予圖像語(yǔ)義信息。這種方法有局限性,人工標(biāo)注的語(yǔ)義內(nèi)容可能存在歧義,圖像本身的一些紋理特征很難準(zhǔn)確描述,而且對(duì)大規(guī)模圖像標(biāo)注需要很大的工作量。
[0004]基于內(nèi)容的圖像檢索,利用圖像自身包含的豐富信息,如:顏色,紋理,關(guān)鍵點(diǎn)等等進(jìn)行圖像檢索,即以圖搜圖。這種方法克服了早期基于關(guān)鍵字的圖像檢索的局限性?;趦?nèi)容的圖像檢索過(guò)程如圖1所示,大致分為三個(gè)步驟。首先,根據(jù)計(jì)算機(jī)視覺(jué)技術(shù)或圖像處理技術(shù)提取庫(kù)圖像的特征點(diǎn),對(duì)特征點(diǎn)進(jìn)行描述生成高維特征描述符。然后,采用一種方式將高維特征描述符有效的組織起來(lái),這個(gè)過(guò)程就是建立索引的過(guò)程。最后,提取查詢圖像的特征點(diǎn),生成查詢特征描述符。在索引中檢索,返回與查詢特征相似的特征,從而得到與此相似的圖像。

【發(fā)明內(nèi)容】

[0005]因?yàn)閷?duì)大規(guī)模圖像提取特征點(diǎn),產(chǎn)生海量高維特征描述符,所以需要一種有效的索引機(jī)制將特征描述符有效的組織起來(lái),以提高檢索的效率。另外,海量高維特征描述符對(duì)內(nèi)存的要求也是一個(gè)亟待解決的問(wèn)題。如何在準(zhǔn)確率,速度和空間方面取得平衡,一直是大規(guī)模圖像檢索領(lǐng)域的研究熱點(diǎn)。
[0006]本發(fā)明所要解決的技術(shù)問(wèn)題是,針對(duì)現(xiàn)有技術(shù)的不足,提供一種實(shí)現(xiàn)大規(guī)模圖像的有效檢索的層次檢索方法。
[0007]本發(fā)明解決上述技術(shù)問(wèn)題的技術(shù)方案如下:一種基于層次索引的圖像檢索方法,具體包括以下步驟:
[0008]步驟1:對(duì)庫(kù)圖像提取二進(jìn)制特征,并將二進(jìn)制特征存入特征庫(kù);
[0009]步驟2:對(duì)特征庫(kù)中的每個(gè)二進(jìn)制特征隨機(jī)提取24位作為新特征,由新特征組成新數(shù)據(jù)集;
[0010]步驟3:對(duì)新數(shù)據(jù)集建立聚類索引,使新數(shù)據(jù)集的搜索空間分層;
[0011]步驟4:接收查詢圖像,提取查詢圖像的查詢特征,對(duì)查詢特征隨機(jī)提取24位構(gòu)成新查詢特征,并將新查詢特征與新數(shù)據(jù)集中的新特征進(jìn)行匹配得到候選特征,由候選特征組成候選集,完成初步過(guò)濾;
[0012]步驟5:將候選集中的候選特征與原查詢特征進(jìn)行相似度計(jì)算,得到多個(gè)相似特征構(gòu)成相似數(shù)據(jù)集,完成圖像檢索。
[0013]本發(fā)明的有益效果是:本發(fā)明基于二進(jìn)制特征建立層次索引結(jié)構(gòu),采用層次索引結(jié)構(gòu)對(duì)與查詢相似的特征進(jìn)行初步過(guò)濾,得到候選結(jié)果集合。將查詢特征與候選結(jié)果集合中的特征逐一比較,返回真正的最近鄰特征。與基于sift特征的索引結(jié)構(gòu)相比,該索引結(jié)構(gòu)使得檢索效率明顯提升,空間資源消耗降低。
[0014]在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進(jìn)。
[0015]進(jìn)一步,所述步驟3具體包括以下步驟:
[0016]步驟3.1:在新數(shù)據(jù)集中隨機(jī)選取η個(gè)新特征作為簇中心,加入簇中心集;
[0017]步驟3.2:分別計(jì)算新數(shù)據(jù)集中的每個(gè)特征與每個(gè)簇中心的距離,將所述新特征添加到距離最近的簇中心構(gòu)成一個(gè)分類簇,完成第一層的聚類過(guò)程,將新數(shù)據(jù)集的特征分成了 η類集合;
[0018]步驟3.3:判斷上一步驟得到的η類集合中一類集合包含的特征數(shù)目是否達(dá)到閾值數(shù)目,如果大于閾值數(shù)目,則將該類集合作為新數(shù)據(jù)集,并跳轉(zhuǎn)至步驟3.1 ;否則,該類停止聚類過(guò)程;
[0019]步驟3.4:重復(fù)步驟3.3,直到所有的類包含的特征數(shù)目小于閾值數(shù)目為止,聚類結(jié)束,完成搜索空間的分層過(guò)程。
[0020]其中,η為自然數(shù)。
[0021]進(jìn)一步,如果在步驟3分層過(guò)程中某個(gè)簇包含的特征小于某一個(gè)設(shè)定的閾值,那么這個(gè)簇就不在繼續(xù)向下分層。
[0022]進(jìn)一步,所述步驟3.1具體包括以下步驟:
[0023]步驟3.1.1:在新數(shù)據(jù)集中隨機(jī)選擇一個(gè)新特征作為一個(gè)準(zhǔn)簇中心;
[0024]步驟3.1.2:任意選擇一個(gè)新數(shù)據(jù)集中的新特征,計(jì)算所述新特征與準(zhǔn)簇中心的
距離;
[0025]步驟3.1.3:判斷所述新特征與準(zhǔn)簇中心的距離是否大于設(shè)定的距離閾值,如果是,將所述新特征作為簇中心,并添加到簇中心集中;否則,放棄所述新特征,跳轉(zhuǎn)至步驟3.1.2 ;
[0026]步驟3.1.4:判斷所述簇中心集中簇中心是否達(dá)到預(yù)設(shè)簇中心個(gè)數(shù),如果是,進(jìn)行下一步;否則,跳轉(zhuǎn)至步驟3.1.2 ;
[0027]步驟3.1.5:完成簇中心的選取過(guò)程。
[0028]進(jìn)一步,所述步驟4包括以下步驟:
[0029]步驟4.1:接收查詢圖像,提取查詢圖像的查詢特征,對(duì)查詢特征隨機(jī)提取24位構(gòu)成新查詢特征;
[0030]步驟4.2:分別計(jì)算新查詢特征與第一層中每個(gè)簇中心的距離,找到距離最近的那個(gè)簇心,并將本層其他簇中心按照距離從小到大加入簇中心優(yōu)先隊(duì)列;
[0031]步驟4.3:計(jì)算新查詢特征與最近簇心的每個(gè)孩子節(jié)點(diǎn)的距離,找到最近距離的那個(gè)孩子節(jié)點(diǎn),將其他的孩子節(jié)點(diǎn)按照距離大小加入簇優(yōu)先隊(duì)列中;[0032]步驟4.4:重復(fù)步驟4.3直到遍歷到葉子節(jié)點(diǎn),將葉子節(jié)點(diǎn)包含的特征加入候選集合;
[0033]步驟4.5:判斷候選集合的數(shù)目是否達(dá)到設(shè)定閾值,如果是,進(jìn)行下一步;否則,遍歷簇優(yōu)先隊(duì)列,即取出優(yōu)先隊(duì)列里距離最近的簇,重復(fù)執(zhí)行步驟4.3 ;
[0034]步驟4.6:完成初步過(guò)濾,得到候選集。
[0035]其中,孩子節(jié)點(diǎn)表示還可以作為父節(jié)點(diǎn)連接其他孩子節(jié)點(diǎn)的節(jié)點(diǎn);而葉子節(jié)點(diǎn)表示結(jié)構(gòu)中最下層的節(jié)點(diǎn),葉子節(jié)點(diǎn)不包含其他孩子節(jié)點(diǎn)或葉子節(jié)點(diǎn)。
[0036]進(jìn)一步,所述步驟5中的相似度計(jì)算采用計(jì)算特征值之間的海明距離,其中,海明距離越小,兩個(gè)特征之間越相似。
[0037]本發(fā)明所要解決的技術(shù)問(wèn)題是,針對(duì)現(xiàn)有技術(shù)的不足,提供一種實(shí)現(xiàn)大規(guī)模圖像的有效檢索的層次檢索系統(tǒng)。
[0038]本發(fā)明解決上述技術(shù)問(wèn)題的技術(shù)方案如下:一種基于層次索引的圖像檢索系統(tǒng),包括:特征提取模塊、數(shù)據(jù)集模塊、分層索引模塊、初步過(guò)濾模塊和深度過(guò)濾模塊;
[0039]所述特征提取模塊用于對(duì)庫(kù)圖像提取二進(jìn)制特征,并將二進(jìn)制特征存入特征庫(kù);
[0040]所述數(shù)據(jù)集模塊用于對(duì)特征庫(kù)中的每個(gè)二進(jìn)制特征隨機(jī)提取24位作為新特征,由新特征組成新數(shù)據(jù)集;
[0041]所述分層索引模塊用于對(duì)新數(shù)據(jù)集建立聚類索引,使新數(shù)據(jù)集的搜索空間分層;
[0042]所述初步過(guò)濾模塊用于接收查詢圖像,提取查詢圖像的查詢特征,對(duì)查詢特征隨機(jī)提取24位構(gòu)成新查詢特征,并將新查詢特征與新數(shù)據(jù)集中的二進(jìn)制特征進(jìn)行匹配得到候選特征,由候選特征構(gòu)成候選集,完成初步過(guò)濾;
[0043]所述深度過(guò)濾模塊用于將候選集中的所有特征與原查詢特征進(jìn)行相似度計(jì)算,得到多個(gè)相似特征,構(gòu)成相似數(shù)據(jù)集,完成圖像檢索。
[0044]本發(fā)明的有益效果是:本發(fā)明基于二進(jìn)制特征建立層次索引結(jié)構(gòu),采用層次索引結(jié)構(gòu)對(duì)與查詢相似的特征進(jìn)行初步過(guò)濾,得到候選結(jié)果集合。將查詢特征與候選結(jié)果集合中的特征逐一比較,返回真正的最近鄰特征。與基于sift特征的索引結(jié)構(gòu)相比,該索引結(jié)構(gòu)使得檢索效率明顯提升,空間資源消耗降低。
[0045]在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進(jìn)。
[0046]進(jìn)一步,所述分層索引模塊包括:簇中心模塊、分類簇模塊和葉子節(jié)點(diǎn)模塊;
[0047]所述簇中心模塊用于在新數(shù)據(jù)集中選取多個(gè)新特征作為簇中心,加入簇中心集;
[0048]所述分類簇模塊用于計(jì)算新數(shù)據(jù)集中的所有新特征與每個(gè)簇中心的距離,將新特征添加到距離最近的簇中心構(gòu)成多個(gè)分類簇;
[0049]所述葉子節(jié)點(diǎn)模塊用于在搜索空間分層完畢之后,包含距離該葉子節(jié)點(diǎn)簇最近的特征。
[0050]進(jìn)一步,所述簇中心模塊包括:基準(zhǔn)模塊、距離計(jì)算模塊和判斷模塊;
[0051]所述基準(zhǔn)模塊用于在新數(shù)據(jù)集中隨機(jī)選擇一個(gè)新特征作為一個(gè)準(zhǔn)簇中心;
[0052]所述距離計(jì)算模塊用于任意選擇一個(gè)新數(shù)據(jù)集中的新特征,計(jì)算所述新特征與準(zhǔn)簇中心的距離;
[0053]所述判斷模塊用于判斷所述新特征與準(zhǔn)簇中心的距離是否大于設(shè)定距離閾值,如果是,將所述新特征作為簇中心,并添加到簇中心集中,直到簇中心集中簇中心達(dá)到預(yù)設(shè)個(gè)數(shù),完成簇中心的選取過(guò)程;否則,放棄所述新特征,重新隨機(jī)選取一個(gè)新特征并返回距離計(jì)算模塊。
[0054]進(jìn)一步,所述初步過(guò)濾模塊包括:查詢接收模塊、距離計(jì)算模塊、葉子節(jié)點(diǎn)計(jì)算模塊和閾值判斷模塊;
[0055]所述查詢接收模塊接收查詢圖像,提取查詢圖像的查詢特征,對(duì)查詢特征隨機(jī)提取24位構(gòu)成新查詢特征;
[0056]所述距離計(jì)算模塊用于分別計(jì)算新查詢特征與簇中心集中所有的簇中心的距離,并將除了距離最近的那個(gè)簇心之外的其他簇中心按照距離從小到大排序加入簇中心優(yōu)先隊(duì)列;
[0057]所述葉子節(jié)點(diǎn)計(jì)算模塊用于得到簇中心隊(duì)列與新查詢特征距離最近的簇中心對(duì)應(yīng)的葉子節(jié)點(diǎn);
[0058]所述閾值判斷模塊用于判斷葉子節(jié)點(diǎn)包含的特征數(shù)目是否達(dá)到設(shè)定閾值,如果是,完成初步過(guò)濾,返回葉子節(jié)點(diǎn)隊(duì)列中所有葉子節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)特征,構(gòu)成候選集;否則,遞歸執(zhí)行葉子節(jié)點(diǎn)計(jì)算模塊的操作。
[0059]進(jìn)一步,所述深度過(guò)濾模塊中的相似度計(jì)算采用計(jì)算特征值之間的海明距離,其中,海明距離越小,兩個(gè)特征之間越相似。
[0060]本發(fā)明主要包含四個(gè)方面:(I)提取庫(kù)圖像的二進(jìn)制特征(2)建立基于二進(jìn)制特征的層次索引結(jié)構(gòu)(3)在二進(jìn)制層次索引結(jié)構(gòu)中完成初步過(guò)濾。(4)在候選集中精確查詢,返回相似圖像。
[0061]當(dāng)前很多圖像檢索系統(tǒng)采用的圖像特征是sift特征。假設(shè),一幅圖像提取Ik個(gè)sift特征,每個(gè)sift特征描述符是128維float型向量,那么一幅圖像特征的大小為512k。盡管采取該特征可以取得很好的精度,但是如果應(yīng)用于大規(guī)模圖像的檢索,該特征存在維度高,占用內(nèi)存,計(jì)算量大的缺點(diǎn)。隨著多媒體領(lǐng)域的發(fā)展,圖像的規(guī)模劇增,這些缺點(diǎn)帶來(lái)的問(wèn)題越來(lái)越引起重視。為了保證圖像的檢索精度,同時(shí)提高檢索的速度,減少空間資源的消耗,一種可能的思路是采用占用內(nèi)存小的圖像特征并對(duì)特征庫(kù)建立有效的索引,提高檢索的速度。二進(jìn)制特征可以解決空間資源消耗的問(wèn)題,并且簡(jiǎn)單的硬件異或操作可以完成兩個(gè)特征之間距離的計(jì)算,計(jì)算速度快。但是,當(dāng)前存在的很多索引方法并不適合二進(jìn)制特征,比如KD樹(shù),R-樹(shù),ANN索引等。
[0062]鑒于此,本發(fā)明提出了一種針對(duì)二進(jìn)制特征的索引結(jié)構(gòu)二進(jìn)制層次索引。本發(fā)明采用orb 二進(jìn)制特征作為圖像的特征描述符,它是在fast特征點(diǎn)檢測(cè)和brief特征的基礎(chǔ)上進(jìn)行改進(jìn)的一種特征描述子。每個(gè)orb特征是256位的二進(jìn)制串,特征之間的距離計(jì)算是簡(jiǎn)單的硬件異或操作。因此該特征描述符具有匹配速度快的優(yōu)點(diǎn)。本發(fā)明的實(shí)現(xiàn)過(guò)程描述如下:首先對(duì)每個(gè)特征隨機(jī)提取24位作為新數(shù)據(jù)集newDataset,然后對(duì)新數(shù)據(jù)集進(jìn)行層次聚類索引,將搜索空間分層。查詢特征采用同樣的方式隨機(jī)提取24位,在newDataset建立的層次索引結(jié)構(gòu)中檢索匹配,進(jìn)行初步的過(guò)濾,返回初始候選集。經(jīng)過(guò)在層次索引結(jié)構(gòu)中的檢索匹配,可以實(shí)現(xiàn)相似特征的初步過(guò)濾。初步過(guò)濾的實(shí)現(xiàn)是通過(guò)設(shè)定與每個(gè)查詢特征相似的特征的數(shù)目。即假設(shè)每個(gè)新查詢特征在層次索引結(jié)構(gòu)中檢索之后,返回1000個(gè)相似的特征。那么將這1000個(gè)相似的特征加入候選集。初步過(guò)濾可以達(dá)到快速匹配的目的,使得候選集中的特征數(shù)目相對(duì)原始數(shù)據(jù)集很小,然后在候選集中精確查詢即逐一與查詢特征進(jìn)行相似性度量的計(jì)算,找到真正的近似最近鄰特征。相似性度量計(jì)算即計(jì)算特征之間的海明距離,海明距離越小,兩個(gè)特征之間越相似。該發(fā)明包括以下內(nèi)容:
[0063]I)提取圖像特征。對(duì)庫(kù)圖像提取二進(jìn)制特征,放入特征庫(kù)。每個(gè)二進(jìn)制特征是由O和I組成的二進(jìn)制串,共256位。
[0064]2)生成新數(shù)據(jù)集。對(duì)特征庫(kù)中的每個(gè)特征隨機(jī)提取24位,組成新數(shù)據(jù)集。
[0065]3)建立索引。對(duì)新數(shù)據(jù)集建立層次索引結(jié)構(gòu)。將索引文件保存到本地。
[0066]4)初步過(guò)濾。從本地加載索引文件和查詢圖像,對(duì)查詢圖像提取查詢特征。隨機(jī)提取查詢特征的24位作為新查詢特征,在層次索引結(jié)構(gòu)中檢索出與新查詢特征相似的特征,得到候選集。
[0067]5)精確查詢。在候選集中,計(jì)算查詢特征與候選集合中每個(gè)特征的海明距離,根據(jù)距離進(jìn)行排序,選擇出距離較小的mm (mm是一個(gè)整數(shù))個(gè)特征。
【專利附圖】

【附圖說(shuō)明】
[0068]圖1為本發(fā)明具體實(shí)施例1所述的一種基于層次索引的圖像檢索方法流程圖;
[0069]圖2為本發(fā)明具體實(shí)施例1中構(gòu)成簇中心集的方法流程圖;
[0070]圖3為本發(fā)明具體實(shí)施例1中初步過(guò)濾的方法流程圖;
[0071]圖4為本發(fā)明具體實(shí)施例2所述的一種基于層次索引的圖像檢索系統(tǒng)結(jié)構(gòu)框圖;
[0072]圖5為本發(fā)明具體實(shí)施例2所述系統(tǒng)中簇中心模塊的結(jié)構(gòu)框圖;
[0073]圖6為本發(fā)明具體實(shí)施例3所述的方法建立層次索引的流程圖;
[0074]圖7為本發(fā)明具體實(shí)施例3的查詢流程圖。
[0075]附圖中,各標(biāo)號(hào)所代表的部件列表如下:
[0076]1、特征提取模塊,2、數(shù)據(jù)集模塊,3、分層索引模塊,4、初步過(guò)濾模塊,5、深度過(guò)濾模塊,31、簇中心模塊,32、分類簇模塊,33、葉子節(jié)點(diǎn)模塊,311、基準(zhǔn)模塊,312、距離計(jì)算模塊,313、判斷模塊。
【具體實(shí)施方式】
[0077]以下結(jié)合附圖對(duì)本發(fā)明的原理和特征進(jìn)行描述,所舉實(shí)例只用于解釋本發(fā)明,并非用于限定本發(fā)明的范圍。
[0078]如圖1所示,為本發(fā)明具體實(shí)施例1所述的一種基于層次索引的圖像檢索方法,具體包括以下步驟:
[0079]步驟1:對(duì)庫(kù)圖像提取二進(jìn)制特征,并將二進(jìn)制特征存入特征庫(kù);
[0080]步驟2:對(duì)特征庫(kù)中的每個(gè)二進(jìn)制特征隨機(jī)提取24位作為新特征,由新特征組成新數(shù)據(jù)集;
[0081]步驟3:在新數(shù)據(jù)集中隨機(jī)選取η個(gè)新特征作為簇中心,加入簇中心集;
[0082]步驟4:分別計(jì)算新數(shù)據(jù)集中的每個(gè)特征與每個(gè)簇中心的距離,將所述新特征添加到距離最近的簇中心構(gòu)成一個(gè)分類簇,完成第一層的聚類過(guò)程,將新數(shù)據(jù)集的特征分成了 η類集合;
[0083]步驟5:判斷上一步驟得到的η類集合中一類集合包含的特征數(shù)目是否達(dá)到閾值數(shù)目,如果大于閾值數(shù)目,則將該類集合作為新數(shù)據(jù)集,并跳轉(zhuǎn)至步驟3 ;否則,該類停止聚類過(guò)程;
[0084]步驟6:重復(fù)步驟5,直到所有的類包含的特征數(shù)目小于閾值數(shù)目為止,聚類結(jié)束,完成搜索空間的分層過(guò)程;
[0085]步驟7:接收查詢圖像,提取查詢圖像的查詢特征,對(duì)查詢特征隨機(jī)提取24位構(gòu)成新查詢特征,并將新查詢特征與新數(shù)據(jù)集中的新特征進(jìn)行匹配得到候選特征,由候選特征組成候選集,完成初步過(guò)濾;
[0086]步驟8:將候選集中的候選特征與原查詢特征進(jìn)行相似度計(jì)算,得到多個(gè)相似特征構(gòu)成相似數(shù)據(jù)集,完成圖像檢索。
[0087]如果在步驟5分層過(guò)程中某個(gè)簇包含的特征小于某一個(gè)設(shè)定的閾值,那么這個(gè)簇就不在繼續(xù)向下分層。
[0088]如圖2所示,本發(fā)明具體實(shí)施例1中構(gòu)成簇中心集的方法包括以下步驟,即所述步驟3具體包括以下步驟:
[0089]步驟3.1:在新數(shù)據(jù)集中隨機(jī)選擇一個(gè)新特征作為一個(gè)準(zhǔn)簇中心;
[0090]步驟3.2:任意選擇一個(gè)新數(shù)據(jù)集中的新特征,計(jì)算所述新特征與準(zhǔn)簇中心的距離;
[0091]步驟3.3:判斷所述新特征與準(zhǔn)簇中心的距離是否大于設(shè)定的距離閾值,如果是,將所述新特征作為簇中心,并添加到簇中心集中;否則,放棄所述新特征,跳轉(zhuǎn)至步驟3.2 ;
[0092]步驟3.4:判斷所述簇中心集中簇中心是否達(dá)到預(yù)設(shè)簇中心個(gè)數(shù),如果是,進(jìn)行下一步;否則,跳轉(zhuǎn)至步驟3.2;
[0093]步驟3.5:完成簇中心的選取過(guò)程。
[0094]如圖3所示,本發(fā)明具體實(shí)施例1中初步過(guò)濾的步驟如下,即所述步驟7包括以下步驟:
[0095]步驟7.1:接收查詢圖像,提取查詢圖像的查詢特征,對(duì)查詢特征隨機(jī)提取24位構(gòu)成新查詢特征;
[0096]步驟7.2:分別計(jì)算新查詢特征與第一層中每個(gè)簇中心的距離,找到距離最近的那個(gè)簇心,并將本層其他簇中心按照距離從小到大加入簇中心優(yōu)先隊(duì)列;
[0097]步驟7.3:計(jì)算新查詢特征與最近簇心的每個(gè)孩子節(jié)點(diǎn)的距離,找到最近距離的那個(gè)孩子節(jié)點(diǎn),將其他的孩子節(jié)點(diǎn)按照距離大小加入簇優(yōu)先隊(duì)列中;
[0098]步驟7.4:重復(fù)步驟7.3直到遍歷到葉子節(jié)點(diǎn),將葉子節(jié)點(diǎn)包含的特征加入候選集合;
[0099]步驟7.5:判斷候選集合的數(shù)目是否達(dá)到設(shè)定閾值,如果是,進(jìn)行下一步;否則,遍歷簇優(yōu)先隊(duì)列,即取出優(yōu)先隊(duì)列里距離最近的簇,重復(fù)執(zhí)行步驟7.3 ;
[0100]步驟7.6:完成初步過(guò)濾,得到候選集。
[0101]其中,孩子節(jié)點(diǎn)表示還可以作為父節(jié)點(diǎn)連接其他孩子節(jié)點(diǎn)的節(jié)點(diǎn);而葉子節(jié)點(diǎn)表示結(jié)構(gòu)中最下層的節(jié)點(diǎn),葉子節(jié)點(diǎn)不包含其他孩子節(jié)點(diǎn)或葉子節(jié)點(diǎn)。
[0102]所述步驟8中的相似度計(jì)算采用計(jì)算特征值之間的海明距離,其中,海明距離越小,兩個(gè)特征之間越相似。
[0103]如圖4所示,為本發(fā)明具體實(shí)施例2所述的一種基于層次索引的圖像檢索系統(tǒng),包括:特征提取模塊1、數(shù)據(jù)集模塊2、分層索引模塊3、初步過(guò)濾模塊4和深度過(guò)濾模塊5 ;[0104]所述特征提取模塊I用于對(duì)庫(kù)圖像提取二進(jìn)制特征,并將二進(jìn)制特征存入特征庫(kù);
[0105]所述數(shù)據(jù)集模塊2用于對(duì)特征庫(kù)中的每個(gè)二進(jìn)制特征隨機(jī)提取24位作為新特征,由新特征組成新數(shù)據(jù)集;
[0106]所述分層索引模塊3用于對(duì)新數(shù)據(jù)集建立聚類索引,使新數(shù)據(jù)集的搜索空間分層;
[0107]所述初步過(guò)濾模塊4用于接收查詢圖像,提取查詢圖像的查詢特征,對(duì)查詢特征隨機(jī)提取24位構(gòu)成新查詢特征,并將新查詢特征在索引結(jié)構(gòu)中檢索匹配得到候選特征,由候選特征構(gòu)成候選集,完成初步過(guò)濾;
[0108]所述深度過(guò)濾模塊5用于將候選集中的所有特征與原查詢特征進(jìn)行相似度計(jì)算,得到多個(gè)相似特征構(gòu)成相似數(shù)據(jù)集,完成圖像檢索。
[0109]所述分層索引模塊3包括:簇中心模塊31、分類簇模塊32和葉子節(jié)點(diǎn)模塊33 ;
[0110]所述簇中心模塊31用于在新數(shù)據(jù)集中選取多個(gè)新特征作為簇中心,加入簇中心集。
[0111]所述分類簇模塊32用于計(jì)算新數(shù)據(jù)集中的所有新特征與每個(gè)簇中心的距離,將新特征添加到距離最近的簇中心構(gòu)成多個(gè)分類簇;
[0112]所述葉子節(jié)點(diǎn)模塊33用于在搜索空間分層完畢之后,包含距離該葉子節(jié)點(diǎn)簇最近的特征。
[0113]如圖5所示,為本發(fā)明具體實(shí)施例2所述系統(tǒng)中簇中心模塊的結(jié)構(gòu)框圖,所述簇中心模塊31包括:基準(zhǔn)模塊311、距離計(jì)算模塊312和判斷模塊313 ;
[0114]所述基準(zhǔn)模塊311用于在新數(shù)據(jù)集中隨機(jī)選擇一個(gè)新特征作為一個(gè)準(zhǔn)簇中心;
[0115]所述距離計(jì)算模塊312用于任意選擇一個(gè)新數(shù)據(jù)集中的新特征,計(jì)算所述新特征與準(zhǔn)簇中心的距離;
[0116]所述判斷模塊313用于判斷所述新特征與準(zhǔn)簇中心的距離是否大于設(shè)定距離閾值,如果是,將所述新特征作為簇中心,并添加到簇中心集中,直到簇中心集中簇中心達(dá)到預(yù)設(shè)個(gè)數(shù),完成簇中心的選取過(guò)程;否則,放棄所述新特征,重新隨機(jī)選取一個(gè)新特征并返回距離計(jì)算模塊312。
[0117]所述初步過(guò)濾模塊4包括:查詢接收模塊41、距離計(jì)算模塊42、葉子節(jié)點(diǎn)計(jì)算模塊43和閾值判斷模塊44 ;
[0118]所述查詢接收模塊41接收查詢圖像,提取查詢圖像的查詢特征,對(duì)查詢特征隨機(jī)提取24位構(gòu)成新查詢特征;
[0119]所述距離計(jì)算模塊42用于分別計(jì)算新查詢特征與簇中心集中所有的簇中心的距離,并將除了距離最近的那個(gè)簇心之外的其他簇中心按照距離從小到大排序加入簇中心優(yōu)先隊(duì)列;
[0120]所述葉子節(jié)點(diǎn)計(jì)算模塊43用于得到簇中心隊(duì)列與新查詢特征距離最近的簇中心對(duì)應(yīng)的葉子節(jié)點(diǎn)。
[0121]所述閾值判斷模塊44用于判斷葉子節(jié)點(diǎn)包含的特征數(shù)目是否達(dá)到設(shè)定閾值,如果是,完成初步過(guò)濾,返回葉子節(jié)點(diǎn)隊(duì)列中所有葉子節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)特征,構(gòu)成候選集;否貝U,遞歸執(zhí)行葉子節(jié)點(diǎn)計(jì)算模塊43的操作。[0122]所述深度過(guò)濾模塊5中的相似度計(jì)算采用計(jì)算特征值之間的海明距離,其中,海明距離越小,兩個(gè)特征之間越相似。
[0123]本發(fā)明的二進(jìn)制層次索引結(jié)構(gòu)的建立包括以下三個(gè)步驟:
[0124](一 )對(duì)庫(kù)圖像提取二進(jìn)制特征,組成二進(jìn)制特征庫(kù)。
[0125]( 二)對(duì)每個(gè)特征隨機(jī)選擇24位,組成新數(shù)據(jù)集。 [0126](三)對(duì)新的特征集建立層次索引結(jié)構(gòu)。
[0127]上述步驟(三)建立層次索引是本發(fā)明的核心。如圖6所示,為本發(fā)明具體實(shí)施例3所述的方法建立層次索引的流程圖,下面是建立層次索引的具體算法:
[0128]給定一個(gè)數(shù)據(jù)集合Dataset,簡(jiǎn)稱D,查詢數(shù)據(jù)Query,簡(jiǎn)稱Q。建立索引的算法描述如下:
[0129]I)對(duì)數(shù)據(jù)集Dataset的每個(gè)特征隨機(jī)提取24位組成新數(shù)據(jù)集newDataset,即createNewDataset(Dataset, 24)。
[0130]2)在 newDataset 中選擇 k 個(gè) cluster,即 k 個(gè)族中心,簡(jiǎn)稱 Cj (j=l, 2,....k)。chooseCluster (Dataset, Cj),即選擇 cluster 的過(guò)程:首先在 newDataset 中隨機(jī)選擇一個(gè)特征值Di (i=l, 2,….,η),加入Cluster中,C {Cl},繼續(xù)隨機(jī)選擇一個(gè)特征值D,計(jì)算D與C集合中各個(gè)元素的距離是否大于某一距離閾值L,若大于則把D加入Cluster集合中,否則在D中繼續(xù)隨機(jī)選擇一個(gè)特征值。直到Cluster集合中的元素?cái)?shù)目達(dá)到K,選擇終止。
[0131]3)計(jì)算特征庫(kù)中的每個(gè)特征值Di (i=l, 2,…,η)與Cj (k=l, 2,….,k)的距離d,即將Di加入與此距離最近的cluster中。對(duì)每個(gè)特征執(zhí)行操作,直到將所有的特征計(jì)算完畢。由此將newDataset分為k類。
[0132]4)分別對(duì)這k個(gè)cluster遞歸執(zhí)行上述步驟3),直到葉子節(jié)點(diǎn)包含的特征值數(shù)據(jù)點(diǎn)數(shù)達(dá)到某個(gè)閾值,層次聚類結(jié)束。至此完成了層次索引的建立過(guò)程。
[0133]newDatset數(shù)據(jù)集按照上述的算法步驟,形成了一棵層次聚類樹(shù)。為了增加檢索匹配的準(zhǔn)確率,本發(fā)明的系統(tǒng)建立了四棵層次聚類樹(shù)。
[0134]建立索引是為了方便檢索的過(guò)程,提高檢索的效率。尤其大規(guī)模圖像的檢索,建立一個(gè)有效的索引結(jié)構(gòu)至關(guān)重要。基于上述索引結(jié)構(gòu),如圖7所示,為本發(fā)明具體實(shí)施例3的查詢流程圖,查詢算法如下:
[0135]對(duì)查詢Q采用建立索引步驟I)中的方法,提取查詢特征的前24位作為新的查詢newQuery,簡(jiǎn)稱 nQ.[0136]I)針對(duì)新的查詢nQ,首先計(jì)算查詢nQ與層次索引第一層的k個(gè)cluster的距離,找到距離最近的那個(gè)Ci (i=l, 2,…,k).其他Ci (i=l, 2,…,k)按照與nQ的距離大小加入優(yōu)先隊(duì)列。距離小的放在隊(duì)列首部。
[0137]2)計(jì)算查詢nQ與步驟I)中查詢距離最近的Ci的孩子節(jié)點(diǎn)的距離。找到距離最近的那個(gè)節(jié)點(diǎn),將其他節(jié)點(diǎn)加入優(yōu)先隊(duì)列。距離小的放在隊(duì)列首部。
[0138]3)遞歸執(zhí)行步驟2),直到達(dá)到葉子節(jié)點(diǎn),返回葉子節(jié)點(diǎn)的數(shù)據(jù)點(diǎn)。
[0139]4)按照步驟2)計(jì)算查詢與優(yōu)先隊(duì)列中Ci (i e [I, k])的孩子節(jié)點(diǎn)的距離。找到距離最近的那個(gè)節(jié)點(diǎn),刪除隊(duì)列首部的節(jié)點(diǎn),將其他節(jié)點(diǎn)加入優(yōu)先隊(duì)列。距離小的放在隊(duì)列首部。
[0140]5)遞歸執(zhí)行步驟4),直到返回的相似特征數(shù)目達(dá)到某一閾值,查詢停止。得到候選數(shù)據(jù)集合subDataset.[0141]6)在候選數(shù)據(jù)集subDataset中執(zhí)行精確查找,過(guò)濾掉不相似的特征。得到真正的近似最近鄰特征,從而返回相似的圖像。
[0142]數(shù)據(jù)集為10萬(wàn)副圖像,每副圖像提取100個(gè)二進(jìn)制特征,每個(gè)二進(jìn)制特征包含256位O或1,特征庫(kù)由1000萬(wàn)個(gè)特征組成。隨機(jī)選擇特征的24位組成新數(shù)據(jù)集,建立四棵層次索引樹(shù)。設(shè)定葉子節(jié)點(diǎn)包含的特征數(shù)目不大于500。每個(gè)查詢特征檢索匹配的相似特征數(shù)目為2000,在2000個(gè)中選擇最相似的前x(x=3)個(gè)特征返回?;诖朔祷叵嗨频膱D像。
[0143]以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種基于層次索引的圖像檢索方法,其特征在于,具體包括以下步驟: 步驟1:對(duì)庫(kù)圖像提取二進(jìn)制特征,并將二進(jìn)制特征存入特征庫(kù); 步驟2:對(duì)特征庫(kù)中的每個(gè)二進(jìn)制特征隨機(jī)提取24位作為新特征,由新特征組成新數(shù)據(jù)集; 步驟3:對(duì)新數(shù)據(jù)集建立聚類索引,使新數(shù)據(jù)集的搜索空間分層; 步驟4:接收查詢圖像,提取查詢圖像的查詢特征,對(duì)查詢特征隨機(jī)提取24位構(gòu)成新查詢特征,并將新查詢特征與新數(shù)據(jù)集中的新特征進(jìn)行匹配得到候選特征,由候選特征組成候選集,完成初步過(guò)濾; 步驟5:將候選集中的候選特征與原查詢特征進(jìn)行相似度計(jì)算,得到多個(gè)相似特征構(gòu)成相似數(shù)據(jù)集,完成圖像檢索。
2.根據(jù)權(quán)利要求1所述的一種基于層次索引的圖像檢索方法,其特征在于,所述步驟3具體包括以下步驟: 步驟3.1:在新數(shù)據(jù)集中隨機(jī)選取η個(gè)新特征作為簇中心,加入簇中心集; 步驟3.2:分別計(jì)算新數(shù)據(jù)集中的每個(gè)特征與每個(gè)簇中心的距離,將所述新特征添加到距離最近的簇中心構(gòu)成一個(gè)分類簇,完成第一層的聚類過(guò)程,將新數(shù)據(jù)集的特征分成了 η類集合; 步驟3.3:判斷上一步驟得到的η類集合中一類集合包含的特征數(shù)目是否達(dá)到閾值數(shù)目,如果大于閾值數(shù)目,則將該類集合作為新數(shù)據(jù)集,并跳轉(zhuǎn)至步驟3.1 ;否則,該類停止聚類過(guò)程; 步驟3.4:重復(fù)步驟3.3,直 到所有的類包含的特征數(shù)目小于閾值數(shù)目為止,聚類結(jié)束,完成搜索空間的分層過(guò)程。
3.根據(jù)權(quán)利要求2所述的一種基于層次索引的圖像檢索方法,其特征在于,如果在步驟3分層過(guò)程中某個(gè)簇包含的特征小于某一個(gè)設(shè)定的閾值,那么這個(gè)簇就不在繼續(xù)向下分層,η為自然數(shù)。
4.根據(jù)權(quán)利要求3所述的一種基于層次索引的圖像檢索方法,其特征在于,所述步驟3.1具體包括以下步驟: 步驟3.1.1:在新數(shù)據(jù)集中隨機(jī)選擇一個(gè)新特征作為一個(gè)準(zhǔn)簇中心;步驟3.1.2:任意選擇一個(gè)新數(shù)據(jù)集中的新特征,計(jì)算所述新特征與準(zhǔn)簇中心的距離;步驟3.1.3:判斷所述新特征與準(zhǔn)簇中心的距離是否大于設(shè)定的距離閾值,如果是,將所述新特征作為簇中心,并添加到簇中心集中;否則,放棄所述新特征,跳轉(zhuǎn)至步驟3.1.2 ; 步驟3.1.4:判斷所述簇中心集中簇中心是否達(dá)到預(yù)設(shè)簇中心個(gè)數(shù),如果是,進(jìn)行下一步;否則,跳轉(zhuǎn)至步驟3.1.2; 步驟3.1.5:完成簇中心的選取過(guò)程。
5.根據(jù)權(quán)利要求1-4任一項(xiàng)所述的一種基于層次索引的圖像檢索方法,其特征在于,所述步驟4包括以下步驟: 步驟4.1:接收查詢圖像,提取查詢圖像的查詢特征,對(duì)查詢特征隨機(jī)提取24位構(gòu)成新查詢特征; 步驟4.2:分別計(jì)算新查詢特征與第一層中每個(gè)簇中心的距離,找到距離最近的那個(gè)簇心,并將本層其他簇中心按照距離從小到大加入簇中心優(yōu)先隊(duì)列;步驟4.3:計(jì)算新查詢特征與最近簇心的每個(gè)孩子節(jié)點(diǎn)的距離,找到最近距離的那個(gè)孩子節(jié)點(diǎn),將其他的孩子節(jié)點(diǎn)按照距離大小加入簇優(yōu)先隊(duì)列中; 步驟4.4:重復(fù)步驟4.3直到遍歷到葉子節(jié)點(diǎn),將葉子節(jié)點(diǎn)包含的特征加入候選集合;步驟4.5:判斷候選集合的數(shù)目是否達(dá)到設(shè)定閾值,如果是,進(jìn)行下一步;否則,遍歷簇優(yōu)先隊(duì)列,即取出優(yōu)先隊(duì)列里距離最近的簇,重復(fù)執(zhí)行步驟4.3 ; 步驟4.6:完成初步過(guò)濾,得到候選集。
6.根據(jù)權(quán)利要求5所述的一種基于層次索引的圖像檢索方法,其特征在于,所述步驟5中的相似度計(jì)算采用計(jì)算特征值之間的海明距離,其中,海明距離越小,兩個(gè)特征之間越相似。
7.一種基于層次索引的圖像檢索系統(tǒng),其特征在于,包括:特征提取模塊、數(shù)據(jù)集模塊、分層索引模塊、初步過(guò)濾模塊和深度過(guò)濾模塊; 所述特征提取模塊用于對(duì)庫(kù)圖像提取二進(jìn)制特征,并將二進(jìn)制特征存入特征庫(kù); 所述數(shù)據(jù)集模塊用于對(duì)特征庫(kù)中的每個(gè)二進(jìn)制特征隨機(jī)提取24位作為新特征,由新特征組成新數(shù)據(jù)集; 所述分層索引模塊用于對(duì)新數(shù)據(jù)集建立聚類索引,使新數(shù)據(jù)集的搜索空間分層; 所述初步過(guò)濾模塊用于接收查詢圖像,提取查詢圖像的查詢特征,對(duì)查詢特征隨機(jī)提取24位構(gòu)成新查詢特征,并將新查詢特征與新數(shù)據(jù)集中的二進(jìn)制特征進(jìn)行匹配得到候選特征,由候選特征構(gòu)成候選集,完成初步過(guò)濾; 所述深度過(guò)濾模塊用于將候選集中的所有特征與原查詢特征進(jìn)行相似度計(jì)算,得到多個(gè)相似特征,構(gòu)成相似數(shù)據(jù)集,完成圖像檢索。
8.根據(jù)權(quán)利要求7所述的一種基于層次索引的圖像檢索系統(tǒng),其特征在于,所述分層索引模塊包括:簇中心模塊、分類簇模塊和葉子節(jié)點(diǎn)模塊; 所述簇中心模塊用于在新數(shù)據(jù)集中選取多個(gè)新特征作為簇中心,加入簇中心集; 所述分類簇模塊用于計(jì)算新數(shù)據(jù)集中的所有新特征與每個(gè)簇中心的距離,將新特征添加到距離最近的簇中心構(gòu)成多個(gè)分類簇; 所述葉子節(jié)點(diǎn)模塊用于在搜索空間分層完畢之后,包含距離該葉子節(jié)點(diǎn)簇最近的特征。
9.根據(jù)權(quán)利要求8所述的一種基于層次索引的圖像檢索系統(tǒng),其特征在于,所述簇中心模塊包括:基準(zhǔn)模塊、距離計(jì)算模塊和判斷模塊; 所述基準(zhǔn)模塊用于在新數(shù)據(jù)集中隨機(jī)選擇一個(gè)新特征作為一個(gè)準(zhǔn)簇中心; 所述距離計(jì)算模塊用于任意選擇一個(gè)新數(shù)據(jù)集中的新特征,計(jì)算所述新特征與準(zhǔn)簇中心的距離; 所述判斷模塊用于判斷所述新特征與準(zhǔn)簇中心的距離是否大于設(shè)定距離閾值,如果是,將所述新特征作為簇中心,并添加到簇中心集中,直到簇中心集中簇中心達(dá)到預(yù)設(shè)個(gè)數(shù),完成簇中心的選取過(guò)程;否則,放棄所述新特征,重新隨機(jī)選取一個(gè)新特征并返回距離計(jì)算模塊。
10.根據(jù)權(quán)利要求7-9任一項(xiàng)所述的一種基于層次索引的圖像檢索系統(tǒng),其特征在于,所述初步過(guò)濾模塊包括:查詢接收模塊、距離計(jì)算模塊、葉子節(jié)點(diǎn)計(jì)算模塊和閾值判斷模塊;所述查詢接收模塊接收查詢圖像,提取查詢圖像的查詢特征,對(duì)查詢特征隨機(jī)提取24位構(gòu)成新查詢特征; 所述距離計(jì)算模塊用于分別計(jì)算新查詢特征與簇中心集中所有的簇中心的距離,并將除了距離最近的那個(gè)簇心之外的其他簇中心按照距離從小到大排序加入簇中心優(yōu)先隊(duì)列; 所述葉子節(jié)點(diǎn)計(jì)算模塊用于得到簇中心隊(duì)列與新查詢特征距離最近的簇中心對(duì)應(yīng)的葉子節(jié)點(diǎn); 所述閾值判斷模塊用于判斷葉子節(jié)點(diǎn)包含的特征數(shù)目是否達(dá)到設(shè)定閾值,如果是,完成初步過(guò)濾,返回葉子節(jié)點(diǎn)隊(duì)列中所有葉子節(jié)點(diǎn)對(duì)應(yīng)的數(shù)據(jù)特征,構(gòu)成候選集;否則,遞歸執(zhí)行葉子節(jié)點(diǎn)計(jì)算模塊的操作。
11.根據(jù)權(quán)利要求10所述的一種基于層次索引的圖像檢索系統(tǒng),其特征在于,所述深度過(guò)濾模塊中的相似度計(jì)算采用計(jì)算特征值之間的海明距離,其中,海明距離越小,兩個(gè)特征之間越 相似。
【文檔編號(hào)】G06F17/30GK103617217SQ201310589470
【公開(kāi)日】2014年3月5日 申請(qǐng)日期:2013年11月20日 優(yōu)先權(quán)日:2013年11月20日
【發(fā)明者】謝洪濤, 楊青婭, 徐克付, 譚建龍 申請(qǐng)人:中國(guó)科學(xué)院信息工程研究所
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1