本發(fā)明涉及計算機視覺技術(shù)領(lǐng)域,特別涉及筆記鑒別技術(shù)領(lǐng)域,具體是指一種基于智能策略實現(xiàn)主動加載內(nèi)容的對等網(wǎng)絡(luò)系統(tǒng)及方法。
背景技術(shù):
筆跡鑒別技術(shù)目的在于自動鑒別書寫人的身份。由于筆跡鑒別在諸如司法、文物鑒別等領(lǐng)域有很廣泛的應(yīng)用,該技術(shù)越來越受到學(xué)術(shù)與工業(yè)方面的關(guān)注。
筆跡識別一般分為筆跡鑒別和筆跡校驗。筆跡鑒別是指在已有參考筆跡樣本的情況下,確定查詢筆跡樣本書寫人的身份,而筆跡校驗?zāi)康脑谟谂袛鄡煞莨P跡樣本是否為同一人所寫;筆跡識別還被分為文本相關(guān)的和文本無關(guān)的兩類,文本相關(guān)是指書寫人被要求書寫一些指定內(nèi)容,而文本無關(guān)是指對書寫內(nèi)容不作任何要求;另外,文本識別還被分為在線和離線的,離線文本識別只有筆跡圖片,而在線文本識別除了筆跡圖片,另外提供書寫速度、軌跡、壓力等等信息。本發(fā)明是一種離線文本無關(guān)的筆跡鑒別方法。
現(xiàn)有的計算機自動筆跡鑒別方法一般先提取筆跡樣本圖片的特征,再進行分類。其中基于碼本的特征提取方法在近幾年的研究中取得了很好的鑒別效果,其方法為首先使用不同的紋理分割算法來提取紋理圖像塊,從而生成碼本;再通過碼本來獲得筆跡樣本的紋理特征;最后通過比較紋理特征之間的距離來獲得候選書寫者名單。
現(xiàn)有的技術(shù)中,在生成碼本之前,大部分需要進行文本分割,文本分割的好壞直接會影響到鑒別效果;另外,現(xiàn)有的碼本對多語種的魯棒性不高,即無法利用同一個碼本來對不同的語種筆跡提取特征。文本分割和碼本魯棒性不高都會對該技術(shù)的實際應(yīng)用效果產(chǎn)生影響,故現(xiàn)有的技術(shù)還需要有待改進的地方。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的是克服了上述現(xiàn)有技術(shù)的缺點,提供了一種基于稀疏自編碼碼本實現(xiàn)筆跡鑒別的系統(tǒng)及方法。
為了實現(xiàn)上述目的,本發(fā)明的基于稀疏自編碼碼本實現(xiàn)筆跡鑒別的系統(tǒng)及方法如下:
該計算機軟件系統(tǒng)中基于稀疏自編碼碼本實現(xiàn)筆跡鑒別的系統(tǒng),包括:
圖像預(yù)處理模塊,用以對查詢筆跡樣本和參考筆跡樣本圖像進行預(yù)處理,得到兩者的二值化圖像;
參數(shù)學(xué)習(xí)模塊,用以根據(jù)稀疏自編碼和k-means聚類方法來獲得權(quán)重和碼本的參數(shù);
特征提取模塊,用以根據(jù)權(quán)重和碼本來提取查詢筆跡樣本和參考筆跡樣本圖像的特征;
距離計算模塊,用以計算查詢筆跡樣本特征與參考筆跡樣本特征之間的距離,并比較排序,最終獲得查詢筆跡樣本書寫者的候選列表。
該利用上述系統(tǒng)基于稀疏自編碼碼本實現(xiàn)筆跡鑒別的方法,包括以下步驟:
(1)對查詢筆跡樣本和參考筆跡樣本圖像進行預(yù)處理,得到兩者的二值化圖像;
(2)根據(jù)稀疏自編碼和k-means聚類方法來獲得權(quán)重和碼本的參數(shù);
(3)根據(jù)權(quán)重和碼本來提取查詢筆跡樣本和參考筆跡樣本圖像的特征;
(4)計算查詢筆跡樣本特征與參考筆跡樣本特征之間的距離,并比較排序,最終獲得查詢筆跡樣本書寫者的候選列表。
較佳地,所述的步驟(1)包括以下步驟:
(1-1)對所述灰度筆跡樣本通過OTSU進行二值化,得到筆跡樣本的二值化圖像;
(1-2)對所述二值化圖像進行去噪處理。
較佳地,所述步驟(2)包括以下步驟:
(2-1)設(shè)定一個固定大小的窗口,通過該窗口在所述每張參考筆跡樣本二值化圖中隨機選取一定數(shù)量的第一子塊Set 1,作為訓(xùn)練稀疏自編碼模型權(quán)重的樣本集;
(2-2)采用稀疏自編碼模型,將網(wǎng)絡(luò)模型參數(shù)隨機初始化;
(2-3)根據(jù)所述的第一子塊Set 1樣本集對稀疏自編碼模型進行訓(xùn)練,得到權(quán)重參數(shù);
(2-4)通過所述的窗口在每張參考筆跡樣本的二值化圖中隨機選取一定數(shù)量的第二子塊Set 2,該樣本集數(shù)量需遠大于第一子塊Set 1;
(2-5)將所述的第二子塊Set 2樣本集作為稀疏自編碼模型的前向輸入,使用訓(xùn)練得到的權(quán)重參數(shù),得到隱含層輸出;
(2-6)對所述的隱含層輸出采用k-means聚類算法,得到碼本。
更佳地,所述的采用稀疏自編碼模型為單隱含層的稀疏自編碼模型或多隱含層的稀疏自編碼模型。
更佳地,所述的將網(wǎng)絡(luò)模型參數(shù)隨機初始化,具體包括以下步驟:
(2-2-1)隨機初始化網(wǎng)絡(luò)權(quán)重參數(shù),輸入層和隱含層對應(yīng)的權(quán)重參數(shù)矩陣W1和隱含層和輸出層對應(yīng)的權(quán)重參數(shù)矩陣W2為:
W1=rand(-r,r)hiddensize*visiblesize,
W2=rand(-r,r)visiblesize*hiddensize,
其中hiddensize表示稀疏自編碼網(wǎng)絡(luò)隱含層的個數(shù),visiblesize表示輸入層的個數(shù),rand(-r,r)m*n表示大小為m*n的隨機矩陣,其元素取值范圍為(-r,r),并且,r取上述值時能夠使得訓(xùn)練過程更快收斂;
(2-2-2)初始化網(wǎng)絡(luò)加性偏置參數(shù),其中隱含層對應(yīng)的偏置參數(shù)矩陣b1為零矩陣,大小為hiddensize*1,輸出層對應(yīng)的偏置參數(shù)矩陣b2為零矩陣,大小為visiblesize*1。
更佳地,所述的步驟(2-3)包括以下步驟:
(2-3-1)將第一子塊Set 1樣本集轉(zhuǎn)化為一維向量作為稀疏自編碼模型的輸入,計算輸出值:
其中sl表示第l層的單元數(shù)目(不包含偏置項)。表示第l層第i個單元的輸出值且f表示一非線性激活函數(shù)sigmoid函數(shù)且f(x)=1/(1+e-x),且集合I{x1,2,…,m}表示第一子塊Set 1樣本集,表示第層第l層第j個單元與第l+1層第i個單元之間的連接參數(shù),表示第l+1層第i單元的偏置項,表示第l+1層第i單元輸入加權(quán)和,該加權(quán)和包括偏置項。
(2-3-2)根據(jù)以下公式計算隱藏神經(jīng)元j的平均激活度:
其中,aj(x(i))表示給定一個輸入x(i),自編碼神經(jīng)網(wǎng)絡(luò)隱藏神經(jīng)元j的激活度,進一步,表示隱藏神經(jīng)元j的平均激活度。
根據(jù)以下公式計算懲罰因子使得平均激活度接近期望激活度ρ,ρ為稀疏性參數(shù),接近于0,懲罰因子為:
根據(jù)以下公式計算稀疏自編碼模型的損失函數(shù):
其中hW,b(x(i))表示輸入為x(i)時的輸出,該輸出包含參數(shù)W,b,y(i)表示輸出值,y(i)=x(i);λ表示權(quán)重衰減系數(shù);β表稀疏值懲罰項的權(quán)重;sl表示第l層的單元數(shù)目,該單元數(shù)目不包含偏置項;
(2-3-3)使用梯度下降法更新稀疏自編碼網(wǎng)絡(luò)的權(quán)重參數(shù)和加性偏置參數(shù),誤差從網(wǎng)絡(luò)的高層向底層反向傳播,計算輸出層,即第三層的每個輸出單元i的殘差:
其中,表示第l層的每個節(jié)點i的殘差,
計算隱含層,即第二層的每個輸出單元i的殘差:
其中,稀疏自編碼權(quán)重參數(shù)的更新公式為:
稀疏自編碼偏置參數(shù)的更新公式為:
更佳地,所述的步驟(2-6)包括以下步驟:
(x1,x2,…,xn)表示隱含層輸出,表示初始的k個均值點,算法按照以下兩個步驟循環(huán)交替進行,并且,這一算法將在對觀測的分配不再變化時收斂,循環(huán)結(jié)束時的集合就是所需的碼本:
(2-6-1)分配:將每個觀測值xp分配到聚類中
(2-6-2)更新:計算上一步得到聚類中每一聚類觀測值的圖心,作為新的均值點
繼續(xù)步驟(2-6-1)。
較佳地,所述的步驟(3)包括以下步驟:
(3-1)對每一個查詢筆跡樣本或參考筆跡樣本二值化圖像,利用與權(quán)利要求3中大小相同的窗口提取足夠多的子塊,展開為一維長向量,作為稀疏自編碼的輸入;
(3-2)x1,x2,…,xj表示稀疏自編碼的輸入,a1,a2,…,ai表示隱含層的輸出,n表示輸入的個數(shù),則,根據(jù)以下公式計算隱含層的輸出:
f(x)=1/(1+e-x),
(3-3)計算所述隱含層輸出與碼本k個中心之間的距離,將其歸類為距離最近的那個中心,統(tǒng)計每個中心所得的頻數(shù),即為該筆跡樣本的特征。
較佳地,所述的查詢筆跡樣本特征與參考筆跡樣本特征之間的距離包括:
歐式距離,曼哈頓距離,加權(quán)歐式距離和加權(quán)曼哈頓距離,其中加權(quán)歐式距離和加權(quán)曼哈頓距離分別為:
其中,v1和v2代表兩特征向量,v1i和v2i代表某一維度中的元素,σi表示第i維向量的方差。
采用了該發(fā)明中的基于稀疏自編碼碼本、離線文本無關(guān)的筆記鑒別方法,該方法無需對文本進行分割,并且碼本魯棒性強,該方法在實際應(yīng)用中更加靈活、方便,具有更廣泛的應(yīng)用范圍。
附圖說明
圖1為本發(fā)明的基于稀疏自編碼碼本實現(xiàn)筆跡鑒別的方法的流程圖。
圖2為本發(fā)明的稀疏自編碼模型圖以及權(quán)值可視化圖。
圖3為本發(fā)明的利用稀疏自編碼提取碼本的流程圖。
具體實施方式
為了能夠更清楚地描述本發(fā)明的技術(shù)內(nèi)容,下面結(jié)合具體實施例來進行進一步的描述。
該計算機軟件系統(tǒng)中基于稀疏自編碼碼本實現(xiàn)筆跡鑒別的系統(tǒng),包括:
圖像預(yù)處理模塊,用以對查詢筆跡樣本和參考筆跡樣本圖像進行預(yù)處理,得到兩者的二值化圖像;
參數(shù)學(xué)習(xí)模塊,用以根據(jù)稀疏自編碼和k-means聚類方法來獲得權(quán)重和碼本的參數(shù);
特征提取模塊,用以根據(jù)權(quán)重和碼本來提取查詢筆跡樣本和參考筆跡樣本圖像的特征;
距離計算模塊,用以計算查詢筆跡樣本特征與參考筆跡樣本特征之間的距離,并比較排序,最終獲得查詢筆跡樣本書寫者的候選列表。
還包括一種利用上述系統(tǒng)基于稀疏自編碼碼本實現(xiàn)筆跡鑒別的方法,包括以下步驟:
(1)對查詢筆跡樣本和參考筆跡樣本圖像進行預(yù)處理,得到兩者的二值化圖像;
(2)根據(jù)稀疏自編碼和k-means聚類方法來獲得權(quán)重和碼本的參數(shù);
(3)根據(jù)權(quán)重和碼本來提取查詢筆跡樣本和參考筆跡樣本圖像的特征;
(4)計算查詢筆跡樣本特征與參考筆跡樣本特征之間的距離,并比較排序,最終獲得查詢筆跡樣本書寫者的候選列表。
在一種較佳的實施方式中,所述的步驟(1)包括以下步驟:
(1-1)對所述灰度筆跡樣本通過OTSU進行二值化,得到筆跡樣本的二值化圖像;
(1-2)對所述二值化圖像進行去噪處理。
在一種較佳的實施方式中,所述步驟(2)包括以下步驟:
(2-1)設(shè)定一個固定大小的窗口,通過該窗口在所述每張參考筆跡樣本二值化圖中隨機選取一定數(shù)量的第一子塊Set 1,作為訓(xùn)練稀疏自編碼模型權(quán)重的樣本集;
(2-2)采用稀疏自編碼模型,將網(wǎng)絡(luò)模型參數(shù)隨機初始化;
(2-3)根據(jù)所述的第一子塊Set 1樣本集對稀疏自編碼模型進行訓(xùn)練,得到權(quán)重參數(shù);
(2-4)通過所述的窗口在每張參考筆跡樣本的二值化圖中隨機選取一定數(shù)量的第二子塊Set 2,該樣本集數(shù)量需遠大于第一子塊Set 1;
(2-5)將所述的第二子塊Set 2樣本集作為稀疏自編碼模型的前向輸入,使用訓(xùn)練得到的權(quán)重參數(shù),得到隱含層輸出;
(2-6)對所述的隱含層輸出采用k-means聚類算法,得到碼本。
在一種更佳的實施方式中,所述的采用稀疏自編碼模型為單隱含層的稀疏自編碼模型或多隱含層的稀疏自編碼模型。
在一種更佳的實施方式中,所述的將網(wǎng)絡(luò)模型參數(shù)隨機初始化,具體包括以下步驟:
(2-2-1)隨機初始化網(wǎng)絡(luò)權(quán)重參數(shù),輸入層和隱含層對應(yīng)的權(quán)重參數(shù)矩陣W1和隱含層和輸出層對應(yīng)的權(quán)重參數(shù)矩陣W2為:
W1=rand(-r,r)hiddsnsize*visiblesize,
W2=rand(-r,r)visiblesize*hiddensize,
其中hiddensize表示稀疏自編碼網(wǎng)絡(luò)隱含層的個數(shù),visiblesize表示輸入層的個數(shù),rand(-r,r)m*n表示大小為m*n的隨機矩陣,其元素取值范圍為(-r,r),并且,r取上述值時能夠使得訓(xùn)練過程更快收斂;
(2-2-2)初始化網(wǎng)絡(luò)加性偏置參數(shù),其中隱含層對應(yīng)的偏置參數(shù)矩陣b1為零矩陣,大小為hiddensize*1,輸出層對應(yīng)的偏置參數(shù)矩陣b2為零矩陣,大小為visiblesize*1。
在一種更佳的實施方式中,所述的步驟(2-3)包括以下步驟:
(2-3-1)將第一子塊Set 1樣本集轉(zhuǎn)化為一維向量作為稀疏自編碼模型的輸入,計算輸出值:
其中sl表示第l層的單元數(shù)目(不包含偏置項)。表示第l層第i個單元的輸出值且f表示一非線性激活函數(shù)sigmoid函數(shù)且f(x)=1/(1+e-x),且集合I={x1,x2,…,xm}表示第一子塊Set 1樣本集,表示第層第l層第j個單元與第l+1層第i個單元之間的連接參數(shù),表示第l+1層第i單元的偏置項,表示第l+1層第i單元輸入加權(quán)和,該加權(quán)和包括偏置項。
(2-3-2)根據(jù)以下公式計算隱藏神經(jīng)元j的平均激活度:
其中,aj(x(i))表示給定一個輸入x(i),自編碼神經(jīng)網(wǎng)絡(luò)隱藏神經(jīng)元j的激活度,進一步,表示隱藏神經(jīng)元j的平均激活度。
根據(jù)以下公式計算懲罰因子使得平均激活度接近期望激活度ρ,ρ為稀疏性參數(shù),接近于0,懲罰因子為:
根據(jù)以下公式計算稀疏自編碼模型的損失函數(shù):
其中hW,b(x(i))表示輸入為x(i)時的輸出,該輸出包含參數(shù)W,b,y(i)表示輸出值,y(i)=x(i);λ表示權(quán)重衰減系數(shù);β表稀疏值懲罰項的權(quán)重;sl表示第l層的單元數(shù)目,該單元數(shù)目不包含偏置項;
(2-3-3)使用梯度下降法更新稀疏自編碼網(wǎng)絡(luò)的權(quán)重參數(shù)和加性偏置參數(shù),誤差從網(wǎng)絡(luò)的高層向底層反向傳播,計算輸出層,即第三層的每個輸出單元i的殘差:
其中,表示第l層的每個節(jié)點i的殘差,
計算隱含層,即第二層的每個輸出單元i的殘差:
其中,稀疏自編碼權(quán)重參數(shù)的更新公式為:
稀疏自編碼偏置參數(shù)的更新公式為:
在一種更佳的實施方式中,所述的步驟(2-6)包括以下步驟:
(x1,x2,…,xn)表示隱含層輸出,表示初始的k個均值點,算法按照以下兩個步驟循環(huán)交替進行,并且,這一算法將在對觀測的分配不再變化時收斂,循環(huán)結(jié)束時的集合就是所需的碼本:
(2-6-1)分配:將每個觀測值xp分配到聚類中
(2-6-2)更新:計算上一步得到聚類中每一聚類觀測值的圖心,作為新的均值點
繼續(xù)步驟(2-6-1)。
在一種較佳的實施方式中,所述的步驟(3)包括以下步驟:
(3-1)對每一個查詢筆跡樣本或參考筆跡樣本二值化圖像,利用與權(quán)利要求3中大小相同的窗口提取足夠多的子塊,展開為一維長向量,作為稀疏自編碼的輸入;
(3-2)x1,x2,…,xj表示稀疏自編碼的輸入,a1,a2,…,ai表示隱含層的輸出,n表示輸入的個數(shù),則,根據(jù)以下公式計算隱含層的輸出:
f(x)=1/(1+e-x),
(3-3)計算所述隱含層輸出與碼本k個中心之間的距離,將其歸類為距離最近的那個中心,統(tǒng)計每個中心所得的頻數(shù),即為該筆跡樣本的特征。
在一種較佳的實施方式中,所述的查詢筆跡樣本特征與參考筆跡樣本特征之間的距離包括:
歐式距離,曼哈頓距離,加權(quán)歐式距離和加權(quán)曼哈頓距離,其中加權(quán)歐式距離和加權(quán)曼哈頓距離分別為:
其中,v1和v2代表兩特征向量,v1i和v2i代表某一維度中的元素,σi表示第i維向量的方差。
參見圖1,為了實現(xiàn)上述目的,本發(fā)明的基于稀疏自編碼碼本的筆記鑒別系統(tǒng)包括:
圖像預(yù)處理模塊,用以對查詢筆跡樣本和參考筆跡樣本圖像進行預(yù)處理,得到兩者的二值化圖像;
參數(shù)學(xué)習(xí)模塊,用以利用稀疏自編碼和k-means聚類方法來獲得權(quán)重和碼本的參數(shù);
特征提取模塊,用以利用權(quán)重和碼本來提取查詢筆跡樣本和參考筆跡樣本圖像的特征;
距離計算模塊,計算查詢筆跡樣本特征與參考筆跡樣本特征之間的距離,并比較排序,最終獲得查詢筆跡樣本書寫者的候選列表。
為了實現(xiàn)這種筆記鑒別方法,下面以一具體實施例詳細(xì)描述。
首先,圖像預(yù)處理模塊;
101:收集多個筆跡樣本,其中每位書寫者均有兩份內(nèi)容不同的筆跡樣本,一份作為參考筆跡樣本,另一份作為查閱筆跡樣本。
102:對所有的筆跡樣本進行OTSU二值化,得到其二值化圖像。
103:若筆跡樣本中有噪聲信息,比如其它非筆跡像素信息,包括花紋、圖片、格線和印刷字符等等,可以采用連通域算法或者人工去除。
其次,參數(shù)學(xué)習(xí)模塊;
201:設(shè)定一個固定大小的窗口,窗口越小,包含的信息越少,不利于提取筆跡特征;窗口越大,包含結(jié)構(gòu)信息太多,同樣妨礙提取筆跡特征,本發(fā)明對窗口大小從11*11到39*39情況均做了詳細(xì)的實驗,得到其首選和前10選的鑒別準(zhǔn)確率。
確定窗口大小后,利用該窗口在所述每張參考筆跡樣本二值化圖中隨機選取n個子塊Set1,,作為訓(xùn)練稀疏自編碼模型權(quán)重的樣本集。
202:采用稀疏自編碼模型,隨機初始化網(wǎng)絡(luò)模型參數(shù)。其中隱含層的個數(shù)在本實例中均定為75,輸入層的個數(shù)則隨窗口大小變化。
203:利用所述Set 1樣本集對稀疏自編碼模型進行訓(xùn)練,得到權(quán)重參數(shù)。本實例中稀疏性參數(shù)取0.1;權(quán)重衰減系數(shù)取3e-3;稀疏值懲罰項的權(quán)重取3。
204:利用所述窗口在每張參考筆跡樣本二值化圖中隨機選取N個的子塊Set 2,,在本實例中對N的大小做了詳細(xì)的實驗,得出N只需不小于3000,該方法就能得到很好地鑒別率的結(jié)論。
205:將所述Set 2樣本集作為稀疏自編碼模型的前向輸入,使用訓(xùn)練得到的權(quán)重參數(shù),得到隱含層輸出。
206:對所述隱含層輸出采用k-means聚類算法,得到碼本。在本實例中,在每個筆跡樣本特征中隨機選取14個特征向量作為聚類中心,共取得聚類中心k大約4000個。
再次,特征提取模塊;
301:對每一個查詢筆跡樣本或參考筆跡樣本二值化圖像,利用與權(quán)利要求3中大小相同的窗口提取N個子塊,,展開為一維長向量,作為稀疏自編碼的輸入。
302:計算隱含層輸出與碼本k個中心之間的距離,將其歸類為距離最近的那個中心,統(tǒng)計每個中心所得的頻數(shù),即為該筆跡樣本的特征。
最后,距離計算模塊;
401:計算查詢筆跡樣本特征與參考筆跡樣本特征之間的距離,并比較排序,最終獲得查詢筆跡樣本書寫者的候選列表。所采用的距離計算方法有:歐式距離,曼哈頓距離,加權(quán)歐式距離,加權(quán)曼哈頓距離。
采用了該發(fā)明中的基于稀疏自編碼碼本、離線文本無關(guān)的筆記鑒別方法,該方法無需對文本進行分割,并且碼本魯棒性強,該方法在實際應(yīng)用中更加靈活、方便,具有更廣泛的應(yīng)用范圍。
在此說明書中,本發(fā)明已參照其特定的實施例作了描述。但是,很顯然仍可以作出各種修改和變換而不背離本發(fā)明的精神和范圍。因此,說明書和附圖應(yīng)被認(rèn)為是說明性的而非限制性的。