999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于改進YOLOv5的菌落計數算法研究

2024-10-10 00:00:00樊翔宇代琦
軟件工程 2024年10期

關鍵詞:YOLOv5;圖像識別;Kmeans++;Focal-EIoU;SPPCSPS;置換注意力機制

中圖分類號:TP391 文獻標志碼:A

0 引言(Introduction)

微生物學當前面臨重大挑戰,其中細菌感染對人類健康構成了嚴重威脅。在臨床實踐中,從樣本中進行細菌培養是關鍵步驟之一。在醫療環境中,檢測人員不可避免地會使用細菌培養技術,并依據培養出的菌落總數評估食品和環境的細菌污染程度[1]。然而,傳統的人工計數方法效率低、精度有限,無法滿足實驗人員的實際需求。因此,開發一種高效、高精度的菌落計數方法,成為生物行業亟待解決的重要問題。

為解決傳統菌落計數方法存在的效率低、精度有限的問題,本文提出了一種基于改進YOLOv5模型的菌落計數算法。該算法通過Kmeans++[2]聚類算法優化初始錨框的大小;添加了小目標檢測層,以更好地檢測小目標;采用Focal-EIoU損失函數,有效解決了縱橫比模糊的問題;引入SPPCSPC池化層,提高了計算效率和特征表達能力;增加了ShuffleAttention[3]注意力機制,增強了特征表達能力。

1 相關研究(Related research)

隨著計算機科學技術的高速發展,基于深度學習的目標檢測算法日益受到關注。目標檢測算法是一種用于定位圖像中對象實例的計算機視覺技術,通常利用機器學習和深度學習進行定位識別。基于深度學習的目標檢測算法可以分為兩類。一類為兩階段(Two-Stage)網絡目標檢測算法,如R-CNN[4]、SPP-Net[5]、Fast-RCNN[6]、Mask R-CNN[7]等算法。這類目標檢測算法的初始階段用于提取對象區域,第二階段用于分類并進一步細化對象定位。兩階段網絡目標檢測算法可以實現高精度的物體檢測,但是其資源消耗較大且計算速度較慢。為此,研究者提出了另一種單階段(One-Stage)網絡目標檢測算法,如SSD[8]、RetinaNet[9]、FoveaBox[10]、YOLO[11]等算法。這類目標檢測算法通過使用錨框對整個圖像的區域進行網絡預測,并對預測結果進行解碼以生成對象的最終邊界框。然而,相較于兩階段網絡目標檢測算法,單階段網絡目標檢測算法計算速度快,但是其精度比一階網絡目標檢測算法效果差。因此,本文的研究目標是在提高檢測速度的同時,進一步提升檢測的精度。

2 YOLOv5目標檢測模型(YOLOv5 object detectionmodel)

YOLOv5[12]模型是一種基于深度學習的目標檢測算法。如圖1所示,YOLOv5的網絡結構分為3個部分:骨干網絡(Backbone)、頸部網絡(Neck)、頭部網絡(Head)。

YOLOv5的Backbone模塊是基于CSPDarknet53構建的,該結構采用跨階段部分連接的結構加速模型訓練速度,并在保持精度的情況下降低模型復雜度。CSPDarknet53將一個大的卷積層分成兩個較小的卷積層,這種分割策略不僅可以減少計算量,還可以提高模型的非線性表達能力。此外,CSPDarknet53使用了殘差連接和密集連接技術,進一步強化了特征的傳遞和重用。

YOLOv5的Neck 模塊采用特征金字塔網絡(FeaturePyramid Network,FPN[13])結構,該結構旨在提升檢測性能,尤其在小目標檢測和遠距離目標檢測方面表現出色。FPN是一種多尺度特征融合技術,可以將來自不同深度的特征圖進行融合,從而生成具有不同分辨率的特征金字塔。這種金字塔結構可以更好地適應不同尺度的目標,同時提高目標檢測的準確性。

YOLOv5的Head模塊是用于生成目標檢測的邊界框和類別預測的關鍵部分,它負責將特征金字塔網絡提取的特征轉化為目標檢測的結果。YOLOv5的預測頭由多個卷積層組成,這些卷積層旨在對特征進行進一步的處理和壓縮,以獲得更豐富的語義信息。在預測頭的最后一層,YOLOv5使用了不同尺度的輸出層,每個輸出層都負責預測不同尺度下的目標邊界框和類別。具體來說,YOLOv5在3個不同的尺度下生成了3組邊界框。在訓練階段,YOLOv5會根據實際標注的邊界框信息,通過計算損失函數優化預測結果。通過預測頭的處理,YOLOv5可以從特征圖中提取目標檢測所需的信息,并生成相應的邊界框和類別預測,實現對圖像中目標的準確定位。

