国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【深度學(xué)習(xí)目標(biāo)檢測(cè)】十六、基于深度學(xué)習(xí)的麥穗頭系統(tǒng)-含GUI和源碼(python,yolov8)

這篇具有很好參考價(jià)值的文章主要介紹了【深度學(xué)習(xí)目標(biāo)檢測(cè)】十六、基于深度學(xué)習(xí)的麥穗頭系統(tǒng)-含GUI和源碼(python,yolov8)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

全球麥穗檢測(cè)是植物表型分析領(lǐng)域的一個(gè)挑戰(zhàn),主要目標(biāo)是檢測(cè)圖像中的小麥麥穗。這種檢測(cè)在農(nóng)業(yè)領(lǐng)域具有重要意義,可以幫助農(nóng)民評(píng)估作物的健康狀況和成熟度。然而,由于小麥麥穗在視覺上具有挑戰(zhàn)性,準(zhǔn)確檢測(cè)它們是一項(xiàng)艱巨的任務(wù)。

全球麥穗檢測(cè)的挑戰(zhàn)在于準(zhǔn)確識(shí)別不同品種、不同生長環(huán)境、不同光照條件、不同拍攝角度下的麥穗。由于小麥麥穗經(jīng)常重疊、顏色和外觀變化多樣,這使得檢測(cè)更具挑戰(zhàn)性。為了解決這些問題,研究者們采用機(jī)器學(xué)習(xí)和計(jì)算機(jī)視覺技術(shù)來開發(fā)麥穗檢測(cè)算法。

目前,全球麥穗檢測(cè)的常用方法包括基于單級(jí)和兩級(jí)檢測(cè)器的目標(biāo)檢測(cè)方法(如Yolo和Faster-RCNN)。這些方法通過訓(xùn)練深度神經(jīng)網(wǎng)絡(luò)來識(shí)別和定位圖像中的麥穗。然而,即使使用大型數(shù)據(jù)集進(jìn)行訓(xùn)練,仍然存在對(duì)訓(xùn)練區(qū)域的偏差,因此需要不斷改進(jìn)和優(yōu)化算法以提高檢測(cè)準(zhǔn)確性。

全球麥穗檢測(cè)對(duì)于農(nóng)業(yè)生產(chǎn)和科學(xué)研究具有重要意義。準(zhǔn)確估計(jì)不同品種的小麥麥穗密度和大小可以幫助農(nóng)民更好地評(píng)估作物健康狀況和產(chǎn)量。此外,這種檢測(cè)還可以用于研究小麥生長和發(fā)育的規(guī)律,以及開發(fā)新的種植技術(shù)和品種。通過改進(jìn)麥穗檢測(cè)算法,可以為農(nóng)業(yè)生產(chǎn)的智能化和精細(xì)化提供有力支持。

本文介紹了基于深度學(xué)習(xí)yolov8的麥穗頭檢測(cè)系統(tǒng),包括訓(xùn)練過程和數(shù)據(jù)準(zhǔn)備過程,同時(shí)提供了推理的代碼和GUI。對(duì)準(zhǔn)備計(jì)算機(jī)視覺相關(guān)的畢業(yè)設(shè)計(jì)的同學(xué)有著一定的幫助。

檢測(cè)結(jié)果如下圖:

【深度學(xué)習(xí)目標(biāo)檢測(cè)】十六、基于深度學(xué)習(xí)的麥穗頭系統(tǒng)-含GUI和源碼(python,yolov8),CNN,目標(biāo)檢測(cè),深度學(xué)習(xí),深度學(xué)習(xí),目標(biāo)檢測(cè),python【深度學(xué)習(xí)目標(biāo)檢測(cè)】十六、基于深度學(xué)習(xí)的麥穗頭系統(tǒng)-含GUI和源碼(python,yolov8),CNN,目標(biāo)檢測(cè),深度學(xué)習(xí),深度學(xué)習(xí),目標(biāo)檢測(cè),python【深度學(xué)習(xí)目標(biāo)檢測(cè)】十六、基于深度學(xué)習(xí)的麥穗頭系統(tǒng)-含GUI和源碼(python,yolov8),CNN,目標(biāo)檢測(cè),深度學(xué)習(xí),深度學(xué)習(xí),目標(biāo)檢測(cè),python

一、安裝YoloV8

yolov8官方文檔:主頁 - Ultralytics YOLOv8 文檔

安裝部分參考:官方安裝教程

二、數(shù)據(jù)集準(zhǔn)備

