劉貫偉, 江浩然, 張?jiān)品澹?王 偉
(恒銀金融科技股份有限公司, 天津 300308)
水印是紙幣的重要組成部分, 也是紙幣的重要防偽特征之一, 對(duì)水印進(jìn)行識(shí)別與檢測(cè)也是紙幣檢測(cè)的重要環(huán)節(jié)。常見(jiàn)的人民幣水印圖像包括毛澤東頭像、面額數(shù)字等。 然而,在紙幣的流通過(guò)程中,由于磨損、彎折、污損等情況的發(fā)生, 導(dǎo)致圖像采集系統(tǒng)采集得到的水印圖像存在大量的噪聲,采集得到的水印圖像特征不穩(wěn)定。 由于上述情況常有發(fā)生,基于機(jī)器視覺(jué)的檢測(cè)平臺(tái)難以判斷水印圖像是否存在,也難于辨別水印圖像的類別。
目前已有的水印識(shí)別方法可以分為以下幾類: 模板匹配、邊緣檢測(cè)與支持向量機(jī)相結(jié)合、水印特征提取與決策分類相結(jié)合, 以及基于相似系數(shù)的識(shí)別方法。 文獻(xiàn)[1]利用白水印區(qū)域顏色比較簡(jiǎn)單、背景單調(diào)的特點(diǎn),利用圖像投影作為水印圖像特征, 將待測(cè)圖像與自主建立的標(biāo)準(zhǔn)模板圖像庫(kù)中的圖像進(jìn)行模板匹配, 該方法具有一定實(shí)現(xiàn)性,但是抗干擾性較差。 文獻(xiàn)[2]利用支持向量機(jī)方法實(shí)現(xiàn)紙幣水印圖案的識(shí)別,先利用canny 算子提取水印圖案的邊緣信息, 再將不同水印圖案的邊緣特征的矩陣向量作為訓(xùn)練輸入,最終實(shí)現(xiàn)了水印圖像的分類判別。 該方法時(shí)效性較高, 但也沒(méi)能解決復(fù)雜背景條件下的水印識(shí)別問(wèn)題。 文獻(xiàn)[3]設(shè)計(jì)了一種快速模板匹配算法,實(shí)驗(yàn)驗(yàn)證其方法的可能性, 但對(duì)于其方法的計(jì)算效率還有待于提升。 上述不同方法具有各自的優(yōu)勢(shì),對(duì)于水印圖像也具有一定分辨力, 但對(duì)于包含噪聲的水印圖像識(shí)別效果尚存在較大的問(wèn)題。
局部二值模式(Local Binary Pattern,LBP)是一種圖像紋理特征描述算子, 在實(shí)際工業(yè)和生產(chǎn)生活領(lǐng)域, 基于LBP 特征對(duì)目標(biāo)進(jìn)行檢測(cè)也得到了廣泛應(yīng)用。 本文采用LBP 算子對(duì)人民幣水印圖像進(jìn)行特征提取, 利用LBP 算子的特性,有效解決了水印圖像識(shí)別困難的問(wèn)題,達(dá)到識(shí)別精度高、識(shí)別速度快的要求。
LBP 算子是一種用于描述圖像紋理特征的算法[4],LBP 算法在設(shè)計(jì)之初將像素鄰域定義為的矩形鄰域。LBP算子首先以采樣點(diǎn)p 為中心, 分別對(duì)中心像素的像素鄰域點(diǎn)進(jìn)行采樣處理,具體實(shí)現(xiàn)方法見(jiàn)圖1。
圖1 鄰域LBP 算子示意圖Fig.1 Neighborhood LBP operator schematic graph
LBP 算子以中心點(diǎn)像素灰度值grayc為閾值對(duì)鄰域各像素點(diǎn)grayi(i=1,2)進(jìn)行二值化處理,再將中心點(diǎn)像素鄰域的二值化值與自定義權(quán)重值相乘, 再將各鄰域像素相乘結(jié)果相加后得到LBP 特征值。計(jì)算式如式(1)和式(2)。
式中:grayi—中心點(diǎn)鄰域的第i 個(gè)采樣點(diǎn)的灰度值,grayc—該鄰域中心像素的灰度值,其中f 為自定義符號(hào)函數(shù)。
由于基本LBP 算子無(wú)法提取大尺度紋理特征, 有學(xué)者提出了改進(jìn)的LBP 算法,將原始鄰域擴(kuò)展,擴(kuò)展鄰域半徑用R 表示,同時(shí)設(shè)置半徑為R 的鄰域像素共包含P 個(gè),表示P 個(gè)鄰域像素點(diǎn)均勻分布在半徑為R 的鄰域圓上,見(jiàn)圖2,分別表示半徑為2,鄰域像素點(diǎn)為8 或16 的像素分布情況。
圖2 LBP 鄰域像素分布圖Fig.2 LBP neighborhood pixel distribution graph
對(duì)于改進(jìn)的LBP算法,可采用與原始LBP 算法相同的二值化處理方式,計(jì)算采樣中心像素的LBP 特征值。
通過(guò)觀察LBP 算子的定義不難發(fā)現(xiàn),一個(gè)LBP 算子可以采用多種二進(jìn)制模式,隨著采樣半徑的增大、采樣點(diǎn)的增多,二進(jìn)制模式的種類數(shù)量也逐漸龐大。 然而,過(guò)多的二進(jìn)制模式在特征提取與識(shí)別中都會(huì)使得計(jì)算量增大,對(duì)實(shí)際應(yīng)用而言更是不利。 于是,學(xué)者Ojala 提出一種“等價(jià)模式”(Uniform Patterns)[5]對(duì)LBP 算子進(jìn)行降維。
等價(jià)模式LBP 算子可以定義為,當(dāng)局部二值模式對(duì)應(yīng)的循環(huán)二進(jìn)制數(shù)從0 到1 或從1 到0 最多有兩次跳變時(shí),該局部二值模式對(duì)應(yīng)的二進(jìn)制數(shù)稱為一個(gè)等價(jià)模式,可以用式(3)判斷一個(gè)局部二值模式是否是等價(jià)模式。
式中,若計(jì)算得到的U(LBPP,R)不大于2,則該模式是一個(gè)等價(jià)局部二值模式。 經(jīng)改進(jìn),原始等價(jià)局部二值模式類別由2p降低到P(P-1)+2 種。 利用等價(jià)模式LBP 極大地降低了特征維度, 提升特征提取速度的同時(shí)可以更好地提取圖像的本質(zhì)特征。
不同LBP 算子將得到各不相同的LBP 特征圖像,圖3 為采用不同LBP 算子求得的特征圖像。
圖3 不同LBP 算子特征圖像對(duì)比Fig.3 Image comparison of different LBP operators
誤差逆?zhèn)鞑ィ‥rror Back Propagation),簡(jiǎn)稱BP 神經(jīng)網(wǎng)絡(luò), 是一種按誤差反向傳播算法進(jìn)行神經(jīng)網(wǎng)絡(luò)訓(xùn)練的反饋型神經(jīng)網(wǎng)絡(luò),具有很強(qiáng)的非線性映射能力[6]。 BP 神經(jīng)網(wǎng)絡(luò)中間層個(gè)數(shù)與各層神經(jīng)元個(gè)數(shù)均可根據(jù)其應(yīng)用對(duì)象任意設(shè)定,常用的BP 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),見(jiàn)圖4。BP 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)主要包括輸入層、隱藏層和輸出層。
圖4 常用BP 神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.4 BP neural network structure graph
輸入層節(jié)點(diǎn)個(gè)數(shù)為樣本特征向量的元素個(gè)數(shù), 隱藏層節(jié)點(diǎn)個(gè)數(shù)可根據(jù)計(jì)算得到, 輸出層節(jié)點(diǎn)個(gè)數(shù)為樣本的總類別數(shù)。Nhidden=log2Ninput(4)利用BP 神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)水印存在性判別, 通過(guò)不斷計(jì)算實(shí)際輸出與期望輸出之間的差值,調(diào)整隱藏層神經(jīng)元權(quán)值,逐漸減小輸出差值,不斷修正網(wǎng)絡(luò)參數(shù)。
文章提出基于LBP 特征提取的紙幣水印識(shí)別方法,主要包括三個(gè)步驟: 第一步, 利用等價(jià)LBP 算子提取圖像LBP 特征;第二步,計(jì)算并統(tǒng)計(jì)圖像歸一化LBP 特征向量;第三步,訓(xùn)練BP 神經(jīng)網(wǎng)絡(luò),將圖像歸一化LBP 特征向量作為輸入向量,保存網(wǎng)絡(luò)模型參數(shù)。整體算法實(shí)現(xiàn)過(guò)程,見(jiàn)圖5。
圖5 算法實(shí)現(xiàn)過(guò)程Fig.5 Algorithm implementation process
提取水印圖像LBP 特征,利用等價(jià)模式LBP 算子計(jì)算水印圖像等價(jià)模式LBP 特征圖。 本文以2015 版100 元人民幣作為研究對(duì)象,利用CIS 圖像傳感器采集透視圖像,可得到該版本紙幣的水印圖像見(jiàn)圖6。
圖6 透視圖像與水印圖像Fig.6 Perspective image and watermark image
批量采集2015 版100 元人民幣圖像,提升用于訓(xùn)練的數(shù)據(jù)集圖像數(shù)量可提升BP 神經(jīng)網(wǎng)絡(luò)模型泛化能力。 因此,本文建立水印圖像數(shù)據(jù)集共包括50000張圖像,部分圖像見(jiàn)圖7(a),建立無(wú)水印圖像數(shù)據(jù)集17000 張圖像,部分圖像見(jiàn)圖7(b)。
圖7 圖像數(shù)據(jù)集Fig.7 Image dataset
利用本文建立水印圖像數(shù)據(jù)集中的圖像進(jìn)行LBP 特征提取,原始LBP 特征圖像見(jiàn)圖8(b),圓形LBP 特征圖像見(jiàn)圖8(c),等價(jià)LBP 特征圖像見(jiàn)圖8(d)。
圖8 水印LBP 特征圖Fig.8 Watermark LBP feature image
水印圖像等價(jià)模式LBP 特征提取過(guò)程主要分為兩步: 第一步, 利用等價(jià)模式LBP 算子計(jì)算水印圖像LBP特征圖;第二步,計(jì)算歸一化LBP 特征向量。其中,歸一化LBP 特征向量計(jì)算過(guò)程如下:
(1)設(shè)置一個(gè)大小為的圖像處理模塊。
(2)設(shè)置步長(zhǎng)為1,利用圖像處理模塊遍歷LBP 特征圖同時(shí)執(zhí)行步驟3。
(3)計(jì)算每塊LBP 特征圖子圖模塊的直方圖,依次保留子圖模塊直方圖統(tǒng)計(jì)結(jié)果。
通過(guò)上述操作,得到用于BP 神經(jīng)網(wǎng)絡(luò)訓(xùn)練的輸入特征向量。
通過(guò)批量提取水印圖像數(shù)據(jù)集LBP 特征圖并保存歸一化特征向量, 同樣批量提取不包含水印圖像數(shù)據(jù)集的LBP 特征圖、 計(jì)算并保存其歸一化特征向量。 將兩類樣本特征向量作為輸入,開(kāi)始訓(xùn)練BP 神經(jīng)網(wǎng)絡(luò)。
本文設(shè)計(jì)的水印識(shí)別BP 神經(jīng)網(wǎng)絡(luò)具有多層結(jié)構(gòu),包含輸入層、隱藏層與輸出層。 采用logsig 函數(shù)作為激活函數(shù),其函數(shù)表達(dá)式見(jiàn)式(5)。
采用變學(xué)習(xí)率動(dòng)量梯度下降算法進(jìn)行訓(xùn)練, 設(shè)置最大訓(xùn)練步數(shù)為20000 步,訓(xùn)練最小誤差為10-8,學(xué)習(xí)率為0.02。保留訓(xùn)練結(jié)束時(shí)各層網(wǎng)絡(luò)的權(quán)重值,搭建同樣的網(wǎng)絡(luò)結(jié)構(gòu),利用訓(xùn)練得到的網(wǎng)絡(luò)權(quán)重值對(duì)測(cè)試圖像進(jìn)行測(cè)試。
在基于機(jī)器視覺(jué)的紙幣水印識(shí)別實(shí)際過(guò)程中, 由于鈔票新舊程度不一、圖像采集傳感器不一致,極易產(chǎn)生紙幣水印圖像亮度不一致的問(wèn)題。 不同光照條件下水印圖像見(jiàn)圖9。
圖9 不同光照條件下的水印圖像Fig.9 Watermark image under different illumination conditions
針對(duì)上述問(wèn)題,提取LBP 特征向量時(shí),增加多種亮度條件下的水印圖像,可提升模型的魯棒性。本文對(duì)2015 版100元人民幣水印圖像進(jìn)行測(cè)試,同時(shí),利用支持向量機(jī)(Support Vector Machine,SVM)[7]訓(xùn)練并測(cè)試數(shù)據(jù)集圖像。 本文利用方向梯度直方圖(Histogram of Oriented Gradient,HOG)[8]提取水印特征,并采用不同尺寸特征提取算子進(jìn)行對(duì)比實(shí)驗(yàn)。
SVM 訓(xùn)練樣本共包含50000 張水印圖像,17000 張無(wú)水印圖像,測(cè)試樣本包含13505 張有水印圖像、6262 張無(wú)水印圖像。 為比較不同算法,水印圖像識(shí)別結(jié)果,見(jiàn)表1。
表1 不同算法水印圖像識(shí)別結(jié)果Tab.1 Watermark image recognition results with different algorithms
對(duì)有水印圖像, 三種算法對(duì)不同光照條件下的水印圖像都具有良好的識(shí)別效果,都能夠滿足識(shí)別要求。
本文算法對(duì)無(wú)水印圖像具有100%的分辨力,與其他參與對(duì)比的兩種算法相比, 識(shí)別準(zhǔn)確率提高了3.3%以上。 對(duì)于無(wú)水印圖像, 采用先HOG 提取特征后利用SVM 訓(xùn)練模型的方法,模型識(shí)別效果存在較大偏差,不能滿足鈔票檢測(cè)過(guò)程中水印識(shí)別的要求。
通過(guò)對(duì)比實(shí)驗(yàn),可以得出在不同光照條件下,本文算法具有較高的準(zhǔn)確率,識(shí)別準(zhǔn)確率99.96%,有效解決人民幣水印圖像識(shí)別困難的問(wèn)題, 能夠被應(yīng)用于人民幣水印圖像的識(shí)別與檢測(cè)中。
本文以2015 版100 元人民幣為例,設(shè)計(jì)了一種基于LBP 特征的人民幣水印圖像的識(shí)別與檢測(cè)方法,解決了基于機(jī)器視覺(jué)識(shí)別紙幣水印難度大的問(wèn)題。 通過(guò)對(duì)比實(shí)驗(yàn),驗(yàn)證了LBP 算子對(duì)不同新舊程度的紙幣水印特征提取具有較好的魯棒性,采用增加樣本圖像種類的方法,提升算法對(duì)不同光照條件下水印圖像識(shí)別與檢測(cè)的準(zhǔn)確率。