TWI528196B - Similar image recognition method and apparatus - Google Patents
Similar image recognition method and apparatus Download PDFInfo
- Publication number
- TWI528196B TWI528196B TW100116696A TW100116696A TWI528196B TW I528196 B TWI528196 B TW I528196B TW 100116696 A TW100116696 A TW 100116696A TW 100116696 A TW100116696 A TW 100116696A TW I528196 B TWI528196 B TW I528196B
- Authority
- TW
- Taiwan
- Prior art keywords
- image
- hash
- signature
- module
- candidate
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/58—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/583—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
- G06F16/5854—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using shape and object relationship
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/50—Extraction of image or video features by performing operations within image blocks; by using histograms, e.g. histogram of oriented gradients [HoG]; by summing image-intensity values; Projection analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/751—Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/758—Involving statistics of pixels or of feature values, e.g. histogram matching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Library & Information Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Image Analysis (AREA)
Description
本申請涉及多媒體圖像識別技術領域,具體而言,涉及一種相似圖像的識別方法和裝置。
相似圖像檢索是近幾年興起的技術,屬於多媒體識別的一種,其主要包含特徵提取、索引構建、查詢、相似度排序等主要步驟。如圖1所示,在建立圖像索引庫時,用戶A向圖像伺服器10上傳待儲存的圖像,圖像伺服器10為該圖像生成圖像簽名,並以該圖像簽名作為索引,以便於後續的檢索查詢。當需要識別相似圖像時,用戶B向圖像伺服器10請求相似圖像檢索,圖像伺服器10根據該圖像的索引查詢與該圖像索引對應的相似圖像。在圖像伺服器10查找到與用戶B輸入的圖像相似的圖像之後,向用戶B返回相似的圖像列表。
目前在生成圖像的圖像簽名時,常用的方法是在圖像伺服器10中對圖片內容的二進位流進行散列編碼(hash coding),作為唯一標識該圖像的圖像簽名,然後將該圖像簽名常駐記憶體或儲存在圖像伺服器10中的資料庫或檔系統中。
然而,上述現有技術的相似圖像檢索存在以下缺點:
1)通用性較差
對於同一副圖片,即使不做任何修改,以不同的格式(bmp、jpeg、png、gif等等)保存,得到的圖像簽名值也有很大的差異;然而大部分情況下,從用戶期望的角度來看,希望將兩幅僅僅格式不同的圖片作為相似圖片。
2)容錯性問題
由於衝突的原因,圖像的二進位流的散列編碼不可能是唯一的,即存在這種情況,即便是兩張完全不同的圖片,也有可能會因為圖像簽名相同而被做為相同的圖片提供給圖像查詢者。
3)不適合用作近似檢索
傳統的基於散列編碼的圖片簽名方式,由於沒有利用圖片本身的資訊,因此只能用於精確檢索,即查找和目標圖片完全一樣的圖片,不適用作相似圖片檢索。
針對相關技術中所存在的問題,目前尚未發現有效的解決方案。
本申請旨在提供一種相似圖像的識別方法和裝置,以解決現有技術中的圖像識別方法所存在的容錯性的問題。
根據本申請的一個態樣,提供了一種相似圖像的識別方法,其包括:獲取與輸入圖像的內容資訊對應的圖像簽名;對該圖像簽名進行散列操作;在預先儲存的散列表中查詢與該散列操作的結果相對應的表項;在與查詢得到的該表項對應的候選圖像中識別與該輸入圖像相似的圖像。
進一步地,透過以下步驟獲取與輸入圖像的內容資訊對應的圖像簽名:將輸入圖像轉化為灰度圖像;將灰度圖像分成N×N的子圖像,並對每個子圖像分別從M個方向上計算邊緣直方圖,得到N×N×M個計算結果,其中,N和M均為自然數;將灰度圖像對應的N×N×M個計算結果組合成作為圖像簽名的N×N×M維向量。
進一步地,對圖像簽名進行散列操作的步驟包括;分別使用L個局部散列函數對該圖像簽名進行散列操作,得到L個第一散列值,其中,L為自然數;使用一個全局散列函數分別對L個第一散列值進行散列操作,得到L個第二散列值。
進一步地,在預先儲存的散列表中查詢與散列操作的結果相對應的表項的步驟包括:在每個第二散列值對應的散列表中查找是否存在記錄有該第二散列值的表項,其中,該散列表中的每個表項記錄了一個圖像的散列值和圖像標識,或者,該每個表項記錄了一個圖像的散列值、該圖像的圖像標識以及圖像簽名。
進一步地,第二散列值與散列表的對應關係包括:第i個第二散列值對應於第i個散列表,i=1,...L。
進一步地,分別使用L個局部散列函數對圖像簽名進行散列操作的步驟包括:將圖像簽名轉換成R維二進位向量,其中,R為自然數;使用R維二進位向量生成L個局部散列函數,其中,每個局部散列函數由R維二進位向量中的一維或多維二進位向量生成;使用L個局部散列函數對R維二進位向量進行散列操作。
進一步地,使用R維二進位向量中的一維或多維二進位向量生成一個局部散列函數的步驟包括:設置局部散列函數的輸入參數為K;隨機從R維二進位向量中選取K維二進位向量,將K維二進位向量進行拼接作為局部散列函數的返回值,其中,K<R。
進一步地,在與查詢得到的表項對應的候選圖像中識別與輸入圖像相似的圖像的步驟包括:計算輸入圖像的圖像簽名與每個候選圖像的圖像簽名之間的空間距離;按照空間距離的大小來識別候選圖像與輸入圖像的相似度,其中,空間距離越小的候選圖像與輸入圖像的相似度越高。
進一步地,按照空間距離的大小來識別候選圖像與輸入圖像的相似度之後,還包括:按照空間距離的大小輸出候選圖像。
進一步地,在分別使用L個局部散列函數對圖像簽名進行散列操作之前,透過以下步驟預先建立L個散列表:分別使用L個局部散列函數對與每個待儲存的圖像的內容對應的圖像簽名進行散列操作,得到L個第三散列值,其中,L為自然數;使用一個全局散列函數分別對L個第三散列值進行散列操作,得到L個第四散列值;將第j個第四散列值以及該第四散列值對應的圖像標識和圖像簽名記錄到第j個散列表中,其中,j=1,...L。
根據本申請的另一態樣,提供了一種相似圖像的識別裝置,位於圖片伺服器上,其包括:獲取單元,用於獲取與輸入圖像的內容資訊對應的圖像簽名;散列操作單元,用於對圖像簽名進行散列操作;查詢單元,用於在預先儲存的散列表中查詢與散列操作的結果相對應的表項;識別單元,用於在與查詢得到的表項對應的候選圖像中識別與輸入圖像相似的圖像。
進一步地,獲取單元包括:轉化模組,用於將輸入圖像轉化為灰度圖像;計算模組,用於將灰度圖像分成N×N的子圖像,並對每個子圖像分別從M個方向上計算邊緣直方圖,得到N×N×M個計算結果,其中,N和M均為自然數;生成模組,用於將灰度圖像對應的N×N×M個計算結果組合成作為圖像簽名的N×N×M維向量。
進一步地,散列操作單元包括:第一散列處理模組,用於分別使用L個局部散列函數對圖像簽名進行散列操作,得到L個第一散列值,其中,L為自然數;第二散列處理模組,用於使用一個全局散列函數分別對L個第一散列值進行散列操作,得到L個第二散列值。
進一步地,查詢單元包括:查找模組,用於在每個第二散列值對應的散列表中查找是否存在記錄有該第二散列值的表項,其中,該散列表中的每個表項記錄了一個圖像的散列值和圖像標識,或者,該每個表項記錄了一個圖像的散列值、該圖像的圖像標識以及圖像簽名;添加模組,用於在存在記錄有該第二散列值的表項時,將查找到的表項所記錄的圖像添加到候選圖像中。
進一步地,第一散列處理模組包括:轉換子模組,用於將圖像簽名轉換成R維二進位向量,其中,R為自然數;生成子模組,用於使用R維二進位向量生成L個局部散列函數,其中,每個局部散列函數由R維二進位向量中的一維或多維二進位向量生成;散列操作子模組,用於使用L個局部散列函數對R維二進位向量進行散列操作。
進一步地,生成子模組包括:設置子模組,用於設置局部散列函數的輸入參數為K;處理子模組,用於隨機從R維二進位向量中選取K維二進位向量,將K維二進位向量進行拼接作為局部散列函數的返回值,其中,K<R。
進一步地,識別單元包括:計算模組,用於計算輸入圖像的圖像簽名與每個候選圖像的圖像簽名之間的空間距離;識別模組,用於按照空間距離的大小來識別候選圖像與輸入圖像的相似度,其中,空間距離越小的候選圖像與輸入圖像的相似度越高。
進一步地,還包括:輸出單元,用於在按照空間距離的大小來識別該候選圖像與輸入圖像的相似度之後,按照空間距離的大小輸出候選圖像。
進一步地,還包括:散列表建立單元,用於在第一散列操作模組分別使用L個局部散列函數對與輸入圖像的內容對應的圖像簽名進行散列操作之前,分別使用L個局部散列函數對與每個待儲存的圖像的內容資訊對應的圖像簽名進行散列操作,得到L個第三散列值,其中,L為自然數;使用一個全局散列函數分別對L個第三散列值進行散列操作,得到L個第四散列值;將第j個第四散列值以及第四散列值對應的圖像標識和圖像簽名記錄到第j個散列表中,其中,j=1,...L。
在本申請中,利用圖像本身的內容作為圖像簽名,其簽名的相似度取決於圖像本身的相似度,即越是相似的圖像,其簽名的相似度也越大,或者說對應的空間距離(漢明距離(hamming distance)或歐氏距離(Euclidean distance)越短,這樣,僅僅是儲存格式不同的圖像具有完全相同圖像簽名值,從而解決了現有技術中的圖像識別方法所存在的容錯性的問題,使得能夠準確地識別出所需的相似圖像。在此基礎上,本申請還提出了基於局部敏感散列技術的海量相似圖像索引方案,將檢索的時間複雜度降低到亞線性級別,並且能將結果按照相似程度進行排序輸出。此外,採用邊緣直方圖的統計值作為圖像簽名的基礎特徵,配合圖像分割和基於人眼視覺敏感程度的非均勻量化技術,對不同顏色、不同縮放比例、局部模糊以及失真均有很好的適應性。
下文中將參考附圖並結合實施例來詳細說明本申請。需要說明的是,在不衝突的情況下,本申請中的實施例及實施例中的特徵可以相互組合。
實施例1
如圖2所示,本較佳的實施例提供了一種相似圖像的識別系統,其包括如下:上傳伺服器202、圖像資料庫裝置204、索引伺服器206、圖像計算伺服器208、以及圖像檢索前臺伺服器210。
在建立圖像索引庫時,用戶A向上傳伺服器202上傳待儲存的圖像,上傳伺服器202計算該圖像的圖像簽名,並將該圖像的圖像簽名發送給圖像資料庫裝置204。本申請實施例也可以透過爬蟲系統從網路中抓取圖像後儲存於上傳伺服器202中,本申請對此並不作限定。較佳的,上傳伺服器202利用圖像自身的內容資訊(例如,圖像的元資料,比如色彩、紋理等,而非位元組流)來計算該圖像的圖像簽名,從而大大降低了發生衝突的機率。
圖像資料庫裝置204在接收到該圖像的圖像簽名之後,利用局部散列函數對該圖像簽名進行散列操作,將結果作為索引資訊發送給索引伺服器。
當需要識別相似圖像時,用戶B向圖像檢索前臺伺服器210請求相似圖像檢索,圖像檢索前臺伺服器210將用戶B輸入的圖像發送給圖像計算伺服器208,以請求返回相似的圖像或圖像列表。圖像計算伺服器208在接收到用戶B輸入的圖像之後,向索引伺服器206查詢與該輸入的圖像相似的圖像的標識(ID),其中,相似的圖像的散列值與輸入圖像的散列值相同。具體的查找方法可以為:利用用戶B輸入的圖像自身的內容資訊來構建用於查詢的圖像簽名,在索引伺服器206中查詢與該圖像簽名對應的相似圖像。
在圖像計算伺服器208查找到與用戶B輸入的圖像相似的圖像之後,向圖像檢索前臺伺服器210返回相似的圖像或圖像列表,以便顯示給用戶B。
作為一種替代的實施方式,各個伺服器所執行的功能可以在一個伺服器上實現,例如,如圖3所示的相似圖像的識別裝置,其位於圖像伺服器上,其包括:獲取單元302,用於獲取與輸入圖像的內容資訊對應的圖像簽名;散列操作單元304,用於對該圖像簽名進行散列操作;查詢單元306,用於在預先儲存的散列表中查詢與散列操作的結果相對應的表項;識別單元308,用於在與查詢得到的表項對應的候選圖像中識別與輸入圖像相似的圖像。
在本較佳的實施例中,識別裝置利用圖像本身的內容作為圖像簽名,其簽名的相似度取決於圖像本身的相似度,即越是相似的圖像,其簽名的相似度也越大,或者說對應的空間距離(漢明距離或歐氏距離)越短,這樣,僅僅是儲存格式不同的圖像具有完全相同圖像簽名值,從而解決了現有技術中的圖像識別方法所存在的容錯性的問題,使得能夠準確地識別出所需的相似圖像。
較佳的,如圖4所示,獲取單元302包括:轉化模組3021,用於將輸入圖像轉化為灰度圖像;計算模組3022,用於將灰度圖像分成N×N的子圖像,並對每個子圖像分別從M個方向上計算邊緣直方圖,得到N×N×M個計算結果,其中,N和M均為自然數;生成模組3023,用於將灰度圖像對應的N×N×M個計算結果組合成作為圖像簽名的N×N×M維向量。較佳的,還可以對N×N×M維向量採用基於人眼視覺敏感程度的非均勻量化技術。在本較佳的實施例中,利用圖像自身的內容資訊來計算圖像的圖像簽名,從而大大降低了發生衝突的機率。此外,採用邊緣直方圖的統計值作為圖像簽名的基礎特徵,配合圖像分割以及基於人眼視覺敏感程度的非均勻量化技術,對不同顏色、不同縮放比例、局部模糊以及失真均有很好的適應性。需要注意的是,分割的方式僅是一種示例,本申請不僅限於此,例如,將灰度圖像分成N×P的子圖像。作為一種最佳的方式,M可以等於5。
較佳的,計算模組3022對每個子圖像分別從5個方向上計算邊緣直方圖的步驟包括:對於每個子圖像中的每個圖像塊而言,計算該圖像塊五個方向上的梯度值,選取梯度值最大的方向作為該圖像塊的待統計方向,在一個子圖像中統計上述五個方向作為待統計方向的次數,並將得到的統計值作為該子圖像的邊緣直方圖。
舉例來說,假設一個子圖像具有1000個圖像塊,五個方向分別為:A,B,C,D,E,其中,100個圖像塊的待統計方向為A,200個圖像塊的待統計方向為B,300個圖像塊的待統計方向為C,400個圖像塊的待統計方向為D,0個圖像塊的待統計方向為E,則該子圖像的統計值(或對應的邊緣直方圖)為向量(100,200,300,400,0)。
較佳的,散列操作單元304包括:第一散列處理模組3041,用於分別使用L個局部散列函數對該圖像簽名進行散列操作,得到L個第一散列值,其中,L為自然數;第二散列處理模組3042,用於使用一個全局散列函數分別對L個第一散列值進行散列操作,得到L個第二散列值。在本較佳的實施例中,採用了基於局部敏感散列技術的海量相似圖像索引方案,將檢索的時間複雜度降低到亞線性級別。
較佳的,查詢單元306包括:查找模組3061,用於在每個第二散列值對應的散列表中查找是否存在記錄有該第二散列值的表項,其中,上述散列表中的每個表項記錄了一個圖像的散列值和圖像標識,或者,該每個表項記錄了一個圖像的散列值、該圖像的圖像標識以及圖像簽名;添加模組3062,用於在存在記錄有第二散列值的表項時,將查找到的表項所記錄的圖像添加到候選圖像中。在本較佳的實施例中,採用了查找方式來查找對應的候選圖像,提高了查找的準確性和效率。
較佳的,第二散列值與散列表的對應關係包括但不限於:第i個第二散列值對應於第i個散列表,i=1,...L。例如,第二散列值與散列表的對應關係還可以為:第i個第二散列值對應於第L-i+1個散列表,i=1,...L。
較佳的,第一散列處理模組3041包括:轉換子模組,用於將圖像簽名轉換成R維二進位向量,其中,R為自然數;生成子模組,用於使用R維二進位向量生成L個局部散列函數,其中,每個局部散列函數由R維二進位向量中的一維或多維二進位向量生成;散列操作子模組,用於使用L個局部散列函數對R維二進位向量進行散列操作。在本較佳的實施例中,採用特定的方式來進行散列操作,大大降低了發生衝突的機率。需要注意的是,第一散列處理模組的處理過程只是一種示例,本申請不僅限於此。
較佳的,生成子模組包括:設置子模組,用於設置局部散列函數的輸入參數為K;處理子模組,用於隨機從R維二進位向量中選取K維二進位向量,將K維二進位向量進行拼接作為局部散列函數的返回值,其中,K<R。在本較佳的實施例中,採用特定的方式來生成局部散列函數,進一步降低了發生衝突的機率。需要注意的是,生成子模組的處理過程只是一種示例,本申請不僅限於此。
較佳的,識別單元308包括:計算模組3081,用於計算輸入圖像的圖像簽名與每個候選圖像的圖像簽名之間的空間距離;識別模組3082,用於按照空間距離的大小來識別候選圖像與輸入圖像的相似度,其中,空間距離越小的候選圖像與輸入圖像的相似度越高。在本較佳的實施例中,透過採用空間距離來識別相似圖像,大大提高了識別的準備性。較佳的,本實施例中的空間距離可以包括但不限於:漢明距離和歐式距離。
較佳的,如圖3所示的相似圖像的識別裝置還包括:輸出單元310,用於在按照空間距離的大小來識別候選圖像與輸入圖像的相似度之後,按照空間距離的大小輸出候選圖像。在本較佳的實施例中,透過按照相似度來輸出相似圖像,大大提高了用戶的體驗度。
較佳的,如圖3所示的互聯網相似圖像的識別裝置還包括:散列表建立單元312,用於在第一散列操作模組分別使用L個局部散列函數對與輸入圖像的內容對應的圖像簽名進行散列操作之前,分別使用L個局部散列函數對與每個待儲存的圖像的內容資訊對應的圖像簽名進行散列操作,得到L個第三散列值,其中,L為自然數;使用一個全局散列函數分別對L個第三散列值進行散列操作,得到L個第四散列值;將第j個第四散列值以及第四散列值對應的圖像標識和圖像簽名記錄到第j個散列表中,其中,j=1,...L。在本較佳的實施例中,採用了方式來建立儲存圖像索引的散列表,提高了查找的準確性和效率。
實施例2
基於圖2所示的識別系統以及圖3和圖4所示的識別裝置,本較佳的實施例還提供了一種相似圖像的識別方法,如圖5所示,識別方法包括如下步驟:S502,獲取與輸入圖像的內容資訊對應的圖像簽名;較佳的,在圖2所示的識別系統中,可以由圖像檢索前臺伺服器210獲取用戶B輸入的輸入圖像的內容資訊,並將其發送給圖像計算伺服器208,圖像計算伺服器208獲取與輸入圖像的內容資訊對應的圖像簽名。較佳的,在圖3所示的識別裝置中,由獲取單元302獲取與輸入圖像的內容資訊對應的圖像簽名。
在本較佳的實施例中,圖像檢索前臺伺服器210或獲取單元302可以包括用於接收用戶輸入的圖像的接收模組(例如,USB傳輸介面,藍牙傳輸介面,或者,乙太網傳輸介面等),以及,圖像計算伺服器208或獲取單元302可以包括用於計算輸入圖像的內容資訊對應的圖像簽名的處理模組(例如,微處理器MCU,或FPGA等)。可以理解的是,關於執行“獲取與輸入圖像的內容資訊對應的圖像簽名”的主體並不僅限於此,可以根據實際需求來靈活配置。
S504,對圖像簽名進行散列操作;較佳的,在圖2所示的識別系統中,可以由圖像計算伺服器208對圖像簽名進行散列操作。較佳的,在圖3所示的識別裝置中,可以由散列操作單元304對圖像簽名進行散列操作。在本較佳的實施例中,散列操作單元304可以為微處理器MCU,或FPGA等,作為一種較佳的方式,散列操作單元304與獲取單元302所執行的功能可以由同一個處理器來實現。可以理解的是,關於執行“對圖像簽名進行散列操作”的主體並不僅限於此,還可以根據實際需求來靈活配置。
S506,在預先儲存的散列表中查詢與散列操作的結果相對應的表項;較佳的,在圖2所示的識別系統中,可以由圖像計算伺服器208向索引伺服器206中儲存的散列表中查詢與散列操作的結果相對應的表項。較佳的,在圖3所示的識別裝置中,可以由查詢單元306向儲存由散列表的資料庫查詢與散列操作的結果相對應的表項。可以理解的是,關於執行“在預先儲存的散列表中查詢與散列操作的結果相對應的表項”的主體並不僅限於此,還可以根據實際需求來靈活配置。
在本較佳的實施例中,圖像計算伺服器208可以但不限於按照預定的區域網路傳輸協定與索引伺服器206通信,查詢單元306可以但不限於透過內部匯流排與資料庫進行通信。
S508,在與查詢得到的表項對應的候選圖像中識別與輸入圖像相似的圖像。較佳的,在圖2所示的識別系統中,圖像計算伺服器208可以根據索引伺服器206返回的相似圖像的ID獲取對應的候選圖像(可以在本地獲取,也可以從第三方設備上獲取),並在與查詢得到的表項對應的候選圖像中識別與輸入圖像相似的圖像。較佳的,在圖3所示的識別裝置中,識別單元308可以根據查詢單元306返回的相似圖像的ID獲取對應的候選圖像(可以在本地獲取,也可以從第三方設備上獲取),並在與查詢得到的表項對應的候選圖像中識別與輸入圖像相似的圖像。可以理解的是,關於執行“在與查詢得到的表項對應的候選圖像中識別與輸入圖像相似的圖像”的主體並不僅限於此,還可以根據實際需求來靈活配置。
在本較佳的實施例中,識別裝置利用圖像本身的內容作為圖像簽名,其簽名的相似度取決於圖像本身的相似度,即越是相似的圖像,其簽名的相似度也越大,或者說對應的空間距離(漢明距離或歐氏距離)越短,這樣,僅僅是儲存格式不同的圖像具有完全相同圖像簽名值,從而解決了現有技術中的圖像識別方法所存在的容錯性的問題,使得能夠準確地識別出所需的相似圖像。
較佳的,透過以下步驟獲取與輸入圖像的內容資訊對應的圖像簽名:可以但不限於由圖4所示的轉化模組3021將輸入圖像轉化為灰度圖像;可以但不限於由圖4所示的計算模組3022將灰度圖像分成N×N的子圖像,並對每個子圖像分別從M個方向上計算邊緣直方圖,得到N×N×M個計算結果,其中,N和M均為自然數;可以但不限於由圖4所示的生成模組3023將灰度圖像對應的N×N×M個計算結果組合成作為圖像簽名的N×N×M維向量。較佳的,還可以對N×N×M維向量採用基於人眼視覺敏感程度的非均勻量化技術。在本較佳的實施例中,利用圖像自身的內容資訊來計算圖像的圖像簽名,從而大大降低了發生衝突的機率。此外,本較佳的實施例採用邊緣直方圖的統計值作為圖像簽名的基礎特徵,配合圖像分割以及基於人眼視覺敏感程度的非均勻量化技術,對不同顏色、不同縮放比例、局部模糊以及失真均有很好的適應性。需要注意的是,分割的方式僅是一種示例,本申請不僅限於此,例如,將灰度圖像分成N×P的子圖像。作為一種最佳的方式,M可以等於5。
較佳的,計算模組3022對每個子圖像分別從5個方向上計算邊緣直方圖的步驟包括:對於每個子圖像中的每個圖像塊而言,計算該圖像塊五個方向上的梯度值,選取梯度值最大的方向進行作為該圖像塊的待統計方向,在一個子圖像中統計上述五個方向作為待統計方向的次數,並將得到的統計值作為該子圖像的邊緣直方圖。
舉例來說,假設一個子圖像具有1000個圖像塊,五個方向分別為:A,B,C,D,E,其中,100個圖像塊的待統計方向為A,200個圖像塊的待統計方向為B,300個圖像塊的待統計方向為C,400個圖像塊的待統計方向為D,0個圖像塊的待統計方向為E,則該子圖像的統計值(或對應的邊緣直方圖)為向量(100,200,300,400,0)。
在本較佳的實施例中,轉化模組3021、計算模組3022以及生成模組3023可以但不限於由同一個微處理器MCU來實現。
較佳的,對圖像簽名進行散列操作的步驟包括:可以但不限於由圖4所示的第一散列處理模組3041分別使用L個局部散列函數對圖像簽名進行散列操作,得到L個第一散列值,其中,L為自然數;可以但不限於由圖4所示的第二散列處理模組3042使用一個全局散列函數分別對L個第一散列值進行散列操作,得到L個第二散列值。在本較佳的實施例中,採用了基於局部敏感散列技術的海量相似圖像索引方案,將檢索的時間複雜度降低到亞線性級別。
在本較佳的實施例中,第一散列處理模組3041和第二散列處理模組3042可以但不限於由同一個編碼晶片或微處理器MCU來實現。
較佳的,在預先儲存的散列表中查詢與散列操作的結果相對應的表項的步驟包括:可以但不限於由圖4所示的查找模組3061在每個第二散列值對應的散列表中查找是否存在記錄有第二散列值的表項,其中,該散列表中的每個表項記錄了一個圖像的散列值和圖像標識,或者,該每個表項記錄了一個圖像的散列值、該圖像的圖像標識以及圖像簽名;若存在,則可以但不限於由圖4所示的添加模組3062將查找到的表項所記錄的圖像添加到候選圖像中。在本較佳的實施例中,採用了查找方式來查找對應的候選圖像,提高了查找的準確性和效率。
在本較佳的實施例中,查找模組3061和添加模組3062可以但不限於由同一個微處理器MCU來實現。
較佳的,第二散列值與散列表的對應關係包括但不限於:第i個第二散列值對應於第i個散列表,i=1,...L。例如,第二散列值與散列表的對應關係還可以為:第i個第二散列值對應於第L-i+1個散列表,i=1,...L。
較佳的,分別使用L個局部散列函數對圖像簽名進行散列操作的步驟包括:可以但不限於由圖4所示的第一散列處理模組3041將圖像簽名轉換成R維二進位向量,其中,R為自然數;可以但不限於由圖4所示的第一散列處理模組3041使用R維二進位向量生成L個局部散列函數,其中,每個局部散列函數由R維二進位向量中的一維或多維二進位向量生成;可以但不限於由圖4所示的第一散列處理模組3041使用L個局部散列函數對R維二進位向量進散列操作。在本較佳的實施例中,採用特定的方式來進行散列操作,大大降低了發生衝突的機率。需要注意的是,散列操作的過程只是一種示例,本申請不僅限於此。
較佳的,使用R維二進位向量中的一維或多維二進位向量生成一個局部散列函數的步驟包括:可以但不限於由圖4所示的第一散列處理模組3041設置局部散列函數的輸入參數為K;可以但不限於由圖4所示的第一散列處理模組3041隨機從R維二進位向量中選取K維二進位向量,將K維二進位向量進行拼接作為局部散列函數的返回值,其中,K<R。在本較佳的實施例中,採用特定的方式來生成局部散列函數,進一步降低了發生衝突的機率。需要注意的是,生成一個局部散列函數的步驟只是一種示例,本申請不僅限於此。
較佳的,在與查詢得到的表項對應的候選圖像中識別與輸入圖像相似的圖像的步驟包括:可以但不限於由圖4所示的計算模組3081計算輸入圖像的圖像簽名與每個候選圖像的圖像簽名之間的空間距離;可以但不限於由圖4所示的識別模組3082按照空間距離的大小來識別候選圖像與輸入圖像的相似度,其中,空間距離越小的候選圖像與輸入圖像的相似度越高。在本較佳的實施例中,透過採用空間距離來識別相似圖像,大大提高了識別的準備性。較佳的,本實施例中的空間距離可以包括但不限於:漢明距離和歐式距離。
在本較佳的實施例中,計算模組3081和識別模組3082可以但不限於由同一個微處理器MCU來實現。
較佳的,按照空間距離的大小來識別候選圖像與輸入圖像的相似度之後,本較佳實施例的識別方法還包括:可以但不限於由圖3所示的輸出單元310按照空間距離的大小輸出候選圖像。在本較佳的實施例中,透過按照相似度來輸出相似圖像,大大提高了用戶的體驗度。
在本較佳的實施例中,輸出單元310可以但不限於為藍牙傳輸模組,或者,紅外線傳輸模組,或者,乙太網路傳輸模組。
較佳的,在分別使用L個局部散列函數對圖像簽名進行散列操作之前,透過以下步驟預先建立L個散列表:可以但不限於由圖3所示的散列表建立單元312分別使用L個局部散列函數對與每個待儲存的圖像的內容對應的圖像簽名進行散列操作,得到L個第三散列值,其中,L為自然數;可以但不限於由圖3所示的散列表建立單元312使用一個全局散列函數分別對L個第三散列值進行散列操作,得到L個第四散列值;可以但不限於由圖3所示的散列表建立單元312將第j個第四散列值以及第四散列值對應的圖像標識和圖像簽名記錄到第j個散列表中,其中,j=1,...L。在本較佳的實施例中,採用了方式來建立儲存圖像索引的散列表,提高了查找的準確性和效率。
在本較佳的實施例中,散列表建立單元312可以但不限於由同一個微處理器MCU來實現。
基於以上的識別系統和裝置以及識別方法,以下結合附圖來具體描述識別方法中的圖像簽名獲取方法、圖像索引構建方法以及相似圖像查詢方法。
如圖6所示,圖像簽名獲取方法(也稱特徵提取階段)包括從圖像中提取元資料資訊作為唯一標識圖像本身的簽名,本較佳的實施例採用基於邊緣直方圖的紋理特徵來生成簽名,具體步驟如下:
S602,可以但不限於由圖4所示的轉化模組3021將原始圖像轉化為灰度圖像,以期到最終得到的結果對顏色、光照的改變不敏感;
S604,可以但不限於由圖4所示的計算模組3022將灰度圖像分割成N×N的子圖像;
S606,可以但不限於由圖4所示的計算模組3022把S604中處理完畢的子圖像進一步分割為固定數目的一系列圖像塊,每個圖像塊的面積隨著原始圖像的面積變化而變化;
S608,可以但不限於由圖4所示的計算模組3022計算每個子圖像的五個方向上的邊緣直方圖。具體地,對於每個子圖像中的每個圖像塊而言,計算該圖像塊五個方向上的梯度值,選取梯度值最大的方向進行作為該圖像塊的待統計方向,在一個子圖像中統計上述五個方向作為待統計方向的次數,並將得到的統計值作為該子圖像的邊緣直方圖。
舉例來說,假設一個子圖像具有1000個圖像塊,上述五個方向分別為:A,B,C,D,E,其中,100個圖像塊的待統計方向為A,200個圖像塊的待統計方向為B,300個圖像塊的待統計方向為C,400個圖像塊的待統計方向為D,0個圖像塊的待統計方向為E,則該子圖像的統計值(或對應的邊緣直方圖)為向量(100,200,300,400,0)。
S610,可以但不限於由圖4所示的生成模組3023將各個子圖像的統計值(即向量)拼接成一個多維向量作為原始圖像的簽名。假設按照N=4進行切分,原始圖像的簽名最終會以一個4×4×5=80維的向量來表示。
S612,考慮到人眼視覺對亮度敏感程度的非均勻性,採用非線性量化的方式,可以但不限於由圖4所示的生成模組3023對S610中得到的80維整型向量進行量化壓縮,以達到較高的空間利用率。舉例來說,使用0-7之間的8個數字進行量化,最後得到的單個簽名所占空間的大小為80×3=240bit,也就是30個位元組,相比量化之前節約了90%以上的儲存空間。
S614,將壓縮後的結果作為圖像簽名。
當然,上述S612步驟中的壓縮處理是一種較佳的方式,本發明也可以直接將S610得到的80維向量來作為該圖像的圖像簽名。
在本較佳的實施例中,轉化模組3021、計算模組3022以及生成模組3023可以但不限於由同一個微處理器MCU來實現。
如圖7所示,圖像索引構建方法(也稱為索引構建階段)主要包括針對特徵提取階段所獲得的圖像簽名,實現高維向量的K近似檢索,本較佳實施例採用局部敏感散列來實現,具體步驟如下:
S702,可以但不限於由圖4所示的第一散列處理模組3041將特徵提取階段所獲的向量標識轉化為漢明空間中的高維二進位向量(即每一維僅為1或0),例如,假設某一維的向量值為X,最大值為C,則向量在漢明空間表示為連續的X個1緊跟C-X個0的C維二進位向量。
S704,可以但不限於由圖4所示的第一散列處理模組3041定義如下的散列函數G,隨機選取S702中目標向量的K維二進位向量,將結果拼接起來作為返回值。目標向量之間相似度越大,產生的相同散列值相機率越大。
S706,為降低近似檢索的誤差,可以但不限於由圖4所示的第一散列處理模組3041利用L個S704中隨機生成的散列函數,將其分別作用在S702中提取的高維向量中;
S708,可以但不限於由圖4所示的第二散列處理模組3042對S706中的結果使用傳統的散列函數(例如md5)再次散列;
S710,可以但不限於由圖4所示的第二散列處理模組3042將S708中的散列結果作為鍵、圖片的唯一標識(ID)作為值存放存在對應的L個散列表當中。較佳的,相同的圖像簽名會被放在同一個桶中去,不同的圖像簽名,則有較大機率放到不同的桶中去。
在本較佳的實施例中,第一散列處理模組3041和第二散列處理模組3042可以但不限於由同一個編碼晶片或微處理器MCU來實現。
較佳的,選擇不同K與L的會在很大程度上影響檢索的準確率與召回率,一般透過事先的模擬實驗進行預估。最後生成的索引結構,在硬體允許的條件下,可以考慮常駐記憶體以提高檢索效率;在海量樣本庫的情況下,也可以考慮將索引檔持久化到本地磁片或者分散式的處理方式。
如圖8所示,相似圖像查詢方法(也稱為查詢階段)主要包括針對輸入的圖像進行處理,獲得其邊緣直方圖的簽名,並在樣本庫中查詢出相似圖像的過程,其具體步驟如下:
S802,可以但不限於由圖4所示的獲取單元302採用圖6所示的方法計算輸入圖像的簽名值;
S804-S810,根據S802中得到的簽名值,可以但不限於由圖4所示的散列操作單元304採用圖7所示的圖像索引構建方法,將L個散列函數作用在該簽名上,再計算md5散列過後的值,可以但不限於由圖4所示的查詢單元306分別將計算得到的結果作為鍵在L個散列表中查詢;
S812,可以但不限於由圖4所示的查詢單元306將查詢得到的多個結果所對應的圖像添加到候選圖像佇列中;
S814,針對候選圖像佇列中的每一個簽名值,可以但不限於由圖4所示的識別單元308計算其與輸入圖像的簽名值的空間距離(漢明距離或者歐氏距離),其值的大小決定了候選圖片與輸入圖片的相似度;
S816,可以但不限於由圖3所示的輸出單元310按照距離的大小進行排序輸出。由於候選佇列中圖像簽名的數量與樣本庫中簽名的數量相比,已大大減少,因此與現有技術相比,計算的成本或開銷也大為減少。最後得到的結果集就是與目標圖像相似、並按照相似度排序的圖像集。
在本較佳的實施例中,散列操作單元304可以為微處理器MCU,或FPGA等,作為一種較佳的方式,散列操作單元304與獲取單元302所執行的功能可以由同一個處理器來實現。此外,在本較佳的實施例中,查詢單元306可以但不限於透過內部匯流排與保存了散列表的資料庫進行通信,查詢單元306與識別單元308所執行的功能可以由同一個處理器來實現。
從以上的描述中,可以看出,本申請實現了如下技術效果:在本申請中,利用圖像本身的內容作為圖像簽名,其簽名的相似度取決於圖像本身的相似度,即越是相似的圖像,其簽名的相似度也越大,或者說對應的空間距離(漢明距離或歐氏距離)越短,這樣,僅僅是儲存格式不同的圖像具有完全相同圖像簽名值,從而解決了現有技術中的圖像識別方法所存在的容錯性的問題,使得能夠準確地識別出所需的相似圖像。在此基礎上,本申請還提出了基於局部敏感散列技術的海量相似圖像索引方案,將檢索的時間複雜度降低到亞線性級別,並且能將結果按照相似程度進行排序輸出。此外,採用邊緣直方圖的統計值作為圖像簽名的基礎特徵,配合圖像分割和基於人眼視覺敏感程度的非均勻量化技術,對不同顏色、不同縮放比例、局部模糊以及失真均有很好的適應性。
顯然,本領域的技術人員應該明白,本申請的各模組或各步驟可以用通用的計算裝置來實現,它們可以集中在單個的計算裝置上,或者分佈在多個計算裝置所組成的網路上,替代地,它們可以用計算裝置可執行的程式碼來實現,從而可以將它們儲存在儲存裝置中由計算裝置來執行,或者將它們分別製作成各個積體電路模組,或者將它們中的多個模組或步驟製作成單個積體電路模組來實現。這樣,本申請不限制於任何特定的硬體和軟體結合。
以上該僅為本申請的較佳實施例而已,並不用於限制本申請,對於本領域的技術人員來說,本申請可以有各種更改和變化。凡在本申請的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本申請的保護範圍之內。
10...圖像伺服器
202...上傳伺服器
204...圖像資料庫裝置
206...索引伺服器
208...圖像計算伺服器
210...圖像檢索前臺伺服器
302...獲取單元
304...散列操作單元
306...查詢單元
308...識別單元
310...輸出單元
312...散列表建立單元
3021...轉化模組
3022...計算模組
3023...生成模組
3041...第一散列處理模組
3042...第二散列處理模組
3061...查找模組
3062...添加模組
3081...計算模組
3082...識別模組
此處所說明的附圖用來提供對本申請的進一步理解,構成本申請的一部分,本申請的示意性實施例及其說明用於解釋本申請,並不構成對本申請的不當限定。在附圖中:
圖1是根據相關技術的相似圖像的識別系統的一種結構示意圖;
圖2是根據本申請實施例的相似圖像的識別系統的一種較佳結構示意圖;
圖3是根據本申請實施例的相似圖像的識別裝置的一種較佳結構示意圖;
圖4是根據本申請實施例的相似圖像的識別裝置的另一種較佳結構示意圖;
圖5是根據本申請實施例的相似圖像的識別方法的一種較佳流程圖;
圖6是根據本申請實施例的圖像簽名獲取方法的一種較佳流程圖;
圖7是根據本申請實施例的圖像索引構建方法的一種較佳流程圖;
圖8是根據本申請實施例的相似圖像查詢方法的一種較佳流程圖。
302...獲取單元
304...散列操作單元
306...查詢單元
308...識別單元
310...輸出單元
312...散列表建立單元
Claims (15)
- 一種相似圖像的識別方法,其特徵在於包括:獲取與輸入圖像的內容資訊對應的圖像簽名;對該圖像簽名進行散列(hash)操作;在預先儲存的散列表(hash table)中查詢與該散列操作的結果相對應的表項;以及在與查詢得到的該表項對應的候選圖像中識別與該輸入圖像相似的圖像,其中,透過以下步驟獲取該與輸入圖像的內容資訊對應的圖像簽名:將該輸入圖像轉化為灰度圖像;將該灰度圖像分成N×N個子圖像,並對每個該子圖像分別從M個方向上計算邊緣直方圖,得到N×N×M個計算結果,其中,該N和M均為自然數;以及將該灰度圖像對應的N×N×M個計算結果拼接成作為該圖像簽名的N×N×M維向量。
- 根據申請專利範圍第1項所述的方法,其中,對該圖像簽名進行散列操作的步驟包括:分別使用L個局部散列函數對該圖像簽名進行散列操作,得到L個第一散列值,其中,L為自然數;以及使用一個全局散列函數分別對該L個第一散列值進行散列操作,得到L個第二散列值。
- 根據申請專利範圍第2項所述的方法,其中,在預先儲存的散列表中查詢與該散列操作的結果相對應的表項 的步驟包括在每個該第二散列值對應的該散列表中查找是否存在記錄有該第二散列值的表項,並將查找到的該表項所記錄的圖像添加到該候選圖像中,其中,該散列表中的每個表項記錄了一個圖像的散列值和圖像標識,或者,該每個表項記錄了一個圖像的散列值、該圖像的圖像標識以及圖像簽名。
- 根據申請專利範圍第3項所述的方法,其中,該第二散列值與該散列表的對應關係包括:第i個該第二散列值對應於第i個該散列表,i=1,...L。
- 根據申請專利範圍第2至4項中之任一項所述的方法,其中,分別使用L個局部散列函數對該圖像簽名進行散列操作的步驟包括:將該圖像簽名轉換成R維二進位向量,其中,R為自然數;使用該R維二進位向量生成L個該局部散列函數,其中,每個該局部散列函數由該R維二進位向量中的一維或多維二進位向量生成;以及使用L個該局部散列函數對該R維二進位向量進行散列操作。
- 根據申請專利範圍第5項所述的方法,其中,使用該R維二進位向量中的一維或多維二進位向量生成一個局部散列函數的步驟包括:設置該局部散列函數的輸入參數為K;以及隨機從該R維二進位向量中選取K維二進位向量,將該 K維二進位向量進行拼接作為該局部散列函數的返回值,其中,K<R。
- 根據申請專利範圍第1至4項中之任一項所述的方法,其中,在與查詢得到的該表項對應的候選圖像中識別與該輸入圖像相似的圖像的步驟包括:計算該輸入圖像的圖像簽名與每個該候選圖像的圖像簽名之間的空間距離;以及按照空間距離的大小來識別該候選圖像與該輸入圖像的相似度,其中,空間距離越小的該候選圖像與該輸入圖像的相似度越高。
- 根據申請專利範圍第7項所述的方法,其中,按照空間距離的大小來識別該候選圖像與該輸入圖像的相似度之後,還包括按照該空間距離的大小輸出該候選圖像。
- 根據申請專利範圍第2項所述的方法,其中,在分別使用L個局部散列函數對該圖像簽名進行散列操作之前,透過以下步驟預先建立該L個散列表:分別使用L個局部散列函數對與每個待儲存的圖像的內容對應的圖像簽名進行散列操作,得到L個第三散列值,其中,L為自然數;使用一個全局散列函數分別對該L個第三散列值進行散列操作,得到L個第四散列值;以及將第j個第四散列值以及該第四散列值對應的圖像標識和圖像簽名記錄到第j個散列表中,其中,j=1,...L。
- 一種相似圖像的識別裝置,位於圖像伺服器上, 其特徵在於,包括:獲取單元,用於獲取與輸入圖像的內容資訊對應的圖像簽名;散列操作單元,用於對該圖像簽名進行散列操作;查詢單元,用於在預先儲存的散列表中查詢與該散列操作的結果相對應的表項;以及識別單元,用於在與查詢得到的該表項對應的候選圖像中識別與該輸入圖像相似的圖像,其中,該獲取單元包括:轉化模組,用於將該輸入圖像轉化為灰度圖像;計算模組,用於將該灰度圖像分成N×N個子圖像,並對每個該子圖像分別從M個方向上計算邊緣直方圖,得到N×N×M個計算結果,其中,該N和M均為自然數;以及生成模組,用於將該灰度圖像對應的N×N×M個計算結果拼接成作為該圖像簽名的N×N×M維向量。
- 根據申請專利範圍第10項所述的裝置,其中,該散列操作單元包括:第一散列處理模組,用於分別使用L個局部散列函數對該圖像簽名進行散列操作,得到L個第一散列值,其中,L為自然數;以及第二散列處理模組,用於使用一個全局散列函數分別對該L個第一散列值進行散列操作,得到L個第二散列值。
- 根據申請專利範圍第11項所述的裝置,其中,該查詢單元包括: 查找模組,用於在每個該第二散列值對應的該散列表中查找是否存在記錄有該第二散列值的表項,其中,該散列表中的每個表項記錄了一個圖像的散列值和圖像標識,或者,該每個表項記錄了一個圖像的散列值、該圖像的圖像標識以及圖像簽名;以及添加模組,用於在存在記錄有該第二散列值的表項時,將查找到的表項所記錄的圖像添加到該候選圖像中。
- 根據申請專利範圍第11或12項所述的裝置,其中,該第一散列處理模組包括:轉換子模組,用於將該圖像簽名轉換成R維二進位向量,其中,R為自然數;生成子模組,用於使用該R維二進位向量生成L個該局部散列函數,其中,每個該局部散列函數由該R維二進位向量中的一維或多維二進位向量生成;以及散列操作子模組,用於使用L個該局部散列函數對該R維二進位向量進行散列操作。
- 根據申請專利範圍第10至12項中之任一項所述的裝置,其中,該識別單元包括:計算模組,用於計算該輸入圖像的該圖像簽名與每個該候選圖像的圖像簽名之間的空間距離;以及識別模組,用於按照空間距離的大小來識別該候選圖像與該輸入圖像的相似度,其中,空間距離越小的該候選圖像與該輸入圖像的相似度越高。
- 根據申請專利範圍第14項所述的裝置,其中,還 包括輸出單元,用於在按照空間距離的大小來識別該候選圖像與該輸入圖像的相似度之後,按照該空間距離的大小輸出該候選圖像。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110031701.8A CN102622366B (zh) | 2011-01-28 | 2011-01-28 | 相似图像的识别方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201232302A TW201232302A (en) | 2012-08-01 |
TWI528196B true TWI528196B (zh) | 2016-04-01 |
Family
ID=46562289
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW100116696A TWI528196B (zh) | 2011-01-28 | 2011-05-12 | Similar image recognition method and apparatus |
Country Status (7)
Country | Link |
---|---|
US (1) | US9053386B2 (zh) |
EP (1) | EP2668619A4 (zh) |
JP (1) | JP5926291B2 (zh) |
CN (1) | CN102622366B (zh) |
HK (1) | HK1168919A1 (zh) |
TW (1) | TWI528196B (zh) |
WO (1) | WO2012102926A1 (zh) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI470549B (zh) * | 2012-04-20 | 2015-01-21 | Insyde Software Corp | A method of using an image recognition guide to install an application, and an electronic device |
CN103324650A (zh) * | 2012-10-23 | 2013-09-25 | 深圳市宜搜科技发展有限公司 | 一种图像检索方法及系统 |
CN103902595B (zh) * | 2012-12-27 | 2017-02-08 | 北京新媒传信科技有限公司 | 一种构建数据库的方法和装置 |
CN103761483A (zh) * | 2014-01-27 | 2014-04-30 | 百度在线网络技术(北京)有限公司 | 恶意代码的检测方法及装置 |
CN103955914A (zh) * | 2014-02-27 | 2014-07-30 | 西安电子科技大学 | 基于随机投影和Signature/EMD框架的SAR图像分割方法 |
CN103984776B (zh) * | 2014-06-05 | 2017-05-03 | 北京奇虎科技有限公司 | 一种识别重复图片的方法、图片搜索去重方法及其装置 |
CN105224569B (zh) * | 2014-06-30 | 2018-09-07 | 华为技术有限公司 | 一种数据过滤、构造数据滤波器的方法及装置 |
CN104199827B (zh) * | 2014-07-24 | 2017-08-04 | 北京大学 | 基于局部敏感哈希的大规模多媒体数据的高维索引方法 |
KR101713197B1 (ko) * | 2015-04-01 | 2017-03-09 | 주식회사 씨케이앤비 | 서버 컴퓨팅 장치 및 이를 이용한 콘텐츠 인식 기반의 영상 검색 시스템 |
CN106302202B (zh) * | 2015-05-15 | 2020-07-28 | 阿里巴巴集团控股有限公司 | 数据限流方法和装置 |
US11169964B2 (en) * | 2015-12-11 | 2021-11-09 | Hewlett Packard Enterprise Development Lp | Hash suppression |
CN105589938A (zh) * | 2015-12-13 | 2016-05-18 | 公安部第三研究所 | 基于fpga的图像检索系统及检索方法 |
CN106991095B (zh) * | 2016-01-21 | 2021-09-28 | 阿里巴巴集团控股有限公司 | 机器异常的处理方法、学习速率的调整方法及装置 |
CN107464268A (zh) * | 2016-06-02 | 2017-12-12 | 国家计算机网络与信息安全管理中心 | 一种利用全局和局部特征的联合编码方法 |
CN108154072A (zh) * | 2016-12-02 | 2018-06-12 | 天津工业大学 | 基于深度卷积神经网络的航拍绝缘子故障自动检测 |
CN108011956A (zh) * | 2017-12-06 | 2018-05-08 | 易居(中国)企业集团股份有限公司 | 基于文件内容哈希值的分布式存储方法 |
CN108121806A (zh) * | 2017-12-26 | 2018-06-05 | 湖北工业大学 | 一种基于局部特征匹配的图像搜索方法及系统 |
JP7031009B2 (ja) * | 2018-04-13 | 2022-03-07 | ライン プラス コーポレーション | アバター生成装置およびコンピュータプログラム |
CN108629049A (zh) * | 2018-05-14 | 2018-10-09 | 芜湖岭上信息科技有限公司 | 一种基于哈希算法的图像实时存储及查找装置及方法 |
US11126649B2 (en) | 2018-07-11 | 2021-09-21 | Google Llc | Similar image search for radiology |
US11556581B2 (en) * | 2018-09-04 | 2023-01-17 | Inception Institute of Artificial Intelligence, Ltd. | Sketch-based image retrieval techniques using generative domain migration hashing |
KR101998200B1 (ko) * | 2018-11-26 | 2019-07-10 | 주식회사 아임클라우드 | 동일 이미지 식별정보 생성 시스템 |
US11977959B2 (en) * | 2019-05-15 | 2024-05-07 | EMC IP Holding Company LLC | Data compression using nearest neighbor cluster |
CN113383314B (zh) * | 2019-06-26 | 2023-01-10 | 深圳市欢太科技有限公司 | 用户相似度计算方法、装置、服务端及存储介质 |
CN110909791B (zh) * | 2019-11-20 | 2023-02-28 | 车智互联(北京)科技有限公司 | 一种相似图像识别方法及计算设备 |
US11645323B2 (en) | 2020-02-26 | 2023-05-09 | Samsung Electronics Co.. Ltd. | Coarse-to-fine multimodal gallery search system with attention-based neural network models |
CN111414527B (zh) * | 2020-03-16 | 2023-10-10 | 腾讯音乐娱乐科技(深圳)有限公司 | 相似项目的查询方法、装置及存储介质 |
CN111818236A (zh) * | 2020-07-08 | 2020-10-23 | 山东省肿瘤防治研究院(山东省肿瘤医院) | 核磁共振图像的同步采集与回放方法 |
CN112581516A (zh) * | 2020-11-30 | 2021-03-30 | 北京迈格威科技有限公司 | 图像匹配方法、装置、电子设备及存储介质 |
CN112614187B (zh) * | 2020-12-31 | 2024-03-26 | 深圳市优必选科技股份有限公司 | 回环检测方法、装置、终端设备和可读存储介质 |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6671407B1 (en) | 1999-10-19 | 2003-12-30 | Microsoft Corporation | System and method for hashing digital images |
US8037310B2 (en) * | 2004-11-30 | 2011-10-11 | Ricoh Co., Ltd. | Document authentication combining digital signature verification and visual comparison |
JP4284288B2 (ja) | 2005-03-10 | 2009-06-24 | 株式会社東芝 | パターン認識装置及びその方法 |
US20060242418A1 (en) * | 2005-04-25 | 2006-10-26 | Xerox Corporation | Method for ensuring the integrity of image sets |
US7657100B2 (en) * | 2005-05-09 | 2010-02-02 | Like.Com | System and method for enabling image recognition and searching of images |
US7519200B2 (en) * | 2005-05-09 | 2009-04-14 | Like.Com | System and method for enabling the use of captured images through recognition |
US7783135B2 (en) * | 2005-05-09 | 2010-08-24 | Like.Com | System and method for providing objectified image renderings using recognition information from images |
JP4968882B2 (ja) * | 2005-06-03 | 2012-07-04 | キヤノン株式会社 | 画像検索装置、画像検索方法およびプログラム |
US7457825B2 (en) * | 2005-09-21 | 2008-11-25 | Microsoft Corporation | Generating search requests from multimodal queries |
US7647331B2 (en) | 2006-03-28 | 2010-01-12 | Microsoft Corporation | Detecting duplicate images using hash code grouping |
US20080059461A1 (en) * | 2006-08-29 | 2008-03-06 | Attributor Corporation | Content search using a provided interface |
EP1912160B1 (en) * | 2006-10-11 | 2012-05-16 | Mitsubishi Electric R&D Centre Europe B.V. | Image descriptor for image recognition |
US8265345B2 (en) | 2006-11-20 | 2012-09-11 | Sharp Kabushiki Kaisha | Image processing method, image processing apparatus, image forming apparatus, and image reading apparatus |
US8055079B2 (en) | 2007-03-06 | 2011-11-08 | Sharp Kabushiki Kaisha | Image processing method, image processing apparatus, and image forming apparatus |
JP4898531B2 (ja) * | 2007-04-12 | 2012-03-14 | キヤノン株式会社 | 画像処理装置及びその制御方法、並びにコンピュータプログラム |
US8171030B2 (en) * | 2007-06-18 | 2012-05-01 | Zeitera, Llc | Method and apparatus for multi-dimensional content search and video identification |
JP2009031876A (ja) | 2007-07-24 | 2009-02-12 | Sharp Corp | 画像処理装置およびそれを備えた画像形成装置、画像読取装置、画像処理方法、画像処理プログラム、画像処理プログラムを記録した記録媒体 |
JP5098504B2 (ja) | 2007-08-09 | 2012-12-12 | 富士通株式会社 | 文字認識プログラム、文字認識装置および文字認識方法 |
JP4948607B2 (ja) * | 2007-09-07 | 2012-06-06 | 三菱電機株式会社 | 画像検索装置、画像分類装置及び方法並びにプログラム |
KR101592889B1 (ko) * | 2008-03-03 | 2016-02-11 | 아비길론 페이턴트 홀딩 2 코포레이션 | 트래킹, 인덱싱 및 서치를 위한 물체 매칭 방법 및 장치 |
JP4538507B2 (ja) | 2008-05-02 | 2010-09-08 | シャープ株式会社 | 画像照合方法、画像照合装置、画像データ出力処理装置、プログラム及び記憶媒体 |
JP4565015B2 (ja) * | 2008-05-15 | 2010-10-20 | シャープ株式会社 | 画像処理装置、画像形成装置、画像処理システム、画像処理プログラムおよびその記録媒体 |
US8144947B2 (en) * | 2008-06-27 | 2012-03-27 | Palo Alto Research Center Incorporated | System and method for finding a picture image in an image collection using localized two-dimensional visual fingerprints |
US8233722B2 (en) * | 2008-06-27 | 2012-07-31 | Palo Alto Research Center Incorporated | Method and system for finding a document image in a document collection using localized two-dimensional visual fingerprints |
CN101354728B (zh) * | 2008-09-26 | 2010-06-09 | 中国传媒大学 | 一种基于区间权值的相似性度量方法 |
US8533848B2 (en) * | 2009-02-18 | 2013-09-10 | Korea Advanced Institute Of Science And Technology | Method and system for producing multimedia fingerprint based on quantum hashing |
US20100268628A1 (en) * | 2009-04-15 | 2010-10-21 | Attributor Corporation | Managing controlled content on a web page having revenue-generating code |
JP5224537B2 (ja) * | 2009-06-01 | 2013-07-03 | 日本電信電話株式会社 | 局所性検知可能ハッシュの構築装置、類似近傍検索処理装置及びプログラム |
US8467631B2 (en) * | 2009-06-30 | 2013-06-18 | Red Hat Israel, Ltd. | Method and apparatus for identification of image uniqueness |
US9233399B2 (en) * | 2010-02-09 | 2016-01-12 | Xerox Corporation | Document separation by document sequence reconstruction based on information capture |
US9183173B2 (en) * | 2010-03-02 | 2015-11-10 | Microsoft Technology Licensing, Llc | Learning element weighting for similarity measures |
US8452106B2 (en) | 2010-03-23 | 2013-05-28 | Microsoft Corporation | Partition min-hash for partial-duplicate image determination |
CN101887457B (zh) * | 2010-07-02 | 2012-10-03 | 杭州电子科技大学 | 基于内容的复制图像检测方法 |
US8498473B2 (en) | 2010-08-24 | 2013-07-30 | Compuware Corporation | System for computationally quantifying similarities between images |
-
2011
- 2011-01-28 CN CN201110031701.8A patent/CN102622366B/zh active Active
- 2011-05-12 TW TW100116696A patent/TWI528196B/zh active
-
2012
- 2012-01-18 JP JP2013552013A patent/JP5926291B2/ja active Active
- 2012-01-18 EP EP12739016.9A patent/EP2668619A4/en not_active Withdrawn
- 2012-01-18 WO PCT/US2012/021722 patent/WO2012102926A1/en active Application Filing
- 2012-01-18 US US13/509,059 patent/US9053386B2/en active Active
- 2012-09-13 HK HK12108975.8A patent/HK1168919A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
TW201232302A (en) | 2012-08-01 |
JP2014505313A (ja) | 2014-02-27 |
EP2668619A4 (en) | 2016-12-14 |
CN102622366A (zh) | 2012-08-01 |
WO2012102926A1 (en) | 2012-08-02 |
US9053386B2 (en) | 2015-06-09 |
US20130301935A1 (en) | 2013-11-14 |
HK1168919A1 (zh) | 2013-01-11 |
EP2668619A1 (en) | 2013-12-04 |
JP5926291B2 (ja) | 2016-05-25 |
CN102622366B (zh) | 2014-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI528196B (zh) | Similar image recognition method and apparatus | |
Duan et al. | Overview of the MPEG-CDVS standard | |
US8094872B1 (en) | Three-dimensional wavelet based video fingerprinting | |
CA2814401C (en) | Vector transformation for indexing, similarity search and classification | |
US11727053B2 (en) | Entity recognition from an image | |
Jégou et al. | Aggregating local image descriptors into compact codes | |
Wang et al. | Large-scale duplicate detection for web image search | |
US10528613B2 (en) | Method and apparatus for performing a parallel search operation | |
US8498455B2 (en) | Scalable face image retrieval | |
CN111368867A (zh) | 档案归类方法及系统、计算机可读存储介质 | |
CN115630236A (zh) | 无源遥感影像的全球快速检索定位方法、存储介质及设备 | |
CN110633733B (zh) | 图像智能匹配方法、装置及计算机可读存储介质 | |
US11328095B2 (en) | Peceptual video fingerprinting | |
Liu et al. | Video copy detection by conducting fast searching of inverted files | |
CN106886783A (zh) | 一种基于区域特征的图像检索方法及系统 | |
Nikolopoulos et al. | Image replica detection system utilizing R-trees and linear discriminant analysis | |
KR20210058157A (ko) | 얼굴 이미지 기반 사용자 식별 장치 및 방법 | |
Sangeetha et al. | An enhanced triadic color scheme for content-based image retrieval | |
Rahman et al. | Mobile content based image retrieval architectures | |
Sun et al. | Hash length prediction for video hashing | |
Luo et al. | Research and Application of Content-based Image Hash Retrieval Algorithm | |
Nagar et al. | Low complexity image matching using color based SIFT | |
Zhang et al. | Research on a Distributed Approach for Large-scale Image Retrieval based on Location-sensitive Hashing | |
Janet et al. | Index model for image retrieval using SIFT distortion | |
GIESKE | SEARCH OPTIMIZATION THROUGH JPEG QUANTIZATION TABLES |