• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于YOLOv5的水果識(shí)別及成熟度檢測(cè)系統(tǒng)

      2024-11-12 00:00:00鄭凱文張騁烯陳愛(ài)琴
      無(wú)線互聯(lián)科技 2024年19期

      摘要:在我國(guó),水果已經(jīng)成為人們生活中不可缺少的食物之一,水果檢測(cè)和成熟度分析是農(nóng)業(yè)生產(chǎn)和食品加工領(lǐng)域的重要研究方向。傳統(tǒng)方法依賴人工操作,費(fèi)時(shí)費(fèi)力且易出錯(cuò)。而基于深度學(xué)習(xí)的自動(dòng)化方法能提高準(zhǔn)確率,降低成本,具有廣闊的應(yīng)用前景。因此,文章研究并設(shè)計(jì)了基于深度學(xué)習(xí)的水果檢測(cè)及成熟度分析系統(tǒng),主要基于PyTorch深度學(xué)習(xí)框架搭建YOLOv5算法對(duì)草莓、蘋(píng)果和香蕉的成熟果實(shí)和未成熟果實(shí)進(jìn)行檢測(cè)識(shí)別。該系統(tǒng)能夠極大地提高檢測(cè)效率和精度,具有一定的現(xiàn)實(shí)意義與實(shí)用價(jià)值。

      關(guān)鍵詞:水果檢測(cè);成熟度分析;YOLOv5;深度學(xué)習(xí)

      中圖分類號(hào):TP183 文獻(xiàn)標(biāo)志碼:A

      0 引言

      我國(guó)是農(nóng)業(yè)大國(guó),水果產(chǎn)量位居全國(guó)首列,因此水果的采摘效率是一個(gè)比較突出的問(wèn)題。傳統(tǒng)上,水果和蔬菜等農(nóng)產(chǎn)品的采摘過(guò)程通常需要大量的人工操作,成本高,效率低,同時(shí)也存在勞動(dòng)力短缺和質(zhì)量不一致的問(wèn)題。而利用機(jī)器人技術(shù)進(jìn)行采摘,則可以實(shí)現(xiàn)自動(dòng)化、高效率、高精度的采摘過(guò)程,從而提高農(nóng)業(yè)生產(chǎn)的效益和質(zhì)量。因此,設(shè)計(jì)一個(gè)高精確度和高實(shí)時(shí)性的水果檢測(cè)及成熟度分析系統(tǒng)尤為重要。

      近年來(lái),深度學(xué)習(xí)在計(jì)算機(jī)視覺(jué)和模式識(shí)別等領(lǐng)域取得了巨大的突破。其中,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)[1]在物體檢測(cè)任務(wù)中取得了顯著的成功。YOLOv5[2]是一種集合速度和準(zhǔn)確性的最先進(jìn)的物體檢測(cè)模型,適用于實(shí)時(shí)應(yīng)用。將YOLOv5應(yīng)用于水果檢測(cè)及成熟度分析可以極大地提高過(guò)程的效率和精度,相比傳統(tǒng)的手工方法具有明顯優(yōu)勢(shì)。

      1 深度學(xué)習(xí)理論介紹

      深度學(xué)習(xí)是一種機(jī)器學(xué)習(xí)的方法,通過(guò)構(gòu)建和訓(xùn)練多層神經(jīng)網(wǎng)絡(luò)來(lái)實(shí)現(xiàn)對(duì)數(shù)據(jù)的學(xué)習(xí)和模式識(shí)別[3]。深度學(xué)習(xí)通過(guò)神經(jīng)網(wǎng)絡(luò)的多層映射,可以自動(dòng)學(xué)習(xí)復(fù)雜的數(shù)據(jù)特征并發(fā)現(xiàn)數(shù)據(jù)中的高階特征。

      1.1 神經(jīng)網(wǎng)絡(luò)

      深度學(xué)習(xí)的實(shí)質(zhì)是神經(jīng)網(wǎng)絡(luò)模型,是一種由多個(gè)層組成的計(jì)算結(jié)構(gòu)。每層都接收前一層的輸出并將其加權(quán)求和后采用一個(gè)非線性激活函數(shù)進(jìn)行一系列計(jì)算得到新的輸出。利用反向傳播算法來(lái)調(diào)整每層之間的連接權(quán)重,從而使得誤差最小化并提高模型的預(yù)測(cè)準(zhǔn)確性。

      1.2 反向傳播

      反向傳播(Back Propagation,BP)是一種基于梯度下降方法、用于多層神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)算法,可計(jì)算預(yù)測(cè)結(jié)果與真實(shí)標(biāo)簽之間的差異并根據(jù)這個(gè)差異來(lái)調(diào)整神經(jīng)網(wǎng)絡(luò)中每個(gè)連接權(quán)重的方法。

      在反向傳播階段,首先計(jì)算預(yù)測(cè)結(jié)果與真實(shí)標(biāo)簽之間的差異,通常使用損失函數(shù)來(lái)度量這個(gè)差異。然后利用鏈?zhǔn)角髮?dǎo)法則,將這個(gè)差異從輸出層開(kāi)始反向逐層向前傳播,計(jì)算每個(gè)連接權(quán)重對(duì)損失函數(shù)的貢獻(xiàn)度。通過(guò)計(jì)算權(quán)重的梯度,可以知道在給定的權(quán)重下,如何能更好地減小損失函數(shù)。最后,使用優(yōu)化算法(如梯度下降)來(lái)更新每個(gè)連接權(quán)重,使得預(yù)測(cè)結(jié)果與真實(shí)標(biāo)簽之間的差異不斷減小。

      反向傳1XtC2UnB3AQqr4itClbUugsEW8XDESUvGZDdvaRW9TI=播算法的關(guān)鍵在于鏈?zhǔn)椒▌t,能夠逐步傳遞網(wǎng)絡(luò)中每個(gè)神經(jīng)元的梯度,通過(guò)權(quán)重連接實(shí)現(xiàn)反向傳播。該算法計(jì)算量較大,但由于鏈?zhǔn)椒▌t的有效性,可以高效地計(jì)算出每個(gè)連接權(quán)重的梯度,從而實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)的權(quán)重更新,最終實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)的優(yōu)化,學(xué)習(xí)到更準(zhǔn)確的預(yù)測(cè)模型。

      1.3 卷積神經(jīng)網(wǎng)絡(luò)概述

      卷積神經(jīng)網(wǎng)絡(luò)是深度學(xué)習(xí)中非常重要的一種神經(jīng)網(wǎng)絡(luò)模型。卷積神經(jīng)網(wǎng)絡(luò)由一個(gè)或多個(gè)卷積層和頂端的全連接層組成,同時(shí)也包括關(guān)聯(lián)權(quán)重和池化層,目前在圖像識(shí)別、語(yǔ)音識(shí)別和目標(biāo)檢測(cè)等領(lǐng)域應(yīng)用非常廣泛。

      1.3.1 卷積層

      在CNN中,卷積層是至關(guān)重要的組成部分,用來(lái)從輸入數(shù)據(jù)中提取特征。卷積層通過(guò)對(duì)輸入數(shù)據(jù)的局部區(qū)域進(jìn)行加權(quán)求和,利用滑動(dòng)窗口的方式來(lái)生成輸出,能有效地提取輸入數(shù)據(jù)的局部特征,逐漸生成更加抽象和高級(jí)的特征。卷積的操作過(guò)程如圖1所示。

      二維卷積層是處理圖像數(shù)據(jù)的重要組成部分,計(jì)算方式可以由公式(1)表示。

      y(m,n)=x(m,n)*h(m,n)=∑∞i∑∞jx(i,j)h(m-i,n-j)(1)

      在卷積神經(jīng)網(wǎng)絡(luò)中,卷積核的作用是對(duì)輸入特征圖進(jìn)行卷積運(yùn)算,以提取其中的特征信息。卷積核會(huì)關(guān)注輸入特征圖的某個(gè)局部,如圖1中Input的灰色區(qū)域,使用圖1中kernel部分的權(quán)重對(duì)該區(qū)域內(nèi)的特征進(jìn)行加權(quán)求和。在圖像卷積運(yùn)算中,卷積核通常采用邊緣填充的方式,以避免特征圖尺寸的縮小。同時(shí),為了增強(qiáng)特征提取的效果,典型的卷積層通常會(huì)配置多個(gè)卷積核,每個(gè)卷積核分別負(fù)責(zé)捕獲輸入特征圖中的不同特征。在網(wǎng)絡(luò)訓(xùn)練過(guò)程中,這些卷積核的權(quán)重會(huì)自動(dòng)調(diào)整,以適應(yīng)給定的任務(wù)。圖1中卷積的輸出如式(2)所示。

      output=2*(-1)+1*0+…+4*1+2*(-1)+3*0+4*1=-5(2)

      深度學(xué)習(xí)中的一個(gè)基礎(chǔ)神經(jīng)網(wǎng)絡(luò)層就是卷積層,它運(yùn)用卷積操作來(lái)從輸入數(shù)據(jù)中提取特征,具備顯著的優(yōu)勢(shì)。首先,卷積核內(nèi)部參數(shù)在不同區(qū)域卷積時(shí)共享,減少參數(shù)量,降低過(guò)擬合風(fēng)險(xiǎn)。其次,卷積濾波器自學(xué)習(xí)權(quán)重,提取抽象特征。

      1.3.2 激活函數(shù)

      卷積層、池化層和全連接層在神經(jīng)網(wǎng)絡(luò)中都扮演著對(duì)輸入數(shù)據(jù)的線性加權(quán)求和的角色。一個(gè)深度神經(jīng)網(wǎng)絡(luò)由許多這樣的層疊加而成,這樣就會(huì)形成對(duì)輸入數(shù)據(jù)的復(fù)雜線性組合。而引入非線性激活函數(shù)則便于神經(jīng)網(wǎng)絡(luò)能夠更好地適應(yīng)不同類別的數(shù)據(jù)。目前被廣泛使用的激活函數(shù)有Sigmoid、ReLU、Mish等,它們各具特性,在神經(jīng)網(wǎng)絡(luò)中扮演著關(guān)鍵角色,幫助神經(jīng)網(wǎng)絡(luò)更好地進(jìn)行非線性建模和特征提取。

      (1) Sigmoid。

      Sigmoid公式如式(3)所示。

      f(x)=11+e-x(3)

      Sigmoid函數(shù)是一種被廣泛使用的激活函數(shù),具有易于計(jì)算、平滑可導(dǎo)、輸出值范圍有限和非線性等優(yōu)點(diǎn),但也存在一些缺點(diǎn),如容易出現(xiàn)梯度消失問(wèn)題、輸出值不是以0為中心、計(jì)算代價(jià)較大和不適合多分類問(wèn)題等。

      (2) tanh。

      tanh公式如式(4)所示。

      f(x)=ex-e-xex+e-x(4)

      tanh函數(shù)的值域?yàn)椋?1,1],且輸入的任何值都可以映射到這個(gè)范圍內(nèi)。tanh函數(shù)的導(dǎo)數(shù)的最大值為1,在反向傳播算法中會(huì)更容易產(chǎn)生較大的梯度,使得模型更快地收斂;當(dāng)神經(jīng)網(wǎng)絡(luò)的層數(shù)過(guò)多時(shí),Sigmoid函數(shù)的梯度會(huì)變得非常小,即使是在網(wǎng)絡(luò)較淺的情況下也有可能發(fā)生。而tanh函數(shù)在計(jì)算導(dǎo)數(shù)時(shí),能夠確保在正負(fù)飽和區(qū)間內(nèi)的導(dǎo)數(shù)不會(huì)太小,以避免梯度消失的問(wèn)題。然而,如果輸入數(shù)據(jù)中存在遠(yuǎn)離0的極端值,tanh函數(shù)會(huì)容易過(guò)度飽和,導(dǎo)致其導(dǎo)數(shù)幾乎接近于0,從而使得梯度也接近于0,難以有效地更新網(wǎng)絡(luò)。

      (3) ReLU。

      ReLU的公式可以表示為式(5)。

      f(x)=max(0,x)(5)

      激活函數(shù)ReLU被廣泛使用,能有效解決梯度消失問(wèn)題。不過(guò)存在一個(gè)缺點(diǎn),當(dāng)輸入為負(fù)數(shù)時(shí),神經(jīng)元的輸出為0,這就導(dǎo)致了所謂的“死區(qū)”現(xiàn)象。此外,當(dāng)ReLU輸出的均值不為0時(shí),可能會(huì)影響神經(jīng)網(wǎng)絡(luò)的性能。

      (4) Leaky ReLU。

      Leaky ReLU公式如(6)所示。

      f(x)=max(ax,x)(6)

      式中,a可以根據(jù)實(shí)際數(shù)據(jù)調(diào)整,通常情況下a取0.01。Leaky ReLU是修正線性單元激活函數(shù)的一種變體,與ReLU有些相似。與ReLU不同的是,Leaky ReLU會(huì)在負(fù)區(qū)間內(nèi)有一個(gè)非零輸出,這有助于避免神經(jīng)網(wǎng)絡(luò)中的“死亡神經(jīng)元”問(wèn)題。相比于ReLU,Leaky ReLU具有更好的魯棒性并且能夠有效地防止梯度的消失問(wèn)題。

      (5) Mish。

      Mish的方程式可表示式(7)。

      f(X)=x*tanh(ln(1+ex))(7)

      Mish激活函數(shù)的優(yōu)勢(shì)在于,當(dāng)輸入值為正時(shí),與ReLU激活函數(shù)表現(xiàn)類似,輸出值范圍在0到正無(wú)窮之間。然而,與其他激活函數(shù)相比,Mish的計(jì)算復(fù)雜度較高,這也是其不足之處。

      1.3.3 池化層

      池化層是神經(jīng)網(wǎng)絡(luò)中的一種下采樣層,為了減少網(wǎng)絡(luò)參數(shù),可以對(duì)特征圖進(jìn)行分區(qū)和降維等處理。池化層不會(huì)影響模型大小,池化操作的降維采樣過(guò)程可能會(huì)損失某些特征信息,因此一般情況下,池化操作只被應(yīng)用在卷積神經(jīng)網(wǎng)絡(luò)的后半部分,以減小特征圖的大小。

      最大池化是一種常用的池化計(jì)算方式,通常適用于須要保留最顯著特征的場(chǎng)景,如在圖像分類任務(wù)中,可以通過(guò)最大池化層提取物體的紋理、邊緣等關(guān)鍵特征。如圖2所示,對(duì)于每個(gè)子區(qū)域,池化層會(huì)找到其中的最大值作為該子區(qū)域的輸出。而這些提取出的最大值組成了一個(gè)新的矩陣,其大小與輸入數(shù)據(jù)相對(duì)應(yīng),具有降低過(guò)擬合風(fēng)險(xiǎn)、特征提取、降低計(jì)算量的優(yōu)點(diǎn)。

      1.3.4 全連接層

      全連接層在深度學(xué)習(xí)中被廣泛使用,它的每個(gè)節(jié)點(diǎn)都與前一層的所有節(jié)點(diǎn)建立連接,因此將前一層的特征信息整合成新的高維特征表示。通常情況下,全連接層在卷積層或者其他特征提取層之后使用,其輸出作為模型最終的分類結(jié)果或者回歸預(yù)測(cè)值。

      2 基于YOLOv5的水果檢測(cè)及成熟度分析

      本章首先對(duì)數(shù)據(jù)集和YOLOv5模型進(jìn)行了分析,運(yùn)用PyTorch框架對(duì)YOLOv5模型進(jìn)行了搭建并在此基礎(chǔ)上分析了模型性能和檢測(cè)效果。

      2.1 數(shù)據(jù)集介紹

      本次水果檢測(cè)及成熟度分析數(shù)據(jù)集是從網(wǎng)絡(luò)上收集的,包含草莓、蘋(píng)果和香蕉,每個(gè)類別都是包含成熟水果和未成熟水果。本文通過(guò)labelImg軟件對(duì)所有收集的圖片進(jìn)行標(biāo)注,標(biāo)注格式為YOLO格式并將其進(jìn)行劃分。處理完成的數(shù)據(jù)集一共有273張圖片用于訓(xùn)練,70張圖片用于驗(yàn)證。其中,檢測(cè)的類別包含成熟和未成熟草莓、成熟和未成熟蘋(píng)果、成熟和未成熟香蕉。

      2.2 YOLO網(wǎng)絡(luò)概述

      目標(biāo)檢測(cè)是計(jì)算機(jī)視覺(jué)中最基本的任務(wù)之一,是實(shí)現(xiàn)諸如人臉識(shí)別、視頻分割等更復(fù)雜任務(wù)的基礎(chǔ)。隨著計(jì)算機(jī)網(wǎng)絡(luò)的高速發(fā)展以及人工智能技術(shù)的突破,深度學(xué)習(xí)技術(shù)突飛猛進(jìn)[4]。YOLO是一種目標(biāo)檢測(cè)算法,基于深度卷積神經(jīng)網(wǎng)絡(luò),主要由3部分構(gòu)成。YOLO通過(guò)卷積神經(jīng)網(wǎng)絡(luò)提取輸入圖片的特征,共包含19個(gè)卷積層和5個(gè)池化層,這些層能夠逐層提取輸入圖片的抽象特征,從而獲得越來(lái)越高級(jí)別的特征[5]。YOLO網(wǎng)絡(luò)最后連接了2個(gè)全連接層,用來(lái)將卷積神經(jīng)網(wǎng)絡(luò)的輸出映射到不同類別的概率。同時(shí),全連接層也提供了絕對(duì)位置信息,即每個(gè)物體的邊界框的中心點(diǎn)和長(zhǎng)寬比,最后輸出通過(guò)非極大值抑制來(lái)獲取置信度最高的邊界框??傮w而言,YOLO網(wǎng)絡(luò)是一種非常優(yōu)秀的目標(biāo)檢測(cè)算法,能夠在GPU上實(shí)現(xiàn)實(shí)時(shí)目標(biāo)檢測(cè),對(duì)于小物體的檢測(cè)效果也很出色。

      2.3 評(píng)價(jià)指標(biāo)介紹

      一般用準(zhǔn)確率P(Precision)、召回率R(Recall)、平均精度AP(Average Precision)和平均精度mAP(mean Average Precision)作為模型精度的評(píng)估指標(biāo)。AP僅適用于單個(gè)類別的檢測(cè),而mAP相比之下可適用于多類別檢測(cè)任務(wù)。準(zhǔn)確率、召回率、平均精度以及平均精度的計(jì)算公式分別是(8)(9)(10)(11)。

      P=TPTP+FP(8)

      R=TPTP+FN(9)

      AP=∫10P(R)dR(10)

      mAP=∑Ni=1APiN(11)

      2.4 訓(xùn)練過(guò)程介紹

      YOLOv5是一種目標(biāo)檢測(cè)算法,采用了單階段檢測(cè)器的方式,與傳統(tǒng)的兩階段方法相比,具有訓(xùn)練速度快、預(yù)測(cè)速度快等優(yōu)點(diǎn)。YOLOv5的訓(xùn)練過(guò)程如下:首先,搜集、標(biāo)記圖像數(shù)據(jù)集用來(lái)后續(xù)模型訓(xùn)練。進(jìn)行訓(xùn)練之前,須要將數(shù)據(jù)集劃分為訓(xùn)練集和驗(yàn)證集,比例為8∶2。在數(shù)據(jù)預(yù)處理階段,須要進(jìn)行縮放、歸一化等操作。其次,選擇YOLOv5s模型作為初始模型。設(shè)置Epoch為100輪,進(jìn)行進(jìn)一步訓(xùn)練,以預(yù)訓(xùn)練模型為基礎(chǔ),在模型中輸入訓(xùn)練集進(jìn)行迭代訓(xùn)練,通過(guò)不斷更新權(quán)重參數(shù)并采用隨機(jī)梯度下降(Stochastic Gradient Descent,SGD)優(yōu)化算法,可以逐步降低損失函數(shù)的值,從而提高模型的預(yù)測(cè)性能。在每個(gè)訓(xùn)練周期結(jié)束后,利用驗(yàn)證集對(duì)模型進(jìn)行驗(yàn)證,通過(guò)各項(xiàng)指標(biāo)來(lái)評(píng)估模型的性能。最后,當(dāng)模型達(dá)到一定的訓(xùn)練步數(shù)或者訓(xùn)練目標(biāo)時(shí),將模型保存下來(lái),以備后面的推理使用。訓(xùn)練過(guò)程中的指標(biāo)如表1所示。

      訓(xùn)練過(guò)程如圖3所示,總共訓(xùn)練了100輪次。本次訓(xùn)練詳細(xì)記錄了訓(xùn)練損失圖、驗(yàn)證損失圖、召回率、精確率、mAP@0.5、mAP@0.5∶0.95,可以看到當(dāng)采用了預(yù)訓(xùn)練模型時(shí),模型很快就達(dá)到了相當(dāng)高的準(zhǔn)確率和召回率。mAP衡量了模型在不同類別上的平均檢測(cè)準(zhǔn)確度,數(shù)值范圍為0到1,越高表示模型性能越好。mAP的計(jì)算可以根據(jù)不同的IoU(Intersection over Union)閾值進(jìn)行。

      精確率是指模型正確預(yù)測(cè)為正例的樣本數(shù)占模型預(yù)測(cè)為正例的樣本數(shù)的比例。精確率越高表明對(duì)模型正例的預(yù)測(cè)越準(zhǔn),精確率隨著閾值的增加而增加,這意味著模型更加謹(jǐn)慎地將樣本預(yù)測(cè)為正例。在閾值較低的情況下,模型的精準(zhǔn)率可能會(huì)下降,導(dǎo)致將負(fù)樣本誤判為正樣本,進(jìn)而產(chǎn)生錯(cuò)誤。相反地,在閾值較高的情況下,模型會(huì)更為保守,只會(huì)將很確定的樣本預(yù)測(cè)為正例,從而精確率得到提高。

      召回率是指模型能夠正確預(yù)測(cè)為正例的樣本數(shù)與實(shí)際正例樣本數(shù)之間的比例,計(jì)算公式為:Recall = TP / (TP + FN),其中TP表示真正例,F(xiàn)N表示假反例。隨著閾值的增加,召回率逐漸降低,這表明模型更加謹(jǐn)慎地判定樣本為正例,有可能會(huì)犧牲一定數(shù)量的真實(shí)正例。當(dāng)閾值較低時(shí),模型可能會(huì)將更多的真實(shí)正例判定為正例,使召回率增加。相反,當(dāng)閾值較高時(shí),模型更趨于保守,更多樣本被判定為負(fù)例,只將非常確信的樣本預(yù)測(cè)為正例,因此召回率會(huì)降低。

      F1指標(biāo)圖通常用于評(píng)估分類模型在不同閾值下的性能表現(xiàn)。F1指標(biāo)綜合考慮了Precision和Recall,二者分別評(píng)估了模型分類結(jié)果的準(zhǔn)確性和完整性,二者結(jié)合綜合評(píng)估了模型的分類性能。在F1指標(biāo)圖中,橫軸一般表示分類閾值的變化,縱軸則表示F1分?jǐn)?shù)。通過(guò)觀察F1指標(biāo)圖,可以幫助確定最佳的分類閾值,有助于根據(jù)具體需求選擇合適的閾值來(lái)平衡精確率和召回率。

      P-R曲線以召回率為橫軸、精確率為縱軸,能夠幫助了解模型在不同閾值下發(fā)生的變化。在P-R曲線中的一個(gè)關(guān)鍵節(jié)點(diǎn)是當(dāng)精確率和召回率相等時(shí),被稱為平衡點(diǎn)。該點(diǎn)對(duì)應(yīng)于模型在精確率和召回率上取得平衡的閾值,通常被視為評(píng)估模型性能的指標(biāo)之一。

      2.5 可視化界面

      為了提高檢測(cè)操作的便捷性,本研究基于PyQT5開(kāi)發(fā)了一個(gè)直觀易用的可視化界面,用于圖片和視頻的檢測(cè)。PyQT5可用于創(chuàng)建跨平臺(tái)的桌面應(yīng)用程序。因此,本文選擇了PyQT5進(jìn)行相關(guān)開(kāi)發(fā)。首先,根據(jù)實(shí)際要求和界面需求,采用Qt Designer來(lái)設(shè)計(jì)用戶界面并將設(shè)計(jì)好的.ui文件轉(zhuǎn)換為Python文件。其次,在PyCharm中編寫(xiě)主程序代碼并導(dǎo)入所需的PyQT5模塊、生成的.py文件以及其他必要的庫(kù)。最后,本文編寫(xiě)了Python代碼來(lái)實(shí)現(xiàn)用戶界面上的交互行為和邏輯。水果檢測(cè)及成熟度分析系統(tǒng)的可視化界面如圖4所示。界面頂部的2個(gè)按鈕用于選擇圖片檢測(cè)和視頻檢測(cè),通過(guò)這樣的界面設(shè)計(jì),用戶可以方便地進(jìn)行水果檢測(cè)和成熟度分析操作。

      經(jīng)過(guò)使用測(cè)試,該可視化操作界面流暢,點(diǎn)擊“圖片檢測(cè)”和“視頻檢測(cè)”均能夠打開(kāi)代碼中設(shè)定好的目標(biāo)文件夾,以選擇用于檢測(cè)的圖片或者視頻。

      3 結(jié)語(yǔ)

      本研究設(shè)計(jì)和實(shí)現(xiàn)了一個(gè)基于深度學(xué)習(xí)的水果檢測(cè)及成熟度分析系統(tǒng),通過(guò)對(duì)圖像中的水果進(jìn)行準(zhǔn)確的檢測(cè)和成熟度的評(píng)估,為農(nóng)業(yè)生產(chǎn)和食品行業(yè)提供了有力的支持。本系統(tǒng)以YOLOv5作為基礎(chǔ)模型,實(shí)現(xiàn)了對(duì)草莓、蘋(píng)果和香蕉的成熟果實(shí)和未成熟果實(shí)進(jìn)行檢測(cè)識(shí)別,具有一定的現(xiàn)實(shí)意義與實(shí)用價(jià)值。

      參考文獻(xiàn)

      [1]王曉輝.基于梯度分析的卷積神經(jīng)網(wǎng)絡(luò)可視化研究[D].大連:大連海洋大學(xué),2023.

      [2]羅家梅.改進(jìn)YOLOv5的水果品質(zhì)檢測(cè)與分類方法研究[D].贛州:贛南師范大學(xué),2023.

      [3]許昌華.基于神經(jīng)網(wǎng)絡(luò)的果蔬自動(dòng)分級(jí)系統(tǒng)算法的研究及應(yīng)用[D].揚(yáng)州:揚(yáng)州大學(xué),2022.

      [4]許德剛,王露,李凡.深度學(xué)習(xí)的典型目標(biāo)檢測(cè)算法研究綜述[J].計(jì)算機(jī)工程與應(yīng)用,2021(8):10-25.

      [5]潘輝.基于深度學(xué)習(xí)的水果識(shí)別抓取系統(tǒng)[D].武漢:江漢大學(xué),2023.

      (編輯 王雪芬)

      Fruit identification and ripeness detection system based on YOLOv5

      ZHENG Kaiwen, ZHANG&n3ws6v7qJNTKpCJED52VsyA==bsp; Chengxi, CHEN Aiqin

      (Nanjing University of Science and Technology ZiJin College, Nanjing 210023, China)

      Abstract: In China, fruits have become one of the indispensable foods in people’s life, and fruit detection and ripening analysis is an important research direction in the field of agricultural production and food processing. Traditional methods rely on manual operation, which is time-consuming and error-prone. The automated method based on deep learning can improve the accuracy and reduce the cost, which has the prospect of wide application. Therefore, this paper researches and designs a deep learning-based fruit detection and ripeness analysis system, which is mainly based on PyTorch deep learning framework to build YOLOv5 algorithm to detect and identify ripe and unripe fruits of strawberries, apples, and bananas, which can greatly improve the detection efficiency and accuracy, and it has a certain practical significance and practical value.

      Key words: fruit detection; ripeness analysis; YOLOv5; deep learning

      宁南县| 临泽县| 团风县| 逊克县| 嵩明县| 科技| 绿春县| 神农架林区| 武山县| 庐江县| 澄江县| 灵台县| 浪卡子县| 北川| 和田市| 安新县| 平陆县| 杨浦区| 绍兴市| 遂昌县| 莱州市| 武夷山市| 南安市| 镇赉县| 安新县| 潜江市| 调兵山市| 长岭县| 融水| 沙坪坝区| 潮州市| 浦城县| 灵丘县| 玉门市| 佛冈县| 榆社县| 禹州市| 慈利县| 天镇县| 东阳市| 岐山县|