圖像搜索方法及裝置、圖像搜索系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種圖像搜索方法及裝置、圖像搜索系統(tǒng),所述方法包括:獲取待查詢圖像的視覺單詞;根據(jù)所述視覺單詞,在預(yù)設(shè)索引表中獲取包括二值碼的第一集合;獲取所述待查詢圖像的第一二值碼;獲取所述第一二值碼與所述第一集合中每一二值碼的第一距離;選擇符合第一預(yù)設(shè)范圍的第一距離,將符合第一預(yù)設(shè)范圍的第一距離對應(yīng)的二值碼組成第二集合;獲取所述第二集合中所有二值碼所屬的圖像,并采用所述第二集合中所有二值碼對該些圖像進(jìn)行評分,在所有評分結(jié)果中選取符合第二預(yù)設(shè)范圍的評分結(jié)果,將選取得評分結(jié)果對應(yīng)的圖像作為與所述待查詢圖像相似的圖像。上述方法能夠提高圖像搜索的檢索速度,提高檢索效率,同時提高圖像搜索的檢索精度。
【專利說明】
圖像搜索方法及裝置、圖像搜索系統(tǒng)
技術(shù)領(lǐng)域
[0001] 本發(fā)明設(shè)及捜索技術(shù),具體設(shè)及一種圖像捜索方法及裝置、圖像捜索系統(tǒng)。
【背景技術(shù)】
[0002] 隨著互聯(lián)網(wǎng)行業(yè)的鵬起和大數(shù)據(jù)業(yè)務(wù)的普及,從海量圖像中挖掘信息逐漸成為一 種基本需求,視覺捜索相關(guān)應(yīng)用越來越多?;趦?nèi)容的圖像捜索方法是采用圖像作為查詢, 捜索到相似圖像為目的的一種檢索方法,通過圖像捜索可有效的直面查詢需求,提高捜索 的用戶體驗。
[0003] 當(dāng)前,圖像捜索的一種實現(xiàn)方法包括:首先,獲取圖像的視覺描述子,并將該視覺 描述子量化成對應(yīng)的視覺單詞;接著,采用視覺單詞組成的信息在圖像庫對應(yīng)的視覺單詞 中進(jìn)行捜索。即采用傳統(tǒng)文本檢索的方式實現(xiàn)對圖像的捜索。該圖像捜索方法僅利用視覺 單詞對圖像的描述方式不能更很好的表征該圖像的信息,導(dǎo)致針對該圖像的檢索精度非常 有限。
[0004] 現(xiàn)有技術(shù)中還公開一種圖像捜索方法,該方法包括:首先,獲取圖像的視覺描述 子;接著,將視覺描述子聚合成維度較高的全局特征,從而將圖像轉(zhuǎn)化成一個對應(yīng)的全局描 述子,再通過精確K近鄰查找化-NearestNei曲bor,簡稱KNN)或近似最近鄰查找(ANN)的 方式,在數(shù)據(jù)庫中查找到近鄰全局描述子對應(yīng)的相似圖像。然而,該方法利用全局描述子進(jìn) 行捜索的查找方式,往往受限于過高的描述子維度,圖像檢索精度和檢索效率往往無法很 好地進(jìn)行權(quán)衡。 陽〇化]鑒于此,如何提供一種即能保證圖像檢索精度,又能保證檢索效率的圖像捜索方 法成為當(dāng)前亟需解決的問題。
【發(fā)明內(nèi)容】
[0006] 針對現(xiàn)有技術(shù)中的缺陷,本發(fā)明提供了一種圖像捜索方法及裝置、圖像捜索系統(tǒng), 該方法能夠提高圖像捜索的檢索速度,提高檢索效率,同時提高圖像捜索的檢索精度。
[0007] 第一方面,本發(fā)明提供一種圖像捜索方法,包括:
[000引獲取待查詢圖像的視覺單詞W及所述待查詢圖像的第一二值碼;
[0009] 根據(jù)所述視覺單詞,在預(yù)設(shè)索引表中獲取包括二值碼的第一集合;
[0010] 獲取所述第一二值碼與所述第一集合中每一二值碼的第一距離;
[0011] 選擇符合第一預(yù)設(shè)范圍的第一距離,將符合第一預(yù)設(shè)范圍的第一距離對應(yīng)的二值 碼組成第二集合;
[0012] 獲取所述第二集合中所有二值碼所屬的圖像,并采用所述第二集合中所有二值碼 對該些圖像進(jìn)行評分,在所有評分結(jié)果中選取符合第二預(yù)設(shè)范圍的評分結(jié)果,將選取得評 分結(jié)果對應(yīng)的圖像作為與所述待查詢圖像相似的圖像;
[0013] 其中,所述索引表為預(yù)先根據(jù)圖像數(shù)據(jù)庫中的所有圖像獲取的包括視覺單詞的倒 排鏈表的索引表,所述倒排鏈表中記錄有一個W上的二值碼。
[0014] 可選地,所述方法還包括:
[0015] 獲取所述待查詢圖像的第一全局特征,將所述第一全局特征量化為第一全局信 號;
[0016] 獲取第一全局信號和所有第二全局信號的第二距離,所述第二全局信號為選取得 評分結(jié)果對應(yīng)的圖像的全局信號,每一第二全局信號為預(yù)先根據(jù)各自圖像的第二全局特征 獲取的;
[0017] 在所有第二距離中選取符合第Ξ預(yù)設(shè)范圍的一個W上的第二距離,將選取的一個 W上的第二距離對應(yīng)的第二全局信號所屬的圖像作為待查詢圖像相似的圖像。
[0018] 可選地,獲取所述待查詢圖像的第一二值碼,具體包括:
[0019] 獲取所述待查詢圖像的一個W上的第一二值碼及每一第一二值碼的第一坐標(biāo)信 息;
[0020] 相應(yīng)地,所述方法還包括:
[0021] 確定所述待查詢圖像的第一二值碼與每一第二二值碼的第Ξ距離,所述第二二值 碼為選取的一個W上的第二距離對應(yīng)的第二全局信號所屬的圖像的二值碼;
[0022] 采用預(yù)設(shè)的幾何校驗算法對確定每一第Ξ距離時的第一二值碼的第一坐標(biāo)信息、 第二二值碼的第二坐標(biāo)信息進(jìn)行過濾,得到過濾后的第Ξ距離;所述第二二值碼的第二坐 標(biāo)倍息為預(yù)先獲取第二二值碼時獲取的;
[0023] 在所有過濾后的第Ξ距離中選取符合第五預(yù)設(shè)范圍的一個W上的第Ξ距離,將選 取的一個W上的第Ξ距離對應(yīng)的第二二值碼所屬的圖像作為待查詢圖像相似的圖像。
[0024] 可選地,根據(jù)所述視覺單詞,在預(yù)設(shè)索引表中獲取包括二值碼的第一集合,包括: [00巧]在預(yù)設(shè)索引表中查找每一視覺單詞的倒排鏈表;將所述倒排鏈表中記錄的所有二 值碼進(jìn)行組合,獲得包括二值碼的第一集合; 陽026] 和/或,
[0027] 所述獲取待查詢圖像的視覺單詞,包括:
[0028] 獲取待查詢圖像的至少一個描述子;根據(jù)預(yù)設(shè)的視覺單詞詞典,將每一描述子量 化成視覺單詞; W29] 和/或,
[0030] 所述將所述第一全局特征量化為第一全局信號,具體為:
[0031] 采用高斯混合模型將圖像的至少一個描述子聚合成Fisher向量;對所述Fisher 向量進(jìn)行符號二值化,得到第一全局信號; 柳巧和/或,
[0033] 所述獲取所述待查詢圖像的第一二值碼,包括:
[0034] 獲取待查詢圖像的至少一個描述子;根據(jù)所述描述子,獲取所述待查詢圖像的第 一二值碼;
[0035] 或者,獲取待查詢圖像的至少一個描述子;根據(jù)所述描述子、預(yù)設(shè)的均值向量和預(yù) 設(shè)的投影矩陣,獲取所述待查詢圖像的第一二值碼。
[0036] 可選地,所述獲取待查詢圖像的視覺單詞,具體為:
[0037] 獲取待查詢圖像的視覺單詞及該視覺單詞的關(guān)聯(lián)信息;
[0038] 相應(yīng)地,根據(jù)所述視覺單詞,在預(yù)設(shè)索引表中獲取二值碼的第一集合,具體為:
[0039] 根據(jù)所述視覺單詞及該視覺單詞的關(guān)聯(lián)信息,在預(yù)設(shè)索引表中獲取二值碼的第一 集合。
[0040] 第二方面,本發(fā)明還提供一種圖像捜索裝置,包括:
[0041] 視覺單詞獲取單元,用于獲取待查詢圖像的視覺單詞;
[0042] 二值碼獲取單元,用于獲取所述待查詢圖像的第一二值碼;
[0043] 相似圖像獲取單元,用于根據(jù)所述視覺單詞,在預(yù)設(shè)索引表中獲取包括二值碼的 第一集合,獲取所述第一二值碼與所述第一集合中每一二值碼的第一距離;
[0044] 選擇符合第一預(yù)設(shè)范圍的第一距離,將符合第一預(yù)設(shè)范圍的第一距離對應(yīng)的二值 碼組成第二集合;
[0045] 獲取所述第二集合中所有二值碼所屬的圖像,并采用所述第二集合中所有二值碼 對該些圖像進(jìn)行評分,在所有評分結(jié)果中選取符合第二預(yù)設(shè)范圍的評分結(jié)果,將選取得評 分結(jié)果對應(yīng)的圖像作為與所述待查詢圖像相似的圖像;
[0046] 其中,所述索引表為預(yù)先根據(jù)圖像數(shù)據(jù)庫中的所有圖像獲取的包括視覺單詞的倒 排鏈表的索引表,所述倒排鏈表中記錄有一個W上的二值碼。
[0047] 可選地,所述裝置還包括:
[0048] 全局信號獲取單元,用于獲取所述待查詢圖像的第一全局特征,將所述第一全局 特征量化為第一全局信號;
[0049] 獲取第一全局信號和所有第二全局信號的第二距離,所述第二全局信號為選取得 評分結(jié)果對應(yīng)的圖像的全局信號,每一第二全局信號為預(yù)先根據(jù)各自圖像的第二全局特征 獲取的;
[0050] 在所有第二距離中選取符合第Ξ預(yù)設(shè)范圍的一個W上的第二距離,將選取的一個 W上的第二距離對應(yīng)的第二全局信號所屬的圖像作為待查詢圖像相似的圖像。
[0051] 可選地,所述二值碼獲取單元,具體用于
[0052] 獲取所述待查詢圖像的一個W上的第一二值碼及每一第一二值碼的第一坐標(biāo)信 息;
[0053] 相應(yīng)地,所述相似圖像獲取單元,還用于
[0054] 確定所述待查詢圖像的第一二值碼與每一第二二值碼的第Ξ距離,所述第二二值 碼為選取的一個W上的第二距離對應(yīng)的第二全局信號所屬的圖像的二值碼; 陽化日]采用預(yù)設(shè)的幾何校驗算法對確定每一第Ξ距離時的第一二值碼的第一坐標(biāo)信息、 第二二值碼的第二坐標(biāo)信息進(jìn)行過濾,得到過濾后的第Ξ距離;所述第二二值碼的第二坐 標(biāo)倍息為預(yù)先獲取第二二值碼時獲取的;
[0056] 在所有過濾后的第Ξ距離中選取符合第五預(yù)設(shè)范圍的一個W上的第Ξ距離,將選 取的一個W上的第Ξ距離對應(yīng)的第二二值碼所屬的圖像作為待查詢圖像相似的圖像。
[0057] 第Ξ方面,本發(fā)明提供一種圖像檢索系統(tǒng),包括:客戶端和服務(wù)器;
[0058] 其中,所述客戶端包括:視覺單詞獲取單元、二值碼獲取單元、第一發(fā)送單元;
[0059] 所述視覺單詞獲取單元,用于獲取待查詢圖像的視覺單詞;
[0060] 二值碼獲取單元,用于獲取所述待查詢圖像的第一二值碼;
[0061] 第一發(fā)送單元,用于將所述視覺單詞獲取單元獲取的視覺單詞和所述二值碼獲取 單元獲取的所述第一二值碼發(fā)送所述服務(wù)器;
[0062] 所述服務(wù)器包括:第二接收單元、相似圖像獲取單元和第二發(fā)送單元;
[0063] 所述第二接收單元,用于接收所述客戶端的第一發(fā)送單元發(fā)送的待查詢圖像的視 覺單詞和所述第一二值碼;
[0064] 所述相似圖像獲取單元,用于根據(jù)所述視覺單詞,在預(yù)設(shè)索引表中獲取包括二值 碼的第一集合,獲取所述第一二值碼與所述第一集合中每一二值碼的第一距離; 陽〇化]選擇符合第一預(yù)設(shè)范圍的第一距離,將符合第一預(yù)設(shè)范圍的第一距離對應(yīng)的二值 碼組成第二集合;
[0066] 獲取所述第二集合中所有二值碼所屬的圖像,并采用所述第二集合中所有二值碼 對該些圖像進(jìn)行評分,在所有評分結(jié)果中選取符合第二預(yù)設(shè)范圍的評分結(jié)果,將選取得評 分結(jié)果對應(yīng)的圖像作為與所述待查詢圖像相似的圖像;
[0067] 其中,所述索引表為預(yù)先根據(jù)圖像數(shù)據(jù)庫中的所有圖像獲取的包括視覺單詞的倒 排鏈表的索引表,所述倒排鏈表中記錄有一個W上的二值碼;
[0068] 所述第二發(fā)送單元,還用于將與所述待查詢圖像相似的圖像發(fā)送所述客戶端。
[0069] 可選地,所述客戶端還包括:全局信號獲取單元,用于獲取所述待查詢圖像的第一 全局特征,將所述第一全局特征量化為第一全局信號;
[0070] 所述第一發(fā)送單元,還用于將所述第一全局信號發(fā)送所述服務(wù)器的第二接收單 元;
[0071] 所述相似圖像獲取單元,還用于
[0072] 獲取第一全局信號和所有第二全局信號的第二距離,所述第二全局信號為選取得 評分結(jié)果對應(yīng)的圖像的全局信號,每一第二全局信號為預(yù)先根據(jù)各自圖像的第二全局特征 獲取的;
[0073] 在所有第二距離中選取符合第Ξ預(yù)設(shè)范圍的一個W上的第二距離,將選取的一個 W上的第二距離對應(yīng)的第二全局信號所屬的圖像作為待查詢圖像相似的圖像。
[0074] 可選地,所述第一發(fā)送單元,具體用于
[00巧]將發(fā)送的視覺單詞、第一二值碼和/或第一全局信號組成碼流,將碼流發(fā)送服務(wù) 器的第二接收單元;
[0076] 所述第二接收單元,具體用于在接收所述碼流之后,從所述碼流中獲取視覺單詞、 第一二值碼和/或第一全局信號。
[0077] 由上述技術(shù)方案可知,本發(fā)明的圖像捜索方法及裝置、圖像捜索系統(tǒng),通過視覺單 詞和二值碼結(jié)合進(jìn)行圖像捜索,可有效降低圖像捜索所需的時間,提升圖像捜索精度,同時 提升用戶體驗。
【附圖說明】
[0078] 圖1為本發(fā)明一實施例提供的圖像捜索方法的流程示意圖;
[0079] 圖2為本發(fā)明一實施例提供的圖像捜索方法的流程示意圖;
[0080] 圖3為本發(fā)明一實施例提供的圖像捜索方法的流程示意圖;
[0081] 圖4為本發(fā)明一實施例提供的視覺單詞生成過程的示意圖;
[0082] 圖5為本發(fā)明一實施例提供的圖像二值碼生成過程的示意圖;
[0083] 圖6為本發(fā)明一實施例提供的圖像捜索裝置的結(jié)構(gòu)示意圖;
[0084] 圖7為本發(fā)明一實施例提供的圖像捜索系統(tǒng)的結(jié)構(gòu)示意圖。
【具體實施方式】
[0085] 下面結(jié)合附圖,對發(fā)明的【具體實施方式】作進(jìn)一步描述。W下實施例僅用于更加清 楚地說明本發(fā)明的技術(shù)方案,而不能W此來限制本發(fā)明的保護(hù)范圍。本發(fā)明實施例中所使 用的"第一"、"第二"僅為更清楚的說明本申請的內(nèi)容,不具有特定含義,也不限定任何內(nèi) 容。
[0086] 圖1示出了本發(fā)明一實施例提供的圖像捜索方法的流程示意圖,如圖1所示,本實 施例中的圖像捜索方法如下所述。
[0087] 101、獲取待查詢圖像的視覺單詞。
[0088] 在本實施例中,待查詢圖像可為待查詢的圖像、素描等信息。
[0089] 舉例來說,獲取待查詢圖像的至少一個描述子;根據(jù)預(yù)設(shè)的視覺單詞詞典,將每一 描述子量化成視覺單詞。本實施例中每一待查詢圖像的視覺單詞為多個,本實施例為方便 說明,沒有說明視覺單詞的數(shù)量,也不對視覺單詞的數(shù)量進(jìn)行限定。
[0090] 舉例來說,在具體應(yīng)用中,可預(yù)先獲取待查詢圖像的一個或多個描述子,將每個描 述子量化成對應(yīng)的一個或一組視覺單詞。本實施例中的一組視覺單詞可為多個相關(guān)的視覺 單詞。
[0091] 其中,本實施例中所述的描述子,可W是任意適用于圖像局部特征表達(dá)的局部 描述子,也可W是其它任意特征向量。本實施例W尺度不變描述子(Scale Invariant Fea化re Transform,簡稱SIFT)為例。應(yīng)了解的是,SIFT的獲取方式可為已有的提取方式, 此處不再詳述。
[0092] 將每個描述子量化成對應(yīng)的一個或多個視覺單詞的方式可為,在獲取待查詢圖像 的原始描述子后,根據(jù)視覺單詞詞典查詢該原始描述子對應(yīng)的一個或多個視覺單詞。比如, 量化具體的做法可為,利用原始描述子,利用歐式距離查找視覺單詞詞典中描述子的一個 或多個近鄰視覺單詞。
[0093] 視覺單詞詞典的生成方式可為已有的生成方式,如K均值聚類、層次K均值聚類、 高斯混合模型、譜聚類等方法,此處不再詳述。
[0094] 102、獲取待查詢圖像的第一二值碼。
[0095] 舉例來說,可獲取待查詢圖像的至少一個描述子;根據(jù)所述描述子,獲取所述待查 詢圖像的第一二值碼。需要說明的是,二值碼指的是一種由0或1比特組成的向量;本實施 例中待查詢圖像的第一二值碼的數(shù)量為多個,本實施例為方便說明,沒有限定說明待查詢 圖像的第一二值碼的數(shù)量,僅通過獲取流程進(jìn)行示意性的說明,針對一個第一二值碼的流 程還是多個第一二值碼的流程和本申請實施例的流程都是一樣的,都屬于本發(fā)明實施例保 護(hù)的范圍。
[0096] 需要說明的是,將每個描述子量化成對應(yīng)的二值碼的方式可為已有的向量二值化 方法,如迭代量化、K均值哈希等方法。比如,描述子量化成對應(yīng)二值碼的方式可為,先對描 述子進(jìn)行正交變換,而后再對變換后的描述子進(jìn)行符號二值化。其中,用于正交變換的矩陣 可為預(yù)先訓(xùn)練獲取的。
[0097] 在另一具體的例子中,可獲取待查詢圖像的至少一個描述子;根據(jù)所述描述子、預(yù) 設(shè)的均值向量和預(yù)設(shè)的投影矩陣,獲取所述待查詢圖像的第一二值碼。該處的均值向量和 投影矩陣均為預(yù)先獲取并存儲在客戶端或服務(wù)器中的。通常,均值向量和投影矩陣可與預(yù) 先訓(xùn)練并存儲,可使用時調(diào)用。
[0098] 本發(fā)明實施例中步驟101和步驟102為單獨進(jìn)行的步驟,沒有先后關(guān)系,也沒有關(guān) 聯(lián)關(guān)系。獲取待查詢圖像的第一二值碼并不依據(jù)待查詢圖像的視覺單詞,可同時進(jìn)行;同 時,獲取待查詢圖像的第一二值碼也并不依據(jù)待查詢圖像的視覺單詞,在具體應(yīng)用中,可同 步獲取待查詢圖像的視覺單詞和第一二值碼。由此,可較好的實現(xiàn)圖像捜索。
[0099] 103、根據(jù)所述視覺單詞,在預(yù)設(shè)索引表中獲取包括二值碼的第一集合。
[0100] 舉例來說,可在預(yù)設(shè)索引表中查找每一視覺單詞的倒排鏈表,進(jìn)而將所述倒排鏈 表中記錄的所有二值碼進(jìn)行組合,獲得包括二值碼的第一集合。該第一集合中包括的二值 碼可能對應(yīng)一個圖像,也可能對應(yīng)多個圖像。通常,第一集合中包括的二值碼對應(yīng)多個圖 像。 陽101] 其中,所述索引表為預(yù)先根據(jù)圖像數(shù)據(jù)庫中的所有圖像獲取的包括視覺單詞的倒 排鏈表的索引表,所述倒排鏈表中記錄有一個W上的二值碼。 陽102] 在另一具體的例子中,前述的步驟101還可為:獲取待查詢圖像的視覺單詞及該 視覺單詞的關(guān)聯(lián)信息; 陽103] 相應(yīng)地,步驟103可為:根據(jù)所述視覺單詞,在預(yù)設(shè)索引表中獲取二值碼的第一集 合,具體為:
[0104] 根據(jù)所述視覺單詞及該視覺單詞的關(guān)聯(lián)信息,在預(yù)設(shè)索引表中獲取二值碼的第一 集合。
[01化]可理解的是,該處的關(guān)聯(lián)信息可具體為:輔助圖像檢索/查詢的相關(guān)信息,如對待 查詢圖像進(jìn)行描述的文字信息、地理位置信息等等。 陽106] 104、獲取所述第一二值碼與所述第一集合中每一二值碼的第一距離。 陽107] 在本實施例中,第一距離可為歐式距離或者漢明距離,本實施例不對其進(jìn)行限定, 僅為舉例說明。該第一距離中的"第一"為更清楚說明本發(fā)明的方案使用,不具有其他限定 性含義。
[0108] 該處第一距離的數(shù)量為多個,每一第一二值碼和第一集合中的每一二值碼就對應(yīng) 有一個第一距離,也有該第一距離的二值碼匹配對。在本實施例中,第二集合中的二值碼和 第一二值碼的匹配,形成的二值碼組合可理解為二值碼匹配對。
[0109] 105、選擇符合第一預(yù)設(shè)范圍的第一距離,將符合第一預(yù)設(shè)范圍的第一距離對應(yīng)的 二值碼組成第二集合。
[0110] 106、獲取所述第二集合中所有二值碼所屬的圖像,并采用所述第二集合中所有二 值碼對該些圖像進(jìn)行評分,在所有評分結(jié)果中選取符合第二預(yù)設(shè)范圍的評分結(jié)果,將選取 得評分結(jié)果對應(yīng)的圖像作為與所述待查詢圖像相似的圖像。 陽111] 該處選取得評分結(jié)果對應(yīng)的圖像即為待查詢圖像的捜索結(jié)果/查詢結(jié)果。
[0112] 舉例來說,步驟103中得到第一集合后,利用描述子對應(yīng)的二值碼對第一集合中 的所有二值碼可進(jìn)行漢明距離計算,W獲取漢明距離最近的若干二值碼,并對運些二值碼 對應(yīng)的圖像進(jìn)行打分。
[0113] 具體來說,可根據(jù)描述子與對應(yīng)的二值碼與第一集合中的所有二值碼進(jìn)行漢明距 離計算的計算結(jié)果,選出距離最小的前κ個結(jié)果,對運前κ個二值碼對應(yīng)的圖像進(jìn)行加分。
[0114] 本實施例中,具體的打分計算方式的形式化描述如下:
[0115] 對于查詢描述子對應(yīng)的二值碼Q,其與第一集合S =怯1,S2,……,Sm}中任一二 值碼Sx對應(yīng)漢明距離為D,D定義為: 陽116] D = Hamming_Dis 怕,SJ = P0PCNT (Q、x),
[0117] 其中P0PCNT為統(tǒng)計1數(shù)量的計算機(jī)常用函數(shù),·'為異或操作。 陽1化]對于與Q漢明距離前K的集合Sk =怯ml, Sm2,……,Smk},對圖像加分的計算公 式如下: 陽119]
[0120] 其中IDsmk為二值碼Smk對應(yīng)的圖像ID,SCORE (i)為圖像i對應(yīng)的得分,D為查詢 描述子對應(yīng)的二值碼Q與二值碼的漢明距離,e為自然常數(shù)。所有SCORE(i)在初始化 時被設(shè)置為0。 陽121] 根據(jù)打分結(jié)果對圖像數(shù)據(jù)庫圖像進(jìn)行排序,選取排序結(jié)果靠前的若干圖像作為捜 索結(jié)果,即與待查詢圖像相似的圖像。
[0122] 本實施例中,根據(jù)上述打分計算方式,排序方式采用數(shù)值由大到小的方式排序。
[0123] 本實施例的圖像捜索方法,通過視覺單詞和二值碼結(jié)合進(jìn)行圖像捜索,可有效降 低圖像捜索所需的時間,提升圖像捜索精度,同時提升用戶體驗。
[0124] 圖2示出了本發(fā)明一實施例提供的圖像捜索方法的流程示意圖,如圖2所示,本實 施例中的圖像捜索方法如下所述。
[01巧]201、獲取待查詢圖像的視覺單詞和待查詢圖像的第一二值碼。 陽126] 舉例來說,獲取待查詢圖像的至少一個描述子;根據(jù)所述描述子,獲取所述待查詢 圖像的第一二值碼; 陽127] 或者,獲取待查詢圖像的至少一個描述子;根據(jù)所述描述子、預(yù)設(shè)的均值向量和預(yù) 設(shè)的投影矩陣,獲取所述待查詢圖像的第一二值碼。
[0128] 該步驟中的視覺單詞和第一二值碼的數(shù)量均為多個,本實施例僅為通過流程說明 實現(xiàn)過程。通常,待查詢圖像中的一個局部特征對應(yīng)一個或多個視覺單詞,一個局部特征對 應(yīng)一個第一二值碼,W及一個查詢圖像對應(yīng)一個全局信號。
[0129] 202、獲取所述待查詢圖像的第一全局特征,將所述第一全局特征量化為第一全局 信號。
[0130] 需要說明的是,全局特征指的是一個表達(dá)圖像信息的向量,一般可由局部描述子 聚合生成,也可W在圖像像素層面直接提取生成。通常,將描述子聚合生成全局特征并量化 成全局信號的方法可為已有的緊湊全局特征生成方法,如二值化Fisher向量BFV、SCFV等 方法。比如,聚合的具體做法可為Fisher向量聚合,利用高斯混合模型(GMM)統(tǒng)計每個描 述子的分布,然后利用統(tǒng)計高斯模型的均值和方差形成全局特征。量化的具體做法可直接 對特征根據(jù)符號二值化,也可利用分段矢量量化方式將全局特征分段量化成若干單詞,或 是根據(jù)全局特征統(tǒng)計信息選擇性對某些部分二值化。 陽131] 例如,采用高斯混合模型將待查詢圖像的至少一個描述子聚合成Fisher向量,并 將Fisher向量作為所述全局特征;對所述Fisher向量進(jìn)行符號二值化,得到第一全局信 號。
[0132] 舉例來說,采用高斯混合模型將查詢圖像的至少一個描述子聚合成Fisher向量 并將Fisher向量作為第一全局特征。之后,對所述Fisher向量進(jìn)行符號二值化,得到第一 全局信號。
[0133] 本實施例中,聚合第一全局特征采用的視覺單詞詞典為高斯混合模型,最后獲得 的第一全局信號為二值化Fisher向量BFV。
[0134] 當(dāng)前,利用高斯混合模型將所有描述子聚合成Fisher向量。具體的形式化描述如 下:
[0135] 高斯混合模型的參數(shù)集合為λ,λ包括Μ個高斯分量參數(shù),其中包括權(quán)重 {ω 1, ω 1,......,wk}、均值向量{ μ 1,μ 2,......,μ k}、標(biāo)準(zhǔn)差{ σ 1,σ 2,......,〇 k};對于 待查詢圖像的N個描述子集合X= {xt,t= 1,2,……,N}。
[0136] 用對數(shù)似然函數(shù)L狂I λ)表示查詢圖像,如下所示: 陽 137]
[0138] 其中λ為高斯混合模型參數(shù)集合
為高斯混合模型的似 然函數(shù),PiUtI λ)為第i個高斯分量的概率密度函數(shù)。
[0139] 而后,對數(shù)似然函數(shù)L狂I λ)對第i個高斯分量的均值向量求偏導(dǎo),得到第i個高 斯分量的累積梯度向量,累積梯度向量可W為基于均值的累積梯度向量:
陽143] 或是由基于均值的累積梯度與基于標(biāo)準(zhǔn)差的累積梯度向量級聯(lián)組合得到的向量, 也可W是其他形式的累積梯度向量。
[0144] 其中,為第i個高斯分量的混合權(quán)重,μ 1為第i個高斯分量的均值向量,σ 1 為第i個高斯分量的標(biāo)準(zhǔn)差,
[0145]
[0146] 為第i個高斯分量產(chǎn)生第t個描述子Xt的概率。
[0147] 對Fisher向量進(jìn)行符號二值化。
[0148] 203、根據(jù)所述視覺單詞,在預(yù)設(shè)索引表中獲取包括二值碼的第一集合,獲取所述 第一二值碼與所述第一集合中每一二值碼的第一距離。
[0149] 204、選擇符合第一預(yù)設(shè)范圍的第一距離,將符合第一預(yù)設(shè)范圍的第一距離對應(yīng)的 二值碼組成第二集合。
[0150] 205、獲取所述第二集合中所有二值碼所屬的圖像,并采用所述第二集合中所有二 值碼對該些圖像進(jìn)行評分,在所有評分結(jié)果中選取符合第二預(yù)設(shè)范圍的評分結(jié)果。 陽151] 206、獲取第一全局信號和所有第二全局信號的第二距離,所述第二全局信號為選 取得評分結(jié)果對應(yīng)的圖像的全局信號,每一第二全局信號為預(yù)先根據(jù)各自圖像的第二全局 特征獲取的; 陽152] 207、在所有第二距離中選取符合第Ξ預(yù)設(shè)范圍的一個W上的第二距離,將選取的 一個W上的第二距離對應(yīng)的第二全局信號所屬的圖像作為待查詢圖像相似的圖像。 陽153] 本實施例中的方法通過獲取查詢圖像描述子并將描述子量化成視覺單詞、二值碼 及全局信號,利用視覺單詞粗篩選二值碼及二值碼精確距離度量及數(shù)據(jù)庫圖像打分排序, 再利用全局信號進(jìn)行重排序,W快速獲得較高精度的捜索結(jié)果。
[0154] 本實施例與圖2和圖1的區(qū)別之處在于,在利用二值碼對相應(yīng)的圖像進(jìn)行打分并 排序得到捜索結(jié)果后,再利用全局信號對排序結(jié)果前若干的圖像對應(yīng)的信號進(jìn)行再次比對 打分并重排序,W獲得最終捜索結(jié)果。
[01W] 例如,在得到二值碼的第一集合后,利用描述子對應(yīng)的二值碼對集合中的所有二 值碼進(jìn)行漢明距離計算,W獲取漢明距離最近的若干二值碼,并對運些二值碼對應(yīng)的圖像 進(jìn)行打分。
[0156] 具體來說,可根據(jù)描述子與對應(yīng)的二值碼與第一集合中的所有二值碼進(jìn)行漢明距 離計算的計算結(jié)果,選出距離最小的前K個結(jié)果,對運前K個二值碼對應(yīng)的圖像進(jìn)行打分。 陽157] 進(jìn)一步地,根據(jù)打分結(jié)果對圖像數(shù)據(jù)庫圖像進(jìn)行排序,W獲得捜索結(jié)果。
[0158] 接著,利用全局信號與排序結(jié)果前若干的圖像對應(yīng)的全局信號進(jìn)行再次比對打分 并重排序,W獲得最終捜索結(jié)果。其中,圖像數(shù)據(jù)庫的全局信號采用本實施例中前述全局信 號生成方式生成。
[0159] 首先,根據(jù)前一階段利用二值碼打分并排序得到的排序結(jié)果,選取排序靠前的K 張圖像;而后,利用查詢圖像的全局信號與運K張圖像對應(yīng)的全局信號進(jìn)行比對打分,并根 據(jù)打分結(jié)果對運K張圖像進(jìn)行再次排序。最終用于重排序的打分,可W結(jié)合前一階段的打 分結(jié)果加權(quán)打分,也可W只使用全局信號的打分。全局信號的比對打分方式根據(jù)不同全局 信號的特征決定。本實施例中,全局信號采用二值化Fisher向量BFV,全局信號的比對打分 可W通過計算兩個全局信號的漢明距離實現(xiàn),排序前4000的圖像將被用于全局信號比對 打分與重排序。本實施中,取用于重排序的打分計算方式如下:
[0160] SCORE(ID) = SCORE(ID) X 值im-Dis 他 Rid)), 陽161] 其中SCORE (i)為圖像i對應(yīng)的得分,在本階段初始化為前一階段利用二值碼打分 所得結(jié)果(具體打分形式參考第一事實例)。Q為查詢圖像對應(yīng)的全局信號,Dim為全局特 征的維度(本實施例中,F(xiàn)isher向量維度為:描述子維度X高斯混合模型高斯單詞個數(shù))。 Rid為圖像ID對應(yīng)的全局信號,Dis化Y)為X與Y的漢明距離。打分完成后,重排序按照分 數(shù)由大到小進(jìn)行排序。 陽162] 圖3示出了本發(fā)明一實施例提供的圖像捜索方法的流程示意圖,如圖3所示,本實 施例中的圖像捜索方法和圖2的區(qū)別如下: 陽163] 前述的步驟201可為下述的步驟20Γ :
[0164] 20Γ、獲取待查詢圖像的視覺單詞,W及獲取所述待查詢圖像的一個W上的第 一二值碼及每一第一二值碼的第一坐標(biāo)信息。
[01化]相應(yīng)地,步驟207中,在所有第二距離中選取符合第Ξ預(yù)設(shè)范圍的一個w上的第 二距離之后,方法還包括下述的步驟208至步驟210 :
[0166] 208、確定所述待查詢圖像的第一二值碼與每一第二二值碼的第Ξ距離,所述第 二二值碼為選取的一個W上的第二距離對應(yīng)的第二全局信號所屬的圖像的二值碼;
[0167] 209、采用預(yù)設(shè)的幾何校驗算法對確定每一第Ξ距離時的第一二值碼的第一坐標(biāo) 信息、第二二值碼的第二坐標(biāo)信息進(jìn)行過濾,得到過濾后的第Ξ距離;所述第二二值碼的第 二坐標(biāo)?目息為預(yù)先獲取第二二值碼時獲取的;
[0168] 210、在所有過濾后的第Ξ距離中選取符合第五預(yù)設(shè)范圍的一個W上的第Ξ距離, 將選取的一個W上的第Ξ距離對應(yīng)的第二二值碼所屬的圖像作為待查詢圖像相似的圖像。
[0169] 詳細(xì)說明步驟208至步驟210如下:
[0170] 本實施例中,再次利用二值碼對排序前若干的圖像進(jìn)行逐個比對并進(jìn)行基于幾何 驗證的重排序,W獲得最終捜索結(jié)果。其中,二值碼比對可W復(fù)用步驟203和204時的比對 結(jié)果,將步驟203和204中找到的與查詢圖像二值碼距離最小的前Κ個二值碼均設(shè)為匹配 二值碼對;也可根據(jù)兩幅圖像的二值碼,對查詢圖像每一個的二值碼找到待比對圖像中二 值碼中最近的一個的二值碼及次近的二值碼,根據(jù)最近距離與次近距離的比值來確定兩個 二值碼是否匹配。 陽171] 例如,S01,對于查詢圖像的每個描述子,計算其對應(yīng)二值碼與待比對圖像中所有 二值碼的最近距離及次近距離,并計算最近距離與次近距離的比值。
[0172] S02,若次近距離非0且最近距離與次近距離的比值小于設(shè)定闊值,則將查詢描述 子對應(yīng)的二值碼與待比對圖像對應(yīng)的最近二值碼設(shè)為一對匹配二值碼對。 陽173] S03,利用幾何校驗算法,對兩幅圖像的匹配二值碼對進(jìn)行幾何驗證,并根據(jù)幾何 驗證結(jié)果對圖像再次進(jìn)行打分,而后根據(jù)打分結(jié)果對前若干進(jìn)行比對并幾何驗證的圖像進(jìn) 行重排序。其中,幾何驗證可采用現(xiàn)有的算法如RANSAC、DISTRAT算法,輸入為所有匹配二 值碼對的坐標(biāo),輸出為滿足幾何關(guān)系的匹配點對;根據(jù)輸出結(jié)果可設(shè)計打分公式對圖像進(jìn) 行再次打分并重排序。本實施例中,采用DISTRAT算法進(jìn)行幾何驗證,經(jīng)過驗證后的圖像得 分設(shè)為輸出匹配點對的個數(shù),最后重排序根據(jù)輸出匹配點對個數(shù)由大到小進(jìn)行排序。
[0174] 具體來說,基于幾何驗證的打分算法有如下實現(xiàn)過程。
[01巧]首先、根據(jù)前述所得匹配二值碼對,得到其對應(yīng)的坐標(biāo)信息對為:
[0176] (Xi, yi),(而,72),…,(刮,yJ,其中X,y分別為查詢圖像和待匹配圖像的一個二值 碼的坐標(biāo)(注意,運里的X或y均為一個二維向量)。 陽177] 之后、對于任意兩組匹配對(Xi,yi),(Xj,yj),定義并計算對數(shù)匹配對距離如下: 陽17引
[0179] 而后,將對數(shù)匹配對距離按照值的大小統(tǒng)計成分布直方圖h化)。其中直方圖中 bin的個數(shù)K為指定參數(shù)。而后,利用卡方檢驗,與對應(yīng)的卡方概率分布模型進(jìn)行檢測,檢驗 分布直方圖符合原假設(shè)還是對立假設(shè)(原假設(shè)為兩幅圖像不相關(guān),對立假設(shè)為兩幅圖像相 關(guān))。其中假設(shè)檢驗對應(yīng)的概率分布模型表達(dá)式如下: 陽 180]
陽181] 分布模型中,常數(shù)a為查詢圖像中對應(yīng)的坐標(biāo)信息對中所有向量xi~X W的標(biāo)準(zhǔn) 差與yi~yw的標(biāo)準(zhǔn)差的比值。對所有對數(shù)匹配對距離對應(yīng)的分布直方圖與公式模型進(jìn)行 假設(shè)檢驗,根據(jù)檢驗結(jié)果和預(yù)設(shè)的誤報率判斷圖像是否匹配:若不匹配,將待匹配圖像設(shè)為 0 ;否則,對于判斷為匹配的圖像,預(yù)估匹配對個數(shù):
[0182] 首先,根據(jù)
,構(gòu)建對稱矩陣: 陽 183]
[0184] 隨后計算矩陣主特征值及特征向量,并利用公式
預(yù)估消除 誤匹配后的匹配對個數(shù)。其中,對應(yīng)特征向量較大的前m個結(jié)果即為消除誤匹配后的正確 匹配對。對于待匹配圖像,可將得分設(shè)為m;或根據(jù)前m個匹配對的匹配距離另行計算得分。
[0185] 本實施例與圖2的區(qū)別之處在于,在利用二值碼對相應(yīng)的圖像進(jìn)行打分并排序并 利用全局信號對排序結(jié)果前若干的圖像對應(yīng)的信號進(jìn)行再次比對打分并重排序后,再利用 二值碼進(jìn)行圖像間比對并進(jìn)行基于幾何驗證的重排序,W獲得最終捜索結(jié)果。 陽186] W下采用圖4舉例說明將描述子量化為對應(yīng)視覺單詞的步驟: 陽187] 401、預(yù)先獲取視覺單詞詞典。
[0188] 本實施例中,視覺詞典W層次K均值聚類方式獲得,是一個多層K叉樹的樹形結(jié) 構(gòu),其中每個節(jié)點為一個描述子,代表該層類中屯、。
[0189] 402、從根節(jié)點開始,計算待量化描述子與當(dāng)前層所有子節(jié)點的距離,找到距離最 近的前N個節(jié)點。若該節(jié)點為葉子節(jié)點,停止計算,否則W當(dāng)前節(jié)點為根節(jié)點,遞歸地繼續(xù) 計算待量化描述子與當(dāng)前層所有子節(jié)點的距離。 陽190] 其中,N為預(yù)設(shè)參數(shù)。N-般為自然數(shù),其上界不超過視覺單詞詞典的個數(shù)。形式 化的描述如下: 陽191] 設(shè)視覺詞典為一棵Μ層K叉的的樹形結(jié)構(gòu),其中,根節(jié)點root的所有子節(jié)點定義 為集合Node = {node_0, node_l,......,node_k}。對于待量化描述子V,其與根節(jié)點root中 任一個子節(jié)點node_x的距離D的計算公式為: 陽 19引 D = I |V-node_x| |2,
[0193] 根據(jù)V與任意節(jié)點node_x的距離,可得V與當(dāng)前層子節(jié)點距離最近的N個節(jié)點集 合S。若集合S中的節(jié)點node為葉節(jié)點,則將其加入葉子節(jié)點集合LS,否則將該節(jié)點設(shè)為 root,繼續(xù)計算。
[0194] 403、在所有葉子節(jié)點中,找到一個與待量化描述子距離最近的葉子節(jié)點,W該節(jié) 點對應(yīng)編號作為描述子對應(yīng)的一個視覺單詞。
[0195] W下采用圖5舉例說明將描述子量化為對應(yīng)二值碼的步驟: 陽196] 501、獲取均值向量及投影矩陣。
[0197] 本實施例中,均值向量與投影矩陣可為采用現(xiàn)有參考迭代量化的方式預(yù)先獲取并 存儲在客戶端或服務(wù)器中。
[0198] 502、將描述子減去均值向量,隨后,乘W投影矩陣,得到變換后的描述子。
[0199] 描述子變化的形式化描述如下: 陽200] 設(shè)變換前η維描述子為V= (vl,v2,……,vn}\變化后的m維描述子為V' = (ν' 1, V' 2,......, ν' m}T,均值向量 U = {ul, u2,......,υηΓ,投影矩陣 陽 201]
陽20引 則有: 陽20引 V,= MX (V-U)。 陽204] 503、對變換后的描述子根據(jù)符號進(jìn)行二值化,得到對應(yīng)二值碼。符號二值化的具 體做法是,大于0的維度量化為1,小于等于0的維度量化為0,最終二值碼的每個維度僅由 1位表示。
[0205] 圖6示出了本發(fā)明一實施例提供的圖像捜索裝置的結(jié)構(gòu)示意圖,如圖6所示,本實 施例中的圖像捜索裝置包括:視覺單詞獲取單元61、二值碼獲取單元62和相似圖像獲取單 元63 ; 陽206] 其中,視覺單詞獲取單元61用于獲取待查詢圖像的視覺單詞; 陽207] 二值碼獲取單元62用于獲取所述待查詢圖像的第一二值碼; 陽20引相似圖像獲取單元63用于根據(jù)所述視覺單詞,在預(yù)設(shè)索引表中獲取包括二值碼 的第一集合,獲取所述第一二值碼與所述第一集合中每一二值碼的第一距離; 陽209] 選擇符合第一預(yù)設(shè)范圍的第一距離,將符合第一預(yù)設(shè)范圍的第一距離對應(yīng)的二值 碼組成第二集合;
[0210] 獲取所述第二集合中所有二值碼所屬的圖像,并采用所述第二集合中所有二值碼 對該些圖像進(jìn)行評分,在所有評分結(jié)果中選取符合第二預(yù)設(shè)范圍的評分結(jié)果,將選取得評 分結(jié)果對應(yīng)的圖像作為與所述待查詢圖像相似的圖像; 陽211] 其中,所述索引表為預(yù)先根據(jù)圖像數(shù)據(jù)庫中的所有圖像獲取的包括視覺單詞的倒 排鏈表的索引表,所述倒排鏈表中記錄有一個W上的二值碼。
[0212] 舉例來說,上述圖像捜索裝置還可包括圖中未示出的全局信號獲取單元64,該全 局信號獲取單元用于獲取所述待查詢圖像的第一全局特征,將所述第一全局特征量化為第 一全局信號; 陽213] 相應(yīng)地,相似圖像獲取單元63還用于獲取第一全局信號和所有第二全局信號的 第二距離,所述第二全局信號為選取得評分結(jié)果對應(yīng)的圖像的全局信號,每一第二全局信 號為預(yù)先根據(jù)各自圖像的第二全局特征獲取的;
[0214] 在所有第二距離中選取符合第Ξ預(yù)設(shè)范圍的一個W上的第二距離,將選取的一個 W上的第二距離對應(yīng)的第二全局信號所屬的圖像作為待查詢圖像相似的圖像。
[0215] 在一種具體的例子中,所述二值碼獲取單元62具體用于,獲取所述待查詢圖像的 一個W上的第一二值碼及每一第一二值碼的第一坐標(biāo)信息;
[0216] 相應(yīng)地,所述相似圖像獲取單元63還用于,確定所述待查詢圖像的第一二值碼與 每一第二二值碼的第Ξ距離,所述第二二值碼為選取的一個W上的第二距離對應(yīng)的第二全 局信號所屬的圖像的二值碼;
[0217] 采用預(yù)設(shè)的幾何校驗算法對確定每一第Ξ距離時的第一二值碼的第一坐標(biāo)信息、 第二二值碼的第二坐標(biāo)信息進(jìn)行過濾,得到過濾后的第Ξ距離;所述第二二值碼的第二坐 標(biāo)倍息為預(yù)先獲取第二二值碼時獲取的;
[0218] 在所有過濾后的第Ξ距離中選取符合第五預(yù)設(shè)范圍的一個W上的第Ξ距離,將選 取的一個W上的第Ξ距離對應(yīng)的第二二值碼所屬的圖像作為待查詢圖像相似的圖像。
[0219] 本實施例中的圖像捜索裝置可執(zhí)行前述圖1至圖5任一所述的方法實施例的流 程,本實施例不再詳述,可參照上述的記載。
[0220] 另外,需要說明的是,本實施例的圖像捜索裝置可位于任一客戶端或終端或服務(wù) 器中,本實施例不對其進(jìn)行限定,可根據(jù)實際需要設(shè)置。 陽221] 本發(fā)明的圖像捜索裝置,通過視覺單詞和二值碼結(jié)合進(jìn)行圖像捜索,可有效降低 圖像捜索所需的時間,提升圖像捜索精度,同時提升用戶體驗。 陽222]圖7示出了本發(fā)明一實施例提供的圖像捜索系統(tǒng)的結(jié)構(gòu)示意圖,如圖7所示,本實 施例中的圖像捜索系統(tǒng)包括:客戶端71和服務(wù)器72 ; 陽223] 其中,客戶端71包括:視覺單詞獲取單元711、二值碼獲取單元712、第一發(fā)送單元 713 ;
[0224] 所述視覺單詞獲取單元711用于獲取待查詢圖像的視覺單詞;
[02巧]二值碼獲取單元712用于獲取所述待查詢圖像的第一二值碼; 陽226] 第一發(fā)送單元713用于將所述視覺單詞獲取單元獲取的視覺單詞和所述二值碼 獲取單元獲取的所述第一二值碼發(fā)送所述服務(wù)器;
[0227] 所述服務(wù)器72包括:第二接收單元721、相似圖像獲取單元722和第二發(fā)送單元 723 ;
[0228] 所述第二接收單元721用于接收所述客戶端的第一發(fā)送單元發(fā)送的待查詢圖像 的視覺單詞和所述第一二值碼; 陽229] 所述相似圖像獲取單元722用于根據(jù)所述視覺單詞,在預(yù)設(shè)索引表中獲取包括二 值碼的第一集合,獲取所述第一二值碼與所述第一集合中每一二值碼的第一距離; 陽230] 選擇符合第一預(yù)設(shè)范圍的第一距離,將符合第一預(yù)設(shè)范圍的第一距離對應(yīng)的二值 碼組成第二集合; 陽231] 獲取所述第二集合中所有二值碼所屬的圖像,并采用所述第二集合中所有二值碼 對該些圖像進(jìn)行評分,在所有評分結(jié)果中選取符合第二預(yù)設(shè)范圍的評分結(jié)果,將選取得評 分結(jié)果對應(yīng)的圖像作為與所述待查詢圖像相似的圖像; 陽232] 其中,所述索引表為預(yù)先根據(jù)圖像數(shù)據(jù)庫中的所有圖像獲取的包括視覺單詞的倒 排鏈表的索引表,所述倒排鏈表中記錄有一個W上的二值碼; 陽233] 所述第二發(fā)送單元723還用于將與所述待查詢圖像相似的圖像發(fā)送所述客戶端 71。
[0234] 在具體實現(xiàn)過程中,所述客戶端71還包括:全局信號獲取單元714,用于獲取所述 待查詢圖像的第一全局特征,將所述第一全局特征量化為第一全局信號; 陽235] 所述第一發(fā)送單元713,還用于將所述第一全局信號發(fā)送所述服務(wù)器的第二接收 單元; 陽236] 所述相似圖像獲取單元722還用于,獲取第一全局信號和所有第二全局信號的第 二距離,所述第二全局信號為選取得評分結(jié)果對應(yīng)的圖像的全局信號,每一第二全局信號 為預(yù)先根據(jù)各自圖像的第二全局特征獲取的; 陽237] 在所有第二距離中選取符合第Ξ預(yù)設(shè)范圍的一個W上的第二距離,將選取的一個 W上的第二距離對應(yīng)的第二全局信號所屬的圖像作為待查詢圖像相似的圖像。
[0238] 進(jìn)一步地,客戶端71的二值碼獲取單元712具體用于,獲取所述待查詢圖像的一 個W上的第一二值碼及每一第一二值碼的第一坐標(biāo)信息; 陽239] 第一發(fā)送單元713將所述第一坐標(biāo)信息也發(fā)送服務(wù)器72時,該服務(wù)器72中的相 似圖像獲取單元722還用于,確定所述待查詢圖像的第一二值碼與每一第二二值碼的第Ξ 距離,所述第二二值碼為選取的一個W上的第二距離對應(yīng)的第二全局信號所屬的圖像的二 值碼;
[0240] 采用預(yù)設(shè)的幾何校驗算法對確定每一第Ξ距離時的第一二值碼的第一坐標(biāo)信息、 第二二值碼的第二坐標(biāo)信息進(jìn)行過濾,得到過濾后的第Ξ距離;所述第二二值碼的第二坐 標(biāo)倍息為預(yù)先獲取第二二值碼時獲取的; 陽241] 在所有過濾后的第Ξ距離中選取符合第五預(yù)設(shè)范圍的一個W上的第Ξ距離,將選 取的一個W上的第Ξ距離對應(yīng)的第二二值碼所屬的圖像作為待查詢圖像相似的圖像。 陽242] 在實際應(yīng)用中,所述第一發(fā)送單元713具體用于,將發(fā)送的視覺單詞、第一二值碼 和/或第一全局信號組成碼流,將碼流發(fā)送服務(wù)器的第二接收單元;例如,可將圖像提取出 的描述子個數(shù)寫入碼流,而后將每個描述子對應(yīng)的視覺單詞或單詞組及其對應(yīng)的二值碼寫 入碼流,直至最后一個描述子的視覺單詞或單詞組及其對應(yīng)的二值碼寫入碼流,最后再將 全局信號寫入碼流等。 陽243] 所述第二接收單元721具體用于在接收所述碼流之后,從所述碼流中獲取視覺單 詞、第一二值碼和/或第一全局信號。
[0244] 本實施例中的客戶端可為移動終端,如手機(jī)、IPAD等,本實施例不對其進(jìn)行限定, 可根據(jù)實際需要設(shè)定。 陽245] 特別說明的是,圖像捜索系統(tǒng)中客戶端的各單元和服務(wù)器中的各單元與上述圖像 捜索裝置中各單元的功能一致,可參照上述的描述,本實施例不對其進(jìn)行限定。 陽246] 在具體應(yīng)用,客戶端和服務(wù)器均包括存儲器及存儲單元,該存儲單元,用于存儲量 化所需碼本、向量及矩陣(如變換矩陣)、量化詞典、視覺單詞詞典、聚合全局特征所用的詞 典等。 陽247] 服務(wù)器中還可存儲各種訓(xùn)練數(shù)據(jù)集,預(yù)先訓(xùn)練各種圖像數(shù)據(jù),獲得存儲在存儲單 元中各圖像的二值碼、視覺單詞、描述子、全局特征、全局信號、索引表等相關(guān)內(nèi)容。 陽248] 由上述實施例Ξ可知,上述圖像捜索系統(tǒng)中客戶端和服務(wù)器中顯示的各模塊/單 元只是示意性的顯示其內(nèi)部的結(jié)構(gòu)關(guān)系,可能在某一個系統(tǒng)、客戶端或其它的結(jié)構(gòu)中多次 使用同一模塊進(jìn)行傳輸或接收,或間隔的使用上述的某一模塊,上述實施例只是示意性的 說明,其不局限圖7中的結(jié)構(gòu)排布關(guān)系及使用關(guān)系。另外還可能出現(xiàn)在圖像捜索系統(tǒng)和客 戶端中增加一些能夠?qū)崿F(xiàn)本發(fā)明中的圖像捜索方法中的某些步驟的其他模塊/單元均屬 于本發(fā)明的內(nèi)容。
[0249] 本實施例的圖像捜索系統(tǒng),通過獲取查詢圖像描述子并將描述子量化成視覺單 詞、二值碼及全局信號,利用視覺單詞粗篩選二值碼及二值碼精確漢明度量及數(shù)據(jù)庫圖像 打分排序,再利用全局信號進(jìn)行重排序,可W有效降低圖像捜索所需時間,同時提升圖像捜 索精度,進(jìn)而優(yōu)化了圖像捜索方法的效率及圖像捜索系統(tǒng)的用戶體驗。 陽巧0] 本發(fā)明的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實施例可W 在沒有運些具體細(xì)節(jié)的情況下實踐。在一些實例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技 術(shù),W便不模糊對本說明書的理解。 陽251] 類似地,應(yīng)當(dāng)理解,為了精簡本發(fā)明公開并幫助理解各個發(fā)明方面中的一個或多 個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個 實施例、圖、或者對其的描述中。然而,并不應(yīng)將該公開的方法解釋呈反映如下意圖:即所要 求保護(hù)的本發(fā)明要求比在每個權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如 下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。 因此,遵循【具體實施方式】的權(quán)利要求書由此明確地并入該【具體實施方式】,其中每個權(quán)利要 求本身都作為本發(fā)明的單獨實施例。 陽巧2] 本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包 括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之 內(nèi)并且形成不同的實施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實施例的任意之一 都可W W任意的組合方式來使用。 陽巧3] 本發(fā)明的各個部件實施例可W W硬件實現(xiàn),或者W在一個或者多個處理器上運行 的軟件模塊實現(xiàn),或者W它們的組合實現(xiàn)。應(yīng)該注意的是上述實施例對本發(fā)明進(jìn)行說明而 不是對本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè) 計出替換實施例。在權(quán)利要求中,不應(yīng)將位于括號之間的任何參考符號構(gòu)造成對權(quán)利要求 的限制。單詞"包含"不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞 "一"或"一個"不排除存在多個運樣的元件。本發(fā)明可W借助于包括有若干不同元件的硬 件W及借助于適當(dāng)編程的計算機(jī)來實現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,運些裝置 中的若干個可W是通過同一個硬件項來具體體現(xiàn)。單詞第一、第二、W及第Ξ等的使用不表 示任何順序??蓪⑦\些單詞解釋為名稱。 陽254] 最后應(yīng)說明的是:W上各實施例僅用W說明本發(fā)明的技術(shù)方案,而非對其限制; 盡管參照前述各實施例對本發(fā)明進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其 依然可W對前述各實施例所記載的技術(shù)方案進(jìn)行修改,或者對其中部分或者全部技術(shù)特征 進(jìn)行等同替換;而運些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技 術(shù)方案的范圍,其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求和說明書的范圍當(dāng)中。
【主權(quán)項】
1. 一種圖像搜索方法,其特征在于,包括: 獲取待查詢圖像的視覺單詞以及所述待查詢圖像的第一二值碼; 根據(jù)所述視覺單詞,在預(yù)設(shè)索引表中獲取包括二值碼的第一集合; 獲取所述第一二值碼與所述第一集合中每一二值碼的第一距離; 選擇符合第一預(yù)設(shè)范圍的第一距離,將符合第一預(yù)設(shè)范圍的第一距離對應(yīng)的二值碼組 成第二集合; 獲取所述第二集合中所有二值碼所屬的圖像,并采用所述第二集合中所有二值碼對該 些圖像進(jìn)行評分,在所有評分結(jié)果中選取符合第二預(yù)設(shè)范圍的評分結(jié)果,將選取得評分結(jié) 果對應(yīng)的圖像作為與所述待查詢圖像相似的圖像; 其中,所述索引表為預(yù)先根據(jù)圖像數(shù)據(jù)庫中的所有圖像獲取的包括視覺單詞的倒排鏈 表的索引表,所述倒排鏈表中記錄有一個以上的二值碼。2. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 獲取所述待查詢圖像的第一全局特征,將所述第一全局特征量化為第一全局信號; 獲取第一全局信號和所有第二全局信號的第二距離,所述第二全局信號為選取得評分 結(jié)果對應(yīng)的圖像的全局信號,每一第二全局信號為預(yù)先根據(jù)各自圖像的第二全局特征獲取 的; 在所有第二距離中選取符合第三預(yù)設(shè)范圍的一個以上的第二距離,將選取的一個以上 的第二距離對應(yīng)的第二全局信號所屬的圖像作為待查詢圖像相似的圖像。3. 根據(jù)權(quán)利要求2所述的方法,其特征在于, 獲取所述待查詢圖像的第一二值碼,具體包括: 獲取所述待查詢圖像的一個以上的第一二值碼及每一第一二值碼的第一坐標(biāo)信息; 相應(yīng)地,所述方法還包括: 確定所述待查詢圖像的第一二值碼與每一第二二值碼的第三距離,所述第二二值碼為 選取的一個以上的第二距離對應(yīng)的第二全局信號所屬的圖像的二值碼; 采用預(yù)設(shè)的幾何校驗算法對確定每一第三距離時的第一二值碼的第一坐標(biāo)信息、第 二二值碼的第二坐標(biāo)信息進(jìn)行過濾,得到過濾后的第三距離;所述第二二值碼的第二坐標(biāo) ?目息為預(yù)先獲取第二二值碼時獲取的; 在所有過濾后的第三距離中選取符合第五預(yù)設(shè)范圍的一個以上的第三距離,將選取的 一個以上的第三距離對應(yīng)的第二二值碼所屬的圖像作為待查詢圖像相似的圖像。4. 根據(jù)權(quán)利要求2或3所述的方法,其特征在于,根據(jù)所述視覺單詞,在預(yù)設(shè)索引表中 獲取包括二值碼的第一集合,包括: 在預(yù)設(shè)索引表中查找每一視覺單詞的倒排鏈表;將所述倒排鏈表中記錄的所有二值碼 進(jìn)行組合,獲得包括二值碼的第一集合; 和/或, 所述獲取待查詢圖像的視覺單詞,包括: 獲取待查詢圖像的至少一個描述子;根據(jù)預(yù)設(shè)的視覺單詞詞典,將每一描述子量化成 視覺單詞; 和/或, 所述將所述第一全局特征量化為第一全局信號,具體為: 采用高斯混合模型將所述圖像的至少一個描述子聚合成Fisher向量;對所述Fisher 向量進(jìn)行符號二值化,得到第一全局信號; 和/或, 所述獲取所述待查詢圖像的第一二值碼,包括: 獲取待查詢圖像的至少一個描述子;根據(jù)所述描述子,獲取所述待查詢圖像的第一二 值碼; 或者,獲取待查詢圖像的至少一個描述子;根據(jù)所述描述子、預(yù)設(shè)的均值向量和預(yù)設(shè)的 投影矩陣,獲取所述待查詢圖像的第一二值碼。5. 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述獲取待查詢圖像的視覺單詞,具體 為: 獲取待查詢圖像的視覺單詞及該視覺單詞的關(guān)聯(lián)信息; 相應(yīng)地,根據(jù)所述視覺單詞,在預(yù)設(shè)索引表中獲取二值碼的第一集合,具體為: 根據(jù)所述視覺單詞及該視覺單詞的關(guān)聯(lián)信息,在預(yù)設(shè)索引表中獲取二值碼的第一集 合。6. -種圖像搜索裝置,其特征在于,包括: 視覺單詞獲取單元,用于獲取待查詢圖像的視覺單詞; 二值碼獲取單元,用于獲取所述待查詢圖像的第一二值碼; 相似圖像獲取單元,用于根據(jù)所述視覺單詞,在預(yù)設(shè)索引表中獲取包括二值碼的第一 集合,獲取所述第一二值碼與所述第一集合中每一二值碼的第一距離; 選擇符合第一預(yù)設(shè)范圍的第一距離,將符合第一預(yù)設(shè)范圍的第一距離對應(yīng)的二值碼組 成第二集合; 獲取所述第二集合中所有二值碼所屬的圖像,并采用所述第二集合中所有二值碼對該 些圖像進(jìn)行評分,在所有評分結(jié)果中選取符合第二預(yù)設(shè)范圍的評分結(jié)果,將選取得評分結(jié) 果對應(yīng)的圖像作為與所述待查詢圖像相似的圖像; 其中,所述索引表為預(yù)先根據(jù)圖像數(shù)據(jù)庫中的所有圖像獲取的包括視覺單詞的倒排鏈 表的索引表,所述倒排鏈表中記錄有一個以上的二值碼。7. 根據(jù)權(quán)利要求13所述的裝置,其特征在于,所述裝置還包括: 全局信號獲取單元,用于獲取所述待查詢圖像的第一全局特征,將所述第一全局特征 量化為第一全局信號; 相應(yīng)地,相似圖像獲取單元,還用于獲取第一全局信號和所有第二全局信號的第二距 離,所述第二全局信號為選取得評分結(jié)果對應(yīng)的圖像的全局信號,每一第二全局信號為預(yù) 先根據(jù)各自圖像的第二全局特征獲取的; 在所有第二距離中選取符合第三預(yù)設(shè)范圍的一個以上的第二距離,將選取的一個以上 的第二距離對應(yīng)的第二全局信號所屬的圖像作為待查詢圖像相似的圖像。8. 根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述二值碼獲取單元,具體用于 獲取所述待查詢圖像的一個以上的第一二值碼及每一第一二值碼的第一坐標(biāo)信息; 相應(yīng)地,所述相似圖像獲取單元,還用于 確定所述待查詢圖像的第一二值碼與每一第二二值碼的第三距離,所述第二二值碼為 選取的一個以上的第二距離對應(yīng)的第二全局信號所屬的圖像的二值碼; 采用預(yù)設(shè)的幾何校驗算法對確定每一第三距離時的第一二值碼的第一坐標(biāo)信息、第 二二值碼的第二坐標(biāo)信息進(jìn)行過濾,得到過濾后的第三距離;所述第二二值碼的第二坐標(biāo) ?目息為預(yù)先獲取第二二值碼時獲取的; 在所有過濾后的第三距離中選取符合第五預(yù)設(shè)范圍的一個以上的第三距離,將選取的 一個以上的第三距離對應(yīng)的第二二值碼所屬的圖像作為待查詢圖像相似的圖像。9. 一種圖像檢索系統(tǒng),其特征在于,包括:客戶端和服務(wù)器; 其中,所述客戶端包括:視覺單詞獲取單元、二值碼獲取單元、第一發(fā)送單元; 所述視覺單詞獲取單元,用于獲取待查詢圖像的視覺單詞; 二值碼獲取單元,用于獲取所述待查詢圖像的第一二值碼; 第一發(fā)送單元,用于將所述視覺單詞獲取單元獲取的視覺單詞和所述二值碼獲取單元 獲取的所述第一二值碼發(fā)送所述服務(wù)器; 所述服務(wù)器包括:第二接收單元、相似圖像獲取單元和第二發(fā)送單元; 所述第二接收單元,用于接收所述客戶端的第一發(fā)送單元發(fā)送的待查詢圖像的視覺單 詞和所述第一二值碼; 所述相似圖像獲取單元,用于根據(jù)所述視覺單詞,在預(yù)設(shè)索引表中獲取包括二值碼的 第一集合,獲取所述第一二值碼與所述第一集合中每一二值碼的第一距離; 選擇符合第一預(yù)設(shè)范圍的第一距離,將符合第一預(yù)設(shè)范圍的第一距離對應(yīng)的二值碼組 成第二集合; 獲取所述第二集合中所有二值碼所屬的圖像,并采用所述第二集合中所有二值碼對該 些圖像進(jìn)行評分,在所有評分結(jié)果中選取符合第二預(yù)設(shè)范圍的評分結(jié)果,將選取得評分結(jié) 果對應(yīng)的圖像作為與所述待查詢圖像相似的圖像; 其中,所述索引表為預(yù)先根據(jù)圖像數(shù)據(jù)庫中的所有圖像獲取的包括視覺單詞的倒排鏈 表的索引表,所述倒排鏈表中記錄有一個以上的二值碼; 所述第二發(fā)送單元,還用于將與所述待查詢圖像相似的圖像發(fā)送所述客戶端。10. 根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,所述客戶端還包括:全局信號獲取單元, 用于獲取所述待查詢圖像的第一全局特征,將所述第一全局特征量化為第一全局信號; 所述第一發(fā)送單元,還用于將所述第一全局信號發(fā)送所述服務(wù)器的第二接收單元; 所述相似圖像獲取單元,還用于 獲取第一全局信號和所有第二全局信號的第二距離,所述第二全局信號為選取得評分 結(jié)果對應(yīng)的圖像的全局信號,每一第二全局信號為預(yù)先根據(jù)各自圖像的第二全局特征獲取 的; 在所有第二距離中選取符合第三預(yù)設(shè)范圍的一個以上的第二距離,將選取的一個以上 的第二距離對應(yīng)的第二全局信號所屬的圖像作為待查詢圖像相似的圖像。11. 根據(jù)權(quán)利要求9或10所述的系統(tǒng),其特征在于,所述第一發(fā)送單元,具體用于 將發(fā)送的視覺單詞、第一二值碼和/或第一全局信號組成碼流,將碼流發(fā)送服務(wù)器的 第二接收單元; 所述第二接收單元,具體用于在接收所述碼流之后,從所述碼流中獲取視覺單詞、第 一二值碼和/或第一全局信號。
【文檔編號】G06F17/30GK105989001SQ201510041221
【公開日】2016年10月5日
【申請日】2015年1月27日
【發(fā)明人】段凌宇, 王同, 王一同, 王哲, 黃鐵軍, 高文
【申請人】北京大學(xué)