FCN語義分割算法原理與實戰

FCN語義分割算法原理與實戰

本文若有舛誤,尚祈諸君不吝斧正,感激不盡。

前提概要:所使用的材料來源

對應視頻材料:FCN語義分割

雖然可能比較簡單但是奠定了使用卷積神經網絡做語義分割任務的基礎。

語義分割:輸入圖片,經過網絡模型,輸出原始圖片對應像素的類別。

image-20250719071700292

FCN語義分割算法原理

主流常見的計算機視覺任務
  • 圖像分類
  • 目標檢測
  • 語義分割
  • 實例分割
  • and so on
image-20250718190027668
image-20250719071938433
FCN模型如何進行語義分割

image-20250719100238213

語義分割任務:輸出的是矩陣與輸入圖像大小一致,輸出后的每個像素有對應類別的概率,映射原圖中對應位置的類別。

FCN模型輸出結果解析

image-20250719100950136

假設標注20個類別,則最終輸出結果是21個類別,因為還有一個背景類別。

輸入HxW -->net --> HxWxC 注意:C(通道數)=分類個數+背景

轉置卷積先導

image-20250719104527748

轉置卷積的計算過程

image-20250721094430784

輸入特征 * 卷積核 = 輸出特征


image-20250721095018181

image-20250721100918190

FCN網絡版本解析

image-20250722192651058

采取了很多跳轉連接方法

全卷積網絡為什么可以接收任意大小的輸入?

image-20250722192525204

FCN網絡的損失函數

損失函數是像素級的分類交叉熵(Pixel-wise Softmax + Cross-Entropy Loss)

image-20250722202837250

語義分割算法模型的評價指標(import!)

常用的包含以下四個:

  • Pixel Accuracy 像素準確率 image-20250722204728505

    • 所有被正確分類的像素所占的比例
    • 特點:直觀簡單,但對于類分布極度不均衡的數據(如背景占比很大)會有“準確率虛高”的問題

  • Mean Accuracy 平均類別準確率image-20250722204743343

    • 每個類別的像素準確率的平均值
    • 特點:可以平衡類間分布不均的問題,但是對于小類極為敏感

  • Mean IoU 平均交并比image-20250722204800650

    • 每個類別的交并比(IoU)的平均值 (語義分割中最常用的評價指標之一!)
    • 特點:對每一類都很公平,能反映模型在小類上的表現

  • Frequency Weighted IoU 頻率加權交并比image-20250722204811309
    • 考慮類別在數據中出現頻率的IoU加權平均
    • 特點:類似Mean IU,但考慮了每類像素的數量,更貼近數據真實分布。避免了某些稀有類對平均結果的影響

像素準確率和平均類別準確率的案例:

image-20250722205452259

平均交并比案例:

image-20250722210347951

FCN語義分割網絡結構講解

背景:標準的 FCN 論文(Fully Convolutional Networks for Semantic Segmentation, 2015)本身是基于 VGG 構建的,并沒有顯式使用 bottleneck 結構,但后續很多工作(比如 DeepLab 系列、FCN-ResNet 等)將 FCN 與 ResNet 等網絡結合。所有FCN有一些不同結構的版本。

image-20250729191340914

右側的圖片為整體的流程圖,最后輸出的大小是480 x 480 x 21,其中的21(通道數)表示21個類別。

Bottleneck:

結構圖中的Bottleneck構建了四個基本的層,這四個層就是resnet的主干網絡。

核心代碼:

image-20250729193847814

膨脹卷積:

亦稱為空洞卷積,可以增加卷積核的感受野,同時不增加計算量。核心思想是通過插入空洞卷積擴展卷積核的有效感受野,使其捕獲更大范圍的上下文信息。

image-20250729194318256

image-20250729194847473

注意:代碼中的dilation默認為1則表示普通卷積,大于1的情況下表示膨脹卷積。

原版的Resnet中沒有使用膨脹卷積。

FCNHead:

頭部層對應代碼

image-20250729200028911

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

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

相關文章

堆的理論知識