3 YOLOv5算法改進(Improvement of YOLOv5algorithm)

YOLOv5是當前主流的目標檢測算法之一,在大多數應用場景下已展現出其高效性。然而,在菌落計數這一特定任務中,仍面臨兩大挑戰:一是背景干擾問題,菌落通常在培養皿上進行計數,部分菌落會長到培養皿的邊緣位置與培養皿混為一體,難以區分,這會導致在計數過程中出現漏算的情況;二是菌落分布在培養皿的各個位置,有的會發生粘黏、有的可能重疊,并且菌落大小不一,尤其是小型菌落難以準確識別。針對這些問題,本文對骨干網絡和特征融合網絡進行重新設計與調整,提出了YOLOES網絡模型,該模型可以有效地應對菌落計數工作面臨的挑戰。YOLOES網絡結構如圖2所示。

3.1 用Kmeans++改進錨框算法

YOLOv5使用Kmean算法確定錨框,但在Kmeans聚類過程中過于依賴隨機初始化的聚類中心,可能會得到局部最優解。所以,本文采用Kmeans++算法,智能選擇初始聚類中心,使得生成的錨框能更準確地匹配目標的尺寸和比例。Kmeans++算法可以選擇具有代表性的初始聚類中心,從而更好地考慮數據集中不同的特點,生成更準確、更合理的錨框,進而提高目標檢測算法的性能。Kmeans++算法在聚類過程使用的公式如下:

其中:D(x)表示每個樣本與現有聚類中心的距離;P(x)表示每個樣本被選為聚類中心的概率;X 表示數據集的目標框寬度和高度計算概率,選擇下一個聚類中心,可以減少隨機性對聚類結果的影響,提高穩定性。

3.2 添加小目標檢測層

YOLOv5是基于骨干網絡Backbone模塊進行特征的提取,通過Head模塊進行目標檢測。然而,對于菌落這類尺寸較小、特征信息不夠明顯的目標,網絡可能難以準確地捕獲和區分其特征。本文則在YOLOv5原有的3個檢測層上,新增了一個160×160的微小目標檢測層,可以更好地捕捉微小目標的位置信息和細節特征,加強微小目標定位。特征圖尺寸表如表1所示。

3.4 使用SPPCSPC池化層

YOLOv5采用SPPF快速空間金字塔池化,將輸入特征圖映射為固定長度的特征向量,這意味著無法從不同尺度的特征中獲取更詳細的信息。YOLOv5對每個區域的特征進行統計,并未考慮其空間位置,因此它對目標的位置敏感性較低,在識別小目標時,SPPF無法很好地捕捉到這些信息。

SPPCSPC模塊基于SPP模塊和CSP結構構建,并在SPP的基礎上增加了一個卷積,以增強特征整合的魯棒性,SPPCSPS結構如圖3所示。該模塊首先將骨干的C3模塊提取的特征分為兩個部分:SPP和傳統卷積操作。SPP結構由4個分支組成,對應著池化核大小為1×1、5×5、9×9和13×13的池化核操作。這4種不同的池化核使得SPPCSPC結構有4種不同視野用來感知目標,進而可以更好地區分小型目標和大型目標,避免圖像處理操作引起的圖像失真問題。通過Concat將SPP和傳統卷積操作合并在一起,以實現更快的速度和更高的準確性。

本文將SPPF改進為SPPCSPS,因為數據集中含有小目標,為了保留其信息,不使Maxpool過多地重復獲得局部極大值信息,導致信息更加匱乏,因此本文將SPPCSP的原始卷積核大小改為1×1、3×3、5×5和7×7,以更好地保留小目標的特征信息。

3.5 添加置換注意力機制

SA(Shuffle Attention)是一種用于卷積神經網絡的注意力機制模塊,其目的是通過引入通道交換操作,增強特征圖中不同通道之間的交互和信息傳遞能力。在傳統的卷積神經網絡中,不同通道的特征是獨立處理的,并沒有考慮到它們之間的關聯性;而SA通過將輸入特征圖按照通道數分成若干組,然后在組內進行通道交換,從而使得不同通道之間的信息可以進行混合和交互。SA模塊結構如圖4所示。

