yolo8目標檢測+訓練(識別和平精英人物)

?步驟一:安裝 PyTorch(M1 專用)

# 推薦使用官方 MPS 后端(Apple Metal 加速)

pip install torch torchvision torchaudio

確認是否使用了 Apple MPS:


import torch 
print(torch.backends.mps.is_available())

# True 表示支持


? 步驟二:安裝 OpenCV(預編譯版)

pip install opencv-python==4.8.0.76 

?

如仍失敗,可以降級到更穩定的版本:

?


pip install opencv-python==4.6.0.66 

?

?

?


? 步驟三:安裝 Ultralytics(YOLOv8)

這個會去依賴opencv

pip install ultralytics --no-binary opencv-python

或者,使用無依賴模式(跳過 OpenCV 的再次依賴):

pip install ultralytics --no-deps 

?


? 步驟四:驗證安裝


yolo version 

?

如果輸出了版本號(如 Ultralytics YOLOv8.1.26 等)說明一切正常。

?


? 測試 YOLOv8 是否能跑起來

你可以運行一個簡單的預測命令測試模型:

yolo task=detect mode=predict model=yolov8n.pt source='https://ultralytics.com/images/bus.jpg'

這會下載一個圖片并進行目標檢測,自動彈出預測窗口(或保存預測圖像)。

🔧 1、識別人物-整體流程總覽

  1. 準備數據集(圖像 + 標注)

  2. 數據集格式轉換(轉為 YOLO 格式)

  3. 安裝 YOLOv8(ultralytics)

  4. 配置訓練參數(模型、類別、路徑)

  5. 開始訓練

  6. 驗證和測試

  7. 部署使用

🧩 2、每一步分模塊詳解


📁 1. 數據采集與標注(圖像和標注文件)

需要采集圖像并對目標進行手動標注

? 推薦免費標注工具(支持導出為 YOLO 格式):

工具名平臺特點說明
LabelImgWindows / Mac / Linux本地運行,輕量,支持 Pascal VOC 和 YOLO 格式
Roboflow在線工具免費計劃支持上傳圖像、標注、自動轉換格式
LabelmePython 工具支持多邊形標注,也可導出為 COCO 格式
CVAT在線部署或本地部署適合大規模標注,功能強大,支持團隊協作

👉 建議初學者使用 LabelImgRoboflow,操作直觀,輸出格式直接支持 YOLO。

🔄 2. 轉換數據集為 YOLO 格式

YOLO 格式標注樣例如下(txt 文件):0 0.5 0.5 0.2 0.3

格式說明:

[class_id] [x_center] [y_center] [width] [height]

都是相對坐標(比例,相對于圖片大小)。

如果你標注格式不是 YOLO,需要轉換,比如從 VOC / COCO → YOLO,可以使用:

  • Roboflow 自動轉換

  • labelme2yolo 工具

  • roboflow python 工具包

?

📁 3、 roboflow標注(圖像和標注文件)

?

可以搜索教程怎么標記要訓練的數據

??3、開始訓練識別和平精英人物識別

🔧 model.train() 常用參數解析

