8]根據(jù)本發(fā)明的圖像匹配方法可以將圖像各個像素點的像素值轉(zhuǎn)化為字符,從而將整個圖像轉(zhuǎn)化為字符串序列,那么對于參考圖像和待匹配圖像,可以分別轉(zhuǎn)化為對應(yīng)參考圖像的參考字符串序列和對應(yīng)待匹配圖像的待匹配字符串序列,然后以參考字符串序列中的字符串和待匹配字符串序列中的字符串為基礎(chǔ),進行字符串匹配,當(dāng)待匹配字符串序列中的字符串在參考字符串序列中的字符串全部匹配上之后,即可確定兩個圖像相似。而由于字符串是一維數(shù)據(jù),對其的匹配計算形式簡單快速,比如兩個對字符串進行完全匹配,或者計算兩個字符串之間萊文斯坦距離(LD),小于距離閾值時即可認(rèn)為兩個字符串匹配,這種字符串的匹配計算過程,內(nèi)存中記錄的數(shù)據(jù)量小,計算快速,由此解決了采用灰度匹配計算量大,計算速度慢的問題,以及避免了特征匹配的特征處理過程復(fù)雜的問題,取得了不用采用額外的特征提取方式,也不用直接對灰度信息進行處理,即可快速進行圖像匹配的有?效果。
[0069]上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本發(fā)明的【具體實施方式】。
【附圖說明】
[0070]通過閱讀下文優(yōu)選實施方式的詳細(xì)描述,各種其他的優(yōu)點和益處對于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認(rèn)為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
[0071]圖1示出了根據(jù)本發(fā)明一個實施例的一種圖像匹配方法的流程示意圖;
[0072]圖1A示出了根據(jù)本發(fā)明一個實施例的一種圖像矩陣示例;
[0073]圖1B示出了根據(jù)本發(fā)明一個實施例的一種圖像矩陣識別示例;
[0074]圖2示出了根據(jù)本發(fā)明一個實施例的一種圖像匹配方法的流程示意圖;
[0075]圖2Α示出了根據(jù)本發(fā)明一個實施例的一種圖像識別結(jié)果示例;
[0076]圖3示出了根據(jù)本發(fā)明一個實施例的一種圖像匹配裝置的結(jié)構(gòu)示意圖;以及
[0077]圖4示出了根據(jù)本發(fā)明一個實施例的一種圖像匹配裝置的結(jié)構(gòu)示意圖。
【具體實施方式】
[0078]下面將參照附圖更詳細(xì)地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應(yīng)當(dāng)理解,可以以各種形式實現(xiàn)本公開而不應(yīng)被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
[0079]本發(fā)明的核心思想之一是:本發(fā)明將參考圖像和待匹配圖像轉(zhuǎn)化為相應(yīng)字符串序列,然后對兩者以字符串的形式進行相似匹配。而由于字符串是簡單的一維數(shù)據(jù),其匹配計算形式簡單,對字符串的匹配計算過程,內(nèi)存中記錄的數(shù)據(jù)量小,計算快速,本發(fā)明采用了一種全新的字符串類型圖像匹配方式,避免了采用灰度匹配計算量大,計算速度慢的問題,也避免了特征匹配的特征處理過程復(fù)雜的問題。
[0080]實施例一
[0081]參照圖1,其示出了本發(fā)明的一種圖像匹配方法的流程示意圖,具體可以包括:
[0082]步驟110,對于參考圖像和待匹配圖像,分別獲取各自圖像的各個像素點的像素值;
[0083]在實際應(yīng)用中,對于一張可以展示在各種終端中的圖像,其是有像素點組成的,每個像素點都有一個像素值,比如計算機系統(tǒng)中的REG值,其是由紅R、綠G、藍(lán)B三種顏色通道組成,R、G、B每種值均可取O?255中的任意一個數(shù)值,三色都為255時為白,三色都為O時為黑色。因此,像素值總共有255*255*255 = 16581375種取值。
[0084]那么本發(fā)明對于一張圖像,可獲取其像素點的其REG值,比如某個像素點的REG值為(O, 100,100) ο
[0085]在本發(fā)明實施例中,對于參考圖像和待匹配圖像的像素值處理順序可以不做任何限定,比如先對參考圖像進行處理,得到參考圖像的參考字符串序列,再對待匹配圖像進行處理,得到待匹配圖像的參考字符串序列;或者先對待匹配圖像進行處理,得到待匹配圖像的參考字符串序列,再對參考圖像進行處理,得到參考圖像的參考字符串序列;或者兩者同時進行。
[0086]在本發(fā)明實施例中,可以通過像素值獲取函數(shù)getPix印(i,j),其中(i,j)為像素點在像素矩陣中的坐標(biāo)。
[0087]優(yōu)選的,對于參考圖像和待匹配圖像,分別獲取各自圖像的各個像素點的像素值,包括:
[0088]步驟S122,對于參考圖像和待匹配圖像中的每個圖像,按指定順序逐個獲取各像素點的像素值。
[0089]在本發(fā)明實施例中,對于每個圖像,可以按指定順序逐個獲取圖像的像素點的像素值,一般來說,本發(fā)明是從圖像對應(yīng)的像素點矩陣中,從某一端的一行或者一列開始,逐行或者逐列的獲取像素點的像素值,其中對于每行或者每列則按同方向逐個獲取像素點的像素值。
[0090]比如對于矩形圖像,其放大之后其實類似圖1A的像素點構(gòu)成,當(dāng)前其中每個像素點的像素值可以為不同。那么可以從像素點矩陣的左上角(如圖1A的上、下、左、右方向為例)開始,在第一行中向右逐個獲取像素點的像素值,第一行獲取完畢繼續(xù)從下一行或下一列的左側(cè)向右逐個獲取。也可以從像素點矩陣的右上角開始,在第一行中向左逐個獲取像素點的像素值,第一行獲取完畢繼續(xù)從下一行或下一列的右側(cè)向左逐個獲取。也可以從像素點矩陣的左下角開始,在第六行中向右逐個獲取像素點的像素值,第六行獲取完畢繼續(xù)從前一行的左側(cè)向右逐個獲取。也可以從像素點矩陣的右下角開始,在第六行中向左逐個獲取像素點的像素值,第六行獲取完畢繼續(xù)從前一行的右側(cè)向左逐個獲取。對于像素點矩陣的列來說,也可以類似列的方式從首行和或者末行進行獲取。
[0091]步驟120,對各個像素點中的同一種像素值,使用唯一的字符標(biāo)識,按所述像素點所處的位置對像素值進行標(biāo)記,以分別獲得對應(yīng)參考圖像的參考字符串序列和對應(yīng)待匹配圖像的待匹配字符串序列;
[0092]在本發(fā)明實施例中,可以對每個像素值都對應(yīng)一個唯一字符標(biāo)識,那么可以直接根據(jù)像素值的與字符標(biāo)識的一一對應(yīng)關(guān)系,對像素值進行標(biāo)記。
[0093]另外,在實際應(yīng)用中,一副圖像的像素值的種類不會太多,在本發(fā)明實施例中,實現(xiàn)對各個像素點中的同一種像素值,使用唯一的字符標(biāo)識,可以采用多種方式。本發(fā)明實施例可以預(yù)先設(shè)置一字符標(biāo)識列表,其可以包括各種可以使用的字符,在使用時從該字符標(biāo)識列表中提取字符標(biāo)識進行標(biāo)記。達(dá)到對各個像素點中的同一種像素值,使用唯一的字符標(biāo)識O
[0094]當(dāng)然,在本發(fā)明實施例中,當(dāng)從漢字字符列表中提取了一個字符標(biāo)識進行標(biāo)記后,則將該字符標(biāo)識排除在下一使用的范圍之外。
[0095]而本發(fā)明實施例中,對于每個像素點的像素值均進行標(biāo)記,標(biāo)記時按像素點在像素點矩陣中的位置進行標(biāo)記和排序,同一種像素值采用統(tǒng)一字符標(biāo)識進行標(biāo)記,不同種類像素值采用不同的字符標(biāo)識進行標(biāo)記。比如圖1A以漢字進行標(biāo)記,得到的標(biāo)記結(jié)果可能如圖1B。其中,第一、三、五、六行為同一種顏色,每個像素點用“我”標(biāo)記;第二行為另外一種像素值,每個像素點用“你”標(biāo)記;第四行為與其他行不同的像素值,每個像素點用“他”標(biāo)記。
[0096]優(yōu)選的,按所述像素點所處的位置對像素值進行標(biāo)記包括:
[0097]子步驟S122,按行和/或列的順序?qū)λ鰠⒖紙D像或待匹配圖像中各像素點的像素值,以字符標(biāo)識進行標(biāo)記;并在每行和/或每列結(jié)束時,在所述行和/或列最后的像素點之后添加換行標(biāo)識或換列標(biāo)識。
[0098]如前所述,本發(fā)明對于每個像素點的像素值均進行標(biāo)記,標(biāo)記時按像素點在像素點矩陣中的位置進行標(biāo)記和排序,同一種像素值采用統(tǒng)一字符標(biāo)識進行標(biāo)記,不同種類像素值采用不同的字符標(biāo)識進行標(biāo)記。為了區(qū)分每個像素點所在行或者所在列,會在每行或者每列之后添加換行或者換列標(biāo)記,使標(biāo)記結(jié)果可以換行或者換列。比如,以圖像的像素點矩陣的行為獲取順序時,所述換列標(biāo)識可以為回車換行標(biāo)識(圖中未示出),用于輸出結(jié)果時,可以對字符串序列進行排版,即可由圖1A得到圖1B的字符串序列的結(jié)果。
[0099]當(dāng)然,本發(fā)明實施例中,參考字符串序列或者待匹配字符串序列也可以不用展示為類似圖1B的形式。也可以直接展示為“我我我我我我*你你你你你你*我我我我我我*他他他他他他*我我我我我我*我我我我我我”,其中*為換行標(biāo)識。通過*的個數(shù)即可知道其之前的字符串對應(yīng)圖像的像素點矩陣的第幾行。
[0100]可以理解,對于列來說,其原理與前述行的計算方式類似。
[0101]優(yōu)選的,所述對各個像素點中的同一種像素值,使用唯一的字符標(biāo)識,按所述像素點所處的位置對像素值進行標(biāo)記,包括:
[0102]子步驟S123,對每次獲取的一像素點的像素值,當(dāng)所述像素值未被一字符標(biāo)識過,則以還未使用過的字符標(biāo)識,按所述像素點所處的位置對所述像素值進行標(biāo)記;當(dāng)所述像素值已經(jīng)被一字符標(biāo)識標(biāo)記過,則采用所述字符標(biāo)識,按所述像素點所處的位置對所述像素值進行標(biāo)記。
[0103]在本發(fā)明實施例中,對于前述步驟S122中,一次只獲取一副圖像的一個像素點的像素值的情況,本發(fā)明每標(biāo)記一個位置的新的像素值,則會對該新像素值以及字符標(biāo)識進行記錄。比如圖1A中,對第一行第一個像素點,其像素值為(n,n,n),在第一個位置標(biāo)記“我”,在本發(fā)明實施例中則會記錄(n,n,n)被標(biāo)記過“我”,那么對第一行第二個像素點,其像素值也為(η,η,η),則通過前面的記錄可知像素值(η,η,η)已經(jīng)被“我”標(biāo)記過,那么第一行第二個像素點則在其所處位置繼續(xù)標(biāo)記為“我”,同理,第一行其他像素點的像素值也為(η,η,η),也將在該像素點所處位置標(biāo)記為“我”;在轉(zhuǎn)入第二行左側(cè)第一個像素點時,其像素值為(nl,nl,nl),該像素值未被記錄為標(biāo)記過,則采用一個與之前記錄的字符標(biāo)識“我”不同的字符標(biāo)識“你”對(nl,nl, nl)進行標(biāo)記;同理,第三行的像素點的像素值為(n,n,η),對以“我”進行標(biāo)記;對第4行,第一個像素點的像素值為(η2,η2,η2),則采用一個與之前記錄的字符標(biāo)識“我”、“你”不同的“他”進行標(biāo)記。以此類推,可以對整個圖像的像素點按其所在位置,以字符標(biāo)識進行標(biāo)記。當(dāng)然,在每行結(jié)束時會添加一個換行標(biāo)識,既可以得到圖1B的字符串序列。
[0104]優(yōu)選的,所述子步驟S123,包括:
[0105]S1230,對每次獲取的一像素點的像素值,通過標(biāo)記詞典中記錄的“像素值-字符標(biāo)識”對,判斷是否有對應(yīng)所述像素值的字符標(biāo)識;
[0106]在本發(fā)明實施例中,為了便于計算,設(shè)置了標(biāo)記詞典,用于記錄第一次被標(biāo)記的像素值及對應(yīng)的字符標(biāo)識,即以“像素值-字符標(biāo)識”對的形式在標(biāo)記詞典中進行記錄。初始情況下,標(biāo)記詞典是空的,沒有“像素值-字符標(biāo)識”對的記錄。
[0107]那么對于一張圖像的像素點矩陣,當(dāng)每次獲取到的像素點的像素值后,則會以該像素值為關(guān)鍵詞在標(biāo)記詞典中查詢是否有對應(yīng)的字符標(biāo)識。如果有對應(yīng)該像素值沒有對應(yīng)的字符標(biāo)識,則說明該像素值是新出現(xiàn)的,轉(zhuǎn)入步驟S1232 ;如果有對應(yīng)該像素值有對應(yīng)的字符標(biāo)識,則說明該像素值是已經(jīng)出現(xiàn)過的,轉(zhuǎn)入步驟S1234。
[0108]S1232,如果沒有對所述像素值的標(biāo)記,則從字符標(biāo)識列表中獲取一個未使用過的字符標(biāo)識,按所述像素點所處像素點矩陣的位置,對所述像素點進行標(biāo)記,并將“像素值-字符標(biāo)識”對記錄到所述標(biāo)記字典中;
[0109]在本發(fā)明實施例中,還會預(yù)置一個字符標(biāo)識列表,每次新出現(xiàn)像素值時,則從該字符標(biāo)識列表中任取一個未使用過的字符標(biāo)識,對所述像素點,按所述像素點所處像素點矩陣的位置,對所述像素點進行標(biāo)記。然后將“像素值-字符標(biāo)識”對記錄到所述標(biāo)記字典中,那么標(biāo)記詞典中則會有該新出現(xiàn)的像素值的“像素值-字符標(biāo)識”的記錄了。
[0110]其中所述像素點矩陣對應(yīng)于當(dāng)前處理的圖像。即如果當(dāng)前處理的圖像為參考圖像,則該像素點矩陣則為參考圖像的;如果當(dāng)前處理的圖像為待匹配圖像,則該像素點矩陣則為待匹配圖像的。