魏秋彥
(銅仁職業技術學院 貴州 銅仁 554300)
近年來,隨著計算機視覺和深度學習領域的快速發展,圖像識別與分類在人工智能研究中扮演著重要的角色[1-2]。圖像識別與分類技術的應用范圍廣泛,其中之一是垃圾圖像分類領域[3-4]。垃圾圖像分類是一項關鍵的環境保護任務,其旨在將廢棄物按照可回收、不可回收和有害等不同類別進行準確分類,以促進可持續發展和資源回收利用。然而,傳統的垃圾圖像分類方法通常依賴于人工設計的特征和規則,其識別準確度和魯棒性有限。為了克服傳統方法的局限性,深度學習技術逐漸成為垃圾圖像分類領域的研究熱點。深度學習通過學習從原始圖像數據中提取高級特征的能力,可以更好地處理圖像分類任務。在深度學習模型中,卷積神經網絡無連接節點網絡服務(connectionless node network service,CNNs)由于出色的特征提取能力而受到廣泛關注[5-6]。
為了推動技術的發展,本文提出了一種基于稠密卷積網絡(dense convolutional network,DenseNet)深度學習網絡[7-8]的垃圾圖像分類模型。相較于傳統的卷積神經網絡結構,DenseNet能夠充分利用特征的信息,提高模型的識別性能。為了驗證基于DenseNet的垃圾圖像分類模型的有效性,本研究選擇了NWNU-TRASH數據集作為訓練和測試數據。通過在該數據集上進行實驗和評估,對比了所提出模型的性能。實驗結果顯示,基于DenseNet的垃圾圖像分類模型在NWNU-TRASH數據集上取得了顯著的效果。
DenseNet是一種深度學習架構,被廣泛應用于計算機視覺任務,如圖像分類和目標檢測。DenseNet的設計思想是通過最大程度地促進特征重用來提高網絡性能。它的主要創新是密集連接機制,使得網絡中每一層都直接與其他層相連。在傳統的卷積神經網絡中,特征從底層傳遞到頂層,需要經過多個非線性層。而在DenseNet中,每一層不僅接收前一層的輸出,還接收來自所有前面層的連接。這種密集連接的方式有效地提高了特征的流動和信息傳遞,使得網絡更容易學習到復雜的特征,如圖1所示。其中,H表示批標準化-激活函數-卷積層。

