趙建敏,蘆建文,2
(1.內(nèi)蒙古科技大學(xué) 信息工程學(xué)院,內(nèi)蒙古 包頭 014010; 2.包鋼集團(tuán)公司信息服務(wù)中心,內(nèi)蒙古 包頭 014010)
壓縮感知理論打破了傳統(tǒng)奈奎斯特采樣定律的約束,指出在一定條件下可以利用少量觀測值重構(gòu)信號[1-2],是近年來信息處理領(lǐng)域的研究熱點(diǎn)之一,在機(jī)器視覺、模式識別等領(lǐng)域引起了廣泛的關(guān)注。應(yīng)用壓縮感知理論,Wright等[3]學(xué)者提出采用稀疏表示分類器(Sparse representation classifier,SRC)進(jìn)行人臉識別研究,取得了很好的效果,但受限于字典構(gòu)造算法,求解出的系數(shù)矩陣包含很多的小值非零解,影響了圖像表示的稀疏度,導(dǎo)致計(jì)算復(fù)雜度太高。Li等[4]在此基礎(chǔ)上提出局部稀疏表示的分類算法,在小范圍局部求解,降低計(jì)算復(fù)雜度。陳才扣等[5]延續(xù)這一思想,在人臉識別中,采用數(shù)據(jù)剪輯思想,構(gòu)造較小的超完備字典,進(jìn)一步降低算法復(fù)雜度。由此看出,字典學(xué)習(xí)在壓縮感知分類中起到?jīng)Q定性的作用。字典學(xué)習(xí)方法應(yīng)用于圖像分類有2種方式,一種方式利用字典本身的判別性區(qū)分樣本,另一種方式是利用重構(gòu)系數(shù)矩陣差異進(jìn)行分類[6]。在稀疏表示字典構(gòu)造研究中,有解析法和學(xué)習(xí)法。解析法利用數(shù)學(xué)工具來構(gòu)造,如離散余弦、小波相關(guān)變換以及參數(shù)化字典等[6-7]。在農(nóng)、林業(yè)工程領(lǐng)域,韓安太等[8]提取農(nóng)業(yè)害蟲圖像的幾何、顏色特征參數(shù),構(gòu)造了解析參數(shù)化字典,求解測試樣本的重構(gòu)系數(shù)矩陣,利用系數(shù)矩陣差異對害蟲圖像分類。李超等[9]采用解析方法,通過對木材缺陷表面圖像做3級雙樹復(fù)小波分解,結(jié)合粒子群算法提取低頻子帶、高頻子帶、熵等20維特征生成解析字典,利用重構(gòu)向量的殘差對活結(jié)、死結(jié)等4類常見木材缺陷進(jìn)行分類,取得較好的效果。學(xué)習(xí)法構(gòu)造字典最著名的是Olshausen等[10]學(xué)者在《Nature》上提出的Sparsenet字典學(xué)習(xí)算法,奠定了字典學(xué)習(xí)的理論基礎(chǔ)。之后,Engan等[11]提出了最優(yōu)方向法(Method of optimal direction,MOD)算法,該算法利用零范數(shù)約束稀疏性,采用交替優(yōu)化方法求解字典。Aharon等[12]提出K-奇異值分解算法(K-singular value decomposition,K-SVD),該算法利用奇異值分解方式迭代更新字典和系數(shù)矩陣,簡化了字典求解過程,在字典學(xué)習(xí)領(lǐng)域得到了廣泛應(yīng)用。
針對馬鈴薯葉片病害圖像的分類問題,本研究采用K-SVD算法為每類病害圖像構(gòu)造字典,利用正交匹配追蹤算法(Orthogonal matching pursuit,OMP)[13]重構(gòu)測試圖像,并計(jì)算均方根重構(gòu)誤差,由于各類字典本身的判別性,同一樣本在不同字典下的重構(gòu)誤差不同,最小誤差所對應(yīng)的字典即為測試樣本所屬種類。這一方法有效克服了特征提取對分類效果的影響,具有相對較小的運(yùn)算復(fù)雜度。
本研究以馬鈴薯病害圖像為識別對象,所有原始數(shù)據(jù)均采集于內(nèi)蒙古中部周邊馬鈴薯種植區(qū)。從馬鈴薯早疫病、晚疫病、灰霉病3類病害圖像樣本中各隨機(jī)選取100張,共300張,圖片大小均為128像素×128像素,如圖1所示。
第1行:早疫??;第2行:晚疫??;第3行:灰霉病
先將病害圖片轉(zhuǎn)換成灰度圖像,平均切割成64塊大小為16像素×16像素的圖像塊,之后將每個(gè)圖像塊按列展開,依從左到右、從上到下的順序排列,得到一個(gè)圖像樣本矩陣,大小為64×256,過程如圖2所示。本研究中字典學(xué)習(xí)、圖像重構(gòu)及分類均采用樣本矩陣所示的格式。
基于稀疏表示的分類器SRC是最早使用字典進(jìn)行識別的模型,該模型認(rèn)為測試樣本在重構(gòu)時(shí),非零系數(shù)集中于同類樣本的字典原子,其他原子系數(shù)為零,并利用這一差異進(jìn)行分類[14]。基于這一思想,本研究采用K-SVD算法,每類病害隨機(jī)抽取50個(gè)樣本訓(xùn)練,學(xué)習(xí)得到早疫病、晚疫病和灰霉病各自的過完備字典,字典矩陣的大小為64×128。
圖2 馬鈴薯病害圖像預(yù)處理結(jié)果
K-SVD算法受啟發(fā)于K均值聚類算法,K均值聚類算法相當(dāng)于K-SVD的特殊形式,即只能有一個(gè)字典原子參與重構(gòu),而且重構(gòu)系數(shù)為1。學(xué)習(xí)字典問題可歸結(jié)為求解式(1)的優(yōu)化問題:
subject to ?i,‖xi‖0≤T0
(1)
首先進(jìn)行稀疏編碼,假定字典D給定,優(yōu)化搜索稀疏表示稀疏矩陣X,常用方法有匹配追蹤算法(Matching pursuit,MP)[15]和OMP算法[13],以及欠定系統(tǒng)局域解法(Focal underdetermined system solver,F(xiàn)OCUSS)[16-17]等。本研究選用OMP算法進(jìn)行稀疏編碼,該算法將系數(shù)編碼問題分解為式(2)的優(yōu)化問題:
(2)
在稀疏表示中,OMP算法是求解上述非確定性多項(xiàng)式困難(NP-hard)問題的一種經(jīng)典貪婪算法[18],基本思想為:通過y與字典D中原子逐一做內(nèi)積,選取內(nèi)積最大的原子作為最匹配的原子,經(jīng)過在該原子方向的正交投影構(gòu)建一個(gè)稀疏逼近,并求出信號殘差,然后按照上述方法繼續(xù)選擇與信號殘差最匹配的原子,反復(fù)迭代,當(dāng)殘差值滿足精度要求或稀疏度限制(即迭代次數(shù)大于稀疏度),停止迭代,信號y表示為上述匹配原子的線性組合。OMP算法中,每次分解均對匹配原子組進(jìn)行正交化處理,增加了算法的收斂速度。
K-SVD算法第2個(gè)步驟為字典更新過程,式(1)中系數(shù)矩陣X由OMP算法求解給定,通過K次SVD分解逐列、逐行更新字典和非零系數(shù)?;舅枷胧菍⑹?1)中DX分解為K個(gè)秩為1的矩陣之和,形式如下:
(3)
(4)
本研究通過上述方法學(xué)習(xí)生成馬鈴薯早疫病、晚疫病、灰霉病圖像的過完備字典D1、D2、D3,待分類測試樣本采用OMP算法分別用D1、D2、D3重構(gòu),重構(gòu)誤差用均方根誤差RMSE表示,由于3種病害字典本身的差異性,最小的重構(gòu)誤差所對應(yīng)的字典類別即為分類結(jié)果,算法結(jié)構(gòu)如圖3所示。
圖3 馬鈴薯病害分類算法結(jié)構(gòu)
每種馬鈴薯病害隨機(jī)選取50張128像素×128像素的圖片作為訓(xùn)練樣本,通過1.1所述的方法,構(gòu)成訓(xùn)練樣本數(shù)據(jù)集Y。根據(jù)文獻(xiàn)[12]中推薦,字典第1列參與字典更新,但值保持不變,其他列在迭代中均值保持為0。迭代次數(shù)為50次,稀疏度為5,生成的字典矩陣D大小為64×128。馬鈴薯早疫病、晚疫病、灰霉病樣本字典如圖4—6所示。圖中每小塊大小為8像素×8像素,展成1列即為1個(gè)字典原子。
為了增強(qiáng)可視化效果,圖中對字典非零元素進(jìn)行了標(biāo)度縮放,下同
圖5 馬鈴薯晚疫病字典D2
字典學(xué)習(xí)中,迭代次數(shù)影響生成字典的重構(gòu)效果,以馬鈴薯早疫病字典學(xué)習(xí)為例,早疫病圖片樣本字典學(xué)習(xí)重構(gòu)誤差與迭代次數(shù)的關(guān)系如圖7所示。從圖7可看出,當(dāng)?shù)?0次以上時(shí),重構(gòu)誤差RMSE已經(jīng)穩(wěn)定在0.018 6左右,說明K-SVD算法具有較好的收斂性和較強(qiáng)的稀疏表示能力。
圖6 馬鈴薯灰霉病字典D3
圖7 字典重構(gòu)誤差與迭代次數(shù)的關(guān)系
OMP算法在圖像重構(gòu)過程中,系數(shù)稀疏度(即信號重構(gòu)時(shí)所用字典中原子個(gè)數(shù))參數(shù)的選擇對重構(gòu)效果有較大影響,隨著參與重構(gòu)系數(shù)個(gè)數(shù)的增加,即稀疏度數(shù)值增加,重構(gòu)誤差逐漸減小,以馬鈴薯早疫病樣本為例,從未參與字典學(xué)習(xí)的早疫病圖片中任選一個(gè)樣本進(jìn)行重構(gòu),圖8描述了系數(shù)稀疏度與重構(gòu)誤差的關(guān)系,稀疏度數(shù)值越大,即重構(gòu)使用的原子越多,重構(gòu)誤差越小,當(dāng)稀疏度達(dá)到6時(shí),RMSE已經(jīng)小于0.02。圖9顯示了不同稀疏度下的重構(gòu)效果,當(dāng)稀疏度為1時(shí),重構(gòu)圖像塊效應(yīng)顯著、嚴(yán)重失真(圖9b),稀疏度增大到5時(shí)(圖9d),重構(gòu)圖像的細(xì)節(jié)相比于稀疏度3(圖9c)更為清晰,當(dāng)稀疏度增加到8(圖9e)、10(圖9f)時(shí),圖像重構(gòu)誤差下降明顯。
本研究從每類樣本中分別選擇10張未參與字典學(xué)習(xí)的樣本,采用OMP算法進(jìn)行重構(gòu),兼顧數(shù)據(jù)壓縮效率及分類要求,稀疏度設(shè)置為5,早疫病、晚疫病、灰霉病平均重構(gòu)誤差分別為0.023、0.021、0.019,能夠滿足本研究的分類要求。
圖8 字典重構(gòu)誤差與稀疏度的關(guān)系
圖9 不同稀疏度下的重構(gòu)效果對比
字典學(xué)習(xí)方法應(yīng)用于圖像分類核心思想是利用字典本身的判別性區(qū)分樣本或利用重構(gòu)系數(shù)矩陣差異進(jìn)行分類,本研究利用3類病害字典本身的差異性,將待測樣本(未參與字典學(xué)習(xí)的病害圖片)用OMP算法分別在3個(gè)字典上單獨(dú)重構(gòu),重構(gòu)誤差小的字典對應(yīng)的類別定義為待測樣本類別。以早疫病樣本為例,測試樣本在不同稀疏度設(shè)定條件下采用不同字典重構(gòu)的誤差如圖10所示。從圖10可以看出,早疫病樣本在稀疏度大于3以后,采用早疫病字典D1重構(gòu)的誤差RMSE明顯小于采用晚疫病、灰霉病字典,在稀疏度為5時(shí),3個(gè)字典作用下的重構(gòu)誤差的差距尤為明顯,對分類效果影響最為顯著。因此,本研究中稀疏度參數(shù)設(shè)置為5。此外,圖11、12分別給出了晚疫病、灰霉病樣本在不同字典下的重構(gòu)誤差。
圖10 馬鈴薯早疫病測試樣本在不同字典下重構(gòu)誤差與稀疏度的關(guān)系
圖11 馬鈴薯晚疫病測試樣本在不同字典下重構(gòu)誤差與稀疏度的關(guān)系
圖12 馬鈴薯灰霉病測試樣本在不同字典下重構(gòu)誤差與稀疏度的關(guān)系
本研究通過將每類病害樣本中50個(gè)測試樣本構(gòu)成數(shù)據(jù)集進(jìn)行分類測試,每類病害分類準(zhǔn)確率如表1所示,平均正確率達(dá)到95.33%。
表1 馬鈴薯病害分類準(zhǔn)確率 %
同時(shí),還提取病害圖片的顏色特征,病斑的形狀、紋理特征,包括R、G、B均值,病斑周長,面積比,圓形度以及能量、熵、反差度等特征參數(shù),利用支持向量機(jī)分類器進(jìn)行病害識別,識別準(zhǔn)確率達(dá)到92%,低于本研究所用算法的識別準(zhǔn)確率。而且,基于人工特征提取的方法,識別準(zhǔn)確率嚴(yán)重受限于特征選擇,病斑的分割、平移、縮放、光照干擾等會嚴(yán)重影響特征值的計(jì)算。本研究采用的基于字典學(xué)習(xí)的分類方法,自學(xué)習(xí)圖像特征,有效避免了人工特征提取對分類結(jié)果帶來的不確定性。
本研究基于字典學(xué)習(xí)方法,采用K-SVD算法學(xué)習(xí)馬鈴薯分類病害字典,根據(jù)字典本身的差異,應(yīng)用OMP算法重構(gòu)病害圖片,計(jì)算重構(gòu)均方根誤差,重構(gòu)誤差最小的字典所屬類別判定為樣本類別,通過試驗(yàn)看出,該方法具有較高的分類準(zhǔn)確率和可靠性,平均正確率為95.33%?;贙-SVD算法的字典學(xué)習(xí)在Intel Core i5 CPU上進(jìn)行運(yùn)算,2.3 GHz,內(nèi)存4 G,50張128像素×128像素的圖像樣本組成訓(xùn)練集,迭代50次大概用時(shí)10 min,重構(gòu)算法用時(shí)較少。由于字典學(xué)習(xí)在建模時(shí)進(jìn)行,分類識別過程中只需重構(gòu)待分類樣本,求解比較均方根誤差就能完成,算法具有較好的時(shí)效性。
然而,馬鈴薯病害種類多,葉片、莖、塊莖等部位均有病害癥狀,病害除本研究列出的早疫病、晚疫病、灰霉病,還包括炭疽病、小葉病、青枯病、葉斑病、病毒病,塊莖部位還有癌腫、根腐、黑痣、瘡痂病等,隨著病害種類增加,在算法測試中筆者發(fā)現(xiàn)存在如下問題。
首先,K-SVD算法學(xué)習(xí)字典結(jié)構(gòu)性不強(qiáng)[19],冗余度較高,原子之間的相關(guān)性較高,隨著病害種類增多,不同字典間的相關(guān)性也會增加,導(dǎo)致重構(gòu)誤差區(qū)分度有所下降。針對這一問題,筆者正在嘗試采用改進(jìn)的K-SVD算法降低重構(gòu)字典原子之間以及不同字典之間的相關(guān)性[20],提高不同字典重構(gòu)誤差的區(qū)分度,改善分類效果。
其次,本研究提出的分類算法,計(jì)算時(shí)間集中在樣本重構(gòu)運(yùn)算,由于測試樣本需要同每一個(gè)原子進(jìn)行重構(gòu),導(dǎo)致計(jì)算時(shí)間隨字典數(shù)量增加而線性增長,雖然在本研究中對時(shí)效性要求較低,但大大限制了該算法在大數(shù)據(jù)集分類中的應(yīng)用。針對這一問題,筆者正開展構(gòu)建單個(gè)低相關(guān)性綜合字典的研究,利用重構(gòu)系數(shù)的差異進(jìn)行分類識別。
參考文獻(xiàn):
[1] Donoho D L.Compressed sensing [J].IEEE Transactions on Information Theory,2006,52(4):1289-1306.
[2] Candes E J,Tao T.Near optimal signal recovery from random projections: Universal encoding strategies[J].IEEE Transactions on Information Theory,2006,52(12):5406-5425.
[3] Wright J,Yang A Y,Ganesh A,etal.Robust face recognition via sparse representation[J].Pattern Analysis and Machine Intelligence,2009,31(2):210-227.
[4] Li C G,Guo J,Zhang H G.Local sparse representation based classification [C]//The 20th international conference on pattern recognition.Istanbul:IEEE,2010:649-652.
[5] 陳才扣,喻以明,史俊.一種快速的基于稀疏表示分類器[J].南京大學(xué)學(xué)報(bào)(自然科學(xué)版),2012,48(1):70-76.
[6] 練秋生,石保順,陳書貞.字典學(xué)習(xí)模型、算法及其應(yīng)用研究進(jìn)展[J].自動(dòng)化學(xué)報(bào),2015,41(2):240-260.
[7] 練秋生,韓冬梅.基于卷積稀疏編碼和K-SVD聯(lián)合字典的稀疏表示[J].系統(tǒng)工程與電子技術(shù),2012,34(7):1493-1498.
[8] 韓安太,郭小華,廖忠,等.基于壓縮感知理論的農(nóng)業(yè)害蟲分類方法[J].農(nóng)業(yè)工程學(xué)報(bào),2011,27(6):203-207.
[9] 李超,張怡卓,劉思佳,等.基于PSO優(yōu)選特征的實(shí)木板材缺陷的壓縮感知分選方法[J].北京林業(yè)大學(xué)學(xué)報(bào),2015,37(7):117-122.
[10] Olshausen B A,Field D J.Emergency of simple-cell receptive field properties by learning a sparse code for natural images[J].Nature,1996,6583(381):607-609.
[11] Engan K,Aase S O,Husoy J H.Method of optimal directions for frame design [C]// Proceedings of the 1999 IEEE international conference on acoustics,speech,and signal processing. Phoenix AZ:IEEE,1999:2443-2446.
[12] Aharon M,Elad M,Bruckstein A M.The K-SVD: An algorithm for designing of overcomplete dictionaries for sparse representation[J].IEEE Transactions on Signal Processing,2006,54(11):4311-4322.
[13] Tropp J A,Gilbert A C.Signal recovery from random measurements via orthogonal matching pursuit[J].IEEE Transactions on Information Theory,2007,53(12):4655-4666.
[14] 張善文,孔韋韋,王震.基于稀疏表示字典學(xué)習(xí)的植物分類方法[J].浙江農(nóng)業(yè)學(xué)報(bào),2017,29(2):338-344.
[15] Mallat S,Zhang Z.Matching pursuits with time-frequency dictionaries[J].IEEE Transactions on Signal Processing,1993,41(12):3397-3415.
[16] Gorodnitsky I F,Rao B D.Sparse signal reconstruction from limited data using FOCUSS:A re-weighted minimum norm algorithm[J].IEEE Transactions on Signal Processing,1997,45(3):600-616.
[17] 楊鵬,閆飛,張勝輝,等.基于FOCUSS算法的稀疏陣列綜合[J].電子科技大學(xué)學(xué)報(bào),2014,43(2):203-206.
[18] 趙知?jiǎng)?張鵬,王海泉,等.基于OMP算法的寬帶頻譜感知[J].信號處理,2012,28(5):723-728.
[19] 何小衛(wèi),張莉.基于稀疏表示的圖像分類字典學(xué)習(xí)[J].浙江師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2015,38(4):402-409.
[20] Ramirez I,Sprechmann P,Sapiro G.Classification and clustering via dictionary learning with structured incoherence and shared features[C]//Proceedings of the 2010 IEEE conference on computer vision and pattern recognition.San Francisco,USA:IEEE,2010:3501-3508.