參數類型說明
datastr數據集配置文件路徑(例如 data.yaml
epochsint訓練輪數(epoch 數)
imgszinttuple輸入圖片尺寸,默認 640(可為整數或 (h,w) 元組)
batchint每批訓練的圖像數量,默認 16
deviceintstr使用的設備,例如 '0'(GPU0)、'cpu''0,1'
savebool是否保存模型(默認 True)
exist_okbool是否允許覆蓋已有運行目錄
resumebool是否從上次訓練中斷處恢復
patienceint如果驗證指標在這么多 epoch 內不再提升,則提前停止訓練(默認 50)
optimizerstr選擇優化器:SGD、Adam、AdamW(默認 SGD)
lr0float初始學習率(默認 0.01)
lrffloat最終學習率與初始學習率的比值(默認 0.01)
momentumfloat動量參數(僅用于 SGD)
weight_decayfloat權重衰減(默認 0.0005)
workersint數據加載線程數(建議 0 或 2~8)
pretrainedboolstr使用預訓練模型(True 或權重路徑)
projectstr日志文件保存路徑
namestr本次運行的名稱,結果將保存在 runs/train/name/
verbosebool顯示更多訓練信息
seedint設置隨機種子以保證復現性

?

📌 數據集配置文件(data.yaml)結構:


from ultralytics import YOLO# 加載模型
model = YOLO("/Users/lianying/Desktop/yolo/yolov8n.pt")  # 你的模型路徑# 開始訓練
model.train(data="/Users/lianying/Desktop/yolo/pubg mobile.v2i.yolov8/data.yaml",  # data.yaml路徑epochs=2,imgsz=640
)

?在使用 YOLOv8(如 Ultralytics YOLOv8)訓練模型后,輸出目錄(通常是 runs/detect/train)中會生成兩個主要的模型文件:

? best.pt

  • 含義:在訓練過程中,在驗證集上表現最好的模型(通常指 mAP 值最高)。

  • 用途:用于部署或實際推理時的首選模型。

  • 保存時機:每輪訓練后都會驗證一次性能,若當前 mAP 更優于之前所有輪次,就保存為 best.pt


? last.pt

  • 含義訓練最后一輪保存的模型。

  • 用途

    • 若訓練中斷,可以從 last.pt 恢復繼續訓練;

    • 如果對 best.pt 不滿意,也可以嘗試 last.pt


🛠?選擇哪個用于推理?

文件名適用場景建議
best.pt精度優先的推理部署? 推薦使用
last.pt繼續訓練、對比測試可選(不推薦部署)

?

🛠?加載方式

使用 YOLO 類加載模型:

from ultralytics import YOLOmodel = YOLO("runs/detect/train/weights/best.pt")  # 加載最優模型

?

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/89643.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/89643.shtml
英文地址,請注明出處:http://en.pswp.cn/web/89643.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【ArcGISPro】修改conda虛擬安裝包路徑

問題在ArcGISPro中經常使用克隆,導致C盤默認虛擬安裝包內存越來越大,導致電腦很卡解決方案打開ArcGISPro所在conda文件夾D:\Program Files\ArcGIS\Pro\bin\Python\Scripts打開命令行工具(如 CMD 或終端)。輸入以下命令&#xff0c…

三格電子—西門子PLC串口轉網口模塊

一、功能概述本文檔是西門子PLC串口轉以太網系列產品,包含SG-S7-200-ETH、S7-200-ETH(2P),SG-S7-300-ETH,SG-S7-300-ETH(2P)共四個產品。使用框圖如下圖所示意。1.1 產品功能本系列產品用來給西門子S7-200/300 PLC串口擴展出網口來&#xff0…

Python—requests模塊

Python requests 模塊代碼演示 requests 是 Python 中一個簡單易用的 HTTP 庫,用于發送各種 HTTP 請求。下面是一些常見的使用示例: 1. 基本 GET 請求 import requests# 發送 GET 請求 response requests.get(https://api.github.com)# 檢查請求是否成功…

華為倉頡編程語言語法簡介與示例

華為倉頡編程語言語法簡介與示例 倉頡編程語言是華為自主研發的新一代通用編程語言,由南京大學馮新宇教授團隊主導設計,于 2024 年華為開發者大會(HDC)正式發布,并在 2025 年 7 月推出首個長期支持版本(LTS…

觸發器的創建

- 建立product表,操作方式operate表要求1.定義觸發器實現在產品表(product)中每多一個產品,就在操作表(operate)中記錄操作方式和時間以及編號記錄。注:操作說明:標記執行delete 、insert、update2.定義觸發器實現在產品表(product)中每更新一…

論文略讀: RASA: RANK-SHARING LOW-RANK ADAPTATION

ICLR 2025盡管 LoRA 有諸多優勢,但近期研究表明,它在大規模訓練數據集和復雜任務(如數學推理和代碼生成)中,仍然落后于全參數微調(FFT)一個合理的解釋是:低秩約束限制了 LoRA 的表達…

VSCode - VSCode 查找中文字符

VSCode 查找中文字符 1、查找中文字符使用快捷鍵 Ctrl F 打開查找框點擊正則表達式按鈕 .*在搜索框中輸入 [\u4e00-\u9fa5],這個范圍涵蓋了基本的中文字符2、查找中文字符串使用快捷鍵 Ctrl F 打開查找框點擊正則表達式按鈕 .*在搜索框中輸入 [\u4e00-\u9fa5]&a…

SQL基礎操作指南:增刪改查入門

前言 在日常數據庫操作中,掌握增刪查改是每個開發者必備的技能。下面我將通過實例解析SQL的核心操作要點,幫你避開常見陷阱。一、新增數據(INSERT) 單行插入:明確指定字段和值 INSERT INTO 表名(字段1, 字段2) VALUES …

Linux系統安裝Docker及部署Node.js 20.15.0(含pnpm、pm2)完整指南

前言:在應用項目部署中,“環境不一致”往往是開發與運維的痛點——本地能跑的代碼到了服務器就報錯,依賴版本、系統配置差異都可能成為隱患。而Docker的容器化技術恰好能解決這一問題,通過“一次構建,到處運行”的特性…

python的多線程無法并行只能并發,why?

標題python的多線程無法并行只能并發,why?python的多線程無法并行只能并發,why? 在 Python 中,特別是使用 CPython 解釋器時,由于存在 全局解釋器鎖(GIL),即使在多核處理…

Kotlin比較接口

在 Kotlin 中,Comparable 和 Comparator 是兩個允許開發者對相同或不同類的對象進行比較的接口。這兩個接口通常用于基于一個或多個屬性對對象集合進行排序與排序操作。本文將概述 Kotlin 的 Comparable 和 Comparator 接口,解釋它們的用法,并…

day41 簡單CNN

DAY 41 首先回顧下昨天的代碼。 # import torch # import torch.nn as nn # import torch.optim as optim # from torchvision import datasets, transforms # from torch.utils.data import DataLoader # import matplotlib.pyplot as plt # import numpy as np# # 設置中文字…

[實戰]巴特沃斯濾波器全流程解析:從數學原理到硬件實現

巴特沃斯濾波器全流程解析:從數學原理到硬件實現 文章目錄巴特沃斯濾波器全流程解析:從數學原理到硬件實現1. 數學原理2. 工程實現梯形網絡結構3. Python理論仿真4. 硬件仿真與PCB考慮5. 完整設計工具6. 輸出結果示例7. 設計注意事項巴特沃斯濾波器是特別…

《機器學習數學基礎》補充資料:標準差與標準化

1 標準差 我們經常使用平均數來大致了解一組數據,例如平均成績、平均身高、平均壽命等等。但是如果只看平均數,不一定能充分了解整體情況。比如說你和某首富住同一個社區,你們社區平均每戶年收入兩千萬,那么你家是有錢還是沒錢&am…

深度學習 | 多類交叉熵(Categorical Cross Entropy)詳解 + Python實現

在多分類任務中,模型輸出一個概率分布,常用的損失函數是 Categorical Cross Entropy(多類交叉熵)。本文將帶你理解其數學本質、應用場景、數值穩定性及完整 Python 實現。📘 一、什么是 Categorical Cross Entropy&…

MyBatis-Plus通用中等、大量數據分批查詢和處理

函數式接口 獲取分頁數據接口 主要用于獲取數據 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;FunctionalInterface public interface MyBatisPlusPageFunctionInterface<T> {Page<T> selectPage(Page<T> page);}數據處理接口 import…

Ps 2025安裝包(Adobe Photoshop 2025)安裝包免費免激活版下載 附圖文詳細安裝教程

[軟件名稱]&#xff1a;Ps2025 V26.3 [軟件大小]&#xff1a;4.86 G [系統要求]&#xff1a;支持Win7及更高版本 [夸克網盤下載https://pan.quark.cn/s/d35677af9ef9 &#xff08;建議用手機保存到網盤后&#xff0c;再用電腦下載&#xff09;更多免費軟件見https://docs.qq.co…

Codeforces Round 1037 (Div. 3)(補題)

文章目錄前言A.Only One DigitB.No Casino in the MountainsC. I Will Definitely Make ItD.This Is the Last TimeE.G-C-D, Unlucky!總結前言 感覺前四道&#xff0c;就是考對于題目的理解能力&#xff0c;以及自己的模擬能力 A.Only One Digit 題目傳送門&#xff1a;Only …

基于單片機智能插座設計/智能開關

傳送門 &#x1f449;&#x1f449;&#x1f449;&#x1f449;其他作品題目速選一覽表 &#x1f449;&#x1f449;&#x1f449;&#x1f449;其他作品題目功能速覽 概述 隨著我國的電子計算機技術的快速發展以及居民對現實生活的要求也在不斷提升&#xff0c;所以很多…

[Linux]git_gdb

一、git1. git 常用指令git status 查看倉庫狀態git add <文件名> 把文件添加到倉庫暫存區git commit -m "信息" 把文件加入倉庫git push 把本地倉庫同步到遠端git pull …