劉景賀 任彥彪 薛巖 郭曉麗 徐龍 夏菲 郜園園
關(guān)鍵詞:花卉識(shí)別;ResNet152;AlexNet;MobileNet_v3;界面操作
0 引言
花卉的作用涉及藥用,觀賞,凈化空氣,經(jīng)濟(jì)生產(chǎn)等多方面,花卉種類識(shí)別的研究與探索具有重要意義。例如,在花卉農(nóng)業(yè)領(lǐng)域,人們經(jīng)常需要對(duì)花卉種類進(jìn)行分類處理,常見的花卉分類方法依照其外部形態(tài)、生長特性、觀賞部位、栽培方式等方面進(jìn)行區(qū)分。
傳統(tǒng)的花卉識(shí)別方法將花卉圖像進(jìn)行圖像分割,利用其他手段將特征部位摳除。首先,它過于依賴花卉的分割效果。其次,它在很大程度上依賴于人機(jī)交互。因而需要消耗大量的人力物力,且無法做到快速檢測和準(zhǔn)確檢測。近年來,隨著機(jī)器學(xué)習(xí)的發(fā)展,人們對(duì)花卉識(shí)別技術(shù)進(jìn)行進(jìn)一步的研究與探索。在圖像分割技術(shù)上,Saitoh等人[1]提出一種能自動(dòng)進(jìn)行花卉圖片分割的技術(shù)。有效地解決了先驗(yàn)色彩信息問題,但限制了花卉在圖中的位置,需要人工矯正。Chai等人[2]提出了一種花卉圖像聯(lián)合分割算法,取得了較好的分割效果。在花卉分類技術(shù)上,Lee等人[3]提出一種花卉分類技術(shù),對(duì)花卉色彩和形狀有較好的提取效果。
近年來,基于卷積神經(jīng)網(wǎng)絡(luò)(Convolutional NeuralNetwork)的花卉識(shí)別方法得到發(fā)展。在卷積網(wǎng)絡(luò)中,避免了傳統(tǒng)識(shí)別算法中的復(fù)雜的特征提取和數(shù)據(jù)重建過程[4],取得了較好成果。AlexNet網(wǎng)絡(luò)是卷積神經(jīng)網(wǎng)絡(luò)中的一種經(jīng)典網(wǎng)絡(luò)。2012年,Krizhevsky 等人[5]提出的深度網(wǎng)絡(luò)結(jié)構(gòu)AlexNet,在圖像分類中取得了很大突破。AlexNet獲得了2012 年大規(guī)模視覺識(shí)別挑戰(zhàn)賽(ImageNetLarge Scale Visual Recogition Challenge,ILSVRC)的冠軍,并且引發(fā)了研究深度網(wǎng)絡(luò)結(jié)構(gòu)的熱潮。2018年,王爽[6]利用AlexNet 進(jìn)行遷移學(xué)習(xí)進(jìn)行花卉分類,正確率達(dá)到90.85%,之后對(duì)花卉數(shù)據(jù)庫繼續(xù)迭代訓(xùn)練并進(jìn)行網(wǎng)絡(luò)微調(diào),正確率達(dá)到94.37%。在2016 年,He 提出殘差網(wǎng)絡(luò)( Residual Network,ResNet)[7],一種深層卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),在模型深度加大時(shí),用于解決網(wǎng)絡(luò)退化現(xiàn)象,可以提升網(wǎng)絡(luò)深度。2020年,袁晨暉[8]提出基于改進(jìn)ResNet 的深度遷移學(xué)習(xí)方法,通過模型遷移和深度特征抽取,減小了數(shù)據(jù)集間內(nèi)容差異對(duì)遷移學(xué)習(xí)特征識(shí)別力的影響。在MNIST 和CIFAR-10 數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),準(zhǔn)確率分別達(dá)到97.98%和90.45%。
本文重點(diǎn)研究ResNet、MobileNet V3、AlexNet 三種模型的分類效果,提出一種基于ResNet152的準(zhǔn)確快速識(shí)別花卉種類的分類方法。
1 數(shù)據(jù)集介紹
實(shí)驗(yàn)中采用的花卉數(shù)據(jù)集大小為47 770,共24個(gè)花卉種類,分別是鬼針草、桔梗,石龍芮、全葉馬蘭、婆婆納、三葉草、旋覆花、繡球小冠花、狗尾草、一年蓬、劍葉金雞菊、濱菊、射干、三角梅、馬鞭草、油菜花、蒲公英、兩色金雞菊、全緣金光菊、藍(lán)薊、曼陀羅、諸葛菜、千屈菜、狼尾草。其中石龍芮樣本個(gè)數(shù)為1 770,其他樣本數(shù)均為2 000。按照8∶2的比例劃分訓(xùn)練集和測試集,通過測試集來驗(yàn)證模型的準(zhǔn)確度。如圖1 所示。
2模型搭建
傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)易出現(xiàn)梯度消失或退化問題。為解決這兩個(gè)問題,2015年微軟實(shí)驗(yàn)室提出了Resnet網(wǎng)絡(luò)。該網(wǎng)絡(luò)采用residual結(jié)構(gòu)(殘差結(jié)構(gòu)),搭建超過1 000層的網(wǎng)絡(luò)結(jié)構(gòu),丟棄dropout,使用了Batch Normalization進(jìn)行加速訓(xùn)練。ResNet152中使用的殘差結(jié)構(gòu)如圖2所示。
該殘差結(jié)構(gòu)能夠減少參數(shù)量和運(yùn)算量,在該殘差結(jié)構(gòu)當(dāng)中,主分支使用了三個(gè)卷積層,分別是1×1,3×3,1×1。第一個(gè)1x1的卷積層用來壓縮channel維度,第二個(gè)1x1的卷積層用來還原channel維度。
(1) 輸入層是尺寸為224×224×3的待識(shí)別的花卉圖片。
(2) conv1是7×7的卷積層,步長為2,輸出大小為112×112。
(3) conv2_x是3×3的最大池化下采樣操作,步長為2,使用了3層殘差層,3層卷積層,分別是1×1,3×3,1×1。輸出大小為56×56。
(4) conv3_x,使用了8層殘差層,3層卷積層,分別是1×1,3×3,1×1。輸出大小為28×28。
(5) conv4_x,使用了36層殘差層,3層卷積層,分別是1×1,3×3,1×1。輸出大小為14×14。
(6) conv5_x,使用了3層殘差層,3層卷積層,分別是1×1,3×3,1×1。輸出大小為14×14。
(7) 最后是平均池化下采樣操作和全連接層??梢酝ㄟ^使用softmax函數(shù)來確定,它是一個(gè)對(duì)于輸入和節(jié)點(diǎn)進(jìn)行激活的函數(shù),它可以將24種輸出值轉(zhuǎn)換為范圍在[0,1]的概率分布,從而進(jìn)行分類。
3 AlexNet,MobileNet_V3,ResNet152,網(wǎng)絡(luò)模型的性能指標(biāo)對(duì)比
AlexNet,MobileNet_V3,ResNet152,網(wǎng)絡(luò)訓(xùn)練過程的曲線圖如圖3、圖4、圖5所示,熱力圖如圖6所示。當(dāng)epochs達(dá)到15時(shí),三個(gè)網(wǎng)絡(luò)的Training Accuracy曲線均趨于飽和。當(dāng)epochs達(dá)到5時(shí),Validation Accura?cy曲線便開始在0.95附近上下波動(dòng);Training Accuracy 曲線和Validation Accuracy曲線在epochs由0到30的過程中變化均低緩。當(dāng)epochs 達(dá)到10 時(shí),Trainingloss曲線趨于飽和,在epochs由10到30的過程中變化低緩,稍微有向下變化的趨勢。Validation loss曲線在epochs由0變化到30的過程中先下降后上升,然后波動(dòng),最終在0.22附近徘徊。盡管三種模型的四條曲線變化趨勢并不明顯,但Resnet152的Validation loss曲線波動(dòng)更為低緩,平滑。
分別對(duì)模型的收斂速度、模型效率、模型精度、召回率、模型分?jǐn)?shù)進(jìn)行分析。
3.1 收斂速度
是否收斂是評(píng)價(jià)一個(gè)網(wǎng)絡(luò)模型好壞的重要指標(biāo),三個(gè)網(wǎng)絡(luò)模型均未出現(xiàn)收斂抖動(dòng)現(xiàn)象,最終都會(huì)收斂,其中ResNet152的收斂速度最快,在Epochs達(dá)到13 時(shí),能夠呈現(xiàn)穩(wěn)定的收斂狀態(tài)。比另外兩個(gè)模型要快2個(gè)epochs。同樣收斂的情況下,收斂速度越快說明網(wǎng)絡(luò)模型越好。
3.2 模型大小
網(wǎng)絡(luò)模型的大小決定著是否有利于后期的小程序或者App開發(fā),網(wǎng)絡(luò)模型所占的內(nèi)存越小越有利于后期的開發(fā)。三個(gè)網(wǎng)絡(luò)模型的大小均為9475KB,適合在移動(dòng)端進(jìn)行進(jìn)一步開發(fā)使用。
3.3 模型效率
模型的效率事關(guān)后期開發(fā)的小程序或者app的識(shí)別速度,效率越高,識(shí)別速度越快,越有利于提升用戶的體驗(yàn)感。識(shí)別速度由快到慢的排列順序分別為:MobileNet_V3>ResNet152>AlexNet,MobileNet_V3 識(shí)別每張圖片所需時(shí)間最短,僅需0.17 s便可識(shí)別一張圖片,Resnet152識(shí)別一張圖片的速度為0.18秒。
4 界面化
4.1實(shí)現(xiàn)環(huán)境
實(shí)現(xiàn)環(huán)境基于深度學(xué)習(xí)框架TensorFlower2.3 ;硬件環(huán)境采用AMD Ryzen 5 4600H with Radeon Graph?ics,3.00 GHz,GPU 采用NVIDIA GeForce 顯卡,16GB 內(nèi)存,4 GB 顯存。采用Windows 10 操作系統(tǒng),Pycharm 編譯環(huán)境和Python3.7 語言,使用了pyqt5,pillow,opencv-python,matplotlib。每次試驗(yàn)運(yùn)行30 輪(epochs),采用ReLU激活函數(shù)。
4.2識(shí)別過程
加載初始圖片,將圖片的高度變成400,在界面上方便顯示,然后將圖片變成224×224的大小,因?yàn)槟P徒邮盏膮?shù)是224×224,然后將224×224的圖片轉(zhuǎn)換成數(shù)組,輸入到模型中得到結(jié)果,在界面上進(jìn)行顯示。如圖7所示,通過界面化操作進(jìn)行花卉識(shí)別。
5 結(jié)束語
對(duì)比AlexNet,MobileNet_V3,ResNet152 三個(gè)網(wǎng)絡(luò)模型的各項(xiàng)指標(biāo)以及實(shí)驗(yàn)統(tǒng)計(jì)了ResNet152對(duì)24種花卉的評(píng)估結(jié)果,突出了ResNet152的優(yōu)良性能,在今后的研究工作中,將繼續(xù)對(duì)ResNet152進(jìn)行優(yōu)化提高其性能,比如識(shí)別準(zhǔn)確率,模型效率,模型大小,模型識(shí)別速度等指標(biāo),并進(jìn)行花卉識(shí)別小程序的開發(fā),進(jìn)而做出實(shí)質(zhì)性成果。