趙克堅(jiān) 廖海斌
(1.咸寧市中心醫(yī)院(湖北科技學(xué)院附屬第一醫(yī)院)計(jì)算機(jī)中心 咸寧 437100)
(2.湖北科技學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 咸寧 437100)
隨著現(xiàn)代科技的發(fā)展,人們的生活越來(lái)越數(shù)字化,打印機(jī)逐漸普及,與之相伴隨的打印文件相關(guān)的民事糾紛、刑事案件等也越來(lái)越多。如偽造合同、證件,傳播恐嚇、煽動(dòng)性文書等。打印文件是重要的物證或線索,鑒定問(wèn)題文檔是否被篡改或者辨別此打印問(wèn)題文檔的打印機(jī)源能給案件偵破提供有價(jià)值的援助。此外,驗(yàn)證印刷證件、打印票據(jù)等的真?zhèn)我矘O為重要。
針對(duì)一些特定的打印文檔,目前的鑒別技術(shù)已經(jīng)可以利用水?。?~2]、安全纖維、全息圖[3]或者特殊的墨水[4]等特征來(lái)識(shí)別真?zhèn)?,但是這類安全技術(shù)往往花費(fèi)較大,需要特殊的設(shè)備來(lái)植入安全特征,對(duì)普通用戶來(lái)說(shuō)成本太昂貴。因此,利用計(jì)算機(jī)圖像處理和人工智能方法來(lái)自動(dòng)鑒定打印文檔具有重要的理論意義和應(yīng)用價(jià)值。
計(jì)算機(jī)打印文件鑒定技術(shù)研究開(kāi)始于21 世紀(jì),目前研究者相對(duì)較少。J. Oliver 和J. Chen[5]利用計(jì)算機(jī)統(tǒng)計(jì)打印字符的面積特征,通過(guò)相同字符是否存在不同面積來(lái)判斷文件中是否有非法偽造的內(nèi)容。該方法簡(jiǎn)單,計(jì)算速度較快,但是判斷的依據(jù)并不嚴(yán)密,效果并不理想。美國(guó)Purdue 大學(xué)2002 年成立了傳感器與打印機(jī)鑒定實(shí)驗(yàn)室(PSAPF),其成果主要有:研究了激光打印機(jī)的齒輪傳動(dòng)裝置的齒咬合誤差與大齒輪的離心率誤差對(duì)打印圖像造成的明暗間隔的條紋特征;通過(guò)提取字符“e”的灰度共生矩陣等來(lái)提取紋理特征,并分別利用5 近鄰分類器與SVM 方法進(jìn)行分類[6~10]。Tsai 等提出利用離散小波變換和特征選擇方法來(lái)識(shí)別彩色激光打印機(jī)[11]。Akao 等通過(guò)最大熵方法估計(jì)正齒輪數(shù)目來(lái)識(shí)別噴墨打印機(jī)[12]。王寧、韓國(guó)強(qiáng)[13]等利用掃描采集的打印字符的筆畫總面積和筆畫輪廓總周長(zhǎng)等特征值建立單字信息庫(kù)來(lái)識(shí)別文檔的來(lái)源機(jī)型。鄧偉、涂巖愷、陳慶虎等[14~17]設(shè)計(jì)并開(kāi)發(fā)了圖像整體顯微放大系統(tǒng)來(lái)采集打印文檔的整體細(xì)節(jié)圖像信息,并采用圖形匹配算法、雙極性Hausdorff 距離、小尺度小波域特征的半影條紋特征提取方法等多種方法進(jìn)行打印文檔的源機(jī)識(shí)別??偟恼f(shuō)來(lái)利用計(jì)算機(jī)進(jìn)行打印文件鑒定取得了一定的成果,但識(shí)別率仍需進(jìn)一步提高。
國(guó)外學(xué)者利用計(jì)算機(jī)進(jìn)行打印文件鑒定的研究時(shí),訓(xùn)練文件與識(shí)別文件常取相同的字符內(nèi)容,如出現(xiàn)頻率高的字母”e”或單詞”the”。國(guó)內(nèi)學(xué)者也往往是取相同字符內(nèi)容的樣本進(jìn)行匹配分類。而對(duì)中文打印文件來(lái)說(shuō),很可能識(shí)別文件與訓(xùn)練文件中的內(nèi)容存在很少相同字符甚至不存在相同字符,這樣顯著增加了識(shí)別的難度。這是因?yàn)橄嗤址姆峭瑱C(jī)距離明顯小于不同字符的同機(jī)距離。為了更好地研究訓(xùn)練與識(shí)別文件字符內(nèi)容不一致時(shí)的打印機(jī)文檔鑒定問(wèn)題,本文將影響打印字符形態(tài)特征的因素從來(lái)源上劃分為兩類,由打印機(jī)的不同如打印機(jī)部件的參數(shù)不一致、器件不同等引入的差異稱為打印機(jī)因素或打印機(jī)因子,是一種風(fēng)格因子;由字符本身的文本內(nèi)容的不同引入的差異稱為文本因素或文本因子,是一種內(nèi)容因子。對(duì)打印文件鑒定來(lái)說(shuō),打印機(jī)因子是有效因子,而文本因子是干擾因子。本文提出將因子分析模型的方法用于打印字符的二次特征提取,通過(guò)雙線性方法進(jìn)行因子分解,提取特征矩陣的打印機(jī)因子,降低文本因素對(duì)識(shí)別的干擾,從而提高了對(duì)打印文檔源機(jī)的識(shí)別率。
把內(nèi)容和風(fēng)格看作影響一個(gè)事物的兩個(gè)互相獨(dú)立的因素[18],它們決定了事物的觀測(cè)。比如:語(yǔ)音信號(hào)中,表示語(yǔ)音文本即語(yǔ)義信息的是內(nèi)容因子,表示說(shuō)話人的音色、說(shuō)話語(yǔ)氣和聲調(diào)等信息的是風(fēng)格因子;手寫筆跡中,表示這個(gè)樣本是哪個(gè)字符的信息是內(nèi)容因子,表示這個(gè)樣本是哪個(gè)人寫的是風(fēng)格因子[19];多字體印刷字符中,表示字符文本信息的是內(nèi)容因子,表示字符字體信息的是風(fēng)格因子;在人臉圖像中,正規(guī)人臉(正面,中性,光照歸一化)是內(nèi)容因子,而人臉的姿態(tài)、光照、表情等變化是風(fēng)格因子[20]。同樣的,在打印文檔中,由打印機(jī)的不同引入的差異是風(fēng)格因子,也可稱作打印機(jī)因子;由字符文本內(nèi)容的不同引入的差異是內(nèi)容因子,也可稱作文本因子。打印文檔鑒定的目的就是根據(jù)打印機(jī)風(fēng)格信息識(shí)別出此文檔出自何臺(tái)打印機(jī),如果能將影響打印字符特征的文本內(nèi)容信息分離出來(lái),提取出內(nèi)容無(wú)關(guān)的特征,將有利于打印文檔鑒定。基于此思想,本文提出基于因子分析模型的打印字符二次特征提取方法,通過(guò)雙線性方法分離出打印機(jī)因子和文本因子,從而提取近似文本獨(dú)立的打印字符特征。
如果打印字符內(nèi)容bj∈?J具有風(fēng)格ai∈?I,那么打印字符的觀測(cè)y ∈?K可以用雙線性表示:其中,k ∈[1,K]表示打印字符觀察向量中第k 維特征,符號(hào)s 和c 分別標(biāo)記風(fēng)格和內(nèi)容,wijk表示內(nèi)容與風(fēng)格的交互作用關(guān)系。為了使因子分析模型更具靈活性,假定交互作用項(xiàng)wijk隨著內(nèi)容變化而變化,設(shè),則式(1)變?yōu)?/p>
設(shè)Bc表示K*I 維的矩陣,元素分別為,則式(2)可寫為更簡(jiǎn)潔的因子分析模型形式:
例如,將雙線性模型應(yīng)用到不同字體的印刷字符集中。則字體的信息為風(fēng)格因子,字符本身是內(nèi)容因子,結(jié)果如圖1 所示。每一個(gè)字符都可以由基本內(nèi)容因子矩陣和字體因子系數(shù)的來(lái)表示,如果要重建一個(gè)特定字體下特定內(nèi)容的字符,只需要將基本矩陣進(jìn)行字體系數(shù)加權(quán)線性組合即可。
因子分析模型的匹配求解目標(biāo)是在訓(xùn)練階段使所有樣本的總平方誤差最小化。設(shè)第t 次訓(xùn)練觀測(cè)值為y(t),其中t=1,2,…,T 。 設(shè)指示變量為hsc(t),其中
因此,因子分析模型的全部訓(xùn)練集的總平方誤差E為
如果訓(xùn)練樣本中,對(duì)各種風(fēng)格s和內(nèi)容c的觀測(cè)數(shù)量相等,那么利用奇異值分解(SVD)就可以得到因子分析模型的最優(yōu)擬合結(jié)果。
圖1 三種字體的雙線性模型分解圖
在打印機(jī)鑒定中,設(shè)打印機(jī)為s,文本為c的觀測(cè)均值為
明顯的,這些觀測(cè)矩陣是3 維的,為了利用標(biāo)準(zhǔn)的矩陣算法,把SC個(gè)K維行向量轉(zhuǎn)為S*(KC)維的二維矩陣,表示如下:其中為K維觀測(cè)均值向量。則式(3)可表示為更為簡(jiǎn)潔的矩陣形式:其中,為S*I維矩陣,表示打印機(jī)因子的參數(shù)矩陣;為I*(KC)維矩陣,表示文本因子的參數(shù)矩陣。
為了得到打印機(jī)因子和文本因子參數(shù)的最小方差估計(jì),利用SVD計(jì)算Yˉ=USVT,S的對(duì)角線元素按特征值的大小取降序排列。則A可取U矩陣的前I列,B可取SVT矩陣的前I行。模型的維數(shù)I的大小可以根據(jù)先驗(yàn)知識(shí)或者實(shí)驗(yàn)效果來(lái)定。
假設(shè)測(cè)試數(shù)據(jù)來(lái)自訓(xùn)練數(shù)據(jù)中S臺(tái)打印機(jī)的某一臺(tái),但是字符內(nèi)容與訓(xùn)練數(shù)據(jù)不一樣。設(shè)打印機(jī)因子為as,新的文本因子為Bc?。假設(shè)打印機(jī)s的新文本c?的觀測(cè)數(shù)據(jù)y服從高斯分布,其均值為雙線性預(yù)測(cè)值,方差為σ2,則
y的整體概率密度分布則為
根據(jù)先驗(yàn)知識(shí),p(s,c?)為均勻分布。下面采用EM 算法循環(huán)迭代來(lái)得到新的文本因子Bc?和描述測(cè)試數(shù)據(jù)的最佳標(biāo)簽
E-步:對(duì)打印機(jī)為s,文本為c?的觀測(cè)數(shù)據(jù)y計(jì)算概率密度函數(shù):
M-步:估計(jì)新的文本因子Bc?,使得對(duì)數(shù)似然概率最大。令
新的Bc?則可以由解出:
EM迭代具體算法如下:
1)初始化文本因子Bc?;
2)計(jì)算出式(11)E-步中觀測(cè)值y的后驗(yàn)概率
3)根據(jù)式(13)更新文本因子Bc?的值;
4)重復(fù)步驟2)3),直至兩次計(jì)算得出p(s,c?|y)的差值小于閾值或迭代次數(shù)超出規(guī)定的最大次數(shù)。EM 算法收斂于L的局部最大值,測(cè)試數(shù)據(jù)就可以根據(jù)使得后驗(yàn)概率最大的類別s來(lái)分類。對(duì)于EM 算法來(lái)說(shuō),初始化是非常重要的。由于本文主要關(guān)注的是識(shí)別性能,所以初始化采用最近鄰方法,即對(duì)于每個(gè)測(cè)試數(shù)據(jù)向量,文本因子取與之最相近字符的文本因子。
為了測(cè)試上述基于因子分析模型的打印文件鑒定的有效性,建立了包括40 臺(tái)激光打印機(jī)的打印文件數(shù)據(jù)庫(kù)。這些打印機(jī)包括一些常用品牌及多種型號(hào),見(jiàn)表1。對(duì)40 臺(tái)打印機(jī)分別采樣,每臺(tái)打印機(jī)打印兩張文件,一張用作訓(xùn)練,一張用作測(cè)試。每張文件的打印內(nèi)容是1100 個(gè)一級(jí)常用漢字,采用宋體、小四號(hào)打印。利用圖像整體高倍放大系統(tǒng)采集每張訓(xùn)練文件的504 個(gè)字符和每張測(cè)試文件的另外504 個(gè)完全不同內(nèi)容的字符,經(jīng)過(guò)預(yù)處理,切割,字符內(nèi)容自動(dòng)識(shí)別,這樣就構(gòu)成了40份樣本、每份樣本504個(gè)字的訓(xùn)練庫(kù)和40份字符內(nèi)容與訓(xùn)練庫(kù)完全不同的測(cè)試庫(kù)。
表1 實(shí)驗(yàn)中打印機(jī)編號(hào)和型號(hào)
首先取一臺(tái)打印機(jī)的兩張文件,記為A1,A2,取另外一臺(tái)打印機(jī)的一張文件,記為B2。對(duì)3張文件中每個(gè)字符提取反映字符形狀的8 維矩特征,并求出A1與A2之間的距離,記為D1,求出A1與B2之間的距離,記為D2。則D1 表示同一臺(tái)打印機(jī)不同字符內(nèi)容的距離,如圖2 中星形點(diǎn)所示;D2 表示不同打印機(jī)同樣字符內(nèi)容的距離,如圖2 中菱形點(diǎn)所示??梢钥闯?,同一臺(tái)打印機(jī)不同字符之間的距離遠(yuǎn)大于不同打印機(jī)同樣字符之間的距離。即文本因子對(duì)字符特征的影響非常顯著,遠(yuǎn)大于打印機(jī)因子。因此,打印機(jī)因素在字符形態(tài)特征中是一種弱信號(hào),容易受到文本因素強(qiáng)信號(hào)與誤差因素的干擾,這也影響了打印文件鑒別的準(zhǔn)確率。
采用本文提出的方法進(jìn)行打印機(jī)因子和文本因子的分離后,對(duì)A1,A2 和B2 的打印機(jī)因子按上述方法分別求距離,如圖3 所示??梢钥闯?,同一臺(tái)打印機(jī)不同字符之間的距離已經(jīng)小于不同打印機(jī)同樣字符之間的距離。即文本因子對(duì)字符特征的影響顯著降低,打印機(jī)因子的影響更加顯著。
圖2 不同字符的同機(jī)距離和相同字符的非同機(jī)距離比較
下面進(jìn)行識(shí)別實(shí)驗(yàn)。采用矩特征(MF)、方向指數(shù)直方圖(DIH)和Wigner 特征(WF)這三種方法進(jìn)行特征提取,對(duì)提取出來(lái)的特征矩陣分別用本文方法和歐式距離方法進(jìn)行一對(duì)一的鑒別實(shí)驗(yàn),其中本文方法是將EM 算法后所得的后驗(yàn)概率與閾值比較,歐式距離方法是將特征距離與閾值比較,若大于閾值則判斷為同機(jī)打印,統(tǒng)計(jì)正確鑒別數(shù),實(shí)驗(yàn)結(jié)果如表2 所示。另外實(shí)驗(yàn)結(jié)果也與文獻(xiàn)[18]所用方法(記為方法1)比較,其中方法1 的訓(xùn)練庫(kù)和測(cè)試庫(kù)中每?jī)煞菸臋n之間平均有50 個(gè)左右的相同字符,而本文實(shí)驗(yàn)的訓(xùn)練庫(kù)和測(cè)試庫(kù)完全無(wú)相同字符。3種方法列出的均為最優(yōu)閾值的實(shí)驗(yàn)數(shù)據(jù)。
可以看出,特征矩陣經(jīng)過(guò)因子分析模型分離打印機(jī)因子和文本因子以后,文本因素的影響顯著降低,獲得近似文本獨(dú)立的特征,在檢材與樣本之間沒(méi)有任何相同字的情況下識(shí)別率顯著提高。但是相比有50 個(gè)相同字情況下的識(shí)別率仍然有一定差距,說(shuō)明文本因子的挖掘并不徹底,分離以后的特征仍然殘留有部分的文本因子的影響,這可能是特征矩陣與雙線性模型之間不完全契合所導(dǎo)致的。下一步工作中,考慮將特征矩陣先進(jìn)行變換處理,使之更符合雙線性模型,然后再進(jìn)行變換。另外,會(huì)考慮采用新的模型進(jìn)行因子估計(jì)與因子分離,比如非線性模型。
圖3 因子分離后不同字符的同機(jī)距離和相同字符的非同機(jī)距離比較
表2 歐氏距離方法、本文方法與方法1的識(shí)別結(jié)果
計(jì)算機(jī)打印機(jī)文檔鑒定是一個(gè)新的研究課題,在樣本和檢材文件中沒(méi)有相同字或相同字符極少的情況下,打印文檔鑒定相當(dāng)困難。本文針對(duì)這個(gè)問(wèn)題,提出了一種基于因子分析模型的打印機(jī)因子與文本因子分解方法,對(duì)特征矩陣采用雙線性模型進(jìn)行因子分離,提取近似文本無(wú)關(guān)的特征,然后采用EM 算法迭代求得最大后驗(yàn)概率進(jìn)行分類,使得樣本與檢材文件中沒(méi)有相同字時(shí)的打印機(jī)鑒定正確率有了顯著的提高。