本文使用的數(shù)據(jù)集來自全球小麥頭檢測(cè)數(shù)據(jù)集,檢測(cè)小麥穗是一項(xiàng)重要任務(wù),可以估計(jì)相關(guān)性狀,包括穗種群密度和穗特征,如衛(wèi)生狀況、大小、成熟階段和芒的存在。幾項(xiàng)研究開發(fā)了從高分辨率 RGB 圖像中檢測(cè)小麥頭的方法。它們基于計(jì)算機(jī)視覺和機(jī)器學(xué)習(xí),通常在有限的數(shù)據(jù)集上進(jìn)行校準(zhǔn)和驗(yàn)證。然而,觀察條件、基因型差異、發(fā)育階段、頭部方向的可變性代表了計(jì)算機(jī)視覺的挑戰(zhàn)。此外,由于運(yùn)動(dòng)或風(fēng)和密集人群頭部之間的重疊可能導(dǎo)致的模糊使這項(xiàng)任務(wù)更加復(fù)雜。通過聯(lián)合國際協(xié)作努力,我們建立了一個(gè)大型、多樣化且標(biāo)記良好的數(shù)據(jù)集,即全球小麥頭檢測(cè) (GWHD) 數(shù)據(jù)集。它包含 4,700 張高分辨率 RGB 圖像和 190,000 個(gè)標(biāo)記的小麥頭,這些小麥頭采集自世界各地不同生長階段的不同基因型的多個(gè)國家。

數(shù)據(jù)示例如下:

【深度學(xué)習(xí)目標(biāo)檢測(cè)】十六、基于深度學(xué)習(xí)的麥穗頭系統(tǒng)-含GUI和源碼(python,yolov8),CNN,目標(biāo)檢測(cè),深度學(xué)習(xí),深度學(xué)習(xí),目標(biāo)檢測(cè),python

【深度學(xué)習(xí)目標(biāo)檢測(cè)】十六、基于深度學(xué)習(xí)的麥穗頭系統(tǒng)-含GUI和源碼(python,yolov8),CNN,目標(biāo)檢測(cè),深度學(xué)習(xí),深度學(xué)習(xí),目標(biāo)檢測(cè),python

全球麥穗檢測(cè)數(shù)據(jù)集yoloV8格式,采用8:2劃分訓(xùn)練集和驗(yàn)證集,包含2698個(gè)訓(xùn)練數(shù)據(jù)和675個(gè)驗(yàn)證數(shù)據(jù),本文提供整理后的全球麥穗檢測(cè)數(shù)據(jù)集yoloV8格式。

三、模型訓(xùn)練

1、數(shù)據(jù)集配置文件

在ultralytics/ultralytics/cfg/datasets目錄下添加wheat.yaml,添加以下內(nèi)容(path修改為自己的路徑):

# Ultralytics YOLO ??, AGPL-3.0 license
# COCO 2017 dataset http://cocodataset.org by Microsoft
# Example usage: yolo train data=coco.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── coco  ← downloads here (20.1 GB)


# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path: datasets/wheat_det_yolo8  # dataset root dir
train: images/train  # train images (relative to 'path') 118287 images
val: images/val  # val images (relative to 'path') 5000 images
test: images/val  # 20288 of 40670 images, submit to https://competitions.codalab.org/competitions/20794

# Classes
names:
  0: wheat

2、修改模型配置文件

新建ultralytics/cfg/models/wheat/yolov8_wheat.yaml?,添加以下內(nèi)容:,添加以下內(nèi)容:

# Ultralytics YOLO ??, AGPL-3.0 license
# YOLOv8 object detection model with P3-P5 outputs. For Usage examples see https://docs.ultralytics.com/tasks/detect

# Parameters
nc: 1  # number of classes
scales: # model compound scaling constants, i.e. 'model=yolov8n.yaml' will call yolov8.yaml with scale 'n'
  # [depth, width, max_channels]
  n: [0.33, 0.25, 1024]  # YOLOv8n summary: 225 layers,  3157200 parameters,  3157184 gradients,   8.9 GFLOPs
  s: [0.33, 0.50, 1024]  # YOLOv8s summary: 225 layers, 11166560 parameters, 11166544 gradients,  28.8 GFLOPs
  m: [0.67, 0.75, 768]   # YOLOv8m summary: 295 layers, 25902640 parameters, 25902624 gradients,  79.3 GFLOPs
  l: [1.00, 1.00, 512]   # YOLOv8l summary: 365 layers, 43691520 parameters, 43691504 gradients, 165.7 GFLOPs
  x: [1.00, 1.25, 512]   # YOLOv8x summary: 365 layers, 68229648 parameters, 68229632 gradients, 258.5 GFLOPs

# YOLOv8.0n backbone
backbone:
  # [from, repeats, module, args]
  - [-1, 1, Conv, [64, 3, 2]]  # 0-P1/2
  - [-1, 1, Conv, [128, 3, 2]]  # 1-P2/4
  - [-1, 3, C2f, [128, True]]
  - [-1, 1, Conv, [256, 3, 2]]  # 3-P3/8
  - [-1, 6, C2f, [256, True]]
  - [-1, 1, Conv, [512, 3, 2]]  # 5-P4/16
  - [-1, 6, C2f, [512, True]]
  - [-1, 1, Conv, [1024, 3, 2]]  # 7-P5/32
  - [-1, 3, C2f, [1024, True]]
  - [-1, 1, SPPF, [1024, 5]]  # 9

