国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于YOLOv5的水果品質(zhì)檢測與分類方法研究

2023-09-15 03:34羅家梅
軟件導刊 2023年9期
關鍵詞:水果分類圖像

羅家梅,王 敏,2

(1.贛南師范大學 數(shù)學與計算機科學學院;2.江西省數(shù)值模擬與仿真技術重點實驗室,江西 贛州 341000)

0 引言

目前,水果產(chǎn)業(yè)已經(jīng)成為我國繼糧食、蔬菜之后的第三大農(nóng)業(yè)種植產(chǎn)業(yè),是國內(nèi)外市場前景廣闊且具有較強國際競爭力的優(yōu)勢產(chǎn)業(yè)。人工智能技術支持下的水果品質(zhì)檢測與分類技術對于水果生產(chǎn)、加工、運輸和銷售具有重要意義,尤其是在快節(jié)奏的“互聯(lián)網(wǎng)+”環(huán)境下,水果品質(zhì)檢測與分類方法的性能和速度直接影響水果產(chǎn)業(yè)的經(jīng)濟效益和市場競爭力。最早的水果品質(zhì)檢測與分類工作依賴人工,容易受到人的情緒、疲勞程度以及身體狀況等因素影響,而且每個人的分類標準有所差異,從而導致高成本、低效率的弊端。隨后,機械檢測分類方法逐漸替代人工檢測[1],但該方法會對水果造成一定程度的損傷,導致其保質(zhì)期縮短甚至腐爛,直接影響經(jīng)濟效益。因此,目前學者們開始嘗試使用以機器視覺和機器學習為代表的人工智能技術研究水果品質(zhì)檢測與分類方法。傳統(tǒng)智能檢測方法是基于特征設計與分類實現(xiàn)的,特征設計主要是提取顏色[2]、形狀[3]和紋理[4]等特征,經(jīng)典分類方法包括支持向量機[5]、人工神經(jīng)網(wǎng)絡[6]、最鄰近分類[7]等。然而這些方案都是通過從大量數(shù)據(jù)中獲取有用特征并建立有效模型來處理問題,受限于算法自身的局限性,在復雜場景下同時檢測水果品質(zhì)和種類的魯棒性差,難以滿足實時檢測要求。

基于深度學習的水果檢測方法分為基于候選區(qū)域的目標檢測方法和基于回歸的目標檢測方法兩類?;诤蜻x區(qū)域的目標檢測方法亦稱為兩階段方法,典型網(wǎng)絡模型包括Fast R-CNN(Fast Region-based Convolutional Neural Network)、Mask-RCNN(Mask Region-based Convolutional Neural Network)等。基于回歸的目標檢測方法也被稱為一階段方法,該類方法能在一個網(wǎng)絡中同時進行回歸和分類操作,減少了計算量并提升了檢測速度,典型網(wǎng)絡模型包括YOLO(You Only Look Once)、SSD(Single Shot MultiBox Detector)等。融合深度學習技術的水果品質(zhì)檢測與分類方法較傳統(tǒng)機器學習方法具有一定優(yōu)勢,但檢測性能和速度仍有提升空間。

1 相關研究

