深入解析YOLO v1:實時目標檢測的開山之作

目錄

YOLO v1 算法詳解?

?1. 核心思想?

?2. 算法優勢?

?3. 網絡結構(Unified Detection)??

?4. 關鍵創新?

?5. 結構示意圖(Fig1)?

Confidence Score 的計算?

類別概率與 Bounding Box 的關系?

后處理:非極大值抑制(NMS)??

網絡結構實現細節?

輸出張量示例(7×7×30)??


深入解析YOLO v1:實時目標檢測的開山之作??

YOLO(You Only Look Once)是目標檢測領域的里程碑式算法,由Joseph Redmon等人在2016年CVPR會議上提出。作為第一個將目標檢測任務轉化為單階段(one-stage)回歸問題的算法,YOLO v1以其驚人的速度簡潔的網絡結構迅速成為研究熱點。本文將全面剖析YOLO v1的核心思想、實現細節及技術優勢,并對比同期算法(如Faster R-CNN)的差異。

論文名稱:You only look once unified real-time object detection
論文鏈接

YOLO v1 算法詳解?

?1. 核心思想?

YOLO(You Only Look Once)將物體檢測(object detection)任務視為一個端到端的回歸問題,通過單個卷積神經網絡(CNN)直接從輸入圖像預測目標邊界框(bounding box)和類別概率。

?2. 算法優勢?

YOLO v1 的主要優勢包括:

  1. ?速度快?:在 Titan X GPU 上達到 ?45 FPS,快速版(Fast YOLO)可達 ?150 FPS,適合實時檢測。
  2. ?全局推理?:基于整張圖像進行預測(而非滑動窗口或候選區域),減少背景誤檢(false positives),比 Fast R-CNN 的誤檢率低一半以上。
  3. ?泛化能力強?:學習到的特征更具通用性,在遷移到新領域時表現較好。
  4. ?高準確率?:在 VOC 2007 數據集上 mAP 達 63.4%,兼顧速度和精度。

?3. 網絡結構(Unified Detection)??

YOLO v1 采用 ?24 層卷積網絡 + 2 層全連接層,結構特點如下:

  • ?輸入?:448×448 圖像(通過下采樣適應網絡)。
  • ?輸出?:S×S×(B×5 + C)?的張量,其中:
    • S×S?表示網格劃分(默認?7×7)。
    • B?是每個網格預測的邊界框數量(默認?2)。
    • 5?包含邊界框的坐標(x, y, w, h)和置信度(confidence)。
    • C?是類別概率(如 VOC 數據集的 20 類)。

?4. 關鍵創新?

  • ?網格化預測?:圖像被劃分為?S×S?網格,每個網格負責預測中心落在該區域的目標。
  • ?多任務損失函數?:聯合優化邊界框坐標、置信度和分類概率,損失函數設計如下:
    • 坐標誤差(加權)
    • 置信度誤差(區分有無目標)
    • 分類誤差(交叉熵)

?5. 結構示意圖(Fig1)?

?

Confidence Score 的計算?

每個 bounding box 對應一個 ?confidence score,用于衡量該框內是否包含物體以及預測框的準確性:

  • ?公式?:

    • 如果 grid cell 中沒有物體?(背景),則 confidence = 0。
    • 如果 grid cell 中有物體,confidence = 預測框與真實框的 ?IOU(交并比)?

?如何判斷 grid cell 是否包含物體???

  • 規則:若某物體的 ground truth 邊界框的中心點坐標落在某個 grid cell 內,則該 grid cell 負責預測該物體。

類別概率與 Bounding Box 的關系?

  • ?類別概率(Class Probability)??:

    • 每個 grid cell 預測 ?C 個類別概率?(如 VOC 數據集的 20 類),表示該 grid cell 包含物體時屬于各類別的概率。
    • ?注意?:類別概率是針對 grid cell? 的,而非單個 bounding box。
  • ?Bounding Box 的最終分類得分?:

    • 將每個 bounding box 的 confidence 與 grid cell 的類別概率相乘,得到該 box 屬于某類別的置信度得分:

    • ?輸出矩陣?:
      • 形狀為?20×(7×7×2) = 20×98(20 類,98 個 bounding box)。

后處理:非極大值抑制(NMS)??

  1. ?閾值過濾?:
    • 對每一類別(矩陣的每一行),將得分 < 0.2 的 bounding box 置 0。
  2. ?排序與去重?:
    • 按得分從高到低排序,選擇最高得分的 box,計算其與其余 box 的 IOU:
      • 若 IOU > 0.5(重疊過高),則抑制(得分置 0)。
      • 否則保留。
    • 重復上述過程,直到所有 box 被處理。
  3. ?最終分類?:
    • 對每個 bounding box,取 20 個類別得分中的最大值:
      • 若最大值 > 0,則判定為對應類別;
      • 若最大值 = 0,判定為背景(忽略)。

