劉朝輝 王維高
摘要:人工智能的發(fā)展給人們的日常生活以及社會發(fā)展帶來了極大的便利,無人超市的出現(xiàn)要求對目標(biāo)識別進(jìn)行深入研究。該系統(tǒng)采用深度學(xué)習(xí)理論以及TensorFlow 學(xué)習(xí)框架來實現(xiàn)水果識別。利用卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練數(shù)據(jù)集,得出各類水果的代表性特征,從而準(zhǔn)確進(jìn)行水果識別。
關(guān)鍵詞:水果識別;TensorFlow;卷積神經(jīng)網(wǎng)絡(luò)
中圖分類號: TP18? ? ? 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2021)03-0190-02
Abstract:The development of artificial intelligence has brought a lot of convenience to people's daily life and social development. The emergence of unmanned supermarket requires in-depth research on target recognition. This system adopts deep learning theory and TensorFlow learning framework to realize fruit recognition, and uses convolutional neural network training data set to obtain the representative characteristics of all kinds of fruits, so as to accurately carry out fruit recognition.
Key words:fruit recognition; TensorFlow; Convolutional neural network
隨著人工智能的發(fā)展,智能化服務(wù)在零售、醫(yī)療、食品等行業(yè)得到了廣泛應(yīng)用,如支付寶的刷臉支付、無人超市、無人智能停車場等。機器視覺與深度學(xué)習(xí)研究幫助人工智能取得了大幅進(jìn)步。機器視覺賦予機器模仿人類視覺自動完成信息處理能力,深度學(xué)習(xí)給予機器學(xué)習(xí)能力,兩者有機結(jié)合起來能夠很好地代替人類完成對目標(biāo)對象的分類及辨識任務(wù)。日常生活中,水果提供人體必需的營養(yǎng)素,在人們飲食結(jié)構(gòu)中不可或缺。若在銷售過程中,實現(xiàn)水果種類的自動分類,會為人們生活提供不小的便利,有助于無人超市的發(fā)展。本文主要研究基于深度學(xué)習(xí)的水果識別算法,通過卷積神經(jīng)網(wǎng)絡(luò)提取訓(xùn)練更加抽象的特征,完成水果的分類識別,降低了特征提取的難度,識別率也有所提高。
1 傳統(tǒng)圖像識別
傳統(tǒng)圖像識別技術(shù)的步驟可分為:數(shù)據(jù)采集,數(shù)據(jù)預(yù)處理,特征提取,特征匹配四步。傳統(tǒng)圖像特征提取主要取決于人為設(shè)計的提取器,這一步要有相關(guān)的專業(yè)知識配合,而且每個方法都是應(yīng)用于不同領(lǐng)域,泛化能力及魯棒性不高。所以,傳統(tǒng)圖像識別技術(shù)對解決某些特定場景的、可人工定義、設(shè)計、理解的圖像任務(wù)具有不錯的效果。
2 卷積神經(jīng)網(wǎng)絡(luò)
最近幾年里,卷積神經(jīng)網(wǎng)絡(luò)(CNN)得到巨大的發(fā)展,這項技術(shù)的進(jìn)步徹底地改變了計算機視覺領(lǐng)域,也推動了計算機視覺領(lǐng)域的前進(jìn)。卷積神經(jīng)網(wǎng)絡(luò)能取得巨大成功離不開其所采取的局部連接和共享權(quán)值的方法,不僅降低了權(quán)值的數(shù)目使得網(wǎng)絡(luò)易于優(yōu)化,也對減少過擬合現(xiàn)象有著出色的表現(xiàn)。在輸入的圖像是多維圖像時,此種優(yōu)勢尤其顯著,這樣圖像就能夠直接成為網(wǎng)絡(luò)的輸入,舍去了傳統(tǒng)圖像識別需要龐雜的特征提取和數(shù)據(jù)重建的步驟。和傳統(tǒng)的圖象識別技術(shù)相比,卷積神經(jīng)網(wǎng)絡(luò)具有如下優(yōu)點:具有不俗的容錯率、杰出的并行處理能力以及強大的自學(xué)能力,面臨環(huán)境信息龐雜,背景知識不明,推理規(guī)則不清晰這些情況下的問題時,容許樣品有較大的缺損、畸變,運行速度快,自適應(yīng)性能好,具備優(yōu)異的分辨率。憑借泛化能力優(yōu)異這一特點,卷積神經(jīng)網(wǎng)絡(luò)在物品分類,目標(biāo)檢測,目標(biāo)識別等領(lǐng)域都被廣泛應(yīng)用。
卷積神經(jīng)網(wǎng)絡(luò)通常包括如下幾部分:1)卷積層:卷積層是經(jīng)由卷積操作對輸入圖像進(jìn)行降維和特征提取;2)池化層:池化層的作用是縮小模型提高計算速度,降低過擬合概率提高魯棒性,池化層通常在卷積層后邊,“池化”的是卷積層的輸出;3)激活函數(shù):激活函數(shù)在所有神經(jīng)網(wǎng)絡(luò)中都起著至關(guān)重要的作用,它將非線性因素引入網(wǎng)絡(luò)以解決線性模型表達(dá)能力不足的缺陷;4)全連接層:全連接層可以將局部特征經(jīng)由權(quán)值矩陣連接成完整的圖。
3 TensorFlow基本原理
目前使用率最高的機器學(xué)習(xí)框架當(dāng)屬TensorFlow。它是一個開源的、基于 Python 的機器學(xué)習(xí)框架,它由谷歌開發(fā),并在圖形分類、音頻處理、推薦系統(tǒng)和自然語言處理等場景下有著豐富的應(yīng)用。TensorFlow 允許將深度神經(jīng)網(wǎng)絡(luò)的計算部署到任意數(shù)量的 CPU 或 GPU 的服務(wù)器、PC 或移動設(shè)備上,且只利用一個 TensorFlow API[1]。
TensorFlow 是一個使用數(shù)據(jù)流圖 (data flow graphs) 用于數(shù)值計算的開源軟件庫。數(shù)據(jù)流圖是是一個有向圖,使用節(jié)點(一般用圓形或者方形描述,表示一個數(shù)學(xué)操作或者數(shù)據(jù)輸入的起點和數(shù)據(jù)輸出的終點)和線(表示數(shù)字、矩陣或者 Tensor 張量)來描述數(shù)學(xué)計算。數(shù)據(jù)流圖可以方便地將各個節(jié)點分配到不同的計算設(shè)備上完成異步并行計算,非常適合大規(guī)模的機器學(xué)習(xí)應(yīng)用。
4 系統(tǒng)設(shè)計與分析
4.1 系統(tǒng)設(shè)計流程
本文研究的是對各類水果的圖片進(jìn)行必要的圖像處理后,利用卷積神經(jīng)網(wǎng)絡(luò)技術(shù),完成對不同水果的分類以及準(zhǔn)確的識別,整個水果識別系統(tǒng)將分為以下幾步:
1) 數(shù)據(jù)采集
本次實驗的數(shù)據(jù)集來源于Kaggle,共70多類水果,共約3萬張圖片,如圖1所示。
2) 數(shù)據(jù)預(yù)處理
數(shù)據(jù)預(yù)處理一般在神經(jīng)網(wǎng)絡(luò)訓(xùn)練前都必不可少,因此在搭建卷積神經(jīng)網(wǎng)絡(luò)前需要對輸入圖像進(jìn)行預(yù)處理。一般圖像預(yù)處理包括以下三個步驟:①圖像灰度化;②圖像的幾何變換即平移、旋轉(zhuǎn)、鏡像、裁剪等;③圖像增強,增強圖像中的有用信息。在本次實驗剛開始測試階段,識別準(zhǔn)確率一直達(dá)不到要求,最終發(fā)現(xiàn)在本次水果識別實驗中,對圖像的灰度化處理適得其反。因為水果的顏色是不同類水果的重要特征之一,故而在圖像預(yù)處理過程中舍去了圖像的灰度化。
3) 設(shè)計卷積神經(jīng)網(wǎng)絡(luò)模型
本次實驗選用卷積神經(jīng)網(wǎng)絡(luò)LeNet-5,激活函數(shù)選用Relu函數(shù),選用dropout和Softmax函數(shù)做分類器。
LeNet-5共7層(不包含輸入層),其中有2個卷積層,2個池化層,3個全連接層,其結(jié)構(gòu)圖如圖2所示。
本次實驗所選擇Relu函數(shù)是當(dāng)前相當(dāng)流行的一種激活函數(shù), 在面對梯度消失這個在深度學(xué)習(xí)領(lǐng)域最大的問題時,Relu函數(shù)憑借其計算速度快,收斂速度快的特點,通常被優(yōu)先推薦使用[2]。其函數(shù)公式為:[fx=max (0,x)],函數(shù)圖像如圖3所示,Softmax函數(shù)在機器學(xué)習(xí)或者深度學(xué)習(xí)中發(fā)揮著極其重要的作用。它會將輸入映射為0-1之間的實數(shù),同時歸一化保證其和為1,所以多分類的概率相加之和也就等于1。
4) 網(wǎng)絡(luò)訓(xùn)練
卷積神經(jīng)網(wǎng)絡(luò)設(shè)計完成后,即可對搭建好的卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練并將訓(xùn)練好的模型存儲,本次實驗設(shè)定的訓(xùn)練次數(shù)為5000次。
5) 讀取模型進(jìn)行測試
完成網(wǎng)絡(luò)訓(xùn)練之后,即可利用訓(xùn)練好的網(wǎng)絡(luò)模型,從測試圖片集中隨機抽取水果圖片進(jìn)行識別測試,驗證識別準(zhǔn)確率。
4.2 實驗結(jié)果與分析
在對網(wǎng)絡(luò)進(jìn)行了5000次的訓(xùn)練之后,其準(zhǔn)確率已經(jīng)達(dá)到了100%的水準(zhǔn),如圖4所示。然后對其進(jìn)行測試。實驗隨機抽取了測試數(shù)據(jù)集中的100張水果圖片進(jìn)行識別測試,結(jié)果顯示每次均能準(zhǔn)確的辨認(rèn)出水果名稱,這里只截取部分實驗數(shù)據(jù),如圖5~圖8所示。由此可見本系統(tǒng)對測試集圖片的識別準(zhǔn)確率已經(jīng)達(dá)到了100%,說明本系統(tǒng)所采用的卷積神經(jīng)網(wǎng)絡(luò)可以很好地完成學(xué)習(xí)任務(wù),準(zhǔn)確的完成水果識別。
5 結(jié)束語
人工智能技術(shù),圖像處理和計算機視覺技術(shù)的發(fā)展的愈發(fā)成熟,無人售賣超市在實際生活中也越來越常見,對水果識別的研究對現(xiàn)實生活的進(jìn)步有著很大意義。本文采用了卷積神經(jīng)網(wǎng)絡(luò)技術(shù)并對其進(jìn)行訓(xùn)練測試,對不同水果的識別有著很高的準(zhǔn)確率。該系統(tǒng)設(shè)計的完成,具有一定的實用價值,但也依賴深度學(xué)習(xí)的發(fā)展,同時也存在著不可忽略的問題,如在完成度上由于數(shù)據(jù)集不夠充分,對一些殘次水果的識別率上不夠精準(zhǔn),需要后續(xù)繼續(xù)優(yōu)化。
參考文獻(xiàn):
[1] 李慧穎,李薇,邢艷芳,等.基于TensorFlow的人臉識別系統(tǒng)設(shè)計[J].計算機時代,2020(9):61-63.
[2] 王梓桐.基于神經(jīng)網(wǎng)絡(luò)的水果識別系統(tǒng)設(shè)計[J].信息通信,2020,33(7):56-58.
[3] 楊毅.基于深度學(xué)習(xí)的水果識別研究[J].信息與電腦(理論版),2019,31(21):119-120.
[4] 曾平平,李林升.基于卷積神經(jīng)網(wǎng)絡(luò)的水果圖像分類識別研究[J].機械設(shè)計與研究,2019,35(1):23-26,34.
【通聯(lián)編輯:李雅琪】