為達到高效、精確且非接觸的檢測目的,自20 世紀70年代起,國內(nèi)外學者將機器視覺技術應用于水果分類研究中,并取得了一定成果。例如,Zeeshan 等[2]提出使用計算機視覺和支持向量機對18 類水果進行分類,通過提取顏色、紋理和形狀特征創(chuàng)建特征空間,然后結(jié)合支持向量分類器進行分類,最終分類準確率達到了87.06%;Yue 等[3]以煙臺蘋果為研究對象構建分類檢測系統(tǒng),利用Canny 邊緣算法提取蘋果的外輪廓,通過幾何計算提取大小特征,同時采用圓形法提取水果形狀特征,分類準確率達到92.33%,但該方法存在一定的機械損失;艾妮[4]以機器視覺技術為基礎構建水果自動分揀系統(tǒng),通過提取中心關鍵點的方法對目標水果進行定位,最終該系統(tǒng)對于形狀規(guī)則的蘋果和橘子分類準確率可達92%,但對于形狀不規(guī)則的水果難以取得良好分類效果;Bekkanti 等[5]提出利用Sobel邊緣檢測和支持向量機對患病水果進行自動檢測,對患病水果和非患病水果的分類準確率達到92%;Huang 等[6]使用人工神經(jīng)網(wǎng)絡探索土壤和葉片中礦物質(zhì)養(yǎng)分對枇杷果實品質(zhì)的影響,同時進行了敏感性分析以確定果實質(zhì)量,所建立的人工網(wǎng)絡預測模型通過優(yōu)化礦物元素含量來提高枇杷果實品質(zhì);饒劍等[7]設計了一套由成像系統(tǒng)、照明設備、傳送裝置和數(shù)據(jù)處理中心等組成的類球形水果外形尺寸在線檢測系統(tǒng),將類球形水果的表面缺陷特征參量作為重要檢測指標,并以此進行分級判定,最終平均識別率達94.4%。然而,以上方法性能依賴于水果表面特征設計和分類方法的選取,存在兩方面問題:一是特征提取需要人工設計,工作量較大;二是同時進行特征提取和分類的傳統(tǒng)機器學習方法對系統(tǒng)性能較高。

近年來,深度學習技術在水果品質(zhì)檢測與分級分類中的應用越來越廣泛。例如,Mai 等[8]將多分類器融合策略合并到Faster R-CNN 網(wǎng)絡模型中對兩個小型水果數(shù)據(jù)集進行檢測,使用相關系數(shù)衡量分類器的多樣性,并引入一種具有分類器相關性的損失函數(shù)訓練區(qū)域提議網(wǎng)絡,取得了較好的檢測效果,但由于該方法需要邊界框注釋,檢測效率較低;Liu 等[9]采用R-FCN(Region-based Fully Convolutional Networks)方法識別復雜背景下的水果目標,通過降低提取候選區(qū)域的時間提高了檢測速度,但檢測精度存在一定提升空間;王紅君等[10]采用改進YOLOv3 模型檢測復雜環(huán)境中的蘋果、桃子、香橙、梨,最終平均精度達到92.27%,檢測速度為45 幀/s;王卓等[11]提出一種以YOLOv4 為基礎的輕量化蘋果實時檢測方法YOLOv4-CA,通過引入深度可分離卷積和坐標注意力機制,在降低網(wǎng)絡計算復雜度的同時提高了抗背景干擾能力,最終平均檢測精度為92.23%,在嵌入式平臺的檢測速度為改進前模型的3倍;涂淑琴等[12]提出基于殘差網(wǎng)絡[13]和特征金字塔網(wǎng)絡(Feature Pyramid Network,F(xiàn)PN)[14]的FasterR-CNN 檢測算法,對無遮擋、遮擋、重疊和有背景4 種情況下的百香果進行自動檢測,最終得到平均檢測精確率為87.98%;黃豪杰等[15]針對自然環(huán)境下目標水果檢測率不高和檢測模型泛化性不強等問題,提出一種基于深度學習的SSD 改進模型,其以蘋果、橙子、荔枝作為研究對象,以自然環(huán)境為研究背景,得到由SSD 改進的SSD300 和SSD512 模型平均檢測精度分別為83.05%、84.24%。然而,以上研究僅針對類球形水果展開,對非類球形水果品質(zhì)檢測與分類的研究有待加強。

從以上分析可知,基于傳統(tǒng)深度學習技術的水果檢測方法仍有提升空間。YOLOv5 具有檢測精度較高、速度快和易部署等優(yōu)勢[16],為此提出基于YOLOv5 目標檢測算法的水果品質(zhì)檢測與分類方法,以期為為實際農(nóng)業(yè)場景下的水果品質(zhì)檢測提供新思路。