網絡結構實現細節?

  • ?Backbone?:基于 ?GoogLeNet? 改進的卷積網絡(24 層卷積 + 4 層 Inception 模塊)。
  • ?輸出層?:
    • 全連接層輸出?7×7×30?的張量,其中:
      • 7×7:grid cell 數量。
      • 30:包含 2 個 bounding box 的坐標(x,y,w,h)和 confidence,以及 20 個類別概率。
  • ?關鍵改動?:
    • 替換 GoogLeNet 的復雜 Inception 模塊為簡單的?1×1?和?3×3?卷積組合,提升速度。
    • 最后一層全連接層直接回歸邊界框和類別(端到端訓練)。

輸出張量示例(7×7×30)??

分量維度說明
Bounding Box 15 (x,y,w,h,conf)第一個預測框的坐標和置信度
Bounding Box 25 (x,y,w,h,conf)第二個預測框的坐標和置信度
Class Probabilities2020 個類別的條件概率(P(class|obj))

?

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

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

相關文章

信令與流程分析

WebRTC是h5支持的重要特征之一&#xff0c;有了它&#xff0c;不再需要借助音視頻相關的客戶端&#xff0c;直接通過瀏覽器的Web頁面就可以實現音視頻聊天功能。 WebRTC項目是開源的&#xff0c;我們可以借助WebRTC&#xff0c;構建自己的音視頻聊緹娜功能。無論是前端JS的Web…

BIOS主板(非UEFI)安裝fedora42的方法

BIOS主板(非UEFI)安裝fedora42的方法 現實困難&#xff1a;將Fedora-Workstation-Live-42-1.1.x86_64.iso寫入U盤制作成可啟動U盤啟動fedora42&#xff0c;按照向導將fedora42安裝到真機的sda7分區中得到報錯如下內容&#xff1a; /boot/efi 必需的 /boot/efi必須位于格式化為e…

安卓 Compose 相對傳統 View 的優勢

安卓 Compose 相對傳統 View 的優勢 文章目錄 安卓 Compose 相對傳統 View 的優勢1. 引言2. 核心概念&#xff1a;Compose的革新性設計2.1 Jetpack Compose2.2 傳統安卓View系統 3. 開發體驗&#xff1a;Compose大幅提升效率3.1 使用Jetpack Compose構建UI3.2 使用傳統View系統…

SIEMENS PLC 程序 GRAPH 程序解讀 車型入庫

1、程序載圖1 2、程序截圖2 3、程序解釋 這是一個基于西門子 GRAPH 編程的車型 1 入庫順序控制流程圖&#xff0c;通過狀態機結構&#xff08;狀態框 S 與轉移條件 T&#xff09;描述完整工作流程&#xff0c;具體如下&#xff1a; 整體流程概述 初始化&#xff1a;從 S1&am…

VuePress可以做什么?

VuePress 可以做什么 VuePress 是一個基于 Vue.js 的靜態站點生成器,專注于文檔和內容展示。它結合了 Markdown 的簡潔性和 Vue 的靈活性,適合多種場景的開發需求。以下是 VuePress 的主要用途和功能: 1. 技術文檔網站 VuePress 最初是為編寫 Vue.js 官方文檔而設計的,因…

架構-系統可靠性分析與設計

一、可靠性相關基本概念 1. 可靠性與可用性 可靠性&#xff1a;軟件系統在遇到錯誤、意外操作或系統故障時&#xff0c;仍能維持自身功能特性的能力。 舉例&#xff1a;手機銀行APP在用戶誤操作&#xff08;如快速點擊多次轉賬&#xff09;時&#xff0c;仍能正確處理交易并避…

再談String