# YOLOv8.0n head
head:
  - [-1, 1, nn.Upsample, [None, 2, 'nearest']]
  - [[-1, 6], 1, Concat, [1]]  # cat backbone P4
  - [-1, 3, C2f, [512]]  # 12

  - [-1, 1, nn.Upsample, [None, 2, 'nearest']]
  - [[-1, 4], 1, Concat, [1]]  # cat backbone P3
  - [-1, 3, C2f, [256]]  # 15 (P3/8-small)

  - [-1, 1, Conv, [256, 3, 2]]
  - [[-1, 12], 1, Concat, [1]]  # cat head P4
  - [-1, 3, C2f, [512]]  # 18 (P4/16-medium)

  - [-1, 1, Conv, [512, 3, 2]]
  - [[-1, 9], 1, Concat, [1]]  # cat head P5
  - [-1, 3, C2f, [1024]]  # 21 (P5/32-large)

  - [[15, 18, 21], 1, Detect, [nc]]  # Detect(P3, P4, P5)

3、訓(xùn)練模型

使用如下命令訓(xùn)練模型,相關(guān)路徑更改為自己的路徑,建議絕對(duì)路徑:

yolo detect train project=deploy name=yolov8_wheat exist_ok=True optimizer=auto val=True amp=True epochs=100  imgsz=640 model=ultralytics/cfg/models/wheat/yolov8_wheat.yaml  data=ultralytics/cfg/datasets/wheat.yaml

4、驗(yàn)證模型

使用如下命令驗(yàn)證模型,相關(guān)路徑根據(jù)需要修改:

yolo detect val imgsz=640 model=deploy/yolov8_wheat/weights/best.pt data=ultralytics/ultralytics/cfg/datasets/wheat.yaml

精度如下:

Ultralytics YOLOv8.1.0 ?? Python-3.9.18 torch-2.1.0+cu118 CUDA:0 (NVIDIA GeForce RTX 4090, 24210MiB)
YOLOv8_wheat summary (fused): 168 layers, 3005843 parameters, 0 gradients, 8.1 GFLOPs
val: Scanning /home/yq/aitools/datasets/wheat_det_yolo8/labels/val.cache... 675 images, 0 backgrounds, 0 corrupt: 100%|██████████| 675/675 [00:00<?, ?it/s]
                 Class     Images  Instances      Box(P          R      mAP50  mAP50-95): 100%|██████████| 43/43 [00:14<00:00,  3.04it/s]
                   all        675      29351      0.915      0.878      0.938      0.555
Speed: 0.6ms preprocess, 1.6ms inference, 0.0ms loss, 1.0ms postprocess per image
Results saved to /home/yq/ultralytics/runs/detect/val17
?? Learn more at https://docs.ultralytics.com/modes/val

四、推理

訓(xùn)練好了模型,可以使用如下代碼實(shí)現(xiàn)推理,將權(quán)重放到同級(jí)目錄:

from PIL import Image
from ultralytics import YOLO
 
# 加載預(yù)訓(xùn)練的YOLOv8n模型
model = YOLO('best.pt')
 
image_path = 'test.jpg'
results = model(image_path)  # 結(jié)果列表
 
# 展示結(jié)果
for r in results:
    im_array = r.plot()  # 繪制包含預(yù)測(cè)結(jié)果的BGR numpy數(shù)組
    im = Image.fromarray(im_array[..., ::-1])  # RGB PIL圖像
    im.show()  # 顯示圖像
    im.save('results.jpg')  # 保存圖像

五、界面開發(fā)

使用pyqt5開發(fā)gui界面,支持圖片、視頻、攝像頭輸入,支持導(dǎo)出到指定路徑,其GUI如下圖(完整GUI代碼可在下方鏈接下載):

【深度學(xué)習(xí)目標(biāo)檢測(cè)】十六、基于深度學(xué)習(xí)的麥穗頭系統(tǒng)-含GUI和源碼(python,yolov8),CNN,目標(biāo)檢測(cè),深度學(xué)習(xí),深度學(xué)習(xí),目標(biāo)檢測(cè),python

六、代碼下載

1、本文數(shù)據(jù)集下載

2、麥穗頭檢測(cè)系統(tǒng)-源碼-含GUI文章來源地址http://www.zghlxwxcb.cn/news/detail-800954.html

到了這里,關(guān)于【深度學(xué)習(xí)目標(biāo)檢測(cè)】十六、基于深度學(xué)習(xí)的麥穗頭系統(tǒng)-含GUI和源碼(python,yolov8)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包