對于菌落計數任務,模型需要考慮背景干擾和小目標檢測的挑戰。為了增強小目標的檢測能力,引入SA模塊,通過計算特征圖上不同位置之間的相似性度量,為小目標提供更多的權重,使其在特征融合過程中起到更重要的作用。這樣,模型就能夠更集中地關注小目標所在的區域。通過通道交換機制增強小目標的特征表示能力。SA可以有效地提高小目標的檢測和識別準確性,并減少背景干擾對最終結果的影響,如公式(7)所示:

將空間注意力和通道注意力分支的輸出與通道洗牌策略相結合,模型可以充分利用圖像中的空間和通道信息,并實現沿通道維度的跨組信息流。

4 實驗結果與分析(Experimental result and analysis)

4.1 實驗數據

本文使用的數據來源于香港科技大學使用索尼IMX586拍攝的大腸桿菌菌落,其液體培養基采用胰蛋白酶大豆肉湯(TSB),采用平板計數瓊脂(PCA)作為固體培養基,0.9%無菌生理鹽水作為稀釋液。數據集包含訓練數據集(864張圖像)和驗證數據集(96張圖像)。

4.2 實驗環境

本文實驗環境為Windows 11,使用Python語言,Pytorch深度學習框架。硬件配置為CPU 13th Gen Intel(R) Core(TM) i9-13900H,內存為32 GB,顯卡為Nvidia GeForce RTX4060,顯存為16 GB。

超參數設置為輸入分辨率為640×640,訓練輪次數為300,批處理尺寸大小為8,初始學習率為0.01,權重衰減系數為0.005,優化器為SGD,所有實驗模型都按照上述參數進行實驗。

4.3 實驗評價指標

本文使用精確率(Precision)、召回率(Recall)、平均精度均值(mAP)等指標評價YOLOES算法的性能。Precision表示預測為真實正例樣本數占所有被預測正例樣本數的總數,用來評估實驗中正例被正確預測的概率。Recall表示預測為真實正例樣本數占實際正例樣本總數的比例,用來評估實驗的漏檢概率。mAP是用來平衡精確率與召回率計算結果的,mAP代表了數據集中所有類別平均精度的平均值。本文以閾值為0.5的mAP(mAP@0.5)作為評價指標,即步長為0.05,IoU閾值為0.5的mAP(IoU大于0.5時的預測有效)。

4.4 超參數實驗結果

YOLOv5模型的超參數為官方訓練針對于Coco(microsoftCommon Objects in Context)數據集和Voc(Visual ObjectClasses)數據集,可能并不完全適用于小目標的識別任務。所以,本文對YOLOv5的超參數anchor_t進行了一些調整,使其能更好地識別小目標。超參數anchor_t為anchor的閾值,用于篩選anchor。對一些小目標,需要一個比較小的anchor box進行匹配,所以需要設置一個較小的anchor_t。表2所示是設置不同anchor_t值時,對模型精度的影響。

4.5 消融實驗結果

為了驗證上述改進方法對YOLOv5模型的影響,在相同數據集下分別使用不同的改進模塊進行實驗,以YOLOv5作為基礎網絡,最終添加所有改進模塊的方法,消融實驗結果如表3所示。

由表3可知,將錨框算法改進為Kmeans++算法時,與初始YOLOv5模型相比,Precision下降了0.1百分點,Recall提升了3.8百分點,mAP@0.5提升了4百分點,說明將錨框算法改進為Kmeans++后,生成的錨框能更準確地匹配到目標。當添加了小目標檢測層時,相比于初始YOLOv5模型,Precision下降了2.5百分點,Recall提升了4.7百分點,mAP@0.5提升了2.6百分點,添加小目標檢測雖然導致精度有所下降,但是模型的召回率卻明顯提高,說明添加小目標檢測層可以適應小目標尺寸問題。在將損失函數改為Focal-EIoU 后,與初始YOLOv5模型相比,Precision提升了0.7百分點,Recall提升了5.2百分點,mAP@0.5提升了4.5百分點,說明改進后的模型更關注小菌落的識別,進而提升了模型的準確性。空間金字塔池化層改為SPPCSPS后,與初始YOLOv5模型相比,Precision提升了1.1百分點,Recall提升了1.4百分點,mAP@0.5 提升了0.9 百分點,說明空間金字塔池化層改為SPPCSPS后,模型通過4個不同池化核感知不同尺寸的目標,可以有效地提高對不同尺寸菌落的識別精度。添加SA注意力機制后,與初始YOLOv5模型相比,Precision提升了3.4百分點,Recall提升了1.9百分點,mAP@0.5提升了4.2百分點,說明添加SA注意力機制后,模型可以有效地將圖片中的背景干擾過濾,并提高小目標檢測的權重。將上述的全部方法添加進YOLOv5中,與初始YOLOv5模型相比,Precision提升了17.5百分點,Recall提升了6.3百分點,mAP@0.5提升了17.9百分點,證明了YOLOES在菌落計數任務中表現優異。

