閔宇航
(成都理工大學(xué),四川 成都610059)
綠蘿(Scindapsus aureus)是重要的室內(nèi)觀葉植物,易于栽培與造型,它可以凈化空氣,同時(shí)提高環(huán)境觀賞性。綠蘿性喜高溫和有明亮散射光的環(huán)境,其耐蔭性強(qiáng),怕強(qiáng)光直射,不耐寒冷[1]。綠蘿病變常見為葉片發(fā)黃、根莖稀疏等,及早發(fā)現(xiàn)并加以養(yǎng)護(hù),對(duì)于綠蘿的生長尤為重要,但大規(guī)模的綠蘿狀態(tài)識(shí)別效率仍受限于人工識(shí)別的低效。
隨著計(jì)算機(jī)硬件技術(shù)的高速發(fā)展,計(jì)算機(jī)的運(yùn)算速度隨之提高,這為計(jì)算機(jī)視覺技術(shù)的發(fā)展提供了全新的硬件基礎(chǔ)。在此基礎(chǔ)上,結(jié)合深度學(xué)習(xí)的計(jì)算機(jī)圖像處理技術(shù)不斷發(fā)展,深度學(xué)習(xí)中的卷積神經(jīng)網(wǎng)絡(luò)模型(CNN)由最初的LeNet 模型,經(jīng)由VGGNet、GoogleNet,逐漸成熟發(fā)展到ResNet[2],模型結(jié)構(gòu)逐漸優(yōu)化,部分識(shí)別效果已媲美人工,同時(shí)還有人工無法企及的識(shí)別效率。
因此,本文采用深度參差網(wǎng)絡(luò)ResNet-50 模型,對(duì)綠蘿樣本進(jìn)行訓(xùn)練學(xué)習(xí),并實(shí)現(xiàn)對(duì)三種不同狀態(tài)(正常狀態(tài)、需養(yǎng)護(hù)、需更換)綠蘿的識(shí)別分類。
首先,實(shí)驗(yàn)所采用的數(shù)據(jù)來源為相機(jī)拍攝(實(shí)物拍攝和網(wǎng)絡(luò)爬?。┑牟煌瑺顟B(tài)的綠蘿圖片,拍攝角度主要為正視和俯視角度,圖片內(nèi)容確保綠蘿的葉片或根系能夠清晰展示。結(jié)合綠蘿實(shí)際生長狀態(tài),設(shè)定以下三種綠蘿狀態(tài):
正常狀態(tài):葉片全綠,葉片數(shù)量較多,土壤裸漏較少;
需養(yǎng)護(hù):出現(xiàn)黃葉且數(shù)量較少,土壤裸漏較少;
需更換:有大面積黃葉或存在葉片腐爛發(fā)黑情況,或葉片數(shù)量過少,土壤裸露情況嚴(yán)重,或葉片失水嚴(yán)重,出現(xiàn)葉片大面積皺縮。
接著將數(shù)據(jù)集中90%的圖片作為訓(xùn)練樣本,剩余圖片供測試使用。同時(shí),對(duì)綠蘿圖片進(jìn)行了標(biāo)注、翻轉(zhuǎn)、旋轉(zhuǎn)等預(yù)操作,以增強(qiáng)圖片的泛化能力。并且,為網(wǎng)絡(luò)結(jié)構(gòu)加入了存盤功能,可記錄和載入最佳模型結(jié)果。
在收集網(wǎng)絡(luò)模型訓(xùn)練及測試所需圖片時(shí),首先確定圖片標(biāo)準(zhǔn),要求清晰展示綠蘿的葉片或根莖的狀態(tài),并減少背景噪聲干擾。因此選擇光線條件較明亮、背景較干凈的取景環(huán)境。同時(shí),由于ResNet-50 模型的結(jié)構(gòu)特性,隨著網(wǎng)絡(luò)深度的逐漸提高,為適應(yīng)模型的復(fù)雜程度,訓(xùn)練所需樣本量也隨之增加,樣本量的不足可能會(huì)導(dǎo)致訓(xùn)練結(jié)果的過擬合,影響模型預(yù)測的正確率。[3]因此,對(duì)部分圖片中的綠蘿植株,變換拍攝角度以實(shí)現(xiàn)數(shù)據(jù)集的擴(kuò)充,設(shè)計(jì)滿足網(wǎng)絡(luò)模型所需的訓(xùn)練樣本集。
針對(duì)現(xiàn)有的綠蘿圖片,存在著背景噪聲干擾等問題,所以本文使用了LabelMe 這一圖片標(biāo)注工具,采用矩形框的形式,對(duì)訓(xùn)練集中的每張圖片手工標(biāo)注葉片及根部,確定其所屬類別(圖1)。同時(shí),將圖片的大小統(tǒng)一設(shè)為518X346 像素,并且進(jìn)行隨機(jī)90 度旋轉(zhuǎn)、水平翻轉(zhuǎn)、垂直翻轉(zhuǎn)。
圖1 三種不同分類的綠蘿
自AlexNet 之后,卷積神經(jīng)網(wǎng)絡(luò)不斷加深,訓(xùn)練誤差卻沒有隨之不斷減小。這是由于反向傳播的梯度計(jì)算是在上一層基礎(chǔ)上進(jìn)行的,網(wǎng)絡(luò)深度加深會(huì)使梯度復(fù)乘,使梯度在多層反向傳播時(shí)越來越小,最終梯度消失。這導(dǎo)致深層網(wǎng)絡(luò)后面會(huì)出現(xiàn)很多冗余層,模型會(huì)退化為一個(gè)淺層網(wǎng)絡(luò),準(zhǔn)確率也會(huì)到達(dá)瓶頸。[2-4]
ResNet 為解決這一問題而生。它在傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)中加入殘差學(xué)習(xí)(Residual Learning)的思想,在網(wǎng)絡(luò)結(jié)構(gòu)中加入了殘差單元(Residual Unit)。殘差單元在輸入和輸出之間建立了一條直接的快捷通道,實(shí)現(xiàn)了輸出與輸入相同的恒等映射層。借此,ResNet 解決了深層網(wǎng)絡(luò)中梯度彌散和精度下降的問題,既保證了訓(xùn)練精度,又控制了訓(xùn)練速度。[5]
圖2 resnet-50 模型結(jié)構(gòu)
本文采用的ResNet-50 模型包含了50 層網(wǎng)絡(luò)。模型最開始有一個(gè)單獨(dú)的卷積層,隨后有四組block,每組里面分別是3、4、6、3 個(gè)block、每個(gè)block 里面有三層網(wǎng)絡(luò),這些層負(fù)責(zé)對(duì)圖像進(jìn)行卷積操作、提取圖像特征以及充當(dāng)恒等映射層。最后單獨(dú)的全連接層,使用SoftMax 激活函數(shù),將卷積之后的結(jié)果類別數(shù),降低到規(guī)定的類別數(shù)。
本文采用的ResNet-50 模型,其結(jié)構(gòu)如圖2。
3.2.1 對(duì)輸入的圖像進(jìn)行邊緣3X3 的零填充。
3.2.2 在階段一,使用64 個(gè)長寬規(guī)模為7X7 的過濾器來進(jìn)行二維卷積操作;然后使用批量歸一化對(duì)輸入的數(shù)據(jù)進(jìn)行正則化處理,接著使用規(guī)模為3X3 的窗口來進(jìn)行最大池化。
3.2.3 從階段二到階段五,卷積殘差塊和與它相連的恒等殘差塊,分別使用三個(gè)不同規(guī)模的濾波器,對(duì)圖像進(jìn)行特征提取,改變輸出通道數(shù)。
3.2.4 使用規(guī)模為2X2 的窗口來進(jìn)行二維平均池化,并在全連接層使用SoftMax 激活函數(shù)來將數(shù)據(jù)降低到規(guī)定的三個(gè)類別。
實(shí)際的訓(xùn)練過程中,本文選擇了Rectified Adam (RAdam)這一優(yōu)化器。這是一種機(jī)器學(xué)習(xí)模型優(yōu)化器,它實(shí)現(xiàn)了自適應(yīng)學(xué)習(xí)率,既具備隨機(jī)梯度下降(SGD)方法的優(yōu)勢(shì),又實(shí)現(xiàn)了Adam快速收斂的優(yōu)點(diǎn),令模型收斂至質(zhì)量更高的結(jié)果[6]。
圖3 網(wǎng)絡(luò)誤差及測試正確率
經(jīng)過90 輪的訓(xùn)練以后,網(wǎng)絡(luò)的誤差已降低至0.04 附近,而測試的正確率已穩(wěn)定在97%以上(如圖3)。從測試結(jié)果可以看出,網(wǎng)絡(luò)對(duì)于給定樣本識(shí)別效果良好。得益于ResNet-50 模型結(jié)構(gòu)的優(yōu)化,網(wǎng)絡(luò)層數(shù)加深的同時(shí)訓(xùn)練精度不斷提高;RAdam 優(yōu)化器的作用下模型收斂質(zhì)量更高,訓(xùn)練時(shí)間也大為縮減,如圖3。
本文采用深度殘差網(wǎng)絡(luò)ResNet-50 模型,選擇較為高效的RAdam 模型優(yōu)化器,合理設(shè)計(jì)和處理訓(xùn)練數(shù)據(jù)集,在較短訓(xùn)練時(shí)間和合理的硬件資源條件下,實(shí)現(xiàn)了對(duì)綠蘿不同生長狀態(tài)的有效識(shí)別。經(jīng)過測試集測試,識(shí)別正確率能達(dá)到97%以上。這有助于綠蘿養(yǎng)殖狀態(tài)的監(jiān)督工作,對(duì)于綠蘿養(yǎng)殖行業(yè)有輔助意義,對(duì)于其他綠植養(yǎng)護(hù)也有參考價(jià)值。
但需指出,由于人工收集樣本有限,實(shí)際情況中綠蘿的生長狀態(tài)更為復(fù)雜,機(jī)器識(shí)別的場景也更為豐富,因此模型的適應(yīng)性會(huì)有所降低。收集更具廣泛性的樣本來不斷優(yōu)化網(wǎng)絡(luò)模型,這將是本文研究此后需要做的工作。