李政浩
圖像分類是計(jì)算機(jī)視覺研究與許多專業(yè)領(lǐng)域的重要研究對(duì)象。良好的圖像分類器能夠針對(duì)特定的分類需求,快速準(zhǔn)確的對(duì)某類圖像進(jìn)行分類,從而解決特定領(lǐng)域的特定問題。
當(dāng)下,隨著數(shù)據(jù)的爆炸增長(zhǎng),圖像分類器在需要保證精度的同時(shí),也需要擁有較快的速度。因此,實(shí)踐中通常對(duì)大量圖像進(jìn)行粗分類后,然后再將粗分類結(jié)果作為新的數(shù)據(jù)集,再次進(jìn)行細(xì)分類,以提高總分類速度。
本文探究了一種基于BP 神經(jīng)網(wǎng)絡(luò)的圖像粗分類方法。通過反向傳播算法,逐層傳播誤差。依據(jù)相似的圖像擁有相似的直方圖這一原理構(gòu)建圖像粗分類器,對(duì)圖像樣本進(jìn)行快速的分類。實(shí)驗(yàn)結(jié)果表明,基于此方法搭建的神經(jīng)網(wǎng)絡(luò)非常穩(wěn)健,在四分類問題中,最終分類準(zhǔn)確率能夠達(dá)到約70%,能夠勝任圖像粗分類任務(wù)的需求。
神經(jīng)網(wǎng)絡(luò)由多層神經(jīng)元構(gòu)成,通常包含輸入層、隱藏層與輸出層。每層由多個(gè)神經(jīng)元構(gòu)成,每層神經(jīng)元的輸入值有如下表示:
圖1 不同圖像對(duì)應(yīng)的直方圖
神經(jīng)元的本質(zhì)為一個(gè)非線性可導(dǎo)激活函數(shù),本文采用的激活函數(shù)為Sigmoid 函數(shù),通常使用表示,表達(dá)式如公式1,導(dǎo)數(shù)表達(dá)式如公式2:
根據(jù)如上神經(jīng)元定義,當(dāng)激活函數(shù)選用Sigmoid 函數(shù)時(shí),即能夠得到如下表示:
通過網(wǎng)絡(luò)前向傳播,最終便可得到輸出層的輸出值。
在有監(jiān)督學(xué)習(xí)中,對(duì)于給定的輸入值,數(shù)據(jù)中擁有已知的正確輸出值。即需要神經(jīng)網(wǎng)絡(luò)在整個(gè)數(shù)據(jù)集上的誤差最小。此時(shí),需要引進(jìn)損失函數(shù)。
損失函數(shù)是一類能夠反映輸出值與目標(biāo)值差異的非線性可導(dǎo)函數(shù)。常用的損失函數(shù)有均方誤差、絕對(duì)值誤差、指數(shù)損失等,本文使用了平方差,表示如下:
使用C 表示損失函數(shù);y 表示輸出層神經(jīng)元的目標(biāo)輸出值。
通過計(jì)算誤差在不同參數(shù)上的敏感度,從而對(duì)誤差進(jìn)行調(diào)整,即可對(duì)權(quán)重以及偏置的差異進(jìn)行調(diào)整。使用偏導(dǎo)數(shù)表示權(quán)重或偏置的差異程度,以權(quán)重為例,通過鏈?zhǔn)角髮?dǎo)法則,能夠得到代價(jià)C 對(duì)權(quán)重的敏感度表示如下:
同理,能夠分別得到代價(jià)函數(shù)對(duì)偏置、上一層神經(jīng)元輸出以及上一層神經(jīng)元權(quán)重的敏感度。
至此,誤差即可從輸出層通過隱藏層傳播到輸入層,經(jīng)過多次訓(xùn)練,即可將網(wǎng)絡(luò)的輸出值趨向于某個(gè)穩(wěn)健參數(shù)。
圖像直方圖是圖像的特征之一。通過統(tǒng)計(jì)不同灰度像素值點(diǎn)的個(gè)數(shù),從而得到圖像在不同灰度權(quán)重的大小。
由圖1 可見,相似圖像的直方圖形狀也較為相似,不同類別的圖像直方圖差異也較大。
相似的圖像擁有相似的直方圖,因?yàn)橐活悎D像中相同的色彩比例相似。依據(jù)這一原理,便能夠根據(jù)圖像的直方圖形狀判斷圖像是否屬于一類。
本文訓(xùn)練集選用了四類風(fēng)景圖像,包含了海灘、森林、沙漠、夕陽圖像各550 張。該問題為圖像的四分類問題。針對(duì)此問題,構(gòu)建了一個(gè)三層全連接網(wǎng)絡(luò)模型。其中,輸入層包含了768 個(gè)神經(jīng)元;單個(gè)隱藏層包含了30 個(gè)神經(jīng)元;輸出層包含了4 個(gè)神經(jīng)元。
在訓(xùn)練過程中,學(xué)習(xí)率為0.7,初始權(quán)重與偏置隨機(jī)選用,神經(jīng)元激活函數(shù)選用Sigmoid 函數(shù),誤差函數(shù)選用均方誤差。
本文依據(jù)相似圖像擁有相似直方圖這一原理,構(gòu)建了三層全連接神經(jīng)網(wǎng)絡(luò),輸入層有768 個(gè)神經(jīng)元,分別對(duì)應(yīng)圖像紅綠藍(lán)通道0~255 灰度歸一直方圖的值;隱藏層具有30 個(gè)神經(jīng)元;輸出層有4個(gè)神經(jīng)元,對(duì)應(yīng)四類輸出結(jié)果。
實(shí)驗(yàn)結(jié)果表明,基于此方法的分類器分類速度非???,10 000 次前向傳播,在本機(jī)環(huán)境下僅耗時(shí)約0.25s。在訓(xùn)練1 000 輪后,最終得到的分類準(zhǔn)確率能夠達(dá)到約70%,能夠勝任圖像粗分類的需求。
本文探究了基于BP 神經(jīng)網(wǎng)絡(luò)的圖像分類器。介紹了神經(jīng)網(wǎng)絡(luò)以及BP 傳播算法。通過該方法得到的分類器,能夠在保證一定精度的同時(shí),對(duì)圖像進(jìn)行快速的分類。
基于BP 全連接神經(jīng)網(wǎng)絡(luò)的圖像分類器,具有速度快的特點(diǎn)。使用圖像的直方圖作為圖像分類依據(jù),在加快速度的同時(shí),也增加了圖像對(duì)平移、旋轉(zhuǎn)、縮放的抗噪能力。