沈陽理工大學(xué)信息科學(xué)與工程學(xué)院 李海燕 胡玉蘭
卷積神經(jīng)網(wǎng)絡(luò)在目標(biāo)輪廓檢測中的應(yīng)用
沈陽理工大學(xué)信息科學(xué)與工程學(xué)院 李海燕 胡玉蘭
輪廓;特征;損失函數(shù);softmax;BSDS500
本文應(yīng)用現(xiàn)在比較熱門深度學(xué)習(xí),來解決特征的提取、輪廓的檢測。Martin[1]等人通過與自然邊界相關(guān)的亮度、顏色和紋理特征變化的特征,并且通過學(xué)習(xí)分類器來組合特征。Dollar[2]等人使用大量的特征塊和概率增強(qiáng)樹[3]來檢測輪廓,達(dá)到了主流的準(zhǔn)確率。Ren和Bo[4]發(fā)現(xiàn)了一種稀疏編碼梯度特征,對于輪廓的檢測效果非常好,目前為止,用深度學(xué)習(xí)方面來檢測目標(biāo)輪廓的文獻(xiàn)還比較少, Ganin和Lempitsky第一次讓卷積神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)輪廓特征,通過kd-tree將學(xué)習(xí)到的輪廓特征送到注釋的邊緣圖中去。本文通過卷積神經(jīng)網(wǎng)絡(luò)來學(xué)習(xí)輪廓特征,最后通過結(jié)構(gòu)化的隨機(jī)森林提取輪廓最終達(dá)到我們的目標(biāo)。
我們首先介紹我們的卷積神經(jīng)網(wǎng)絡(luò)模型,然后對網(wǎng)絡(luò)結(jié)構(gòu)中使用的損失函數(shù)進(jìn)行詳細(xì)的解釋。
通過查閱文獻(xiàn)[1,2,3,4]可知,四層的卷積神經(jīng)網(wǎng)絡(luò)能夠提取足夠的信息來對輪廓和背景進(jìn)行區(qū)別。我們設(shè)計的網(wǎng)絡(luò)中包含輸入層,卷積層,還包含全連接層。其中:輸入:45×45×3;卷積1:45×45×32;卷積2:22×22×48;卷積3:11×11×64;卷積4:5×5×128;全連接1:128;全連接2:101。其中我們只在4個卷積層和兩個全連接層中進(jìn)行參數(shù)的學(xué)習(xí),其他層只是隨機(jī)的進(jìn)行初始化。結(jié)構(gòu)如圖1所示:
圖1 卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
我們的目標(biāo)把損失函數(shù)降到最低,對于給定的訓(xùn)練集,如果包含m個圖像塊,x(i)表示第i個圖像塊,y(i)表示的是它所屬的類標(biāo)簽,如果y(i)=0說明圖像塊沒有用,如果y(i)=k>0表示這是一個有用的圖像塊,在第二個全連接層能夠找到置信度為j的有用圖像塊的概率如下:
在標(biāo)準(zhǔn)的卷積神經(jīng)網(wǎng)絡(luò)中,輸出的結(jié)果會送到下一個的softmax分類器中,損失函數(shù)如下:
由(1)、(2)可知,對于每個類來說對分類錯誤的處理都是一樣的。為了提高實驗結(jié)果的準(zhǔn)確率,我們就引入了額外的項來對這個損失函數(shù)進(jìn)行調(diào)整,改進(jìn)的損失函數(shù)如下:
λ=1的時候,由公式(3)可知,我們應(yīng)該用不同的形狀類來適應(yīng)結(jié)果。
全連接層我們的處理分兩個階段,第一個階段計算softmax損失函數(shù),第二個階段是求出J對于a0(i)、al(i)的導(dǎo)數(shù)。過程如下:
式中γ的大小在-1到1之間,通過在我們的目標(biāo)損失函數(shù)上使用隨機(jī)梯度下降函數(shù),可以適當(dāng)?shù)陌褜W(xué)習(xí)率降低。來進(jìn)行迭代實驗。
從卷積神經(jīng)網(wǎng)絡(luò)第一個全連接層提取到的深度特征進(jìn)行可視化,然后通過結(jié)構(gòu)化的隨機(jī)森林,得到目標(biāo)的輪廓。
二元分割函數(shù)h(x,j)∈0,1值為0時,x歸類到右節(jié)點,值為1,類到左節(jié)點,直到遞歸結(jié)束。輸入x對應(yīng)的為y存在葉子節(jié)點,最后得到的結(jié)果是每個葉子節(jié)點得到結(jié)果的集合。我們使用的增益函數(shù)是:
其中,Sj=x,y∈Sj| h(x,j)=0 ,SjR= SjSjL其中信息增益的值Ij為最大的時候,用SjL,SjR來進(jìn)行訓(xùn)練,對于多級分類的情況來說,需要重新定義信息增益:
在這個式子中,H(S)表示的是香農(nóng)的信息熵,其中在這個式子中基尼不純度也會引入來進(jìn)行使用。H(S)=∑ypy(1-py)為基尼不純度。
在遞歸的過程中,信息熵和信息增益可以被理解為連續(xù)的變量,回歸的做法是最小化葉子節(jié)點的標(biāo)簽方差。但是如果是
的話,經(jīng)過化簡可以得到,單因素回歸的標(biāo)準(zhǔn)形式。
單個的決策樹,方差偏高,容易出現(xiàn)過擬合的現(xiàn)象,可以通過引入隨機(jī)因素,來降低最后得出的方差。訓(xùn)練多個決策樹,來實現(xiàn)多樣性,解決單個決策樹不能解決的問題。對于給定的離散標(biāo)簽,我們可以直接計算信息增益,用信息增益代替計算得到的增益信息,每次訓(xùn)練的之前,完成結(jié)構(gòu)化標(biāo)簽映射。
BSDS500數(shù)據(jù)集,共500張圖片,200張為訓(xùn)練圖片,200張為測試圖片,100張作為檢驗圖片,另外數(shù)據(jù)集有人工標(biāo)記,使用起來很方便。我們使用比較流行的Caffe網(wǎng)絡(luò)框架,采用ODS(optimal dataset scale),OSI(optimal image scale), AP(average precision)來衡量。在下表中給出不同方法的比較,其中human是人工標(biāo)記的結(jié)果,我們的結(jié)果和它越接近說明實驗效果越好。
表1 輪廓檢測在BSDS數(shù)據(jù)集上的結(jié)果
圖2 卷積神經(jīng)網(wǎng)絡(luò)得到的圖像輪廓
結(jié)果如圖2所示:最左邊original一列中為原圖,第二列GroundTruth為人工標(biāo)記得到的輪廓,第三列是SketchTokens,素描令牌法,是一種通過中層特征學(xué)習(xí)得到的輪廓,最后一個是本文的方法得到的輪廓。第一幅圖中的天鵝的輪廓,第二幅圖像中城堡的輪廓圖,說明我們的方法對于光照不均勻的環(huán)境下,輪廓效果比較理想的,有一定的魯棒性。
對于目標(biāo)輪廓檢測這個問題,本文提出了一種卷積神經(jīng)網(wǎng)絡(luò)算法,在基本的卷積神經(jīng)網(wǎng)絡(luò)上進(jìn)行改進(jìn),同時改進(jìn)損失函數(shù),提高了特征提取的準(zhǔn)確度,最后顯示經(jīng)過訓(xùn)練得到的模型能夠一定程度上抑制背景噪聲的影響,相比傳統(tǒng)的邊緣檢測算法,具有應(yīng)用價值和研究價值。
[1]D.R.Martin,C.Fowlkes,D.Tal,and J.Malik.A database of human segmented natural images and its application to evaluating segmentation algorithms and measuring ecological statistics.In Proc.ICCV,pages 416-425,2001.
[2]P.Dollar,Z.Tu,and S.Belongie.Supervised learning of edges and object boundaries.In Proc.CVPR,volume 2,pages 1964-1971,2006.
[3]Z.Tu.Probabilistic boosting-tree: Learning discriminative models for classification,recognition,and clustering.In Proc.ICCV,volume 2,pages 1589-1596.IEEE,2005.
[4]X.Ren and L.Bo.Discriminatively trained sparse code gradientsfor contour detection.In Proc.NIPS,pages 593-601,2012.
李海燕,女,碩士,主要研究領(lǐng)域為自適應(yīng)信號處理。
胡玉蘭,女,教授,主要研究領(lǐng)域:數(shù)字圖像處理、模式識別與人工智能。