2 YOLOv5模型

YOLO 是一種廣泛應用于工業(yè)[17-18]、交通[19-21]、醫(yī)療[22]和農(nóng)業(yè)[23-25]等領域的目標檢測網(wǎng)絡模型,其于2016年由Joseph Redmon 等[26]首次提出,隨后相繼提出YOLOv2、YOLOv3[27]、YOLOv4[28]、YOLOv5[12]版本。YOLOv5在YOLOv4 的基礎上進行了參數(shù)優(yōu)化調(diào)整,檢測速度有所提升。例如YOLOv5 在Tesla P100 加速器上可實現(xiàn)140 幀/s 的快速檢測,能夠滿足工業(yè)生產(chǎn)線實時檢測要求。按照模型大小不同,YOLOv5 推出了s、m、l和x4 個不同網(wǎng)絡深度和寬度的網(wǎng)絡模型,其中YOLOv5s 網(wǎng)絡是YOLOv5 系列中深度最小、特征圖寬度最小的模型。為滿足水果表面質(zhì)量檢測速度要求,本文采用計算速度最快的YOLOv5s模型。

如圖1所示,YOLOv5s算法網(wǎng)絡模型主要分為輸入端、骨干端、頸部端、頭部端4 個模塊。輸入端的主要功能是對輸入圖像進行預處理,包括Mosaic 數(shù)據(jù)增強、自適應錨框計算、自適應圖像縮放3 個模塊,其中Mosaic 數(shù)據(jù)增強以4 張圖像為輸入,通過隨機縮放、隨機裁剪、隨機排布的方式進行拼接;自適應錨框計算對訓練輸出中的預測框與真實框進行距離計算,通過反向迭代達到更新網(wǎng)絡參數(shù)的目的;自適應圖像縮放則利用等比縮放或黑邊填充方法得到統(tǒng)一圖像,從而提高目標檢測速度。骨干端由 Focus、Conv、BottleneckCSPn、空間金字塔池化(Spatial Pyramid Pooling,SPP)等模塊組成,其是網(wǎng)絡的主干部分。該模塊采用Focus 結(jié)構對圖片進行切片操作,將其切分為4 張互補的圖片,最后進行卷積運算。BottleneckCSPn 由3個卷積層和N 個Bottleneck 模塊Concat 組成,如果帶有False 參數(shù)則未使用Bottleneck 模塊,而是采用Conv+BN+Leaky_Relu+Conv,其中Bottleneck 先是1×1 的卷積層,再是3×3 的卷積層,最后通過殘差結(jié)構與初始輸入相加,主要目的是減少參數(shù)數(shù)量,從而減少計算量,且在降維之后可以更加有效、直觀地進行數(shù)據(jù)訓練和特征提取。在特征生成部分則沿用之前的SPP 結(jié)構,主要作用是增加特征的多樣性,防止過擬合現(xiàn)象出現(xiàn),同時加快網(wǎng)絡收斂速度。頸部端網(wǎng)絡采用路徑聚合網(wǎng)絡(Path-Aggregation Network,PANet)進行特征融合,即在FPN 自頂向下的基礎上添加一個自底向上的信息流通路徑,有利于提高特征提取能力。頭部端輸出端采用GIOU 函數(shù)作為邊界框的損失函數(shù),在目標檢測后處理過程中使用非極大值抑制(Non Maximum Suppression,NMS)對多目標框進行篩選,增強了多目標和遮擋目標的檢測能力。

Fig.1 Network structure of YOLOv5s圖1 YOLOv5s網(wǎng)絡結(jié)構

3 數(shù)據(jù)集構建

通過現(xiàn)場拍攝和網(wǎng)絡爬蟲方法進行圖像采集,為保證分類效果,照片覆蓋4 類不同品質(zhì)、不同形狀和紋理的水果。數(shù)據(jù)集具體構建步驟為:

