• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于YOLOv8與蟻群算法的三目視覺蘋果采摘系統(tǒng)研究

    2024-01-10 09:31:46胡建易
    農(nóng)業(yè)裝備技術(shù) 2023年6期
    關(guān)鍵詞:雙目螞蟻像素

    胡建易

    (江西理工大學(xué),江西 贛州 341000)

    0 引 言

    近年來,隨著全球人口的增加和農(nóng)業(yè)現(xiàn)代化進(jìn)程的加速,農(nóng)業(yè)自動化技術(shù)已成為農(nóng)業(yè)領(lǐng)域研究的重要方向之一,受到了廣泛的關(guān)注,其中自動化采摘技術(shù)是一個重要方向。該技術(shù)能夠?qū)崿F(xiàn)農(nóng)作物的高效、迅速、易于操作的采摘,提高農(nóng)業(yè)生產(chǎn)效率,降低勞動力成本。隨著現(xiàn)代農(nóng)業(yè)的進(jìn)步,人們越來越追求高效、安全、精度高的蘋果采摘系統(tǒng)。本研究采用三目視覺技術(shù),以實(shí)現(xiàn)蘋果采摘系統(tǒng)的高效、安全、高精度自動化。

    雙目視覺系統(tǒng)最主要的優(yōu)點(diǎn)在于其可以獲得三維信息,由此可以確定蘋果的位置和大小,使得采摘機(jī)器人能夠準(zhǔn)確地識別蘋果,達(dá)到最佳采摘效果。在該系統(tǒng)中,使用了基于深度學(xué)習(xí)的圖像處理算法,使得機(jī)器人能夠準(zhǔn)確識別蘋果的位置和大小,同時保持高精度。此外,在處理過程中根據(jù)實(shí)際情況進(jìn)行了補(bǔ)充和優(yōu)化,提高了系統(tǒng)的魯棒性。但雙目視覺會因?qū)嶋H硬件原因造成一定的空間位置誤差,為了使采摘更加準(zhǔn)確,在機(jī)械抓取裝置上增加了一個攝像頭來輔助精準(zhǔn)抓取,實(shí)現(xiàn)三目視覺采摘。

    YOLOv8 是2023 年1 月由Ultralytics 發(fā)布的一款新的檢測模型,集合了之前提出的諸如YOLOX、YOLOv6、YOLOv7 和PPYOLOE 等算法的相關(guān)設(shè)計,尤其是Head 標(biāo)簽分配和Loss 部分以及PP-YOLOE非常相似。YOLOv8 集百家所長達(dá)到了實(shí)時檢測界的一個新高度。由于YOLOv8 具有高精度、速度快等優(yōu)勢,將為目標(biāo)檢測領(lǐng)域帶來新的沖擊。本文將YOLOv8 應(yīng)用于蘋果采摘中,利用其視覺識別能力自動檢測和定位蘋果。同時,為了使自動采摘機(jī)器人可以快速完成蘋果采摘,本文采用了蟻群算法進(jìn)行路徑規(guī)劃。

    1 方法與實(shí)現(xiàn)

    本系統(tǒng)主要由計算機(jī)、三目視覺(雙目視覺+OV7725 攝像頭)、執(zhí)行機(jī)構(gòu)等構(gòu)成,計算機(jī)配置采用的是13th Gen Intel (R) Core (TM) i9-13980HX 2.20 GHz 處理器,內(nèi)存64.0 GB,顯卡為NVIDIA Geforce RTX 4080 Laptop GPU,編程語言采用python。核心板采用STM32F103ZET6 單片機(jī),編程語言采用C。執(zhí)行機(jī)構(gòu)上掛載的攝像頭采用OV7725,超聲波模塊采用HC-SR04。雙目視覺采用Intel RealsenseT265,執(zhí)行采摘機(jī)構(gòu)采用的是三維的機(jī)械夾取裝置,夾爪上安裝有壓力傳感器。計算機(jī)與ARM 之間采用串口通信。系統(tǒng)框圖見圖1。

    圖1 系統(tǒng)連接圖

    整個采摘流程如下:首先由計算機(jī)和雙目視覺識別計算出各個蘋果的坐標(biāo)值,根據(jù)坐標(biāo)值應(yīng)用蟻群算法計算出最優(yōu)采摘路徑,然后將坐標(biāo)值和采摘路徑通過串口傳給ARM 核心板,ARM 板收到信息后執(zhí)行采摘任務(wù),采摘裝置先通過橫軸和縱軸移動到第一個待采摘蘋果的(x,y)位置,然后根據(jù)蘋果的z 坐標(biāo)值讓采摘裝置向前延伸靠近蘋果,當(dāng)接近蘋果時開啟OV7725 攝像頭和超聲波進(jìn)行位置微調(diào)矯正,當(dāng)?shù)竭_(dá)位置后夾爪開始抓取,待夾爪上壓力傳感器超過一定數(shù)值就可以將蘋果進(jìn)行采摘,然后返回到釋放蘋果的位置進(jìn)行釋放,完成一個采摘過程。流程圖見圖2。

    圖2 采摘流程圖

    1.1 雙目視覺

    本研究采用了雙目視覺技術(shù)來實(shí)現(xiàn)對蘋果的自動識別和定位。雙目視覺技術(shù)借助2 個相機(jī)同時獲取圖像信息,形成2 個視角的立體影像,進(jìn)而獲取目標(biāo)物體的深度信息。本研究中采用的雙目視覺設(shè)備具有高精度、高分辨率和復(fù)雜場景下的抗干擾性等特點(diǎn),能夠有效提高蘋果采摘系統(tǒng)的性能和準(zhǔn)確度。

    雙目立體視覺相機(jī)深度值計算原理如下(理想情況):

    由圖3、4 幾何關(guān)系可得如下等式:

    圖3 側(cè)視圖

    圖4 俯視圖

    進(jìn)而得到物體的坐標(biāo)值:

    可以發(fā)現(xiàn)如果要計算深度z,必須要知道:

    (1)相機(jī)焦距f,左右相機(jī)距離基線b。這些參數(shù)可以通過先驗(yàn)信息或者相機(jī)標(biāo)定得到。

    (2)視差k。知道左相機(jī)的每個像素點(diǎn)(xL,yL)和右相機(jī)中像素點(diǎn)(xR,yR)的對應(yīng)關(guān)系,就解決了雙目視覺的核心問題。

    其中,f 為焦距,b 為2 個相機(jī)間的距離,ps 為單個像素點(diǎn)的寬度,d 為視差距,k 為像素視差。

    圖5 為像素視差等于3 的情況,即k=3。

    圖5 物體在兩個相機(jī)中的成像

    像素大小指的是圖像傳感器中單個像素的尺寸大小,通常用μm 表示。在立體視覺系統(tǒng)中,由于使用了2 個攝像機(jī),因此圖像傳感器中的像素大小必須相同。隨著像素大小的縮小,立體視覺系統(tǒng)的深度范圍將變得更大。視差是指在兩個攝像機(jī)圖像之間的像素位置的差異,它可以通過計算兩個攝像機(jī)中相同像素之間的距離差來得到。例如,如果左視圖圖像中一個像素在位置(1,30)處,而相同位置的像素在右視圖圖像中的位置為(4,30),那么視差值(差值)將為4-1=3。視差值與深度呈反比例關(guān)系。

    1.2 YOLOv8 圖像識別技術(shù)

    Ultralytics 公司從YOLOv5 到Y(jié)OLOv8 的升級,精度上YOLOv8 相比YOLOv5 高出一大截,但速度略有下降。簡單總結(jié)下YOLOv8 在結(jié)構(gòu)算法上相比YOLOv5 的升級。

    1.2.1 骨干網(wǎng)絡(luò)部分

    選用梯度流更豐富的C2f 結(jié)構(gòu)替換了YOLOv5中的C3結(jié)構(gòu),為了輕量化也縮減了骨干網(wǎng)絡(luò)中最大stage 的blocks 數(shù),同時不同縮放因子N/S/M/L/X 的模型不再是共用一套模型參數(shù),M/L/X 大模型還縮減了最后一個stage 的輸出通道數(shù),這樣可減少參數(shù)量和計算量。

    1.2.2 Neck 部分

    同樣是C2f 模塊替換C3模塊,為了輕量化刪除了Neck 結(jié)構(gòu)中top-down 階段的兩個上采樣卷積。

    1.2.3 Head 部分

    換成了目前主流的Decoupled-Head 解耦頭結(jié)構(gòu),將分類分支和定位分支分離,緩解了分類和回歸任務(wù)的內(nèi)在沖突。

    1.2.4 標(biāo)簽分配和Loss 部分

    從Anchor-Based 換成了Anchor-Free,采用了TAL (Task Alignment Learning) 動態(tài)匹配,并引入了DFL(Distribution Focal Loss)結(jié)合CIoU Loss 做回歸分支的損失函數(shù),使得分類和回歸任務(wù)之間具有較高的一致性。

    1.2.5 訓(xùn)練策略

    訓(xùn)練的數(shù)據(jù)增強(qiáng)部分最后10 epoch 關(guān)閉Mosaic增強(qiáng)更有利于模型收斂的穩(wěn)定,同時訓(xùn)練epoch 數(shù)從300 增大到500,使得模型訓(xùn)練更充分。

    YOLO 算法的第一步是分割圖片,它將圖片分割為(a×a)個grid,每個grid 的大小都相等。然后基于grid 生成bounding box,其中confidence 的計算公式是:

    要使用YOLOv8 算法首先要了解其整個步驟,圖6 展示了YOLOv8 算法從電腦環(huán)境配置直至驗(yàn)證效果的整個應(yīng)用過程。

    圖6 YOLOv8 算法的應(yīng)用過程

    1.3 路徑規(guī)劃

    20 世紀(jì)90 年代,一位來自意大利的學(xué)者首次提出了蟻群最優(yōu)路徑規(guī)劃算法。該算法通過觀察螞蟻尋找食物的行為,發(fā)現(xiàn)雖然單只螞蟻并沒有很強(qiáng)的規(guī)律性,但是多只螞蟻行動時會形成一定的規(guī)律。在不同的環(huán)境下,蟻群可以高效地尋找到到達(dá)食物源的最短路徑。當(dāng)螞蟻行走時,會釋放一種叫做“信息素”的化學(xué)物質(zhì)。螞蟻會感知到這種“信息素”,并向濃度更高的路徑方向前進(jìn)。由于螞蟻在路上留下的“信息素”,整個蟻群逐漸形成了一個正反饋機(jī)制。經(jīng)過一段時間后,整個蟻群會沿著最短路徑到達(dá)食物源。其具體算法步驟如下:

    1.3.1 初始化各參數(shù)

    計算之初需要初始化各種參數(shù),例如螞蟻數(shù)量m、Alpha 信息素因子、Beta 啟發(fā)函數(shù)因子、ROU 信息素?fù)]發(fā)因子、Q 信息素常數(shù)、T 最大迭代次數(shù)等。在運(yùn)用蟻群算法時,為了選擇最佳的參數(shù),需要一定的經(jīng)驗(yàn)或者試錯。參數(shù)設(shè)置建議如下:當(dāng)螞蟻數(shù)量設(shè)置得過多時,路徑上的信息素會變得趨同,正反饋?zhàn)饔脮幌魅?,從而?dǎo)致收斂速度減慢;如果將螞蟻數(shù)量m設(shè)置得過小,可能會導(dǎo)致一些路徑從未被探索,導(dǎo)致信息素濃度為0,過早收斂,降低全局最優(yōu)解的可行性。根據(jù)經(jīng)驗(yàn)螞蟻數(shù)量=目標(biāo)數(shù)×1.5。本系統(tǒng)是根據(jù)檢測到的蘋果數(shù)量來確定螞蟻數(shù)量。

    設(shè)定信息素常量Q 時需要謹(jǐn)慎考慮,如果設(shè)置過大,會限制蟻群的搜索范圍,導(dǎo)致算法過早地陷入局部最優(yōu)解;如果設(shè)置過小,路徑上的信息含量差別會減小,容易導(dǎo)致算法進(jìn)入混沌狀態(tài)。因此,需要合理選擇Q 值,以保證算法具有全局搜索能力。在本系統(tǒng)中,常量信息素一般按照經(jīng)驗(yàn)取值在[10,100],本系統(tǒng)的取值為36;而最大迭代次數(shù)t 的設(shè)置則需要注意避免設(shè)置過大導(dǎo)致算法運(yùn)行時間過長,同時也要避免設(shè)置過小導(dǎo)致可選路徑減少,使得種群容易受限于局部最優(yōu)解。一般而言,最大迭代次數(shù)的取值范圍在[100,500],本系統(tǒng)的取值為213。信息素因子是指在螞蟻搜索過程中,路徑上的信息素對螞蟻群搜索起到指導(dǎo)作用的相對重要程度。若將該參數(shù)設(shè)置過大,則會讓螞蟻更傾向于選擇之前走過的路徑,減弱算法的隨機(jī)性;而過小則會減小蟻群的搜索范圍,使算法早期就陷入局部最優(yōu)解。通常,信息素因子的取值范圍為1~4,本系統(tǒng)的取值為2.5。

    啟發(fā)函數(shù)因子是指在引導(dǎo)蟻群搜索過程中,啟發(fā)式信息對搜索的相對重要程度。如果該參數(shù)設(shè)置過大,可以提高搜索的收斂速度,但也有可能導(dǎo)致算法陷入局部最優(yōu)解;反之,如果該參數(shù)設(shè)置得過小,搜索過程中的隨機(jī)性就會增強(qiáng),難以找到最優(yōu)解。一般經(jīng)驗(yàn)值將該參數(shù)的取值范圍定為[0,5],本系統(tǒng)取值為3.2。

    信息素?fù)]發(fā)因子則是表示信息素的揮發(fā)消失水平的參數(shù)。當(dāng)該參數(shù)值設(shè)置過大時,信息素將很快就消失,這樣會導(dǎo)致一些較優(yōu)路徑被排除在搜索范圍外;若該參數(shù)值設(shè)定過小,則各路徑上的信息素含量差別很小,因此算法的收斂速度也會降低。通常經(jīng)驗(yàn)值將該參數(shù)的取值范圍定為[0.2,0.5],本系統(tǒng)的取值為0.24。

    1.3.2 構(gòu)建解空間

    為了實(shí)現(xiàn)每只螞蟻的隨機(jī)分布,我們將它們分別放置在不同的起始位置上,并為每只螞蟻k(k 范圍為1~m)計算下一個要訪問的蘋果,直到每只螞蟻都訪問完所有的蘋果,螞蟻在構(gòu)建路徑的每一步中,根據(jù)輪盤賭法選擇下一個要到達(dá)的蘋果。我們使用概率來表示每個路徑的選擇概率:

    其中,i、j 分別表示每段路徑的起點(diǎn)和終點(diǎn),τ 表示時間t 由i 到j(luò) 的信息素濃度,η 的值等于路徑長度d的倒數(shù),allowedk表示未訪問過的節(jié)點(diǎn)的集合。

    根據(jù)當(dāng)前路徑ij 上的信息素濃度和啟發(fā)式函數(shù),就可以確定從起點(diǎn)i 選擇終點(diǎn)j 的概率。通過對公式進(jìn)行分析,可以得知兩個地點(diǎn)之間距離越短,且信息素濃度越大的路徑被選擇的概率應(yīng)該相對較大。

    1.3.3 更新信息素

    每只螞蟻將會經(jīng)過一條路徑,我們將計算出這條路徑的長度L,并記錄歷史記錄中的最優(yōu)路徑長度,也就是最短路徑。同時,會更新每個蘋果路徑上的信息素濃度。信息素的更新方式如式(8)所示:

    也就是說,在第t+1 次循環(huán)后,若路徑連接蘋果i 和蘋果j,則路徑上的信息素含量將會更新。我們使用一種信息素更新機(jī)制,具體是將路徑上的信息素含量在t 次循環(huán)后乘以信息素殘留系數(shù),并加上新增信息素。這里的新增信息素是指所有螞蟻在從蘋果i 到蘋果j 的路徑上所留下的信息素之和。

    1.3.4 判斷是否達(dá)到終止條件

    在蟻群算法中,判斷是否達(dá)到最大迭代次數(shù)被作為算法的停止條件。圖7 蟻群算法具體流程圖。

    圖7 蟻群算法具體流程

    2 實(shí)驗(yàn)結(jié)果

    本研究研制了一種基于三目視覺的采摘系統(tǒng),其應(yīng)用于采摘蘋果。該系統(tǒng)采用了YOLOv8 算法,對蘋果進(jìn)行了準(zhǔn)確的識別和定位,并采用蟻群算法優(yōu)化采摘路徑。在人工數(shù)據(jù)集測試中,該系統(tǒng)的蘋果定位準(zhǔn)確率達(dá)到了95%以上,并且每張圖像的檢測時間為10~100 ms。同時進(jìn)行了70 次蘋果采摘實(shí)驗(yàn),每次采摘的時間為10 s 內(nèi),一次采摘一個蘋果,綜合采摘成功率達(dá)到了93%。圖8 為模擬采摘實(shí)物圖。

    圖8 模擬采摘實(shí)物圖

    3 結(jié) 語

    本文研究了一種采用三目視覺、YOLOv8 和蟻群算法相結(jié)合的蘋果采摘系統(tǒng),實(shí)現(xiàn)了YOLOv8 和蟻群算法的協(xié)同工作,從而能夠自動化地識別和定位蘋果,并找到最佳的采摘路徑,實(shí)現(xiàn)蘋果的自動化采摘。實(shí)驗(yàn)結(jié)果表明,該系統(tǒng)的采摘效率和準(zhǔn)確性都比較理想。因此,該系統(tǒng)為農(nóng)業(yè)領(lǐng)域?qū)崿F(xiàn)自動化采摘提供了一種新的思路和解決方案,具有一定的應(yīng)用價值和推廣前景。

    猜你喜歡
    雙目螞蟻像素
    趙運(yùn)哲作品
    藝術(shù)家(2023年8期)2023-11-02 02:05:28
    像素前線之“幻影”2000
    基于雙目測距的卡爾曼濾波船舶軌跡跟蹤
    電子制作(2019年20期)2019-12-04 03:51:38
    “像素”仙人掌
    我們會“隱身”讓螞蟻來保護(hù)自己
    螞蟻
    高像素不是全部
    CHIP新電腦(2016年3期)2016-03-10 14:22:03
    基于雙目視覺圖像的長度測量方法
    螞蟻找吃的等
    基于雙目視覺的接觸線幾何參數(shù)測量方法
    上思县| 元阳县| 肇州县| 莎车县| 保德县| 赤壁市| 湾仔区| 龙海市| 宁远县| 扶风县| 托克托县| 沭阳县| 重庆市| 临武县| 曲水县| 威宁| 安泽县| 于都县| 威海市| 兴山县| 宁南县| 安顺市| 开远市| 玛曲县| 塔城市| 扎兰屯市| 沁源县| 马公市| 博湖县| 亚东县| 保山市| 渝北区| 肥西县| 黔南| 济南市| 东光县| 西安市| 浠水县| 昌宁县| 花莲县| 石阡县|