1、字符串常量池 1.1 創建對象的思考 下面是兩種創建字符串對象的代碼 public static void main1(String[] args) {String s1 "hello";String s2 "hello";System.out.println(s1 s2);//trueString s3 new String("hello");String s4 new …

《深入淺出ProtoBuf:從環境搭建到高效數據序列化》?

ProtoBuf詳解 1、初識ProtoBuf2、安裝ProtoBuf2.1、ProtoBuf在Windows下的安裝2.2、ProtoBuf在Linux下的安裝 3、快速上手——通訊錄V1.03.1、步驟1&#xff1a;創建.proto文件3.2、步驟2&#xff1a;編譯contacts.proto文件&#xff0c;生成C文件3.3、步驟3&#xff1a;序列化…

基于PHP+Uniapp的互聯網醫院源碼:電子處方功能落地方案

隨著“互聯網醫療”政策紅利持續釋放&#xff0c;互聯網醫院已成為推動醫療數字化轉型的重要方向。在這一趨勢下&#xff0c;電子處方功能模塊作為核心環節&#xff0c;不僅直接關系到線上問診閉環的實現&#xff0c;也成為系統開發中技術難度較高、業務邏輯最為復雜的一部分。…

ARM Cortex-M (STM32)如何調試HardFault

目錄 步驟 1: 實現一個有效的 HardFault 處理程序 步驟 2: 復現 HardFault 并使用調試器分析 步驟 3: 解讀故障信息 步驟 4: 定位并修復源代碼 HardFault 是 ARM Cortex-M 處理器中的一種異常。當處理器遇到無法處理的錯誤&#xff0c;或者配置為處理特定類型錯誤&#xff…

基于歸納共形預測的大型視覺-語言模型中預測集的**數據驅動校準**

摘要 本研究通過分離共形預測&#xff08;SCP&#xff09;框架&#xff0c;解決了大型視覺語言模型&#xff08;LVLMs&#xff09;在視覺問答&#xff08;VQA&#xff09;任務中幻覺緩解的關鍵挑戰。雖然LVLMs在多模態推理方面表現出色&#xff0c;但它們的輸出常常表現出具有…

LangChain4j 搭配 Kotlin:以協程、流式交互賦能語言模型開發

Kotlin 支持 | LangChain4j Kotlin 是一種面向 JVM&#xff08;及其他平臺&#xff09;的靜態類型語言&#xff0c;能夠實現簡潔優雅的代碼&#xff0c;并與 Java 庫無縫互操作。 LangChain4j 利用 Kotlin 擴展和類型安全構建器來增強 Java API&#xff0c;為其增添特定于 Ko…

正大模型視角下的市場結構判斷邏輯

正大模型視角下的市場結構判斷邏輯 在多數交易策略中&#xff0c;結構識別往往先于方向判斷。以正大的數據研判風格為例&#xff0c;其核心邏輯是&#xff1a;價格行為不能孤立解讀&#xff0c;必須結合時間與成交效率來判斷當前結構的有效性。 例如&#xff0c;一個上漲過程&…

Django 入門實戰:從環境搭建到構建你的第一個 Web 應用

Django 入門實戰&#xff1a;從環境搭建到構建你的第一個 Web 應用 恭喜你選擇 Django 作為你學習 Python Web 開發的起點&#xff01;Django 是一個強大、成熟且功能齊全的框架&#xff0c;非常適合構建中大型的 Web 應用程序。本篇將通過一個簡單的例子&#xff0c;帶你走完…

Unity 打包后 無陰影 陰影不顯示

在項目設置里面->質量 這里面顯示的是打包之后的質量 PS:注意運行質量 點擊左鍵選擇運行質量,這倆不一致就會導致,運行有陰影但是打包出來的平臺沒有陰影,原因就在這. 質量等級選擇好之后 往下滑,在這里打開陰影,如果距離過遠不顯示陰影,就增加陰影距離.

python——面向對象編程

一、編程思想 面向過程編程&#xff08;典型&#xff1a;c語言&#xff09;&#xff1a;是一種以過程為中心的編程思想。它強調流程化、線性化、步驟化的思考方式&#xff0c;實現思路就是函數。 面向對象編程&#xff1a;強調整體性和差異性。它將任何事物看做一個統一整個&…

宿主機和容器 ping 不通域名解決方法

目錄 一、問題描述 二、宿主機解決方法 三、容器解決辦法 一、問題描述 宿主機是Ubuntu&#xff0c;在宿主機上 ping 不通域名&#xff1a;xxxx.cn&#xff0c;但是個人電腦能 ping 通。 同時宿主機上的啟動的k8s容器也無法ping通。 二、宿主機解決方法 ①編輯文件&#xff…

windows作業job介紹

提示&#xff1a;文章寫完后&#xff0c;目錄可以自動生成&#xff0c;如何生成可參考右邊的幫助文檔 文章目錄 前言一、作業job是什么&#xff1f;二、使用步驟1.代碼示例 總結 前言 提示&#xff1a;這里可以添加本文要記錄的大概內容&#xff1a; winapi網站&#xff1a; h…

ESG跨境電商如何為國內的跨境電商企業打開國外的市場

現在不管是國內還是國外&#xff0c;做電商的企業都非常的多&#xff0c;那么既然有這么多大電商公司&#xff0c;就要有為這些電商公司提供服務的公司&#xff0c;這就是ESG&#xff0c;它是專門為跨境電商服務的公司&#xff0c;那么這家公司的主要業務是什么呢&#xff1f;它…

龍虎榜——20250425

指數依然在震蕩&#xff0c;等待方向選擇&#xff0c;整體量能不搞但個股紅多綠少。 2025年4月25日龍虎榜行業方向分析 一、核心主線方向 綠色電力&#xff08;政策驅動業績彈性&#xff09; ? 代表標的&#xff1a;華銀電力&#xff08;綠電運營&#xff09;、西昌電力&…