4.6 實驗結果對比

為了進一步驗證本文提出的YOLOES網絡結構的效率,研究人員進行了一系列對比實驗,將其與YOLO系列的前幾代網絡以及其他主流網絡框架進行了全面的性能比較。實驗結果對比如表4所示。

由表4可知,YOLOES 相較于前幾代YOLO 模型,mAP@0.5分別提升了19.8百分點、17.6百分點、17.3百分點,與其他目標檢測模型EfficientDet相比,mAP@0.5提升了16.1百分點。可見,本論文提出的模型YOLOES在菌落計數任務中比現有菌落計數算法有著更好的表現。

5 結論(Conclusion)

本文改進了YOLOv5網絡,提出了YOLOES模型,并將其應用于菌落計數任務中。首先,使用Kmeans++聚類算法對錨框進行重聚類,避免網絡陷入局部最優解,從而增強了模型的穩定性和魯棒性。其次,添加了小目標檢測層并改進了Focal-EIoU損失函數,使網絡更加關注小目標,從而提高了小目標的檢測精度。同時,改進了空間金字塔模塊,并引入了SPPCSPS模塊,從不同的視野感知目標,進一步提升了檢測精度。此外,添加了Shuffle Attention注意力機制,有效地增強了特征圖中不同通道之間的交互和信息傳遞能力,使得模型更加集中地關注小目標。實驗結果表明,改進后的算法YOLOES在菌落計數任務上表現出較高的檢測精度,能夠準確、高效地完成目標檢測任務。

作者簡介:

樊翔宇(1998-),男,碩士生。研究領域:圖像處理與模式識別。

代琦(1979-),男 ,博士,教授。研究領域:醫學圖像處理,功能基因組分析。本文通信作者。

主站蜘蛛池模板: 国产综合在线观看视频| 国产成人综合久久| 97免费在线观看视频| 国产精品香蕉在线观看不卡| 91青青视频| 亚洲欧美不卡中文字幕| 亚洲69视频| 71pao成人国产永久免费视频| 国产精品夜夜嗨视频免费视频 | 国产精品流白浆在线观看| 色婷婷综合激情视频免费看| 欧美国产日韩一区二区三区精品影视| 精品国产一区二区三区在线观看 | 欧美一区精品| 一级毛片免费高清视频| 亚洲成在线观看 | 久久永久精品免费视频| 任我操在线视频| 亚洲欧美日韩动漫| 亚洲Av综合日韩精品久久久| 亚洲精品va| 亚洲三级片在线看| 一级一级一片免费| 久久久久九九精品影院| 亚洲欧洲日韩久久狠狠爱| 秋霞一区二区三区| 国产一级视频久久| 无码国产偷倩在线播放老年人| 国产swag在线观看| 免费一级成人毛片| 精品国产网| 97在线观看视频免费| 国产精品视频观看裸模| 国产素人在线| 国产精品美人久久久久久AV| 2019年国产精品自拍不卡| 国产在线小视频| 亚洲精品不卡午夜精品| 日本成人精品视频| 久久香蕉国产线看观| 色婷婷色丁香| 欧美啪啪视频免码| 国产主播一区二区三区| 最新日本中文字幕| 国产精品主播| 亚洲无码不卡网| 国产91特黄特色A级毛片| 在线精品亚洲国产| 亚洲日本精品一区二区| 奇米影视狠狠精品7777| 国产精品人莉莉成在线播放| 在线免费不卡视频| 五月婷婷精品| 高清乱码精品福利在线视频| 免费女人18毛片a级毛片视频| 亚洲午夜片| 熟女日韩精品2区| 久久精品人人做人人爽97| 91久久性奴调教国产免费| 久久夜夜视频| 青草视频网站在线观看| 人妻无码中文字幕第一区| 麻豆精品在线视频| 亚洲黄网视频| 日韩AV无码免费一二三区| 欧美在线精品怡红院| 国产国模一区二区三区四区| 成人亚洲视频| 欧美国产日韩在线观看| 国产日韩av在线播放| 国产精品妖精视频| 国产中文在线亚洲精品官网| jijzzizz老师出水喷水喷出| 日韩欧美中文| 国产精品国产主播在线观看| 国产精品第一区| 亚洲成人播放| 欧美精品aⅴ在线视频| 色婷婷丁香| 久久熟女AV| 亚洲天堂视频在线观看免费| 久久久久亚洲AV成人网站软件|