

















摘要:
針對果園環境中柑橘果實相互重疊和被枝葉遮擋, 導致機器視覺識別柑橘果實與定位目標柑橘空間位置難度較大的問題, 提出了一種基于YOLOv8-SAM的改進算法。 通過增加BAM(Bottlenet Attention Module)注意力機制提高模型對被遮擋柑橘的識別準確率, 運用SAM(Segment Anything Model)算法對被遮擋柑橘輪廓形狀進行識別, 并運用邊緣檢測法結合雙目立體相機三維稠密深度點云得到被遮擋柑橘有效輪廓邊, 使用最小二乘法擬合出被遮擋柑橘的完整輪廓以確定目標柑橘果實更精確的空間坐標位置。 試驗結果表明: 該算法可以準確識別并分離目標柑橘果實, 同時更精確地定位柑橘果實空間坐標。 改進的YOLOv8-SAM算法在果園環境中對被遮擋柑橘果實的識別平均精度達到91.1%, 對被遮擋柑橘形心空間坐標的平均定位誤差相比傳統定位方法減少了16.22 mm, 平均果徑誤差降低了7.99%, 可為柑橘采摘機器人對重疊與被遮擋果實的準確識別提供參考。
關" 鍵" 詞:
柑橘采摘; 機器視覺; 空間定位; 輪廓重建; 遮擋果實; 圖像處理
中圖分類號:
TP391.41
文獻標志碼:A
文章編號:16739868(2025)02017113
收稿日期:20240124
基金項目:
國家自然科學基金項目(31971782); 重慶市科委產業化重點專項(cstc2018jszx-cyzdX0051)。
作者簡介:
王元昊, 碩士研究生, 主要從事智能農業裝備研究。
通信作者: 李光林, 博士, 教授, 博士研究生導師。
DOI: 10.13718/j.cnki.xdzk.2025.02.015
王元昊, 婁歡歡, 羅紅品, 等. 基于改進YOLOv8算法對被遮擋柑橘的識別與定位優化 [J]. 西南大學學報(自然科學版), 2025, 47(2): 171-183.
Optimization of Identification and Localization of
Occluded Citrus Based on Improved YOLOv8 Algorithm
WANG Yuanhao," LOU Huanhuan," LUO Hongpin,
FU Xinglan," LI Guanglin
College of Engineering and Technology, Southwest University, Chongqing 400715, China
Abstract:
In response to the challenges for machine vision to identify citrus fruit and locate the spatial position of target citrus in orchards due to overlapping fruit and occlusion by branches and leaves, a modified algorithm based on YOLOv8-SAM was proposed. The models accuracy in identifying occluded citrus fruit was improved by adding BAM (Bottlenet Attention Module) attention mechanism. The contour shape of occluded citrus fruit was identified using SAM (Segment Anything Model) algorithm, and effective contour edges were obtained by combining edge detection with a binocular cameras 3D dense point cloud. The complete contour of the occluded citrus fruit was fitted using least squares to determine the more precise spatial coordinate position of the target citrus fruit. The experimental results show that the algorithm can accurately identify and separate the target citrus fruit, and more precisely locate the spatial coordinate of the citrus fruit. The average identification accuracy of the modified YOLOv8-SAM algorithm for occluded citrus fruit in the orchard environment is 91.1%, and the average spatial coordinate positioning error of the citrus fruits center compared to traditional positioning methods is reduced by 16.22 mm, and the average fruit diameter error is reduced by 7.99%. This algorithm can provide reference for accurate identification of overlapping and occluded citrus fruit by citrus harvesting robots.
Key words:
citrus picking; machine vision; spatial positioning; contour reconstruction; occluded fruit; image processing
我國是世界第一大柑橘生產國, 約占世界柑橘產量的三分之一[1]。 據國家統計局和聯合國糧食及農業組織統計, 2020年我國柑橘種植面積超過2.8×106 hm2, 產量超過5×107 t, 分布于全國19個省(自治區、 直轄市)[2]。 目前, 柑橘果園仍采用人工采摘的方式收獲成熟柑橘果實, 采摘過程耗時長, 勞動強度大, 人工成本高, 如何實現自動化采摘代替人工采摘作業成為柑橘果園管理中亟待解決的問題[3]。
近年來, 隨著機器視覺和人工智能技術的迅猛發展, 新的圖像處理與分析方法層出不窮[4]。 然而在自然環境下, 柑橘多個果實相互遮擋、 重疊, 以及果實部分受枝葉遮擋的現象非常嚴重, 給目標果實的檢測識別與空間定位帶來了很大的困難[5]。 圖像分割技術在農業生產方面的應用吸引了眾多學者的關注[6]。 劉振宇等[7]提出了一種凝聚層次聚類算法用于檢測被遮擋果實, 將圓心點集作為改進型凝聚層次聚類分類器的輸入, 并對輸出結果進行圓擬合實現遮擋果實的識別, 對未被遮擋的果實識別率高達93.53%, 但對被大面積遮擋的果實識別效果較差, 僅為82.71%。 李立君等[8]基于改進的凸殼理論對被遮擋油茶果進行定位, 對被遮擋油茶果的正確識別率達到了93.21%, 平均分割誤差和平均重合度分別為5.53%和93.43%。 李頎等[9]提出了基于YCbCr顏色空間模型和Otsu閾值分割技術, 應用邊緣檢測法和凸包算法提取被遮擋果實的輪廓特征來定位目標果實, 果實平均檢出率達到90.48%。 吳德剛等[10]提出了一種利用K-means聚類方法分離被遮擋的蘋果目標與背景, 采用Canny算法和凸殼理論相融合的方法獲得蘋果被遮擋部分真實輪廓, 運用三點定圓理論實現了被遮擋蘋果整體目標的邊緣定位, 平均重疊系數為88.921%。 通過對上述文獻的分析可以看出, 現有算法多對被遮擋果實的二維圖像進行識別, 雖具有較高的準確度, 但未結合果實的三維空間信息, 無法獲得被遮擋果實的空間坐標, 難以對果實采摘作業的空間標定提供實質性的幫助。
因此, 為解決柑橘果實受枝葉與果實遮擋嚴重, 難以對目標果實進行準確空間定位的問題, 本文提出了一種使用雙目立體相機三維稠密深度點云并基于YOLOv8-SAM算法對目標柑橘進行識別與空間定位的方法, 同時運用邊緣檢測法提取被遮擋果實的輪廓特征, 對其進行橢圓擬合補完, 測算果實直徑并推斷果實形心空間位置, 實現對被遮擋柑橘果實的準確分割與精確空間定位, 為柑橘采摘的空間標定提供有效幫助。
1" 材料與方法
1.1" 數據集構建
本次試驗使用的圖像數據為果園實地拍攝所得, 拍攝地點為西南大學柑桔研究所, 拍攝設備使用的是Canon 60D和手機, 圖片保存格式為JPG, 分辨率為4 032×3 072。 圖1為部分采集到的圖像數據。
為了對真實采摘環境中的目標柑橘果實進行檢測識別, 采集了1 796張不同角度、 光照、 距離、 大小的待采摘柑橘圖片, 使用LabelImg工具對原始圖像進行標注, 并隨機劃分為訓練集1 200張、 驗證集300張、 測試集296張。 同時, 為了提高模型的魯棒性和泛化能力, 防止過擬合, 在模型訓練前對數據集進行數據增強。 增強方式包括翻轉、 等比例縮放、 隨機平移、 模糊、 調節亮度等。 數據增強后得到4 382張待采摘柑橘圖片, 其中訓練集2 921張、 驗證集730張、 測試集731張。
1.2" 試驗環境與訓練策略
本文訓練使用的硬件環境為CPU Intel(R) Xeon(R) Gold 6242R CPU @ 3.10 GHz, GPU Tesla V100-PCIE 32 GB×2, 內存126 GB, 軟件環境為Ubuntu 20.04.1操作系統, Python 3.8, PyTorch 1.10, Torchvision 0.11, CUDA 11.2, cuDNN 8.2.0。
識別試驗的計算機硬件環境為CPU Intel(R) Core(TM) i7-10875H @ 2.30 GHz, GPU GeForce RTX 2060, 內存8 GB×2, 軟件環境為Win10操作系統, Python 3.8, PyTorch 1.10, Torchvision 0.11, CUDA 11.3, cuDNN 8.2.0。
經多次調整參數測試后, 最終確定訓練時選用的模型參數如表1所示。
1.3" 評價指標
識別的精度是對柑橘果實目標檢測的重要評價指標, 因此本文選擇準確率P(Precision)、 召回率R(Recall)、 平均精度AP(Average Precision)、 平均精度均值mAP(Mean Average Precision)作為目標檢測模型的評價指標。 其中P可以反映模型的查準率, R可以反映模型的查全率, AP可以反映單個類別的平均精度, mAP可以反映所有類別的平均精度均值[11]。 具體計算方法如下:
P=Tp(Tp+FP)×100%(1)
R=Tp(Tp+FN)×100%(2)
AP=∫10P·(R)dR(3)
mAP=1N∑Ni=1APi(4)
其中: Tp表示模型預測結果為正樣本, 實際結果也為正樣本, 即正確識別出目標果實的數量; Fp表示模型預測結果為正樣本, 實際結果為負樣本, 即誤報的負樣本數量; FN表示模型預測結果為負樣本, 實際結果為正樣本, 即錯誤識別的樣本數量。
文中算法的主要功能是為被遮擋的柑橘果實進行更準確的識別與空間定位, 得到目標果實的形心空間坐標與果實直徑, 為柑橘采摘機器人末端執行器的運動目標點提供參考。
利用目標果實擬合輪廓與人工標注果實輪廓區域內部像素的面積重合度作為算法擬合的評價指標[12], 計算公式為:
C=|Q∩Qi|Q×100%(5)
式中: C為重合度; Q為人工標注果實輪廓區域內像素個數; Qi為擬合輪廓內像素個數。
在實際試驗過程中, 很難準確獲取目標果實的實際形心空間坐標, 不適合以形心空間位置誤差來評價算法的定位精度。 因此, 僅將被遮擋柑橘果實的推斷空間位置與其未被遮擋狀態下推斷的空間位置進行對比, 來評價算法的定位效果[13]。
算法定位誤差的計算公式為:
Δ=(xi-xj)2+(yi-yj)2+(zi-zj)2(6)
式中: Δ為算法定位誤差; xi, yi, zi為未被遮擋狀態下的柑橘果實推斷三維空間坐標; xj, yj, zj為同一柑橘果實被遮擋狀態下的算法推斷三維空間坐標。
果徑誤差的計算公式為:
E=|D-Di|D×100%(7)
式中: E為果徑推斷誤差; D為目標果實真實直徑; Di為推斷果實直徑。
2" 算法
2.1" 改進的YOLO目標檢測與分割算法
由于傳統的圖像處理方法對柑橘果實識別與定位的誤差較大, 且難以分離相互重疊的柑橘果實, 本文提出一種結合改進的YOLOv8與SAM算法的目標檢測與分割模型, 較傳統方法提高了識別準確率, 具有較強的魯棒性, 可適應果園中的復雜環境變化。
YOLOv8是目前較前沿的一階段目標檢測算法, 能在保證較高檢測精度的同時保持較快的檢測速度[14]。 本文將YOLOv8網絡作為目標檢測模型來構建空間定位系統, 圖2為YOLOv8網絡模型的結構示意圖。
YOLOv8網絡的檢測模型主要分為4個模塊: 輸入模塊、 骨干網絡模塊、 檢測頭模塊和輸出模塊。 輸入模塊負責把待檢測的柑橘圖片輸入到網絡模型中, 通過Mosaic數據增強、 自適應錨框計算與自適應圖像縮放等方法, 對輸入的柑橘圖像進行預處理, 并將原始圖像統一縮放到同一標準尺寸; 骨干網絡模塊負責提取圖片特征, 其中C2f模塊在保證模型輕量化的同時能獲得更加豐富的梯度流信息; 檢測頭模塊采用FPN(Feature Pyramid Networks)自頂向下和PAN(Pixel Aggregation Network)自底向上的雙塔結構傳遞特征, 能進一步提高模型特征提取能力; 輸出模塊把提取的特征經過非極大抑制得到圖片中檢測目標的置信度與坐標[15]。
由于柑橘果實相互重疊極易被識別為同一果實, 且YOLOv8網絡模型中的骨干網絡模塊隱含層容易忽視被遮擋過大的果實特征信息, 而BAM注意力機制模塊能對這部分特征信息進行注意力重構, 形成一種分層的注意力機制, 可以有效地抑制背景特征, 使模型更加聚焦于前景特征, 從而增強高級語義, 實現更高的性能和更準確的識別效果[16]。 BAM模塊結構如圖3所示。
在骨干網絡模塊中增加BAM注意力機制模塊, 置于C2f模塊之后, BAM模塊會通過2個分離的路徑Channel和Spatial, 得到1個Attention Map, 可以很好地和YOLOv8目標檢測算法進行融合, 使提取到的高層特征更加豐富, 更加適用于柑橘果實的檢測。
通過引入混合注意力模塊, 共同結合通道注意力和空間注意力, 可以有效檢測目標輪廓特征, 從而得到更好的對重疊果實和被遮擋果實的檢測效果。 其計算方法為:
M(F)=σ(Mc(F)+Ms(F))(8)
式中: σ為Sigmoid函數; Mc(F)為通道注意力, Mc(F)∈RC; Ms(F)為空間注意力, Ms(F)∈RH×W。
Mc(F)=BN(W1(W0AvgPool(F)+b0)+b1)(9)
式中: BN為Batch Normalization, 即批歸一化; W0∈RC/r×C; b0∈RC/r; W1∈RC×C/r; b1∈RC。
Ms(F)=BN(f1×13(f2×22(f3×31(f1×10(F)))))(10)
式中: f為卷積操作; 上標為卷積核大小; 1×1表示Filter Size為1, 用于通道降維; 3×3為Dilated Convolution, 即空洞卷積。
在改進的YOLOv8模型檢測后, 可以得到目標柑橘果實所在的目標圖像區域。 在此區域內應用Meta AI發布的SAM實例分割模型對目標柑橘果實進行分割, 從而提取出目標柑橘果實的輪廓[17]。
SAM架構(圖4)包含3個組件, 它們協同工作以返回有效的分割掩碼: 圖像編碼器用于生成一次性圖像嵌入; 提示編碼器用于生成提示嵌入, 提示可以是點、 框或文本; 輕量級掩碼解碼器結合了提示和圖像編碼器的嵌入。
由于柑橘果實圖像的果實與背景之間的類間方差較大, 通常采用最大類間方差法對圖像進行分割處理, 如圖5a所示。 最大類間方差法又稱Ostu法, 是在灰度直方圖的基礎上用最小二乘法原理推導出來的一種常用閾值選取方法, 計算簡單快速, 且不受圖像亮度和對比度的影響[18]。
Ostu法雖能有效分割柑橘果實, 但對于重疊的柑橘果實圖像, 難以區分果實與果實之間的輪廓, 而SAM算法能有效解決這一問題。 如圖5b所示, SAM算法能有效區分2個相互重疊的果實。
2.2" 雙目視覺空間定位
本文采用Stereolabs旗下的ZED 2i雙目立體相機(分辨率3 840×1 080, 30 fps, 通過USB接口與PC連接)實時獲取柑橘果實圖像的深度信息, 其能夠提供RGB-D圖像。 其中, RGB圖片提供了像素坐標系下的(x, y)坐標, 而深度圖提供了相機坐標系下的z坐標, 也就是相機到點的距離[19]。
根據RGB-D圖像的信息和相機的內參, 可以反推出像素坐標系下任一點在世界坐標系中的空間坐標[20]。 取雙目立體相機左相機圖像作為識別基準, 通過上述識別算法對柑橘圖像進行目標檢測, 得到目標柑橘果實所在圖像區域。 雙目立體相機各坐標系轉化關系如圖6所示。
世界坐標系P與像素坐標系Puv下點的坐標關系公式為:
ZCPuv=ZC
u
v
1
=KP=
fx0cx
0fycy
001
R
Xw
Yw
Zw
+t
(11)
式中: ZC為相機坐標系下的深度值; K為相機的內參矩陣; R為外參旋轉矩陣; t為平移矩陣。
對雙目立體相機進行標定, 得到標定結果的相機內部參數矩陣K為:
K=
1 060.680 10952.720 0
01 060.040 0524.030 0
001
(12)
則彩色鏡頭焦距為(fx, fy)=(1 060.680 1, 1 060.040 0), 主光點為(cx, cy)=(952.720 0, 524.030 0)。
2.3" 常見的空間定位方法
利用改進的YOLOv8模型可檢測出柑橘果實所在的圖像區域, 得到目標果實所在圖像區域的長方形框坐標(xmin, ymin)和(xmax, ymax)。 可推斷得到果實中心點坐標為((xmin+xmax)/2, (ymin+ymax)/2), 代入雙目立體相機算法中分別計算目標果實左右邊距離, 即((xmin+xmax)/2, ymin)與((xmin+xmax)/2, ymax)的三維坐標, 從而得到目標柑橘果實的直徑特征[21]。 同時, 將目標果實的中心點坐標代入深度圖像中, 得到該點的深度值信息, 加上目標果實半徑即可推斷出目標果實的空間三維坐標。 這也是常見的用于推斷未被遮擋柑橘果實空間坐標的方法[22]。
但對于被遮擋的目標柑橘果實, 通常有2點原因會對目標果實空間三維坐標造成較大的影響: ① 識別框僅能框選出未被遮擋部分的目標柑橘, 無法對被遮擋部分進行預測, 因此可能對柑橘果徑的測算造成較大偏差; ② 識別框的中心點空間三維坐標并不一定為目標柑橘果實的坐標, 也有可能為前置遮擋物的空間坐標, 以此來測算被遮擋柑橘果實的坐標可能會有較大偏差[23]。
隨機選取未被遮擋與被遮擋柑橘果實各20組, 測算其果實直徑, 實際值采用游標卡尺手動測量, 測量相對誤差值如圖7所示。
可以看出, 在對未被遮擋柑橘目標進行果徑識別時, 其相對誤差值較小, 僅在1%左右; 而在對被遮擋柑橘目標進行果徑識別時, 其誤差值較大, 在0.6%到15.6%不等, 波動明顯。 這主要是受遮擋面積和遮擋部位變化的影響, 因此需要一種算法能夠盡量規避遮擋面積和遮擋部位帶來的誤差影響。
2.4" 優化后的空間定位算法
柑橘果實可以近似為一個橢圓形, 因此可將被遮擋的柑橘果實問題抽象為對被遮擋的橢圓形進行補完。 當得到被遮擋果實的有效輪廓邊時, 可用橢圓擬合算法求得完整的橢圓[24]。
本文采用Canny檢測算子對分割后的柑橘目標進行輪廓提取[25]。
平面上任意位置的一個橢圓, 其中心坐標為(x0, y0), 半長軸為a, 半短軸為b, 長軸偏角為θ, 橢圓的一般方程為:
x2+Axy+By2+Cx+Dy+E=0(13)
x0=2BC-ADA2-4B
y0=2D-ADA2-4B
a=2(ACD-BC2-D2+4BE-A2E)(A2-4B)(B-A2+(1-B)2+1)
b=2(ACD-BC2-D2+4BE-A2E)(A2-4B)(B+A2+(1-B)2+1)
θ=arctan (a2-b2Ba2B-b2)
(14)
其中: A、 B、 C、 D、 E分別為橢圓參數。
現采集到多個測量點坐標(xi, yi), 所擬合的目標函數為:
F(A, B, C, D, E)=∑ni=1x2iA+xiyiB+xiC+yiD+E)2(15)
為了使F最小, 需使F的各項偏導為0, 即:
FA=FB=FC=FD=FE=0(16)
求解線性方程組即可解出擬合的橢圓參數[26]。
當得到被遮擋柑橘果實的輪廓時, 基于雙目立體相機的點云圖像, 可以獲得該輪廓上點的深度信息。 經多次試驗嘗試, 取該輪廓上深度值最大的30個點的像素坐標, 以其定位被遮擋柑橘輪廓的有效邊, 采用最小二乘法進行橢圓擬合, 使推斷的實際柑橘果實輪廓最接近真實柑橘果實輪廓。
考慮到實際柑橘果實輪廓為類圓形, 在實際定位過程中可能由于雙目立體相機點云坐標的誤差產生一定的偏差, 在進行橢圓擬合時, 重復選取50次, 若橢圓的軸比(橢圓長軸與短軸的比值)為0.8~1.2, 且橢圓的焦距不大于或小于50次定位焦距平均值的50%, 則視該次擬合為一次有效的擬合, 計算所有有效擬合橢圓的均值, 獲得最終擬合效果, 從而確保柑橘果實目標定位的精度。
擬合后的效果如圖8所示, 可以看出, 該算法擬合后的果實輪廓接近真實的柑橘果實輪廓。
柑橘采摘機器人在工作過程中常以目標柑橘的形心作為末端執行器目標點的參考坐標。 得到目標柑橘果實推算輪廓后, 結合輪廓有效邊的空間坐標, 可推得被遮擋果實的擬合直徑, 從而求出果實中心點空間坐標。
3" 結果與分析
3.1" 改進后的網絡模型效果
3.1.1" 注意力對比試驗
為了驗證BAM注意力機制的有效性, 本文將BAM注意力模塊與其他熱門注意力模塊進行對比試驗, 將BAM注意力模塊與未添加注意力模塊、 BoTNet(Bottleneck Transformers)注意力模塊、 SimAM(Simple Attention Module)注意力模塊進行對比, 如表2所示。 可以發現, 引入BAM注意力模塊后的檢測精度更高。
3.1.2" 不同模型對比試驗
為了驗證本文改進YOLOv8網絡的有效性, 選取目前熱門的深度學習目標檢測算法作為對比, 使用同一數據集分別對Faster RCNN、 YOLOv5、 YOLOv8和改進的YOLOv8網絡進行訓練和測試。 如表3所示, 使用引入BAM注意力模塊后的改進YOLOv8網絡模型相比其他網絡模型, 具有最高的平均精度均值。
3.2" 檢測效果對比
3.2.1" 果實識別效果
選取特定環境下的柑橘果實圖片, 分別使用YOLOv8網絡(圖9a)與改進后的YOLOv8網絡(圖9b)進行檢測。
由圖9可知, 原始的YOLOv8網絡模型在果實重疊與被枝葉遮擋的情況下, 出現一定的漏檢和識別偏差的情況, 通常出現在果實重疊面積和被枝葉遮擋面積過大時; 而改進的YOLOv8網絡模型對這種情況有更好的識別效果, 漏檢目標更少且平均置信度更高。 綜合分析可知, 改進的YOLOv8網絡模型對該環境下的柑橘果實檢測具有良好的泛化性。
3.2.2" 擬合效果
為了驗證本文提出的改進方法的有效性和實用性, 選取120幅被遮擋柑橘果實圖像進行試驗。 按照目標柑橘果實被遮擋情況的區分, 可將測試圖像分為3類各40幅, 如圖10所示: a類為如圖10a所示的多個果實同時出現但未被遮擋; b類為如圖10b所示的果實部分區域被枝葉遮擋導致目標輪廓不完整; c類為如圖10c所示的果實之間相互重疊遮擋。
利用本文算法對圖像進行處理, 中間過程效果如圖11所示。
分別用凸包算法[23]與本文改進算法對目標果實與實際果實像素面積重合度進行對比驗證, 對于a類的果實, 果實像素重合度較高, 重合度均值分別達到92.61%與93.04%, 2種方法檢測效果相近, 均能達到采摘精度要求; 對于b、 c類果實, 凸包算法對于果實輪廓缺失嚴重的情況難以做到有效識別, 重合度均值為63.85%, 且波動范圍較大, 而本文算法得到的重合度均值為86.73%, 且波動范圍較小。 其中, 當兩果實重疊程度超過78%時, 算法容易將其識別為同一果實, 導致識別失敗。
3.2.3" 定位檢測效果
分別用未改進的算法(如2.3節所述)與本文改進算法計算3類目標柑橘果實形心空間坐標位置與果實直徑, 得到如表4所示的定位誤差與果徑誤差對比數據。
由表4可知, 本文算法對未被遮擋的分離果實(a類)的定位與果徑識別沒有較大的提升, 但在被枝葉遮擋與果實重疊的情況下, 本文算法有著明顯的提升效果, 平均定位誤差減小了16.22 mm, 平均果徑誤差降低了7.99%, 證明了本文算法能夠較為準確地進行被遮擋柑橘果實的定位檢測與果徑識別。
為直觀驗證改進后的YOLOv8-SAM算法的檢測效果, 對同一果園環境進行對比測試。 圖12顯示了在果園環境中算法改進前后運行對比的效果。
在圖12所示的環境中, 共有12顆目標柑橘果實, 改進前的算法檢測到9顆柑橘果實, 漏檢3顆, 且對于大面積重疊果實與枝葉遮擋的情況有明顯的形心位置判斷偏差; 而改進后的算法, 僅漏檢1顆, 相比改進前, 漏檢數目更少且對目標果實的形心位置和果徑判斷更為準確。 綜合分析可知, 改進后的YOLOv8-SAM算法對被遮擋柑橘的目標識別和定位效果更好, 更適用于果園采摘環境。
4" 結論
針對柑橘果實相互重疊與被枝葉遮擋導致的對機器視覺定位目標柑橘空間位置造成誤差的問題, 本文提出了一種基于YOLOv8-SAM算法對被遮擋柑橘的位置形狀進行識別, 并運用邊緣檢測法結合雙目立體相機三維稠密深度點云得到被遮擋柑橘的有效輪廓邊, 使用最小二乘法擬合出被遮擋柑橘的完整輪廓以確定目標柑橘更精確的空間坐標位置。 主要結論如下:
1) 提出一種改進的YOLOv8網絡結構, 在骨干網絡模塊中加入BAM注意力機制模塊, 使其對重疊果實與被枝葉遮擋果實有更好的識別效果。 改進網絡在果園環境下的柑橘果實檢測中達到了88.4%的準確率、 87.4%的召回率以及91.1%的平均精度均值, 相較于原始的YOLOv8網絡模型, 改進的YOLOv8網絡在果實重疊與被枝葉遮擋環境下的識別準確率提高了1.9個百分點, 平均精度均值提升了1.8個百分點。
2) 提出一種對被遮擋柑橘果實輪廓的重建方法, 基于圖像分割與深度圖像數據對被遮擋柑橘果實有效輪廓邊進行補完, 并獲得果實形心空間坐標, 利用該方法獲得的重建輪廓與實際果實輪廓重合度高。 對未被遮擋或被輕度遮擋的果實, 重合度均值達到93.04%; 對被枝葉遮擋或果實重疊的情況, 重合度均值達到86.73%。
3) 使用本文算法模型對目標柑橘果實的空間位置與果徑進行識別時, 對形心位置定位的平均誤差減少了16.22 mm, 平均果徑誤差降低了7.99%, 證明了本文提出的改進算法能夠較為準確地識別被遮擋柑橘果實目標并對其進行定位與果徑測量, 驗證了本文算法用于自動化柑橘采摘的可行性, 為柑橘果實及相似水果在自然環境下的識別和定位提供了參考, 為水果采摘機器人的研制提供了支撐。
參考文獻:
[1]
潘一凡, 劉永忠, 黃鈺軒, 等. 我國柑橘栽培管理技術現狀調查和發展思考 [J]. 華中農業大學學報, 2023, 42(4): 140-149.
[2]" 呂佳, 李帥軍, 曾夢瑤, 等. 基于半監督SPM-YOLOv5的套袋柑橘檢測算法 [J]. 農業工程學報, 2022, 38(18): 204-211.
[3]" 黃彤鑌, 黃河清, 李震, 等. 基于YOLOv5改進模型的柑橘果實識別方法 [J]. 華中農業大學學報, 2022, 41(4): 170-177.
[4]" 李欣, 王玉德. 基于顏色模型和閾值分割的有遮擋的柑橘果實識別算法 [J]. 計算技術與自動化, 2022, 41(2): 136-140.
[5]" 宋懷波, 尚鈺瑩, 何東健. 果實目標深度學習識別技術研究進展 [J]. 農業機械學報, 2023, 54(1): 1-19.
[6]" 劉妤, 劉灑, 楊長輝, 等. 基于雙目立體視覺的重疊柑橘空間定位 [J]. 中國農業科技導報, 2020, 22(9): 104-112.
[7]" 劉振宇, 丁宇祺. 自然環境中被遮擋果實的識別方法研究 [J]. 計算機應用研究, 2020, 37(S2): 333-335, 339.
[8]" 李立君, 陽涵疆. 基于改進凸殼理論的遮擋油茶果定位檢測算法 [J]. 農業機械學報, 2016, 47(12): 285-292, 346.
[9]" 李頎, 強華. 基于雙目視覺與深度學習的番茄本體特征檢測系統 [J]. 南方農業學報, 2020, 51(1): 237-244.
[10]吳德剛, 趙利平, 陳乾輝. 遮擋蘋果目標的三點定位算法研究 [J]. 黃河科技學院學報, 2022, 24(8): 40-45.
[11]劉忠意, 魏登峰, 李萌, 等. 基于改進YOLOv5的橙子果實識別方法 [J]. 江蘇農業科學, 2023, 51(19): 173-181.
[12]周宏平, 金壽祥, 周磊, 等. 基于多模態圖像的自然環境下油茶果識別 [J]. 農業工程學報, 2023, 39(10): 175-182.
[13]林耀海, 呂鐘亮, 楊長才, 等. 自然場景圖像中的重疊蜜柚識別及試驗 [J]. 農業工程學報, 2021, 37(24): 158-167.
[14]王小榮, 許燕, 周建平, 等. 基于改進YOLOv7的復雜環境下紅花采摘識別 [J]. 農業工程學報, 2023, 39(6): 169-176.
[15]VARGHESE R, SAMBATH M. YOLOv8: A Novel Object Detection Algorithm with Enhanced Performance and Robustness [C] //2024 International Conference on Advances in Data Engineering and Intelligent Computing Systems (ADICS), April 18-19, 2024, Chennai, India. IEEE, 2024: 1-6.
[16]QI J T, LIU X N, LIU K, et al. An Improved YOLOv5 Model Based on Visual Attention Mechanism: Application to Recognition of Tomato Virus Disease [J]. Computers and Electronics in Agriculture, 2022, 194: 106780.
[17]張俊寧, 畢澤洋, 閆英, 等. 基于注意力機制與改進YOLO的溫室番茄快速識別 [J]. 農業機械學報, 2023, 54(5): 236-243.
[18]KIRILLOV A, MINTUN E, RAVI N, et al. Segment Anything [C] //2023 IEEE/CVF International Conference on Computer Vision (ICCV), 2023: 3992-4003.
[19]SILWAL A, DAVIDSON J R, KARKEE M, et al. Design, Integration, and Field Evaluation of a Robotic Apple Harvester [J]. Journal of Field Robotics, 2017, 34(6): 1140-1159.
[20]LIN G C, TANG Y C, ZOU X J, et al. Color-, Depth-, and Shape-Based 3D Fruit Detection [J]. Precision Agriculture, 2020, 21(1): 1-17.
[21]WU G, LI B, ZHU Q B, et al. Using Color and 3D Geometry Features to Segment Fruit Point Cloud and Improve Fruit Recognition Accuracy [J]. Computers and Electronics in Agriculture, 2020, 174: 105475.
[22]陳志健, 伍德林, 劉路, 等. 復雜背景下油茶果采收機重疊果實定位方法研究 [J]. 安徽農業大學學報, 2021, 48(5): 842-848.
[23]劉德兒, 朱磊, 冀煒臻, 等. 基于RGB-D相機的臍橙實時識別定位與分級方法 [J]. 農業工程學報, 2022, 38(14): 154-165.
[24]WANG Y W, CHEN Y F, WANG D F. Recognition of Multi-Modal Fusion Images with Irregular Interference [J]. PeerJ Computer Science, 2022, 8: e1018.
[25]張勤, 龐月生, 李彬. 基于實例分割的番茄串視覺定位與采摘姿態估算方法 [J]. 農業機械學報, 2023, 54(10): 205-215.
[26]GIRSHICK R, DONAHUE J, DARRELL T, et al. Rich Feature Hierarchies for Accurate Object Detection and Semantic Segmentation [C] //2014 IEEE Conference on Computer Vision and Pattern Recognition, June 23-28, 2014, Columbus, OH, USA. IEEE, 2014: 580-587.
責任編輯" 柳劍
崔玉潔