吳俊雄
(北京信息科技大學(xué) 自動(dòng)化學(xué)院,北京 100192)
在光學(xué)字符識(shí)別中針對(duì)不同類(lèi)別文本圖片進(jìn)行分類(lèi)可以提高識(shí)別率。如果待識(shí)別圖片中存在被紅色印章覆蓋的部分,比如發(fā)票類(lèi)圖片,則將這類(lèi)圖片分離出來(lái)單獨(dú)處理能夠改善識(shí)別效果。
目前圖像分類(lèi)技術(shù)大體可以分成3類(lèi)。第1類(lèi)是基于圖像處理的方法,即根據(jù)不同類(lèi)別圖像的特征,人工設(shè)計(jì)分類(lèi)器對(duì)各類(lèi)圖像進(jìn)行分類(lèi)。顏色、形狀、紋理是圖像常用的3大特征,其中顏色特征由于直觀且易于提取而被廣泛應(yīng)用于圖像處理領(lǐng)域。這類(lèi)方法應(yīng)用簡(jiǎn)單,但是泛化性能較差,且設(shè)計(jì)的分類(lèi)模型依賴(lài)于設(shè)計(jì)者的經(jīng)驗(yàn)[1-2]。
第2類(lèi)是基于機(jī)器學(xué)習(xí)的分類(lèi)方法,代表性的機(jī)器學(xué)習(xí)方法有k均值聚類(lèi)法、支持向量機(jī)法(support vector machines,SVM)等[3-4]。這類(lèi)方法通常是將輸入圖像的特征通過(guò)數(shù)學(xué)的方法轉(zhuǎn)換成低維度的特征,再將低維度的特征輸入機(jī)器學(xué)習(xí)模型中進(jìn)行訓(xùn)練,使用完成訓(xùn)練的模型對(duì)圖像進(jìn)行分類(lèi)。這類(lèi)方法的優(yōu)點(diǎn)是泛化能力強(qiáng),數(shù)學(xué)理論完備,對(duì)于特征不明顯的圖像也有較好的分辨率,缺點(diǎn)是精度依賴(lài)于特征的提取,并且精度通常不夠高。
隨著卷積神經(jīng)網(wǎng)絡(luò)在計(jì)算機(jī)視覺(jué)中的大量應(yīng)用,第3類(lèi)方法即深度學(xué)習(xí)的分類(lèi)方法由于其自身的優(yōu)越性能,越來(lái)越受到學(xué)術(shù)界和工業(yè)界的青睞。該方法的優(yōu)點(diǎn)是泛化能力強(qiáng),魯棒性強(qiáng),準(zhǔn)確率極高。分類(lèi)的過(guò)程是將不同類(lèi)型的圖像打上標(biāo)簽,再將圖像縮放到固定尺寸送入深度卷積網(wǎng)絡(luò)中進(jìn)行訓(xùn)練,將訓(xùn)練好的模型用于分類(lèi)。這類(lèi)方法通常需要大量的訓(xùn)練數(shù)據(jù),小數(shù)據(jù)集上的分類(lèi)效果不夠好[5]。
在實(shí)際工程中分類(lèi)方法的選擇應(yīng)該綜合考慮多個(gè)方面。由于圖像數(shù)據(jù)較少,本文沒(méi)有使用基于深度學(xué)習(xí)的方法構(gòu)建卷積神經(jīng)網(wǎng)絡(luò),而是考慮到兩類(lèi)圖像顏色特征鮮明,基于Lab顏色空間設(shè)計(jì)了一種分類(lèi)器,用于區(qū)分出被紅色印章覆蓋的文本圖片,識(shí)別正確率達(dá)到98.33%。
本文中兩類(lèi)圖像如圖1所示,(a)為文字信息未被紅色印章覆蓋的圖像,用A類(lèi)表示;(b)為文字信息被紅色印章覆蓋的圖像,用B類(lèi)表示。識(shí)別中需要將這兩類(lèi)圖像進(jìn)行分離,方便后續(xù)對(duì)B類(lèi)單獨(dú)進(jìn)行處理。
圖1 A類(lèi)和B類(lèi)圖像
常用的圖像顏色空間有RGB顏色空間、HSV顏色空間和Lab顏色空間。RGB顏色空間適合顯示與存儲(chǔ)圖像數(shù)據(jù),但不適合進(jìn)行圖像處理。
HSV顏色空間通過(guò)3個(gè)顏色分量來(lái)定義顏色:色調(diào)H代表不同的顏色;飽和度S代表顏色的純度;亮度V 代表顏色明亮的程度。從該模型的定義可以看出3個(gè)分量對(duì)顏色的貢獻(xiàn)度不同,H分量對(duì)顏色的貢獻(xiàn)度最大,S分量其次,V分量最小。HSV顏色空間被廣泛地運(yùn)用到彩色圖像處理中,包括顏色分類(lèi)、顏色識(shí)別等[6]。
Lab顏色空間是由國(guó)際照明委員會(huì)所制定的具有國(guó)際標(biāo)準(zhǔn)的色彩模式,也稱(chēng)為CIELab。Lab由一個(gè)亮度通道(L)和兩個(gè)顏色通道(a和b)組成,L代表亮度,a代表顏色從綠色到紅色的轉(zhuǎn)變,b代表從藍(lán)色到黃色的轉(zhuǎn)變。用這3個(gè)分量的不同取值就可以排列表示出自然界中存在的任意一種顏色[7]。
HSV和Lab兩種顏色空間均適用于顏色分類(lèi),由于B類(lèi)圖像相比于A類(lèi),紅色特征明顯,而Lab空間中a分量對(duì)紅色很敏感,所以本文基于Lab顏色空間對(duì)圖像進(jìn)行分類(lèi)處理。
圖像預(yù)處理的目的是為了增強(qiáng)圖片的特征信息,有利于后續(xù)區(qū)分。首先將圖片進(jìn)行統(tǒng)一的縮放,縮放的尺寸為訓(xùn)練集的平均尺寸。其次,使用伽馬變換提高圖片中紅色印章與白色背景的對(duì)比度。伽馬變換作為一種圖像增強(qiáng)的方法,常用來(lái)改變圖片的對(duì)比度。其公式為
s=crγ
(1)
式中:c為常數(shù),一般設(shè)置為1;r為像素值;γ為可選擇的參數(shù);s為新的像素值。由式(1)可知伽馬變換會(huì)對(duì)圖片的像素值做非線性變換。
設(shè)置γ值為0.7,對(duì)圖片進(jìn)行伽馬變換,效果如圖2所示,(a)為原始圖片,(b)為經(jīng)過(guò)伽馬變換后的圖片。由圖2可知,伽馬變換之后,紅色印章與白色背景的對(duì)比度有所增強(qiáng)。
圖2 伽馬變換效果
先將RGB顏色空間表示的圖片轉(zhuǎn)換成Lab顏色空間表示,再單獨(dú)將a分量取出來(lái)。由于A類(lèi)圖像沒(méi)有紅色印章,其a分量的值較小;而B(niǎo)類(lèi)圖像a分量的值較大。
圖3(a)為A類(lèi)圖像的a分量直方圖,橫坐標(biāo)代表像素值,即亮度,縱坐標(biāo)代表像素點(diǎn)數(shù)目;圖3(b)為對(duì)應(yīng)圖片的a分量灰度圖,A類(lèi)圖像對(duì)應(yīng)的a分量較小,表現(xiàn)為a分量灰度圖沒(méi)有高亮值。觀察a分量直方圖可知,其灰度圖像素多分布在120至140之間。
圖3 A類(lèi)圖像的a分量圖
圖4(a)為B類(lèi)圖像的a分量直方圖,圖4(b)為對(duì)應(yīng)圖片的a分量灰度圖。由于a分量對(duì)紅色敏感,表現(xiàn)為紅色印章部分a分量值很高。
圖4 B類(lèi)圖像a分量圖
根據(jù)這一特性,設(shè)計(jì)分類(lèi)器,算法步驟如下:
1) 將圖片由RGB顏色空間轉(zhuǎn)化成Lab顏色空間,并得到圖像的a分量直方圖。
2) 由1)可得圖片不同像素值的像素?cái)?shù)目,設(shè)定閾值ret。統(tǒng)計(jì)訓(xùn)練集中少數(shù)圖片,大致觀察ret在0~15之間,分別取閾值ret為3、5、7、9、11。找出圖片a分量像素?cái)?shù)目大于此閾值的像素值。
3) 設(shè)定閾值ret2,設(shè)定方法同ret。由2)可以得到圖片a分量中大于閾值ret的像素值,取這些像素值的最大值,如果最大像素值>ret2,判斷為B類(lèi),反之判斷為A類(lèi)。
4) 為了找到最優(yōu)ret和ret2,對(duì)ret和ret2建立笛卡爾坐標(biāo)系,采用網(wǎng)格搜索的方式在訓(xùn)練集中尋找最優(yōu)參數(shù)。
5) 在最優(yōu)參數(shù)的情況下,使用測(cè)試集驗(yàn)證結(jié)果。
取ret分別為3、5、7、9、11,取ret2分別為162、165、168、171、174,對(duì)參數(shù)ret和ret2建立笛卡爾系,則一共有5×5種組合。
訓(xùn)練集為兩類(lèi)圖片各70張,測(cè)試集為兩類(lèi)圖片各30張。表1為設(shè)定不同參數(shù)時(shí),對(duì)訓(xùn)練集中B類(lèi)的識(shí)別正確率。例如設(shè)定ret2=165,ret=5,表示以像素值>165且像素?cái)?shù)目>5為判斷條件,滿(mǎn)足此條件的圖片被分類(lèi)器判斷為B類(lèi)。
表1 對(duì)B類(lèi)的識(shí)別正確率 %
表2為設(shè)定不同參數(shù)時(shí),對(duì)訓(xùn)練集A類(lèi)的識(shí)別正確率。
表2 對(duì)A類(lèi)圖像的識(shí)別正確率 %
從表1和表2可以看出,ret2=168時(shí),訓(xùn)練集中A類(lèi)和B類(lèi)的識(shí)別率都比較高。取ret2=168,ret分別為3、5、7、9、11,用測(cè)試集驗(yàn)證兩類(lèi)圖片的識(shí)別正確率,結(jié)果如表3所示。從表3可知,平均正確率達(dá)到98.33%
表3 測(cè)試集中兩類(lèi)圖片的識(shí)別正確率 %
SVM是一種經(jīng)典的機(jī)器學(xué)習(xí)方法,其原理是通過(guò)構(gòu)建超平面將不同類(lèi)別的樣本進(jìn)行分離,同時(shí)保證分隔的距離最大。SVM被廣泛地運(yùn)用到模式識(shí)別的手寫(xiě)數(shù)字識(shí)別、文本分類(lèi)、圖像分類(lèi)與識(shí)別等眾多領(lǐng)域中[8]。
為了驗(yàn)證本文方法的效果,使用SVM方法區(qū)分兩類(lèi)圖像,比較兩種方法的識(shí)別正確率。基于SVM的分類(lèi)模型[9]步驟如下:
1) 圖像縮放預(yù)處理。取訓(xùn)練集圖片的平均尺寸為縮放尺寸,將圖像扁平為一個(gè)特征向量;
2) PCA降維。為了防止維度災(zāi)難,先將特征向量進(jìn)行降維得到低維度的特征;
3) 訓(xùn)練模型。使用sklearn庫(kù)中SVM的相關(guān)函數(shù),可直接調(diào)整核函數(shù)、懲罰因子等;
4) 尋找最優(yōu)參數(shù)。采用網(wǎng)格搜索的方法自動(dòng)尋找SVM的最優(yōu)參數(shù)[10];
5) 模型持久化:對(duì)訓(xùn)練完成的模型進(jìn)行參數(shù)固定。
在與本文方法訓(xùn)練集與測(cè)試集相同的條件下,通過(guò)調(diào)整超參數(shù)、調(diào)整核函數(shù)等,可以觀察到基于SVM識(shí)別的正確率始終在82%~84%之間變化,無(wú)法超過(guò)85%。
本文提出了一種考慮圖片顏色特征的分類(lèi)方法,適用于數(shù)據(jù)集較小、顏色特征鮮明的圖片分類(lèi)場(chǎng)景。該方法與支持向量機(jī)方法相比性能更優(yōu)。
本文的方法設(shè)定了兩個(gè)閾值ret和ret2,并使用像素個(gè)數(shù)與像素值作為判斷依據(jù)。算法的不足之處在于,像素個(gè)數(shù)與像素值在某些情況下會(huì)出現(xiàn)跳變,可能導(dǎo)致識(shí)別錯(cuò)誤;由于數(shù)據(jù)集較小,也可能存在過(guò)擬合現(xiàn)象。
后續(xù)可以對(duì)本文方法繼續(xù)優(yōu)化,比如只設(shè)定一個(gè)閾值ret3,圖像a分量的像素值大于ret3的部分做積分操作,使用積分后的值作為分類(lèi)的依據(jù);收集更多的數(shù)據(jù)圖片訓(xùn)練驗(yàn)證等。