張茹,張奮楠,周星宇,2,俞經(jīng)虎,2*
1(江南大學(xué) 機(jī)械工程學(xué)院,江蘇 無錫,214122)2(江蘇省食品先進(jìn)制造裝備技術(shù)重點(diǎn)實(shí)驗(yàn)室,江蘇 無錫,214122)
近年來,隨著國民膳食結(jié)構(gòu)的改變和人們對健康飲食的重視,食品安全健康問題逐漸得到關(guān)注,牛肉營養(yǎng)豐富且口感隨部位及烹飪方法的不同呈現(xiàn)多樣化,可適應(yīng)不同飲食愛好者需求[1]。但因外界環(huán)境及微生物酶作用,生鮮牛肉在生產(chǎn)、流通及存儲(chǔ)中易出現(xiàn)新鮮度下降甚至變質(zhì)的問題[2],這不僅對生產(chǎn)企業(yè)造成重大損失,嚴(yán)重則會(huì)影響食用者身體健康,因此對生鮮牛肉冷藏時(shí)間進(jìn)行高效準(zhǔn)確識(shí)別的研究尤為重要。
傳統(tǒng)的圖像識(shí)別方法通過對圖像中尺寸不變特征變換[3]、方向梯度直方圖[4]、顏色和紋理等特征進(jìn)行提取來實(shí)現(xiàn)圖像識(shí)別,在此基礎(chǔ)上部分學(xué)者使用多種特征組合表達(dá)圖像[5]。如馬佳佳等[6]提出一種基于支持向量機(jī)的蟲害圖像識(shí)別方法,模型對復(fù)雜背景下的蟲害圖像識(shí)別準(zhǔn)確率為93%。隨著對圖像識(shí)別任務(wù)要求的提高,傳統(tǒng)圖像識(shí)別方法效率不高、泛化能力不強(qiáng)等弊端也逐漸突出。于是學(xué)者們開始將卷積神經(jīng)網(wǎng)絡(luò)應(yīng)用于圖像識(shí)別檢測,卷積神經(jīng)網(wǎng)絡(luò)的卷積層可自行提取圖像特征以達(dá)到分類效果,泛化能力和自學(xué)能力較強(qiáng),多應(yīng)用于人臉識(shí)別[7]、語音識(shí)別[8]等領(lǐng)域,便利人們的日常生活。目前卷積神經(jīng)網(wǎng)絡(luò)在食品領(lǐng)域得到了廣泛應(yīng)用,可實(shí)現(xiàn)食品外形尺寸高效識(shí)別,如樂萬德等[9]設(shè)計(jì)基于機(jī)器視覺的西紅柿尺寸分級(jí)檢測算法,對具有陰影干擾的西紅柿尺寸測量準(zhǔn)確度達(dá)到95%以上。但面對圖像顏色紋理高相似的情況,時(shí)卷積神經(jīng)網(wǎng)絡(luò)的識(shí)別效果有待改進(jìn),如肖旺等[10]使用卷積神經(jīng)網(wǎng)絡(luò)檢測鴨蛋表面缺陷,對比實(shí)驗(yàn)中AlexNet模型的準(zhǔn)確率為85.43%。故在卷積神經(jīng)網(wǎng)絡(luò)基礎(chǔ)上,學(xué)者將可重疊混淆樹[11]、多通道融合[12]等概念引入神經(jīng)網(wǎng)絡(luò)模型,進(jìn)行模型結(jié)構(gòu)的優(yōu)化或訓(xùn)練機(jī)制的改進(jìn)來提高準(zhǔn)確率,如徐文龍[13]使用雙分支深度融合卷積神經(jīng)網(wǎng)絡(luò)對不同品質(zhì)紅棗的整體分類識(shí)別準(zhǔn)確率達(dá)到了99.3%,相比于對比實(shí)驗(yàn)中的LeNet、AlexNet、SqueezeNet模型提升了4%~13%。
結(jié)合傳統(tǒng)圖像識(shí)別和卷積神經(jīng)網(wǎng)絡(luò)圖像識(shí)別已有成果分析可知:(1)依靠人工提取圖像特征的識(shí)別方法,由于數(shù)據(jù)誤差及數(shù)據(jù)表述信息量有限,識(shí)別準(zhǔn)確率通常在75%~90%[14];(2)采用圖像分割和神經(jīng)網(wǎng)絡(luò)模型相結(jié)合的算法需要依賴大量的手工處理圖像信息,增加了實(shí)驗(yàn)的額外成本;(3)目前大多數(shù)食品識(shí)別檢測研究都是基于西方圖像數(shù)據(jù)集,如PFID[15]和Food-101[16],這些圖像集在特定場景中拍攝,目標(biāo)物品的區(qū)分度高且背景簡單,難以適應(yīng)現(xiàn)實(shí)場景復(fù)雜圖像區(qū)分要求,特別是對食品圖像的細(xì)粒度識(shí)別要求[17]。
針對以上問題,對于本研究保證在一般生活場景下進(jìn)行生鮮牛肉的存儲(chǔ)、圖像拍攝,根據(jù)GB 20799—2016《食品安全國家標(biāo)準(zhǔn) 肉和肉制品經(jīng)營衛(wèi)生規(guī)范》中對于冷鮮肉的定義:畜禽屠宰后經(jīng)過冷卻工藝處理并在經(jīng)營環(huán)境過程中環(huán)境溫度始終保持0~4 ℃,且冷鮮肉在0 ℃存儲(chǔ)環(huán)境下約在5~6 d發(fā)生變質(zhì),變?yōu)槎?jí)新鮮度[18],故采集了在冰箱0 ℃的環(huán)境下,存儲(chǔ)了0、1、2、3 d的生鮮牛肉樣本圖像,利用Tensorflow框架搭建基于GoogLeNet神經(jīng)網(wǎng)絡(luò)的改進(jìn)模型,實(shí)現(xiàn)生鮮牛肉冷藏時(shí)間的識(shí)別。
用于本實(shí)驗(yàn)的樣本肉品于上午6∶00在生鮮超市購得,樣本選取不考慮是否注水等背景因素。選取新鮮黃牛后腿肉350 g,將其切成100塊大小厚度為60 mm×50 mm×20 mm的規(guī)整均勻切片,按序放置在干燥清潔的冰箱托盤上,冷藏過程中使用保鮮膜封存并清空冰箱其他物品,保證冰箱溫度的同時(shí)避免冰箱中其他氣味對樣品的影響。實(shí)驗(yàn)采集時(shí)間為上午6∶30,2次檢測間隔時(shí)間為24 h,每個(gè)時(shí)間點(diǎn)采集100張,共400張?jiān)忌r牛肉圖像作為后續(xù)分析處理對象,圖像樣本示例如圖1所示。
圖1 圖像樣本示例
硬件的選擇以及圖片采集環(huán)境直接影響到圖片的質(zhì)量以及機(jī)器視覺算法的難易程度,為提高圖片采集的質(zhì)量,使用工業(yè)相機(jī)和鏡頭將目標(biāo)轉(zhuǎn)換為圖像信息,為規(guī)避不均勻光源的影響,采用前向照明和背光照明相結(jié)合的方法設(shè)置光源位置。如圖2所示,圖示采集系統(tǒng)由傳輸設(shè)備、上光源、攝像頭、支架、下光源構(gòu)成。其中攝像頭型號(hào)為EF 50 mm f/1.8 STM(Canon)。
圖2 圖像采集系統(tǒng)
GoogLeNet結(jié)構(gòu)如圖3所示,主要由前端3個(gè)卷積層、9個(gè)Inception模塊、1個(gè)全連接層、1個(gè)主分類器以及2個(gè)輔助分類器構(gòu)成。相比于VGG模型,其在保證網(wǎng)絡(luò)深度和寬度的同時(shí)優(yōu)化了參數(shù)量和計(jì)算量[19],可將目標(biāo)識(shí)別錯(cuò)誤率降低到6.67%,綜合來說性能更為優(yōu)越,目前主要運(yùn)用于醫(yī)療影像領(lǐng)域[20],在食品領(lǐng)域鮮見報(bào)道。
圖3 原始模型結(jié)構(gòu)圖
Inception是構(gòu)成模型的基礎(chǔ)模塊,本文采用的Inception模塊結(jié)構(gòu)如圖4所示,分別在3×3卷積層和5×5卷積層前、3×3池化層后加入1×1卷積層[22],通過1×1的卷積層達(dá)到降維減少參數(shù)和削參降維的目的,卷積計(jì)算如公式(1)所示:
圖4 Inception結(jié)構(gòu)圖[21]
(1)
(2)
式中:i為神經(jīng)元輸入,R(i)為神經(jīng)元輸出。
本文以GoogLeNet V1為原始模型,由于本實(shí)驗(yàn)圖像背景簡單易區(qū)分,故簡化模型結(jié)構(gòu)。如圖5所示,將前3層卷積層縮減為1個(gè)卷積層,Inception模塊個(gè)數(shù)縮減為7,并將結(jié)構(gòu)簡化后的模型命名為GoogLeNet-M,以此模型開展生鮮牛肉冷藏時(shí)間的識(shí)別研究。
圖5 GoogLeNet-M結(jié)構(gòu)圖
模型的搭建與訓(xùn)練在江南大學(xué)高性能工作站上進(jìn)行,工作站操作系統(tǒng)Windows 10,采用Anaconda3、Python3.5、PyCharm2019進(jìn)行環(huán)境的配制,使用TensorFlow框架進(jìn)行模型搭建。
1.4.1 圖像數(shù)據(jù)的預(yù)處理與增強(qiáng)技術(shù)
圖像預(yù)處理包括對像素的重新定義使之滿足模型輸入需求。GoogLeNet網(wǎng)絡(luò)模型要求固定維度輸入,故將像素尺寸統(tǒng)一轉(zhuǎn)換為224×224,經(jīng)過像素標(biāo)準(zhǔn)化的圖像去除了大量冗余信息,有效減少了計(jì)算量。
圖像增強(qiáng)包括直接對原始圖像進(jìn)行裁剪、旋轉(zhuǎn)、翻折等操作來改變圖片的形態(tài),使得原數(shù)據(jù)集增加一定的倍數(shù)。使用MATLAB中的Imcrop函數(shù)對圖像進(jìn)行特定區(qū)域裁剪,指定位置坐標(biāo)和大小分別為(400,400),224×224。使用旋轉(zhuǎn)變換將圖像繞中心點(diǎn)順時(shí)針旋轉(zhuǎn)θ角度,本實(shí)驗(yàn)分別取θ為90°、180°、270°,變換公式如公式(3)所示:
(3)
式中:x0和y0表示旋轉(zhuǎn)前各像素坐標(biāo)值,x和y表示旋轉(zhuǎn)后圖像像素坐標(biāo)值。
每張?jiān)瓐D可旋轉(zhuǎn)為3張不同角度的圖像。使用翻轉(zhuǎn)變換分別以圖像水平中線和垂直中線為軸將圖像上下左右對調(diào),每張?jiān)瓐D經(jīng)過翻折變換為3張不同圖像。具體變換結(jié)果如圖6所示,最終圖像集由3 200張圖像構(gòu)成,按照8∶1∶1劃分訓(xùn)練集、驗(yàn)證集、測試集,即訓(xùn)練集為2 560張、驗(yàn)證集和測試集均為320張圖像,對模型進(jìn)行訓(xùn)練與測試。
圖6 圖像增強(qiáng)示意圖
1.4.2 遷移學(xué)習(xí)的訓(xùn)練機(jī)制
卷積神經(jīng)網(wǎng)絡(luò)的訓(xùn)練需要一個(gè)龐大的數(shù)據(jù)集,但是經(jīng)常由于數(shù)據(jù)集的規(guī)模不夠大、所覆蓋信息范圍不夠完整完善,而難以訓(xùn)練出理想模型,造成小數(shù)據(jù)集在復(fù)雜網(wǎng)絡(luò)結(jié)構(gòu)上的過擬合問題?;谝陨蠁栴},遷移學(xué)習(xí)理論被引入并應(yīng)用到模型訓(xùn)練方法中,遷移學(xué)習(xí)機(jī)制是在一個(gè)任務(wù)上訓(xùn)練好的初始模型通過簡單調(diào)整使其適用于新任務(wù)的一種機(jī)器學(xué)習(xí)方法[23]。
1.4.3 模型的構(gòu)建與訓(xùn)練
本文將遷移學(xué)習(xí)理論引入GoogLeNet-M模型訓(xùn)練中,首先使用ImageNet圖像集對改進(jìn)模型訓(xùn)練得到初始化模型,保存此時(shí)模型各層的權(quán)重和偏置,然后在此基礎(chǔ)上分別使用2種模式對模型進(jìn)行訓(xùn)練,一是凍結(jié)模型卷積層1,二是凍結(jié)模型全連接層。設(shè)置初始學(xué)習(xí)率為0.000 1,每次處理的數(shù)據(jù)15個(gè),按照4分類任務(wù)將輸出層改為4維向量,其余參數(shù)值為默認(rèn)。
由表1可知,凍結(jié)全連接層的準(zhǔn)確率低于凍結(jié)練卷積層的準(zhǔn)確率,原因是卷積神經(jīng)網(wǎng)絡(luò)主要使用卷積層對圖像進(jìn)行特征提取,所以經(jīng)過遷移學(xué)習(xí)的權(quán)重及偏置可以在對新圖像特征提取時(shí)發(fā)揮更大作用,更為精確的表達(dá)圖像特征。而全連接層不直接參與圖像信息的提取,其主要作用是對提取的數(shù)據(jù)降維后分類,因此遷移訓(xùn)練卷積層能夠達(dá)到更理想的效果。
表1 不同訓(xùn)練機(jī)制下準(zhǔn)確率 單位:%
由圖7可知,未引入遷移學(xué)習(xí)的模型收斂速度慢且收斂后不穩(wěn)定,凍結(jié)全連接層的收斂速度較未引入遷移學(xué)習(xí)機(jī)制的訓(xùn)練快一些,凍結(jié)卷積層收斂速度最快且收斂后趨向穩(wěn)定,表明遷移學(xué)習(xí)可有效縮短模型收斂時(shí)間。
圖7 準(zhǔn)確率收斂情況圖
由表1可知,各組準(zhǔn)確率在訓(xùn)練集上的表現(xiàn)都要優(yōu)于驗(yàn)證集,模型出現(xiàn)了過擬合。這是由于原始數(shù)據(jù)集太小,而構(gòu)造的模型結(jié)構(gòu)復(fù)雜,擁有出色的非線性擬合能力,可以擬合出更加復(fù)雜的函數(shù),使網(wǎng)絡(luò)模型在訓(xùn)練集上的表達(dá)能力較好,在測試集上泛化性能較差,說明遷移學(xué)習(xí)雖然可以緩解過擬合問題,但一定程度的數(shù)據(jù)擴(kuò)充還是必不可少。
由表2可知,在遷移學(xué)習(xí)的基礎(chǔ)上輔以數(shù)據(jù)增強(qiáng)技術(shù)后,這2組不同學(xué)習(xí)機(jī)制的識(shí)別準(zhǔn)確率都有了1到2個(gè)百分點(diǎn)的提升,說明對數(shù)據(jù)集的擴(kuò)充有利于緩解模型過擬合問題。
表2 基于數(shù)據(jù)增強(qiáng)的準(zhǔn)確率 單位:%
為進(jìn)一步驗(yàn)證模型的識(shí)別效果,相同實(shí)驗(yàn)條件下對比了BP(back propagation)神經(jīng)網(wǎng)絡(luò)、VGG模型及GoogLeNet V1模型對牛肉新鮮度的識(shí)別效果。
由表3可知在識(shí)別生鮮牛肉準(zhǔn)確率方面,本文研究識(shí)別方法的平均準(zhǔn)確率高于BP神經(jīng)網(wǎng)絡(luò)、VGG卷積神經(jīng)網(wǎng)絡(luò)模型和GoogLeNet經(jīng)典模型。
表3 模型對比實(shí)驗(yàn) 單位:%
傳統(tǒng)的BP神經(jīng)網(wǎng)絡(luò)首先對牛肉圖像集進(jìn)行了感興趣區(qū)域圈定、去噪、背景分割等圖像預(yù)處理后,將特征矩陣作為神經(jīng)網(wǎng)絡(luò)的輸入,實(shí)現(xiàn)牛肉冷藏時(shí)間的識(shí)別。
VGG模型復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)使其可以擬合出復(fù)雜的數(shù)據(jù)特征,但由于其第1個(gè)全連接層的參數(shù)量大且多,對計(jì)算環(huán)境要求高,耗費(fèi)大量的計(jì)算資源,與本研究模型相比而言,本研究模型的計(jì)算機(jī)資源占有率低,能夠?qū)崿F(xiàn)更快收斂速度。
GoogLeNet經(jīng)典模型與本研究模型在識(shí)別準(zhǔn)確率上相差不多,但2個(gè)模型的運(yùn)行時(shí)間差異明顯,GoogLeNet 模型的訓(xùn)練時(shí)間需3 h,GoogLeNet-M模型的訓(xùn)練時(shí)間需1.5 h,降低50%,表明改進(jìn)后的模型在保證準(zhǔn)確率的基礎(chǔ)上,大幅度降低模型運(yùn)行時(shí)間,提高識(shí)別效率。
本研究在GoogLeNet模型基礎(chǔ)上進(jìn)行結(jié)構(gòu)改進(jìn),縮減模型前端卷積層數(shù)量及Inception模塊個(gè)數(shù),引入遷移學(xué)習(xí)理論輔以圖像數(shù)據(jù)增強(qiáng)技術(shù)進(jìn)行模型訓(xùn)練,主要得到以下結(jié)論:
(1)基于遷移學(xué)習(xí)理論的模型實(shí)驗(yàn)結(jié)果表明,引入遷移學(xué)習(xí)理論能夠使模型在訓(xùn)練中能更快達(dá)到穩(wěn)定狀態(tài),有效縮減了模型收斂時(shí)間,且經(jīng)過遷移訓(xùn)練的卷積層權(quán)值和偏差使模型在測試上達(dá)到更理想的效果。
(2)基于圖像增強(qiáng)技術(shù)的模型實(shí)驗(yàn)結(jié)果表明,使用數(shù)據(jù)增強(qiáng)技術(shù)在一定程度上能夠緩解小數(shù)據(jù)集在復(fù)雜網(wǎng)絡(luò)結(jié)構(gòu)上產(chǎn)生的過擬合問題,體現(xiàn)了數(shù)據(jù)集規(guī)模在模型訓(xùn)練中的重要作用。
(3)識(shí)別模型的對比實(shí)驗(yàn)結(jié)果表明,本研究所建立模型與BP神經(jīng)網(wǎng)絡(luò)相比能對牛肉新鮮度達(dá)到更好的識(shí)別率,與VGG深度卷積網(wǎng)絡(luò)及GoogLeNet經(jīng)典模型相比,在保證平均準(zhǔn)確率的基礎(chǔ)上,本模型耗費(fèi)相對較少的計(jì)算資源。