羅 奇
(武漢體育學(xué)院 體育工程與信息技術(shù)學(xué)院,湖北 武漢 430079)
蘑菇含有大量的蛋白質(zhì)和多種氨基酸,因而味道鮮美深受人們喜愛[1]。我國的蘑菇種類有400多種,70% 左右的蘑菇是可以食用的,但也有近100種蘑菇是有毒的,誤食會(huì)危及身體健康乃至生命。因此,十分有必要進(jìn)行蘑菇種類的識(shí)別,人工識(shí)別受經(jīng)驗(yàn)限制,許多蘑菇的外觀非常類似,如可致病的亮黃蘑菇在外觀上和可食用的蘑菇外觀上幾乎沒有區(qū)別。因此,借助計(jì)算機(jī)圖像識(shí)別技術(shù)來自動(dòng)識(shí)別蘑菇種類在近年來成為了機(jī)器學(xué)習(xí)研究的熱點(diǎn)[2]。
在長期的生產(chǎn)生活實(shí)踐中,人們拍攝了大量的蘑菇照片,這些照片包括野外的蘑菇生長照片,也有蘑菇植物標(biāo)本照片等,從數(shù)以萬計(jì)的照片中對(duì)蘑菇進(jìn)行分類識(shí)別,需要耗費(fèi)大量的人力資源,也不切實(shí)際[3]。因此,使用計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí)的圖像識(shí)別方法被應(yīng)于蘑菇種類的識(shí)別中,從海量的蘑菇圖片中自動(dòng)識(shí)別蘑菇種類成為了可能[4]。
作為一種重要的深度學(xué)習(xí)模型,卷積神經(jīng)網(wǎng)絡(luò)(CNN)近年在計(jì)算機(jī)圖像識(shí)別中都取得很大的成功,其識(shí)別效率也不斷提高。但傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)生成的特征圖在空間維度上還存在有大量的冗余,圖像處理效率上還不算高效[5-7]。文章利用圖片的頻率分離和壓縮中原理,對(duì)傳統(tǒng)的卷積網(wǎng)絡(luò)也進(jìn)行頻率壓縮,分別處理高低頻兩個(gè)部分的數(shù)據(jù),并在二者之間進(jìn)行信息交換,從而減少傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)運(yùn)算對(duì)存儲(chǔ)和計(jì)算量的消耗[8],提高圖像識(shí)別性能。
將蘑菇圖像按照其灰度值變化的速率(即變化快慢程度)分成兩部分[9],一部分是顏色變化緩慢的低頻部分,那么剩余的就是顏色變化快的部分,即高頻部分,高頻部分實(shí)質(zhì)上就是圖像的邊緣,因?yàn)橹挥谢叶燃眲〉淖兓拍艹霈F(xiàn)邊緣的現(xiàn)象,圖像才會(huì)呈現(xiàn)明顯的差別,所以其圖像頻率都比較高。而圖像邊緣內(nèi)的內(nèi)容就是低頻部分,是一張圖像的大部分信息,即圖像的大致概貌和輪廓,是圖像的近似信息。
對(duì)于蘑菇圖像來說,還有兩個(gè)圖像指標(biāo)也在高頻部分。一個(gè)是圖像的細(xì)節(jié)也是屬于灰度值急劇變化的區(qū)域,正是因?yàn)榛叶戎档募眲∽兓?,才?huì)出現(xiàn)細(xì)節(jié);另外一個(gè)就是圖像噪聲(或者噪點(diǎn)),某個(gè)像素所在的位置之所以會(huì)出現(xiàn)噪點(diǎn),就是因?yàn)樗c正常點(diǎn)的顏色出現(xiàn)了明顯的差別,也就是說該像素點(diǎn)灰度值明顯不同于其它區(qū)域,從而產(chǎn)生了灰度上顏色快速改變,因此有噪聲一般也都出現(xiàn)在圖像的高頻部分[10-11]。
對(duì)于蘑菇圖像來說,如果由于拍攝光線或角度的問題,成像的背景顏色與蘑菇主體顏色差別較小融為一體,那么人眼識(shí)別蘑菇體時(shí)也會(huì)出現(xiàn)問題,其原因就是沒有亮度和顏色的變化,整個(gè)成像大面積是一片灰度變化緩慢的區(qū)域,對(duì)應(yīng)的頻率值很低。因此,拍攝成像時(shí)必須能夠讓蘑菇主體的邊緣與背景出現(xiàn)高亮或陰影,呈現(xiàn)出邊緣的輪廓線條,這些線條就是顏色灰度的分界,就是成像一片灰度變化劇烈的區(qū)域,其對(duì)應(yīng)的圖像頻率值較高,能夠呈現(xiàn)出邊緣細(xì)節(jié),以便更好地勾勒出蘑菇主體輪廓,從而識(shí)別出蘑菇主體特征進(jìn)行分類[12]。
因此,將卷積特征映射分解成不同空間頻率的兩個(gè)組,將蘑菇圖像中的低頻率部分進(jìn)行壓縮,以減少冗余空間,利用卷積神經(jīng)網(wǎng)絡(luò)中卷積層的輸出特征映射來模擬拍攝的蘑菇照片,將不同頻率信息進(jìn)行混合處理和信息交換,并分別以相應(yīng)的頻率處理不同的卷積,從而減少卷積運(yùn)算對(duì)存儲(chǔ)和計(jì)算量的消耗。
對(duì)于傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)來說,我們使用傅立葉變換將蘑菇圖像從空間域轉(zhuǎn)換到頻率域,也就是說將蘑菇圖像的灰度分布函數(shù)變換為圖像的頻率分布函數(shù)[13]。所有輸入和輸出特征映射都具有相同的空間分辨率,我們用X和Y分別表示輸入和輸出張量。
式中:h,ω表示卷積層的空間,c表示特征圖或頻率通道的數(shù)量
我們明確地將輸入張量沿頻率通道維數(shù)分解為:X={X H,X L}。其中為高頻特性為低頻特征,注意在這里α的取值范圍為[0,1],α 表示的是分配給低頻部分的信道比率,低頻特征圖定義為比高頻特征圖的梯度要低。
由于蘑菇圖像的特征表示中低頻特征圖定義為比高頻特征圖的梯度要低,因此這種表示方法減少了空間冗余,比傳統(tǒng)的卷積表示方法更加精簡(jiǎn)[14]。在降梯度卷積中由于輸入特征的空間分辨率不同,普通卷積不能直接在這種表示上操作。一種簡(jiǎn)單的規(guī)避方法是將低頻部分采樣到原始空間分辨率,將其與高頻部分連接,然后進(jìn)行卷積運(yùn)算,這將導(dǎo)致額外的計(jì)算和內(nèi)存成本,并減少壓縮帶來的所有節(jié)省。因此,采用了一種精簡(jiǎn)的多頻特征表示,將其稱之為降梯度卷積,降梯度卷積可以直接操作,從而使輸入輸出張量不需要任何額外的計(jì)算或內(nèi)存開銷。
傳統(tǒng)卷積 (vanilla convolution)
在這里,(p, q)為X張量的位置坐標(biāo),(i, j)表示所取的近鄰范圍,我們可以定義的一個(gè)局部鄰域?yàn)椋?/p>
針對(duì)蘑菇圖像的特征表示,我們使用降梯度卷積來處理低頻和高頻兩部分所對(duì)應(yīng)的頻率張量,當(dāng)然,也需要讓蘑菇圖像特征向量高頻和低頻分量之間進(jìn)行有效的通信。
設(shè)用X和Y為卷積核的輸入和輸出張量,為了能夠直接計(jì)算卷積,我們分割卷積核W,將其分割成W H高頻和W L低頻2個(gè)部分,分別與X H和X L卷積對(duì)應(yīng):
其輸出張量也可表示成:
這里Y H = Y H→H + Y L→H,而Y L = Y L→L + Y H→L其中,Y H→L代表從H到L的特征映射后更新的結(jié)果,而Y L→H代表從L到H的特征映射后更新的結(jié)果;Y H→H與Y L→L都代表了頻率內(nèi)所更新的信息,而Y L→H與Y H→L代表了頻率間的通信,這樣實(shí)際上就是將分量進(jìn)一步分解為頻率內(nèi)和頻率間分量,即:
蘑菇圖像降梯度卷積的具體方法是:對(duì)于圖像中的高頻特征圖,使用常規(guī)卷積在位置(p, q) 處進(jìn)行計(jì)算,用于頻率內(nèi)更新,對(duì)于頻率間通信,可以將特征張量X L的采樣折疊到卷積中,從而消除了對(duì)上采樣特征圖進(jìn)行顯式計(jì)算和存儲(chǔ)的需要,如下所示:
對(duì)于特征張量X H的采樣同樣也可以折疊到卷積中:
傳統(tǒng)卷積會(huì)在位置(p, q) 處進(jìn)行計(jì)算,用于頻率內(nèi)更新,對(duì)于頻率間通信,可以將特征張量X L在位置(p, q) 進(jìn)行向下進(jìn)行2倍采樣,并將位置進(jìn)一步移動(dòng)半步,以確保向下采樣的特征圖與輸入一致,但由于與X H的索引只能是一個(gè)整數(shù),因此我們采用了一種四舍五入的方法,即在( 2 *p+i,2 *q+ j)或近似于( 2*p+ 0.5 +i,2 *q+ 0.5 j)的值,以得到所有4個(gè)相鄰位置的平均值。
在傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)分類中,池化層用于對(duì)輸入的特征圖進(jìn)行壓縮[15],一方面使特征圖變小,簡(jiǎn)化網(wǎng)絡(luò)計(jì)算復(fù)雜度,另一方面也可以用于特征壓縮以便提取主要特征,池化雖然能夠增加視野降低特征圖分辨率,以此來提升分類效果,但會(huì)導(dǎo)致錯(cuò)位,我們使用平均池來估算蘑菇圖像降梯度卷積其余部分的這個(gè)值,即使用近似于( 2 ×p+ 0.5 +i,2 ×q+ 0.5 j)的值。利用這個(gè)平均值將蘑菇圖像降梯度卷積的兩個(gè)輸出張量Y ={Y H, Y L}重新表示為:
其中:f(X;W)表示參數(shù)W的卷積,pool(X,K)表示一個(gè)卷積內(nèi)核大小為K × K的平均池函數(shù),其步幅為K;
upsample(X;K)是一個(gè)通過最近插值的系數(shù)K向上采樣函數(shù)。f(X L;W L→L)
可以看出,蘑菇圖像降梯度卷積處理過程由f(X H;W H→H)和f(X L;W L→L) 來計(jì)算圖像的高頻和低頻特征值,同時(shí),通過f(pool(X H,2);W H→L)和upsample(f(X L;W L→L) 2)這來進(jìn)行高頻和低頻特征值之間的信息交換。因此,該降梯度卷積的低頻特征映射有較大的視野,與傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)相比,可以獲得2倍的感受視野,這就在位置(p, q) 之外的更遠(yuǎn)的地方可以捕獲更多的上下文信息,從而有效提高了蘑菇分類圖像的識(shí)別性能。
本次實(shí)驗(yàn)所采用的蘑菇數(shù)據(jù)集是一個(gè)包含8123個(gè)樣本的數(shù)據(jù)集,有22個(gè)特征,主要有菌蓋顏色、菌蓋形狀、菌蓋表面形狀、條紋、菌褶、菌環(huán)、菌柄、菌托、菌絲索、鱗片等蘑菇的主要外部圖像特征。整個(gè)數(shù)據(jù)集如圖1所示,對(duì)于氣味等非圖像特征不列入本次實(shí)驗(yàn)。
圖1 蘑菇種類數(shù)據(jù)集Fig.1 mushroom species data set
由于實(shí)際拍照的角度和野外環(huán)境的限制,蘑菇圖像一般不太可能有全株完整的圖像,同時(shí),由于原始的蘑菇數(shù)據(jù)集中會(huì)含有一些干擾背景內(nèi)容,這些干擾背景不能成為蘑菇分類識(shí)別的特征,有些背景會(huì)嚴(yán)重影響本分類算法的魯棒性。為了保證實(shí)驗(yàn)方法的有效性,我們?cè)谀⒐椒诸愖R(shí)別前,先對(duì)原始蘑菇圖像進(jìn)行背景去除,形成單一背景的蘑菇圖像,選取數(shù)據(jù)集的5 023張蘑菇圖像當(dāng)作訓(xùn)練集,其余的3 100張圖像作為測(cè)試集開展實(shí)驗(yàn)。
傳統(tǒng)神經(jīng)網(wǎng)絡(luò)訓(xùn)練模型訓(xùn)練結(jié)果如圖2所示??梢钥闯觯?張圖片命中類別的準(zhǔn)確率為48.7%。圖3為降梯度卷積模型的實(shí)驗(yàn)結(jié)果,第1張圖片命中類別的準(zhǔn)確率達(dá)到了81.7%,訓(xùn)練的損失率0.2%幾乎接近于0,而驗(yàn)證的損失率穩(wěn)定在0.7%左右??梢钥闯龈倪M(jìn)的深度學(xué)習(xí)降梯度卷積模型的泛化能力比較好,而且已經(jīng)達(dá)到較高的識(shí)別準(zhǔn)確率。
圖2 傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)(CNN)訓(xùn)練模型Fig.2 Traditional Convolutional Neural Network (CNN) training model
圖3 降梯度卷積訓(xùn)練模型Fig.3 Falling gradient convolution training model
在3 100張測(cè)試圖像中,對(duì)每種蘑菇挑選30張圖像作為測(cè)試圖像,測(cè)試降梯度卷積訓(xùn)練模型對(duì)每種蘑菇圖像中的第1張、第2張和第3張命中準(zhǔn)確率和耗費(fèi)時(shí)間,部分蘑菇圖像識(shí)別的測(cè)試示例如表1所示,同時(shí),表1也給出了整個(gè)測(cè)試的統(tǒng)計(jì)結(jié)果。
從測(cè)試結(jié)果可以看出,降梯度卷積訓(xùn)練模型的平均耗費(fèi)時(shí)間為0.985 s,識(shí)別第1張的平均準(zhǔn)確率達(dá)到了91.6%,第2張和第3張的平均準(zhǔn)確率都高于95%,說明降梯度卷積訓(xùn)練模型具有較高的準(zhǔn)確性,而且在數(shù)據(jù)量比較大的情況下識(shí)別速度也比傳統(tǒng)的傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)要快。
表1 部分蘑菇圖像識(shí)別測(cè)試示例及統(tǒng)計(jì)結(jié)果Tab.1 Part of mushroom image recognition test examples and statistical results
本文將深度學(xué)習(xí)方法應(yīng)用于蘑菇圖像的識(shí)別分類中,并針對(duì)傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)在樣本訓(xùn)練中存在的空間冗余問題,采用了一種降梯度卷積訓(xùn)練模型,利用圖像高頻和低頻部分不同的特性值分別進(jìn)行存儲(chǔ)和處理,并對(duì)不同頻率傳遞的信息給出了信息交互的方法,有效提高了蘑菇分類圖像的識(shí)別性能。通過對(duì)蘑菇種類數(shù)據(jù)集的實(shí)驗(yàn)驗(yàn)證,證明該方法具有較好的識(shí)別速度和準(zhǔn)確率。
但由于本次實(shí)驗(yàn)驗(yàn)證采用了單一背景的蘑菇圖像,其實(shí)際應(yīng)用效果還需要研究,后續(xù)將研究降梯度卷積訓(xùn)練模型對(duì)復(fù)雜背景自然環(huán)境中蘑菇圖像的識(shí)別準(zhǔn)確率,以期獲得更貼近實(shí)際應(yīng)用的蘑菇圖像分類識(shí)別方法。