自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

YOLOv11 架構改進 & 常見指令

開發(fā)
YOLOv11 是 Ultralytics 開發(fā)的最新 YOLO 模型。這個模型在執(zhí)行實時目標檢測時,繼續(xù)平衡準確性和效率。在之前的 YOLO 版本基礎上,YOLO11 在架構和訓練上提供了顯著的改進。

今天我們介紹 YOLOv11,這個系列中的最新成員。YOLO 是一個在目標檢測領域幾乎無與倫比的算法,它產生了非常成功的結果。這個算法系列在 YOLOv5 之后由 Ultralytics 繼續(xù)開發(fā),并且每個新模型都帶來了更好的性能。

YOLOv11 是 Ultralytics 開發(fā)的最新 YOLO 模型。這個模型在執(zhí)行實時目標檢測時,繼續(xù)平衡準確性和效率。在之前的 YOLO 版本基礎上,YOLO11 在架構和訓練上提供了顯著的改進。在保持速度的同時提高性能的最重要的架構變化是增加了 C3K2 塊、SPFF 模塊和 C2PSA 塊。

  • C3K2 塊:這是在以前版本中引入的 CSP(Cross Stage Partial)塊的增強。該模塊使用不同的核大小(例如 3x3 或 5x5)和通道分離策略來優(yōu)化更復雜特征的提取。
  • SPFF(Spatial Pyramid Pooling Fusion)模塊:它是 YOLO 版本中使用的 SPP(Spatial Pyramid Pooling)模塊的優(yōu)化版本。該模塊允許模型通過捕獲不同尺度的物體屬性來更好地執(zhí)行。
  • C2PSA 塊:這個塊通過結合通道和空間信息提供更有效的特征提取。它還與多頭注意力機制一起工作,從而實現對物體更準確的感知。它優(yōu)化了前一層的特征圖,并用注意力機制豐富它們,以提高模型的性能。這種結構使得在復雜場景中更精確的檢測成為可能,并提高了 YOLOv11 的準確性。

除了這些架構變化,YOLOv11 像 YOLOv8 一樣具有多模型能力。得益于其多模型特性,YOLOv11 可以執(zhí)行以下任務:

  • 目標檢測:在圖像中識別和定位物體。
  • 實例分割:檢測物體并確定它們的邊界。
  • 分類:將圖像分類到預定義的類別中。
  • 姿態(tài)估計:檢測和跟蹤人體上的標志點。
  • 定向目標檢測(OBB):檢測旋轉物體以提高靈敏度。

在我們開始使用之前,讓我們談談新 YOLO 版本帶來的特性。

  • 現有的主干結構已經被 C3K2 塊替換,以提高特征提取能力。
  • 頸部結構已經用 SPFF 模塊改進,以捕獲不同大小的物體并更好地檢測小物體。
  • 增加了 C2PSA 塊,專注于更小或部分遮擋物體中的重要區(qū)域。
  • 通過多模型能力增加了任務數量。
  • 更容易適應各種環(huán)境,包括邊緣設備。
  • 得益于其優(yōu)化的架構和高效的處理能力,它可以部署在邊緣設備、云平臺和支持 NVIDIA GPU 的系統(tǒng)上。