(1)數(shù)據(jù)采集。實驗數(shù)據(jù)集由網(wǎng)絡數(shù)據(jù)和現(xiàn)場數(shù)據(jù)兩部分組成,其中網(wǎng)絡數(shù)據(jù)由爬蟲工具從互聯(lián)網(wǎng)獲取的蘋果、橘子、香蕉和梨4 種果實形狀不同的水果圖像組成;現(xiàn)場數(shù)據(jù)則由相機或手機在果園和超市等地點拍攝得到。需要注意的是,現(xiàn)場圖像數(shù)據(jù)是在不同光照條件、角度和背景環(huán)境拍攝得到的,因此最后需從數(shù)據(jù)集中剔除像素不清晰以及果實存在嚴重遮擋的圖像。

(2)數(shù)據(jù)標注。使用LabelImg 軟件對圖像數(shù)據(jù)進行標注,并以PascalVOC 格式保存為XML 文件,文件名與圖像名保持一致。圖2給出了蘋果的標注示例。

Fig.2 Apple annotation example圖2 蘋果標注示例

(3)數(shù)據(jù)分割。通過上述兩個步驟得到2 190 張圖像,按照8∶1∶1的比例將其劃分為訓練集、驗證集和測試集。

4 實驗方法

4.1 實驗環(huán)境與參數(shù)設置

實驗計算機配有i7-7820X CPU、Geforce GTX 1080 Ti顯卡和128 GB 內(nèi)存,操作系統(tǒng)為Windows Server 2019,采用PyTorch 1.10 深度學習框架。實驗使用隨機梯度下降(Stochastic Gradient Descent,SGD)[29]優(yōu)化器訓練網(wǎng)絡,修改目標種類參數(shù)nc(number of classes)為8,同時分別命名為apple、damaged_apple、orange、damaged_orange、pear、damaged_pear、banana、damaged_banana。數(shù)據(jù)集配置文件ab.yaml 中設置好數(shù)據(jù)集路徑,輸入圖像尺寸為900×900,迭代次數(shù)(epochs)為300,批處理大?。╞atch size)為8,動量因子為 0.937,權重衰減系數(shù)為0.000 5。選用自動錨點檢測,采用Mosaic 數(shù)據(jù)增強策略,初始學習率為0.001。

4.2 評價指標

使用精確率(Precision)和召回率(Recall)作為水果分類評價指標,表示為:

式中:TP為被判為正類的正類(正確檢測),F(xiàn)P為被判為正類的負類(錯誤檢測),F(xiàn)N為被判為負類的正類。使用IoU 設為0.5 時的平均精度均值(mAP_0.5)、同IoU 閾值(從0.5 到0.95,步長0.05)的平均mAP(mAP_0.5:0.95)、精確率、召回率作為模型評價指標。平均精度(AP)表示 Precision-Recall 曲線下面積,對該圖片每一類的平均精度求均值即得mAP,計算公式為:

式中:N 為該圖片不同類別的總和。

5 實驗結(jié)果與分析

5.1 網(wǎng)絡模型訓練結(jié)果

在以上參數(shù)環(huán)境下進行模型訓練,對訓練結(jié)果進行可視化繪圖,模型精確率、召回率、mAP_0.5、mAP_0.5:0.95如圖3 所示??梢钥闯?,當?shù)螖?shù)小于200 時,精確率、召回率、mAP_0.5 和mAP_0.5:0.95 均隨迭代次數(shù)的增加快速上升。當?shù)螖?shù)大于200 時,各項性能指標逐漸趨向平穩(wěn),模型精確率和召回率均穩(wěn)定在90%以上,平均精度均值為95.3%,模型在訓練階段性能較為理想。

Fig.3 Model training results圖3 模型訓練結(jié)果

5.2 性能比較