圖1 本實驗采用的五層DenseNet深度學習網絡
密集連接的方式使網絡中的每一層都可以直接訪問之前所有層的特征圖,從而增強了信息流動和特征傳遞的能力。密集連接可表示為式(1):
xk=Hk({x0,x1,…,xk-1})
(1)
式(1)中,xk表示第k層的輸出,Hk表示第k層的非線性變換函數,{x0,x1,…,xk-1}表示前面所有層的輸出。
DenseNet由多個密集塊和過渡層交替組成。每個密集塊由多個卷積層組成,且每個卷積層的輸入都是前面所有層的輸出的串聯。過渡層用于控制網絡的維度,減少特征圖的大小和數量,從而降低計算復雜度。
密集塊由多個卷積層組成,可以表示為式(2)、式(3):
x0=inputfeature
(2)
xk=Hk({x0,x1,…,xk-1}),for1≤k≤L
(3)
式(2)、式(3)中,L是密集塊中的卷積層數量。過渡層可以表示為式(4)、式(5):
x'=transition(x,Θ)=BN(Conv(1×1)(x))
(4)
x''=avgpool(x'),fork≤L
(5)
式(4)、式(5)中,x是輸入特征圖,x'是經過過渡層的輸出,x''是經過平均池化的輸出,Conv(1×1)表示1×1卷積操作,avgpool表示平均池化操作,BN表示批歸一化操作。
該模型通過預訓練和參數微調的方式實現了對垃圾圖片分類任務的高效解決,如圖2所示。首先利用ImageNet對模型進行預訓練;其次將預訓練的參數遷移至DenseNet模型中,以利用其密集連接和多個密集塊的優勢;再次通過NWNU-TRASH數據集對模型進行參數微調,以適應具體的垃圾圖像分類任務;最后,模型根據輸入圖像的特征進行垃圾類別的預測輸出。具體為:

圖2 基于DenseNet深度學習網絡的遷移學習框架
(1)預訓練
在模型的第一階段,使用ImageNet數據集[9-10]對網絡進行預訓練。通過在ImageNet數據集上進行預訓練,模型可以學習到豐富的圖像特征。
(2)模型遷移
在預訓練完成后,將預訓練的參數遷移至DenseNet模型中。DenseNet深度學習網絡結構具有密集連接和多個密集塊的特點,可以充分利用圖像特征的信息。通過遷移預訓練參數,模型可以快速適應垃圾圖像分類任務,并具備較好的初始性能。
(3)參數微調
在模型遷移后,使用NWNU-TRASH數據集對模型進行參數微調。NWNU-TRASH數據集是用于垃圾圖像分類任務的數據集,其中包含了多個垃圾類別的圖像樣本。通過將該數據集輸入模型進行訓練,可以進一步調整模型參數以適應特定的垃圾圖像分類任務。
(4)垃圾圖像分類輸出
經過參數微調后,模型可以根據輸入的圖像樣本預測其所屬的垃圾類別。通過對模型最后一層的輸出進行softmax激活。根據最高概率值所對應的類別,即可確定圖像樣本所屬的垃圾類別。對于給定的向量x=(x1,x2,…,xk),softmax函數將每個元素映射到[0, 1]區間內,并使得所有元素的和等于1,其定義為式(6)所示:
(6)
式(6)中,e是自然對數的底數,約等于2.718 28。
NWNU-TRASH圖像數據集是用于垃圾圖像分類任務的一個常用數據集,旨在提供一個豐富多樣的垃圾圖像樣本集合,以用于垃圾圖像分類算法的評估和性能測試,部分圖像如圖3所示。該數據集包含了共計42 580張圖像樣本,涵蓋了40個不同的垃圾類別。每個垃圾類別都有一定數量的圖像樣本,使得數據集具有較為均衡的類別分布。其圖像樣本涵蓋了多種類型的垃圾,包括紙類、塑料類、玻璃類、金屬類、電子廢物等,每個圖像樣本都配有詳細的標注信息,包括圖像所屬的垃圾類別。這些標注信息可以用于訓練和評估垃圾圖像分類算法的準確性和效果。
使用NWNU-TRASH數據集訓練和測試基于DenseNet的垃圾圖像分類網絡的方法包括數據預處理、模型初始化和參數遷移、參數微調、模型評估和測試。
(1)數據預處理。首先對NWNU-TRASH數據集進行預處理(部分數據示例如表1所示)。其次包括圖像的加載和調整大小,以使其適應網絡的輸入要求。本實驗將圖像調整為統一的尺寸,224×224像素。

表1 評估結果
(2)模型初始化和參數遷移。將DenseNet模型的參數進行初始化,并從預訓練的ImageNet模型中遷移參數。通過這種方式,模型從ImageNet數據集中學習到的通用圖像特征可以在垃圾圖像分類任務中得到重用,從而加快模型的訓練收斂和提高初始性能。
(3)參數微調。在模型初始化和參數遷移后,使用NWNU-TRASH數據集對模型進行參數微調。
(4)模型評估和測試。使用NWNU-TRASH數據集中的測試集對模型進行評估和測試,并用準確率、精確度、召回率、F1值等指標來量化模型性能。這些指標可以衡量模型在垃圾圖像分類任務中的分類準確性和效果。
本實驗使用準確率、精確度和F1值對模型進行測試評估,并對比了所提架構與CNNs的實驗結果,如表1所示。
表1顯示了基于準確率、精確度和F1值評估CNNs和DenseNet架構在不同類別以及整體平均值上的測試結果。
在該數據集上,CNNs和本模型的平均準確率分別為0.84和0.86;平均精確度分別為0.86和0.87,表示模型在預測為正確類別的樣本中有將近90%是真正的正類別。在F1值方面,CNNs和本模型的平均值分別達到了0.83和0.86。總之,基于準確率、精確度、召回率和F1值的評估結果表明,CNNs和該基于DenseNet的垃圾圖像分類模型在NWNU-TRASH數據集上取得了較好的分類效果,并且所提模型的綜合性能顯著優于卷積神經網絡,如圖4所示。

圖4 CNNs和DenseNet架構在準確率、精確度和F1值的平均值對比
綜上所述,本文基于DenseNet深度學習網絡結構設計了一種垃圾圖像分類模型,并用NWPU-TRASH圖像數據集進行了驗證。在該過程中,預訓練和參數遷移提高了模型的初始性能和訓練收斂速度。參數微調過程進一步優化了模型,使其在NWPU-TRASH圖像數據集上取得了較高的準確率、精確度和召回率。這表明所提出的垃圾圖像分類模型在實際應用中具有潛力,并為垃圾圖像分類領域的研究和實踐提供了有價值的參考。本文提出的基于DenseNet的垃圾圖像分類模型在NWPU-TRASH圖像數據集上取得了良好效果。未來,可以從探索其他網絡結構或優化算法等方面進行研究,以提高垃圾圖像分類模型的性能和泛化能力。此外,可以考慮將該模型應用于實際垃圾圖像分類場景,并對其在不同環境和數據集上的適應性進行進一步研究。