由于這些優(yōu)化和創(chuàng)新,YOLOv11 在實時應用中提供了性能提升。模型運行更快、更準確,提高了目標檢測、樣本分割和姿態(tài)估計等任務的效率。此外,兼容性得到了改善,使模型可以輕松地在不同的平臺和硬件上運行(例如云或邊緣設備)。在 Ultralytics (詳見官網:https://docs.ultralytics.com/models/yolo11/)頁面上,當他們評估 YOLOv11 與以前版本相比的性能時,他們發(fā)表了以下評論。

隨著模型設計的改進,YOLO11m 在使用比 YOLOv8m 少 22% 參數的情況下,在 COCO 數據集上實現了更高的平均精度均值(mAP),使其在不犧牲準確性的情況下具有計算效率。

然而,盡管 YOLOv11 模型的性能很好并且提供了廣泛的范圍,但在目標檢測方面,它并不像 YOLOv10 那樣成功。盡管 YOLOv10 有更多的參數,YOLOv11 只實現了微小的差異(+0.1-0.5)的更好性能。在這種情況下,YOLOv10 可能仍然是我們的偏好,因為參數的過剩導致速度損失和成本。

使用 YOLOv11

使用 PyTorch 構建 YOLOv11 模型及其與其他模式的使用簡要如下。

步驟 1:首先,我們需要下載 Ultralytics 庫。有了這個庫,我們可以運行從 YOLOv3 到 YOLOv11 的所有模型。

pip install ultralytics

步驟 2:如果你只想在一個訓練好的模型中進行預測。以下代碼就足夠了。否則你可以跳過它。

yolo predict model=yolo11n.pt source='https://ultralytics.com/images/bus.jpg'py

步驟 3:如果你說不,我想訓練我的模型,你可以選擇你想要的模型并下載 .pt 文件。

from ultralytics import YOLO

# Load a COCO-pretrained YOLO11n model
model = YOLO("yolo11n.pt")

步驟 4:然后你需要選擇訓練數據、訓練epoch、圖像大小和你的設備。

train_results = model.train(
    data="coco8.yaml",  # path to dataset YAML
    epochs=100,  # number of training epochs
    imgsz=640,  # training image size
    device="cpu",  # device to run on, i.e. device=0 or device=0,1,2,3 or device=cpu
)

步驟 5:你需要用驗證數據評估和測試模型。它將驗證數據從訓練數據本身中分離出來,對于測試,你只需要提供你想要測試的圖像的路徑。

metrics = model.val()

results = model("path/to/image.jpg")
results[0].show()

步驟 6:在最后一步,我們可以導出你的模型,以便以后再次使用。如果你想用你自己的模型進行預測,只需使用步驟-2。

path = model.export(format="onnx")

YOLOv11 常用操作指令

用你自己的數據訓練你的目標檢測模型,具有特定的學習率和epoch:

yolo train data=coco8.yaml model=yolo11n.pt epochs=10 lr0=0.01

對于模型驗證:

yolo val model=yolo11n.pt data=coco8.yaml batch=1 imgsz=640

在 YouTube 視頻上測試模型的結果,圖像大小為 320:

yolo predict model=yolo11n.pt source='https://youtu.be/LNwODJXcvt4' imgsz=320

使用預訓練的分割模型在 YouTube 視頻上預測,圖像大小為 320:

yolo segment predict model=yolo11n-seg.pt source='https://youtu.be/LNwODJXcvt4' imgsz=320

將你特別訓練的模型導出為 .pt 擴展名:

yolo export model=path/to/best.pt format=onnx
責任編輯:趙寧寧 來源: 小白玩轉Python
相關推薦

2025-01-03 16:17:08

2024-10-24 20:56:36

2024-11-27 10:27:56

2024-10-07 11:12:55

2025-01-06 08:20:00

YOLOv11目標檢測Python

2025-02-18 08:00:00

C++YOLO目標檢測

2021-11-24 11:04:09

技術架構技術前線 IT管理

2024-06-06 12:24:18

預編譯代碼編譯

2012-12-03 09:22:19

iTunes 11iCloud云服務

2024-12-03 15:25:27

2010-12-07 08:57:14

Android 2.3

2021-01-18 08:25:44

Zookeeper面試分布式

2021-12-06 11:26:05

Windows 11飛行模式通知中心

2022-12-15 17:31:41

架構龍芯

2012-03-20 09:02:00

Visual Stud

2023-09-29 10:27:18

2021-12-29 06:58:41

架構師數據應用

2025-04-30 10:52:10

2021-09-27 14:33:01

Windows 11Windows微軟

2021-09-20 11:41:56

Windows 11硬盤空間占用微軟
點贊
收藏

51CTO技術棧公眾號