1 引入1.1 普通二叉樹不適合用數組存儲的原因普通二叉樹的結構是 “不規則” 的 —— 節點的左右孩子可能缺失,且缺失位置無規律。 若用數組存儲(按 “層次遍歷順序” 分配索引,即根節點放索引 0,根的左孩子放 1、右孩子放 2&…

【python實用小腳本-161】Python Json轉Xml:告別手敲標簽——一行命令把配置秒變可導入的XML

Python Json轉Xml:告別手敲標簽——一行命令把配置秒變可導入的XML 關鍵詞:json轉xml、零依賴腳本、自動生成標簽、小白友好、跨平臺故事開場:周五下午,老板又甩來“配置翻譯”任務 17:55,你正準備關機,老板…

WisFile(文件整理工具) v1.2.19 免費版

下載:https://pan.quark.cn/s/db99b679229fWisFile是一款免費AI文件管理工具,可以在電腦本地運行。它專注于解決文件命名混亂、歸類無序和手動整理耗時的問題。通過AI技術智能識別文件內容,支持批量重命名和智能分類歸檔功能,可自…

簡歷美容院:如何把“打雜經歷“包裝成“核心項目“?

簡歷美容院:如何把"打雜經歷"包裝成"核心項目"? 大家好,我是程序員小白條,今天來研究下簡歷包裝的事,小白可以按我的包裝流程走,可以分步驟進行包裝,具體怎么進行可以看正文…

零基礎-動手學深度學習-7.7 稠密連接網絡(DenseNet)

ResNet極大地改變了如何參數化深層網絡中函數的觀點。 稠密連接網絡(DenseNet)在某種程度上是ResNet的邏輯擴展。讓我們先從數學上了解一下。 7.7.1. 從ResNet到DenseNet 7.7.2. 稠密塊體 DenseNet使用了ResNet改良版的“批量規范化、激活和卷積”架構…

Marin說PCB之POC電路layout設計仿真案例---09

好消息,好消息,小編最愛的國漫凡人修仙傳電視劇版本的終于可以看了,小編我推薦一波啊,感興趣的道友們可以去某酷視頻去追劇啊。 好了,咱們言歸正傳啊。本期的案例是這個月中旬我們組的測試大哥阿永去某田實驗室去測試我…

論文閱讀--射頻電源在半導體領域的應用

《射頻電源在半導體領域的應用》 論文信息:左政,馮國楠,李建慧,等.射頻電源在半導體領域的應用[J].軟件和集成電路,2025,(04):38-43.DOI:10.19609/j.cnki.cn10-1339/tn.2025.04.007. 一、射頻電源的定義與分類 1.1 定義射頻電源(RF Power Supply&#xf…

綠算技術攜手昇騰發布高性能全閃硬盤緩存設備,推動AI大模型降本增效

在數字化浪潮席卷全球的今天,人工智能已經成為推動企業創新與發展的重要力量。廣東省綠算技術有限公司(簡稱“綠算技術”)緊跟時代步伐,基于華為昇騰AI大模型,推出了高性能全閃硬盤緩存設備,致力于為人工智…

HoloLens2系列講解 - 06 基本操作

一、導入MRTK插件 1. 首先要新建一個項目,打開unity,新建一個project。 2. 導入MRTK包。 3. 點擊 Mixed Reality Toolkit > Add to scene and Configure 添加MR場景配置文件。

Linux Vim 編輯器使用指南

Linux Vim 編輯器使用指南一、Vim 簡介 Vim(Vi IMproved)是 Linux/Unix 系統中最流行的文本編輯器之一,它是 Vi 的增強版,支持多模式操作、語法高亮、插件擴展等特性,無需鼠標即可高效編輯文本。 二、核心工作模式 Vim…

運維筆記:破解 VMware 遷移難題

一、VMware 遷移前的準備與評估1.1 遷移場景與目標分析VMware 遷移常見場景包括:同平臺升級:從 vSphere 6.7 遷移到 7.0/8.0(硬件兼容、功能迭代)跨平臺遷移:VMware→KVM/Xen(降低 licensing 成本&#xff…

cartographer 點云數據的預處理

目錄 傳感器數據的走向 體素濾波與之后的處理 3D情況下的激光雷達數據的預處理 初始位姿估計 位姿推測器的優缺點分析與總結 可能有問題的點 可能的改進建議 傳感器數據的走向 傳感器數據從CollatedTrajectoryBuilder類的HandleCollatedSensorData函數 傳遞GlobalTrajec…

基于數據挖掘的短視頻點贊影響因素分析【LightGBM、XGBoost、隨機森林、smote】

文章目錄有需要本項目的代碼或文檔以及全部資源,或者部署調試可以私信博主項目介紹總結每文一語有需要本項目的代碼或文檔以及全部資源,或者部署調試可以私信博主 項目介紹 隨著短視頻行業的高速發展,尤其是以抖音為代表的平臺不斷壯大&…

Git 從入門到精通

Git 從入門到精通 涵蓋了核心概念、常用命令、協作流程和高級技巧: 核心理念: 版本控制: 記錄文件變化歷史,可回溯到任意版本。分布式: 每個開發者擁有完整的倉庫副本(包括完整歷史)&#xf…

UE5多人MOBA+GAS 30、技能升級機制

文章目錄前言技能的升級修改一下按鍵的輸入判斷是否滿級在ASC中升級技能由角色的輸入調用ASC的升級功能技能圖標的優化技能升級材質,可升級技能圖標的閃爍刷新技能升級后的藍耗和CD,以及藍不夠時技能進入灰色狀態修復傷害數字特效只顯示3位數的問題前言 …

筆試——Day22

文章目錄第一題題目思路代碼第二題題目:思路代碼第三題題目:思路代碼第一題 題目 添加字符 思路 枚舉所有字符串a與字符串b相對應的位置 代碼 第二題 題目: 數組變換 思路 貪心 以最大值為基準元素,判斷其他元素能否變為最…

__getattr__和 __getattribute__ 的用法

1、__getattr__ 的用法當實例對象訪問一個不存在的屬性時,會執行 __getattr__ 方法,如果屬性存在的話,就不會執行案例 class Person:def __init__(self, name, age):self.name nameself.age agedef get_info(self):return f"name: {se…

信息化項目驗收測試實戰指南

在當今數字化轉型的大背景下,信息化項目驗收建設已成為企業提升運營效率、優化管理流程的重要手段。然而,很多企業在投入大量資金建設信息系統后,卻常常面臨系統上線后無法滿足實際業務需求的困境。究其原因,往往是由于忽視了信息…

牛頓拉夫遜法PQ分解法計算潮流MATLAB程序計算模型。

牛頓拉夫遜法&PQ分解法計算潮流MATLAB程序計算模型。本程序模型基于MATLAB進行潮流計算,建議先安裝matpower插件(MATLAB中非常重要的潮流計算的插件)。本程序可進行牛拉法和PQ分解法潮流計算的切換,對比潮流計算的結果。很適合…

Go語言實戰案例-計算字符串編輯距離

在自然語言處理、拼寫糾錯、模糊搜索等場景中,我們經常需要衡量兩個字符串之間的相似度。編輯距離(Edit Distance) 就是一個經典的衡量方式,它描述了將一個字符串轉換為另一個字符串所需的最少操作次數。 一、問題定義:什么是編輯距離? 編輯距離,也稱為 Levenshtein Di…