選 擇YOLOv3、YOLOv3-spp、YOLOv3-tiny 和YOLOv4-tiny 4 種網(wǎng)絡模型作為比較模型,與本文模型在相同計算機環(huán)境下的同一個數(shù)據(jù)集中進行實驗,結(jié)果如表1 所示。可以看出,本文提出的YOLOv5s 方案平均檢測精度值達到95.3%,與YOLOv3、YOLOv3-spp、YOLOv3-tiny 和YOLOv4-tiny 相比分別提高了3.7%、0.2%、13.1%和8.73%。YOLOv5s 在damaged_apple、damaged_orange、pear 和damaged_banana 4 個類別上的表現(xiàn)最優(yōu);YOLOv3-spp 在apple、orange 和banana 3 個類別上的表現(xiàn)最優(yōu),YOLOv3 在damaged_pear 類別上的表現(xiàn)最優(yōu)。這是由于YOLOv3 和YOLOv3-spp 兩個網(wǎng)絡模型使用了更大的特征提取模塊,而YOLOv5s是一個輕量化網(wǎng)絡模型。

Table 1 Training results comparison of different models表1 不同模型實驗結(jié)果比較(%)

表2 給出了相同計算環(huán)境下不同模型的訓練時間、推理時間和大小,可以看出YOLOv5s 模型的訓練時間、推理時間和網(wǎng)絡參數(shù)大小均明顯優(yōu)于其他模型。綜上所述,YOLOv5s 模型的平均檢測精度和檢測速度均有較大優(yōu)勢,滿足實時檢測需求。

Table 2 Comparison of training time,inference time,and size of each model表2 各模型訓練時間、推理時間和大小比較

5.3 測試結(jié)果

分別使用訓練好的YOLOv5s 和YOLOv3、YOLOv3-spp、YOLOv3-tiny、YOLOv4-tiny 網(wǎng)絡模型對非訓練水果圖像進行測試,輸出結(jié)果包括水果種類、好壞、邊界框及相應的置信度,部分測試結(jié)果如圖4 所示。可以看出,YOLOv5s模型對所有水果圖像的檢測置信度均高于0.9,平均檢測時間為10.5 ms。雖然YOLOv3 和YOLOv3-spp 測試結(jié)果的置信度大多比YOLOv5 高,但其推理時間分別為29.4 ms 和27.9 ms,是YOLOv5s檢測時間的2.5倍以上,難以滿足實時檢測需求。YOLOv3-tiny 和YOLOv4-tiny 是輕量化后的網(wǎng)絡模型,由于其定位精度較差以及容易出現(xiàn)漏檢、誤檢情況,檢測置信度較低,其中YOLOv3-tiny 對banana 和damaged_banana 檢測的置信度均低于0.5。

6 結(jié)語

本文針對傳統(tǒng)深度學習技術對水果種類與品質(zhì)檢測精確度和速度有待提高的問題,提出基于輕量級模型YOLOv5s 的目標檢測算法,同時自行構建了4 種不同類型水果的數(shù)據(jù)集。實驗結(jié)果表明,YOLOv5s 在檢測性能、訓練時間、推理時間和網(wǎng)絡參數(shù)大小等方面均優(yōu)于傳統(tǒng)檢測方法,可以對不同品種的水果進行準確識別與定位,且具有占用內(nèi)存小、推理時間短的特點,有望將其部署到智能終端,從而實現(xiàn)水果的實時在線檢測。未來將繼續(xù)完善不同類型水果的檢測數(shù)據(jù)集,并優(yōu)化網(wǎng)絡結(jié)構以進一步提高水果分類準確率及品質(zhì)檢測精度。

猜你喜歡
水果分類圖像
改進的LapSRN遙感圖像超分辨重建
分類算一算
有趣的圖像詩
分類討論求坐標
數(shù)據(jù)分析中的分類討論
四月里該吃什么水果
水果篇之Cherry
水果暢想曲
遙感圖像幾何糾正中GCP選取