一種基于模糊聚類的圖片檢索方法
【專利摘要】本發(fā)明公開了一種基于模糊聚類的圖片檢索方法,包括如下步驟:S11,為圖片庫中圖片構(gòu)建特征值庫,并為每張圖片進(jìn)行編號;S12,從圖片庫中選取圖片間的相互距離均大于距離闕值A(chǔ)1的N張圖片,對其余圖片進(jìn)行第一次歸類,形成N類圖片集;S13,對N類圖片集中所含圖片數(shù)量大于數(shù)量闕值的類執(zhí)行步驟S12,直到所有的類均小于數(shù)量闕值為止,得到M個代表點;S14,對圖片庫中的所有圖片根據(jù)與M個代表點的相似程度,劃分到相似程度最高的代表點所代表的圖片集中;S15,對于待檢索的輸入圖片,對其特征值化,分別計算其與所有代表點之間的相似度,選取相似度距離最近的若干個代表點進(jìn)行檢索。本發(fā)明在保證檢索效率的基礎(chǔ)上縮小了檢索范圍,降低了檢索的工作量。
【專利說明】一種基于模糊聚類的圖片檢索方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種圖片檢索方法,尤其涉及一種基于模糊聚類的圖片檢索方法,屬于信息檢索【技術(shù)領(lǐng)域】。
【背景技術(shù)】
[0002]圖片是多媒體信息的重要呈現(xiàn)形式之一。它通過顏色、紋理、形狀等豐富的視覺特征,直觀、生動地使抽象數(shù)據(jù)形象化、真實化地呈現(xiàn)給大眾。隨著互聯(lián)網(wǎng)信息傳播的愈發(fā)便捷和移動終端功能的不斷完善,圖像信息將成為繼文字之后的又一種主要的信息載體,被廣泛應(yīng)用于信息檢索、數(shù)據(jù)挖掘、人機交互等領(lǐng)域。但由于圖片本身存在蘊含信息復(fù)雜、環(huán)境相關(guān)性強、高層語義抽象困難、檢索模式計算量大和面向海量圖片的組織架構(gòu)不完善等問題,與圖片信息處理相關(guān),尤其是與互聯(lián)網(wǎng)中海量圖片的檢索、分析、組織管理相關(guān)的研究成為計算機領(lǐng)域的一個研究難點。
[0003]現(xiàn)有的圖片檢索的基本模型是根據(jù)檢索圖片與被檢索庫圖片進(jìn)行相似度一一比較,經(jīng)過排序后選出最接近的若干張圖片作為返回值,這種模型需要在每次檢索時對整個圖片庫進(jìn)行一次遍歷操作,當(dāng)檢索訪問過多時會對后來的訪問者帶來較長時間的等待,而且這種等待時間會隨著訪問者的不斷增多而進(jìn)一步增長。圖片檢索的結(jié)果來源于收集的圖片庫,如果要滿足不同訪問者的需要,或適用于不同類型圖片的檢索輸入,圖片庫的規(guī)模就需要足夠大,這樣才能保證檢索的準(zhǔn)確度,但過大的圖片庫使檢索的負(fù)載和響應(yīng)時間呈倍增長,無法到達(dá)實時檢索的要求。
[0004]為了解決上述問題,在專利號為ZL 201010195710.6的中國發(fā)明專利中,公開了一種圖像檢索方法,包括訓(xùn)練和檢索兩個部分;訓(xùn)練部分包括以下步驟:特征點的提??;特征點的補充和匹配關(guān)系的確定;同類點集的生成;特征點集聚類;圖像數(shù)據(jù)庫中每幅圖像特征矢量的生成;檢索部分包括以下步驟:提取待檢索圖片的特征點,生成特征點集;計算各個特征點描述子向量到各個聚類中心的距離,以最小距離確定當(dāng)前特征點所屬聚類;計算待檢索圖片的特征點所屬各個聚類的頻數(shù);基于待檢索圖片的特征點所屬聚類的頻數(shù)和所述的各聚類的概率對數(shù)生成一個特征矢量并單位化;計算待檢索圖片的特征矢量到圖片庫各圖像特征矢量的歐拉距離,選取距離最小的圖像輸出為檢索結(jié)果。
【發(fā)明內(nèi)容】
[0005]本發(fā)明所要解決的技術(shù)問題在于提供一種基于模糊聚類的圖片檢索方法。
[0006]為實現(xiàn)上述的發(fā)明目的,本發(fā)明采用下述的技術(shù)方案:
[0007]—種基于模糊聚類的圖片檢索方法,包括如下步驟:
[0008]S11,為圖片庫中圖片構(gòu)建特征值庫,并為每張圖片進(jìn)行編號;
[0009]S12,以編號為操作對象,從圖片庫中選取圖片間的相互距離均大于距離闕值A(chǔ)l的N張圖片,對其余圖片進(jìn)行第一次歸類,形成N類圖片集;
[0010]S13,對N類圖片集中所含圖片數(shù)量大于數(shù)量闕值的類執(zhí)行步驟S12,選取的圖片間相互距離均大于距離闕值A(chǔ)2,每類形成不同數(shù)量的子類別,繼續(xù)在符合所含圖片數(shù)量大于數(shù)量闕值的子類別中執(zhí)行步驟S12,直到所有的類均小于數(shù)量闕值為止,得到M個代表占.
[0011]S14,對圖片庫中的所有圖片,根據(jù)與M個代表點的相似程度,劃分到相似程度最高的代表點所代表的圖片集中,完成整個圖片庫類別的劃分過程;
[0012]S15,對于待檢索的輸入圖片,對其特征值化,分別計算該圖片與所有代表點之間的相似度并按照大小順序排列,選取相似度距離最近的若干個代表點,在選取的代表點所代表的圖片集中進(jìn)行檢索,將檢索結(jié)果合并后返回給用戶。
[0013]其中較優(yōu)地,從圖片庫中選取N張圖片的過程包括如下步驟:
[0014]S121,在圖片庫中隨意選取一張圖片P,以這張圖片為輸入在圖片庫中進(jìn)行檢索,尋找相似度距離最大的圖片Qp
[0015]S122,以圖片Q1為檢索輸入并將圖片集劃分為和Q1的相似度距離大于距離闕值A(chǔ)l的部分SH1,并得到相似度距離最大的圖片Q2。
[0016]S123,循環(huán)執(zhí)行步驟S22,每次的檢索圖片為上一次循環(huán)得到的最不相似圖片QN,被檢索的圖片集為上一次循環(huán)得到的SHn,直到SHnS空為止,所得到的Q1……QnN張圖片即為需要選出的N個代表點。
[0017]一種基于模糊聚類的圖片檢索方法,包括如下步驟:
[0018]S21,對圖片庫中的圖片進(jìn)行編號,并將圖片映射為特征值碼,使用字節(jié)哈希將其分配到節(jié)點上,再存儲到分布式文件系統(tǒng)中;
[0019]S22,從分布式文件系統(tǒng)中隨機讀取一個特征值碼作為初始點,為每個節(jié)點分配一個map函數(shù),在每個map函數(shù)中尋找與其相似度距離最大的點,再發(fā)送到reduce函數(shù)處進(jìn)行合并,挑選出整個圖片庫與其相似度距離最遠(yuǎn)的點Q1 ;
[0020]S23,以點Q1為新的初始點,計算每個節(jié)點中與點Q1相似度距離最大的點,合并到reduce函數(shù)處取最大值,得到和Q1的相似度距離大于距離闕值A(chǔ)l的圖片集SH1以及最不相似的圖片Q2,在SH1中重新將圖片對應(yīng)的特征值碼分配到節(jié)點上,并為每個節(jié)點分配一個map函數(shù),繼續(xù)按照上述步驟尋找相似度距離最遠(yuǎn)的點Q3,每次的初始點為上一次循環(huán)得到的最不相似圖片Qn,被檢索的圖片集為上一次循環(huán)得到的SHn,多次循環(huán)直到SHn為空為止,得到N個代表點。
[0021]S24,為每個代表點分配一個map函數(shù),每個map函數(shù)根據(jù)圖片庫中其余圖片與已知代表點的相似度距離劃分類別,同一類別映射到一個reduce函數(shù)處,根據(jù)類別中圖片數(shù)量的大小判斷是否可以單節(jié)點執(zhí)行;
[0022]S25,對于不能單節(jié)點執(zhí)行的類別內(nèi)繼續(xù)使用步驟S23尋找代表點,選取與Qn的相似度距離大于距離闕值A(chǔ)2的圖片集SHn作為被檢索的圖片集,直到所有類別可以單節(jié)點執(zhí)行為止,得到M個代表點;
[0023]S26,收集所有代表點,為每個代表點分配一個map函數(shù),每個map函數(shù)分別計算圖片庫中其余圖片與代表點的相似度距離,進(jìn)行最后分類,同類使用reduce函數(shù)合并后存為文件;
[0024]S27,對于待檢索的輸入圖片,對其特征值化,分別計算該圖片與所有代表點之間的相似度并按照大小順序排,選取相似度距離最近的若干個代表點,在選取的代表點所代表的文件中查找最后結(jié)果并返回。
[0025]其中較優(yōu)地,在選取的代表點所代表的圖片集中進(jìn)行檢索過程包括如下步驟:
[0026]S151,為每類圖片集分配一個map函數(shù),將每類圖片集中包含的圖片對應(yīng)的特征值碼,使用字節(jié)哈希將其分配到節(jié)點上。
[0027]S152,map函數(shù)計算同一節(jié)點上圖片集中圖片與檢索圖片的相似度距離,并根據(jù)距離大小對其進(jìn)行排序,把排序后的結(jié)果發(fā)送給reduce函數(shù)。
[0028]S153, reduce函數(shù)接受各個map函數(shù)傳送來的排序后的結(jié)果,對其進(jìn)行合并、排序,得到最終的圖片檢索結(jié)果。
[0029]其中較優(yōu)地,在對圖片進(jìn)行處理時,均只對其對應(yīng)的所述編號進(jìn)行操作,而不對圖片進(jìn)行提取,只有在所述檢索結(jié)果合并后,再依照圖片和編號的對應(yīng)關(guān)系從圖片庫中提取圖片,返還給用戶。
[0030]其中較優(yōu)地,在計算圖片之間的相似度距離時,使用兩種特征值的組合對圖片進(jìn)行表示,采用幾何平均數(shù)作為兩種特征值的組合公式,計算圖片間的相似度距離。
[0031]其中較優(yōu)地,所述距離闕值A(chǔ)2為小于距離闕值A(chǔ)l的任意數(shù)。
[0032]本發(fā)明提供的基于模糊聚類的圖片檢索方法,通過選取代表點,將圖片庫中的圖片按照代表點進(jìn)行分類處理,檢索時,只需計算輸入的圖片與代表點的相似度距離,選取相似度距離較小的若干個代表點所在的類別進(jìn)行圖片進(jìn)一步檢索,在保證檢索效率的基礎(chǔ)上,縮小了檢索的范圍,降低了檢索的工作量,有效地滿足了用戶實時檢索的需求。
【專利附圖】
【附圖說明】
[0033]圖1為本發(fā)明所提供的基于模糊聚類的圖片檢索方法的流程圖;
[0034]圖2為本發(fā)明的一個實施例中,實現(xiàn)從圖片庫中選取N張圖片的流程圖。
【具體實施方式】
[0035]下面結(jié)合附圖和具體實施例對本發(fā)明的技術(shù)內(nèi)容作進(jìn)一步的詳細(xì)說明。
[0036]本發(fā)明提供了一種基于模糊聚類的圖片檢索方法,包括如下步驟:首先根據(jù)圖片庫所依賴的相似度計算模型和高維特征空間中圖片分布的疏密程度來選取適當(dāng)數(shù)量的代表點,這些代表點本身也可以是圖片,保證圖片聚集程度越高的區(qū)域代表點的數(shù)量越多,反之,圖片聚集程度越低的區(qū)域代表點的數(shù)量越少,代表點的相對距離按照密度的高低盡量分開,保證其他圖片在歸類時可以體現(xiàn)足夠的趨向性;在選定代表點后將剩余圖片按照與這些代表點的遠(yuǎn)近劃分到不同的區(qū)域中去,形成一個個高維子空間,即各類圖片集;最后在檢索時將輸入圖片劃分到若干個高維子空間中,在高維子空間中進(jìn)行檢索,并將檢索結(jié)果合并返還給用戶。如圖1所示,下面對這一過程做詳細(xì)具體的說明。
[0037]S11,為圖片庫中圖片構(gòu)建特征值庫,并為每張圖片進(jìn)行編號。
[0038]在為圖片庫中圖片構(gòu)建特征值庫時,使用兩種特征值的組合對圖片進(jìn)行表示,以保證所涵蓋的信息量足以明顯表示圖片內(nèi)容,在本發(fā)明所提供的實施例中,使用CEDD(Color and Edge Directivity Descriptor)和邊緣直方圖兩種特征值進(jìn)行構(gòu)建,特征值組合CEDD和邊緣直方圖不僅涵蓋了圖片的顏色、紋理和輪廓三種屬性,對辨別圖片的主體對象有較好的效果,而且單位特征值所占內(nèi)存空間小,易于存儲。以特征值組合CEDD和邊緣直方圖為基準(zhǔn)為圖片庫中的圖片構(gòu)建特征值庫,并對每張圖片進(jìn)行編號。在本發(fā)明所提供的實施例中,對圖片進(jìn)行處理時,均只對其對應(yīng)的編號進(jìn)行操作,不對圖片進(jìn)行提取,只有最后檢索結(jié)果合并后,再依照圖片和編號的對應(yīng)關(guān)系從圖片庫中提取圖片,返還給用戶。例如:進(jìn)行圖片間的相似度距離計算時,只提取圖片編號對應(yīng)的特征值,進(jìn)行相似度距離的計算,并不對圖片進(jìn)行提取,降低了操作了復(fù)雜性,提高了檢索的效率。
[0039]S12,以編號為操作對象,從圖片庫中選取圖片間的相互距離均大于距離闕值A(chǔ)l的N張圖片,對其余圖片進(jìn)行第一次歸類,形成N類圖片集。
[0040]根據(jù)特征值庫中存儲的圖片的特征值,采用幾何平均數(shù)作為兩種特征值的組合公式,計算圖片間的相互距離,幾何平均數(shù)的優(yōu)勢在于避免了對特征值的歸一化,且和單純乘法計算相比保證了組合與單一特征值的值域接近,更有利于距離值大小的比較。從圖片庫中選取圖片間的相互距離均大于距離闕值A(chǔ)l的N(N為正整數(shù),下同)張圖片,作為N個代表點。以選取的N張圖片為基準(zhǔn),按照其余圖片與N張圖片的相似度距離大小,對其余圖片進(jìn)行第一次歸類,形成N類圖片集。在N類圖片集的選取過程中,圖片均用對應(yīng)的編號代替,不去圖片庫中提取圖片,降低了操作了復(fù)雜性,提高了處理效率。
[0041]如圖2所示,從圖片庫中選取N張圖片的過程包括如下步驟:
[0042]S121,在圖片庫中隨意選取一張圖片P,以這張圖片為輸入在圖片庫中進(jìn)行檢索,尋找最不相似(相似度距離最大)的圖片%。
[0043]在尋找與圖片P最不相似的圖片Q1時,根據(jù)征值庫中存儲的圖片的特征值,采用幾何平均數(shù)作為兩種特征值的組合公式,計算圖片間的相互距離,找出與圖片P距離最大的圖片,即為圖片Qi。
[0044]S122,以圖片Q1為檢索輸入并將圖片集劃分為和Q1的相似度距離大于距離闕值A(chǔ)l的部分SH1,并得到最不相似的圖片Q2。
[0045]S123,循環(huán)執(zhí)行步驟S22,每次的檢索圖片為上一次循環(huán)得到的最不相似圖片QN,被檢索的圖片集為上一次循環(huán)得到的SHn,直到SHnS空為止,所得到的Q1……QnN張圖片即為需要選出的N個代表點。
[0046]S13,對N類圖片中所含圖片數(shù)量大于數(shù)量闕值H的類執(zhí)行步驟S12,此次選取的相互距離均大于距離闕值A(chǔ)2,每類形成不同數(shù)量的子類別,繼續(xù)在符合所含圖片數(shù)量大于數(shù)量闕值H的類中執(zhí)行步驟S12,直到所有的類均小于數(shù)量闕值H為止,形成M(M為正整數(shù),下同)類圖片集,即存在M個代表點。其中,距離闕值A(chǔ)2為小于距離闕值A(chǔ)l的任意數(shù),而Al和A2根據(jù)圖片庫的分布情況和系統(tǒng)在檢索時準(zhǔn)確度與響應(yīng)時間的不同需要進(jìn)行設(shè)定。通過設(shè)置Al和A2可以適當(dāng)?shù)恼{(diào)節(jié)圖片類的大小和相對密度,提高了檢索的靈活性。
[0047]S14,對圖片庫中的所有圖片,根據(jù)與M個代表點的相似度程度,劃分到相似程度最高的代表點所代表的圖片集中,完成整個類別的劃分過程。
[0048]對選取的M個代表點,將圖片庫中其余的圖片分別計算其與這M個代表點的相似度距離,根據(jù)相似度距離的大小將其劃分到不同的圖片集中,完成整個圖片庫類別的最終劃分。
[0049]S15,對于待檢索的輸入圖片,對其特征值化,分別計算該圖片與所有代表點之間的相似度并按照大小順序排,選取相似度距離最近的若干個代表點,在這些代表點所代表的圖片集中查找最后結(jié)果并返回。
[0050]當(dāng)用戶輸入待檢索的圖片后,使用兩種特征值的組合對圖片進(jìn)行表示,然后采用幾何平均數(shù)作為兩種特征值的組合公式,計算圖片與代表點之間的相似度距離,并按照其取值的大小對其進(jìn)行排序。根據(jù)需求選取距離最近的幾個代表點,將圖片分別劃分到這幾個代表點所代表的圖片集中對圖片進(jìn)行檢索。在本發(fā)明所提供的實施例中,將待檢索的圖片分別劃分到這幾個代表點所代表的圖片集中對圖片進(jìn)行檢索時,并不提取圖片庫中的圖片,只提取圖片編號所對應(yīng)的特征值,進(jìn)行相似度距離的計算,按照大小順序排,并將結(jié)果進(jìn)行合并,再依照圖片和編號的對應(yīng)關(guān)系從圖片庫中提取圖片,返還給用戶。
[0051]在本發(fā)明所提供的實施例中,在不同類別的圖片集中進(jìn)行檢索的過程采用分布式的集群處理,類與類之間存在一定的獨立性,在集群中合理分配類的存儲節(jié)點可以保證檢索請求分發(fā)到少數(shù)的幾個節(jié)點上,加強了系統(tǒng)的可擴展性。而且,劃分的類別代表點在位置上也存在遠(yuǎn)近的差異,差異小的在檢索時被同時計算的可能性大,可以放在同一個節(jié)點上進(jìn)行處理。
[0052]MapReduce是當(dāng)前主流的分布式計算模型之一,將計算分解為映射(Map)和化簡(Reduce)兩種處理階段,可以極大地方便用戶在不了解分布式計算原理和實現(xiàn)方法時將程序部署到分布式集群中并進(jìn)行計算。MapReduce模型的基本流程是首先對數(shù)據(jù)的單個元素進(jìn)行操作,這一步稱之為映射(Map),即將待處理的原始數(shù)據(jù)轉(zhuǎn)化為初步處理過的數(shù)據(jù),由于這一步的操作中數(shù)據(jù)之間不存在依賴關(guān)系,所以可以將數(shù)據(jù)分配給不同節(jié)點并行計算,在Hadoop中Map的輸出數(shù)據(jù)是按照鍵值對的形式組織的,再對鍵值對中的key值進(jìn)行哈希操作后將其分配到對應(yīng)節(jié)點上去,通過整合排序數(shù)據(jù)將進(jìn)入化簡(Reduce)階段?;嗠A段對同一鍵值的數(shù)據(jù)進(jìn)行合并或其他處理得到單一數(shù)據(jù)結(jié)果,進(jìn)而完成整個操作。這個處理流程可以保證處理的每個階段不存在必經(jīng)的處理節(jié)點而造成計算瓶頸。
[0053]MapReduce模型通過對每一個任務(wù)的反饋來保證計算的可靠性,每個節(jié)點會按照一定的時間間隔發(fā)送運行的狀態(tài),系統(tǒng)當(dāng)與某一節(jié)點失去聯(lián)系時就會將分配給該節(jié)點的任務(wù)分配給其他節(jié)點。根據(jù)數(shù)據(jù)本地化原則,系統(tǒng)一般盡量將處理程序傳遞給存儲對應(yīng)數(shù)據(jù)的節(jié)點上來避免網(wǎng)絡(luò)的負(fù)載過重,提升效率。
[0054]在本發(fā)明所提供的實施例中,將基于模糊聚類的圖形檢索方法中在不同類圖片集中對圖片進(jìn)行檢索的過程轉(zhuǎn)化為MapReduce模型的處理方法,MapReduce模型是一種由映射和化簡組成的基于分治思想的計算模型,在不同類圖片集中對圖片進(jìn)行檢索時的獨立性適用于該模型,可以根據(jù)選取的圖片集的類別將其轉(zhuǎn)化為若干個MapReduce任務(wù),轉(zhuǎn)化后,在每類圖片集中對圖片進(jìn)行檢索的過程包括如下步驟:
[0055]S151,為每類圖片集分配一個map函數(shù),將每類圖片集中包含的圖片對應(yīng)的特征值碼,使用字節(jié)哈希將其分配到節(jié)點上。
[0056]在為每類圖片集分配map函數(shù)時,可以為每類圖片集分配一個map函數(shù),當(dāng)劃分的類別代表點在位置上存在遠(yuǎn)近的差異小時,也可以為多類圖片集分配一個map函數(shù)。在本發(fā)明所提供的實施例中,為每類圖片集分配一個map函數(shù)。
[0057]S152,map函數(shù)計算同一節(jié)點上圖片集中圖片與檢索圖片的相似度距離,并根據(jù)距離大小對其進(jìn)行排序,把排序后的結(jié)果發(fā)送給reduce函數(shù)。
[0058]S153, reduce函數(shù)接受各個map函數(shù)傳送來的排序后的結(jié)果,對其進(jìn)行合并、排序,得到最終的圖片檢索結(jié)果。
[0059]在本發(fā)明所提供的基于模糊聚類的圖片檢索方法中,代表點選擇的過程是在每類內(nèi)部完成的,完全獨立于其他類的運算,適合于分布式計算。整個檢索過程除了最后一個步驟將每幅圖片劃分到具體類別中進(jìn)行相似度計算時需要有圖片數(shù)和類別數(shù)乘積的計算量以外,其余部分計算量較小,不會造成時間復(fù)雜度隨圖片庫變大而呈指數(shù)型增長的情況,可適用于在圖片庫的規(guī)模較大時進(jìn)行檢索,能有效地滿足不同訪問者的需要,適用于不同類型圖片的檢索輸入。
[0060]除此之外,本發(fā)明所提供基于模糊聚類的圖形檢索方法并不依據(jù)類別中心點作為聚類標(biāo)準(zhǔn),而是通過空間中差異較大的幾張基準(zhǔn)圖片判別其余圖片的趨向性,而選取基準(zhǔn)圖片的迭代次數(shù)與選取的距離閾值以及圖片庫的稀疏度的相對程度有關(guān),而與圖片庫的大小無關(guān),而且每次類別劃分并不存在迭代過程。圖片的最終類別劃分是在所有基準(zhǔn)圖片都選取結(jié)束后才確定的,而基準(zhǔn)圖片與其所代表的類的大小和空間稀疏度有緊密關(guān)系,圖片相對密集的區(qū)域,基準(zhǔn)圖片也相對較多,這樣可以保證類別的大小相對均勻且按照稀疏度劃分。第一次聚類后的其余聚類過程均在類內(nèi)進(jìn)行,符合分布式計算中分治算法的基本要求。
[0061]在本發(fā)明的另一個實施例中,將基于模糊聚類的圖形檢索方法中在不同類圖片集中選取代表點的過程轉(zhuǎn)化為MapReduce模型的處理方法,MapReduce模型是一種由映射和化簡組成的基于分治思想的計算模型,在代表點選擇時的獨立性適用于該模型,可以轉(zhuǎn)化為若干個MapReduce任務(wù),具體包括如下步驟:
[0062]S21,對圖片庫中的圖片進(jìn)行編號,并將其映射為特征值碼,使用字節(jié)哈希將其分配到節(jié)點上,再存儲到分布式文件系統(tǒng)中。
[0063]S22,從分布式文件系統(tǒng)中隨機讀取一個特征值碼作為初始點,為每個節(jié)點分配一個map函數(shù),在每個map函數(shù)中尋找與其相似度距離最大的點,再發(fā)送到reduce函數(shù)處對其進(jìn)行合并,挑選出整個圖片庫與其相似度距離最遠(yuǎn)的點%。
[0064]S23,以點Q1為新的初始點,計算每個節(jié)點中與點Q1相似度距離最大的點,合并到reduce函數(shù)處取最大值,得到和Q1的相似度距離大于距離闕值A(chǔ)l的圖片集SH1以及最不相似的圖片Q2,在SH1中重新將圖片對應(yīng)的特征值碼分配到節(jié)點上,并為每個節(jié)點分配一個map函數(shù),繼續(xù)按照上述步驟尋找相似度距離最遠(yuǎn)的點Q3,每次的初始點為上一次循環(huán)得到的最不相似圖片Qn,被檢索的圖片集為上一次循環(huán)得到的SHn,多次循環(huán)直到SHn為空為止,得到N個代表點。
[0065]S24,為每個代表點分配一個map函數(shù),每個map函數(shù)根據(jù)圖片庫中其余圖片與已知代表點的相似度距離劃分類別,同一類別映射到一個reduce函數(shù)處,根據(jù)類別中圖片數(shù)量的大小判斷是否可以單節(jié)點執(zhí)行。
[0066]在本發(fā)明所提供的實施例中,根據(jù)類別中圖片數(shù)量的大小判斷是否可以單節(jié)點運行是判斷類別中圖片數(shù)量是否大于設(shè)定的數(shù)量闕值,當(dāng)類別中圖片數(shù)量大于設(shè)定的數(shù)量闕值時,該類別不可以單節(jié)點執(zhí)行,轉(zhuǎn)向步驟S25,當(dāng)類別中圖片數(shù)量不大于設(shè)定的數(shù)量闕值時,該類別可以單節(jié)點執(zhí)行,不進(jìn)行下一步的劃分。
[0067]S25,對于不能單節(jié)點執(zhí)行的類別內(nèi)繼續(xù)使用步驟S23尋找代表點,選取與Qn的相似度距離大于距離闕值A(chǔ)2的圖片集SHn作為被檢索的圖片集,直到所有類別可以單節(jié)點執(zhí)行為止,得到M個代表點。
[0068]S26,收集所有代表點,為每個代表點分配一個map函數(shù),每個map函數(shù)分別計算圖片庫中其余圖片與代表點的相似度距離,進(jìn)行最后分類,同類使用reduce函數(shù)合并后存為文件。
[0069]S27,對于待檢索的輸入圖片,對其特征值化,分別計算該圖片與所有代表點之間的相似度并按照大小順序排,選取相似度距離最近的若干個代表點,在這些代表點所代表的文件中查找最后結(jié)果并返回。
[0070]在本發(fā)明所提供的實施例中,在選取的代表點所代表的圖片集中進(jìn)行檢索過程與上述步驟S151?S153相同,在此便不再贅述。
[0071]綜上所述,本發(fā)明所提供的基于模糊聚類的圖片檢索方法,根據(jù)圖片庫所依賴的相似度計算模型和高維特征空間中圖片分布的疏密程度來選取適當(dāng)數(shù)量的代表點,不僅涵蓋了圖片的顏色、紋理和輪廓三種屬性,對辨別圖片的主體對象有較好的效果,而且單位特征值所占內(nèi)存空間小,易于存儲。在選定代表點后將剩余圖片按照與這些代表點的遠(yuǎn)近劃分到不同的區(qū)域中去,形成一個個高維子空間,即不同類別的圖片集;最后在檢索時將輸入圖片劃分到若干個高維子空間中,在高維子空間中進(jìn)行檢索,并將檢索結(jié)果合并返還給用戶。其中,在高維子空間中進(jìn)行檢索的過程采用分布式的集群處理,能有效的提高檢索的效率,滿足用戶實時檢索的要求。
[0072]以上對本發(fā)明所提供的基于模糊聚類的圖片檢索方法進(jìn)行了詳細(xì)的說明。對本領(lǐng)域的技術(shù)人員而言,在不背離本發(fā)明實質(zhì)精神的前提下對它所做的任何顯而易見的改動,都將構(gòu)成對本發(fā)明專利權(quán)的侵犯,將承擔(dān)相應(yīng)的法律責(zé)任。
【權(quán)利要求】
1.一種基于模糊聚類的圖片檢索方法,其特征在于包括如下步驟: S11,為圖片庫中圖片構(gòu)建特征值庫,并為每張圖片進(jìn)行編號; S12,以編號為操作對象,從圖片庫中選取圖片間的相互距離均大于距離闕值A(chǔ)l的N張圖片,對其余圖片進(jìn)行第一次歸類,形成N類圖片集,所述N為正整數(shù); S13,對N類圖片集中所含圖片數(shù)量大于數(shù)量闕值的類執(zhí)行步驟S12,選取的圖片間相互距離均大于距離闕值A(chǔ)2,每類形成不同數(shù)量的子類別,繼續(xù)在符合所含圖片數(shù)量大于數(shù)量闕值的子類別中執(zhí)行步驟S12,直到所有的類均小于數(shù)量闕值為止,得到M個代表點,所述M為正整數(shù); S14,對圖片庫中的所有圖片,根據(jù)與M個代表點的相似程度,劃分到相似程度最高的代表點所代表的圖片集中,完成整個圖片庫類別的劃分過程; S15,對于待檢索的輸入圖片,對其特征值化,分別計算該圖片與所有代表點之間的相似度并按照大小順序排列,選取相似度距離最近的若干個代表點,在選取的代表點所代表的圖片集中進(jìn)行檢索,將檢索結(jié)果合并后返回給用戶。
2.如權(quán)利要求1所述的基于模糊聚類的圖片檢索方法,其特征在于從圖片庫中選取N張圖片的過程包括如下步驟: 5121,在圖片庫中隨意選取一張圖片P,以這張圖片為輸入在圖片庫中進(jìn)行檢索,尋找相似度距離最大的圖片Q1 ; 5122,以圖片Q1為檢索輸入并將圖片集劃分為和Q1的相似度距離大于距離闕值A(chǔ)l的部分SH1,并得到相似度距離最大的圖片Q2 ; 5123,循環(huán)執(zhí)行步驟S22,每次的檢索圖片為上一次循環(huán)得到的最不相似圖片Qn,被檢索的圖片集為上一次循環(huán)得到的SHn,直到SHnS空為止,所得到的Q1……QnN張圖片即為需要選出的N個代表點。
3.一種基于模糊聚類的圖片檢索方法,其特征在于包括如下步驟: S21,對圖片庫中的圖片進(jìn)行編號,并將圖片映射為特征值碼,使用字節(jié)哈希將其分配到節(jié)點上,再存儲到分布式文件系統(tǒng)中; S22,從分布式文件系統(tǒng)中隨機讀取一個特征值碼作為初始點,為每個節(jié)點分配一個map函數(shù),在每個map函數(shù)中尋找與其相似度距離最大的點,再發(fā)送到reduce函數(shù)處進(jìn)行合并,挑選出整個圖片庫與其相似度距離最遠(yuǎn)的點Q1 ; S23,以點Q1為新的初始點,計算每個節(jié)點中與點Q1相似度距離最大的點,合并到reduce函數(shù)處取最大值,得到和Q1的相似度距離大于距離闕值A(chǔ)l的圖片集SH1以及最不相似的圖片Q2,在SH1中重新將圖片對應(yīng)的特征值碼分配到節(jié)點上,并為每個節(jié)點分配一個map函數(shù),繼續(xù)按照上述步驟尋找相似度距離最遠(yuǎn)的點Q3,每次的初始點為上一次循環(huán)得到的最不相似圖片Qn,被檢索的圖片集為上一次循環(huán)得到的SHn,多次循環(huán)直到SHn為空為止,得到N個代表點,所述N為正整數(shù); S24,為每個代表點分配一個map函數(shù),每個map函數(shù)根據(jù)圖片庫中其余圖片與已知代表點的相似度距離劃分類別,同一類別映射到一個reduce函數(shù)處,根據(jù)類別中圖片數(shù)量的大小判斷是否可以單節(jié)點執(zhí)行; S25,對于不能單節(jié)點執(zhí)行的類別內(nèi)繼續(xù)使用步驟S23尋找代表點,選取與Qn的相似度距離大于距離闕值A(chǔ)2的圖片集SHn作為被檢索的圖片集,直到所有類別可以單節(jié)點執(zhí)行為止,得到M個代表點,所述M為正整數(shù); S26,收集所有代表點,為每個代表點分配一個map函數(shù),每個map函數(shù)分別計算圖片庫中其余圖片與代表點的相似度距離,進(jìn)行最后分類,同類使用reduce函數(shù)合并后存為文件; S27,對于待檢索的輸入圖片,對其特征值化,分別計算該圖片與所有代表點之間的相似度并按照大小順序排,選取相似度距離最近的若干個代表點,在選取的代表點所代表的文件中查找最后結(jié)果并返回。
4.如權(quán)利要求1或3所述的基于模糊聚類的圖片檢索方法,其特征在于在選取的代表點所代表的圖片集中進(jìn)行檢索過程包括如下步驟: S151,為每類圖片集分配一個map函數(shù),將每類圖片集中包含的圖片對應(yīng)的特征值碼,使用字節(jié)哈希將其分配到節(jié)點上; S152,map函數(shù)計算同一節(jié)點上圖片集中圖片與檢索圖片的相似度距離,并根據(jù)距離大小對其進(jìn)行排序,把排序后的結(jié)果發(fā)送給reduce函數(shù); S153, reduce函數(shù)接受各個map函數(shù)傳送來的排序后的結(jié)果,對其進(jìn)行合并、排序,得到最終的圖片檢索結(jié)果。
5.如權(quán)利要求1或3所述的基于模糊聚類的圖片檢索方法,其特征在于: 在對圖片進(jìn)行處理時,只對其對應(yīng)的所述編號進(jìn)行操作,而不對圖片進(jìn)行提?。辉谒鰴z索結(jié)果合并后,再依照圖片和編號的對應(yīng)關(guān)系從圖片庫中提取圖片,返還給用戶。
6.如權(quán)利要求1或3所述的基于模糊聚類的圖片檢索方法,其特征在于: 在計算圖片之間的相似度距離時,使用兩種特征值的組合對圖片進(jìn)行表示,采用幾何平均數(shù)作為兩種特征值的組合公式,計算圖片間的相似度距離。
7.如權(quán)利要求1或3所述的基于模糊聚類的圖片檢索方法,其特征在于: 所述距離闕值A(chǔ)2為小于距離闕值A(chǔ)l的任意數(shù)。
【文檔編號】G06F17/30GK104298713SQ201410472785
【公開日】2015年1月21日 申請日期:2014年9月16日 優(yōu)先權(quán)日:2014年9月16日
【發(fā)明者】劉瑞, 左源, 張輝 申請人:北京航空航天大學(xué)