超分之DeSRA

  • Desra: detect and delete the artifacts of gan-based real-world super-resolution models.
  • DeSRA:檢測并消除基于GAN的真實世界超分辨率模型中的偽影
  • Xie L, Wang X, Chen X, et al.
  • arXiv preprint arXiv:2307.02457, 2023.

摘要

  1. 背景
    • GAN-SR模型雖然可以恢復圖像的真實細節,但是不可避免的會產生偽影。
  2. 目前的研究方法與不足
    • 在訓練階段通過額外的損失懲罰來抑制偽影。
    • 它們只適用于訓練期間生成的偽影類型,對于實際的真實測試圖像,重建圖像仍然會存在偽影。
  3. 提出了本文的方法—DeSRA
    • 首先測量 MSE-SR 結果和 GAN-SR 結果的相對局部方差距離,并根據上述距離和語義感知閾值定位問題區域。
    • 在檢測到偽影區域后,本文開發了一個微調程序,以使用少量樣本改進GAN-SR 模型。

1. 引言

  1. 目前GAN-SR模型的真實世界推理:

    • 對于GAN-SR模型產生的偽影,在訓練期間LDL使用局部判別損失懲罰,但是對于真實世界圖像推理時,重建圖像仍然會存在偽影。
      在這里插入圖片描述
  2. 本文將GAN-SR偽影出現的不同階段分類:
    (1)GAN訓練偽影:在模型訓練時不穩定優化產生的偽影。(LDL懲罰損失,緩解偽影)
    (2) GAN推理偽影:在使用真實世界圖像的推理過程中產生的偽影。(訓練集未出現)

  • 針對GAN推理偽影:
    1. 檢測偽影區域:
      1. 通過計算局部方差來測量基于 MSE 和基于 GAN 的模型生成的結果之間的紋理差異。
      2. 進一步引入語義感知調整,以放大感知偽影敏感區域(例如建筑物、海洋)的差異,同時抑制紋理區域(例如樹葉、動物毛皮)的差異。
    2. 制作偽GT圖像并微調GAN-SR模型:
      1. 收集少量帶有偽影的基于 GAN 的結果,并根據二值化檢測掩碼將偽影區域替換為基于 MSE 的結果。
      2. 使用組合結果作為偽 GT 來構建訓練對,以在極短的迭代周期內對模型進行微調。
  1. 總結:
    • 本文首次嘗試分析在推理過程中通常出現在沒有真實數據的未見測試數據上的 GAN 推理偽影。
    • 基于本文的分析,本文設計了一種方法來有效地檢測具有 GAN 推理偽影的區域。
    • 本文進一步提出了一種微調策略,只需要少量的偽影圖像就可以消除相同類型的偽影,這彌補了將 SR 算法應用于實際場景的差距。
    • 與以前的工作相比,本文的方法能夠更準確地檢測未見的偽影,并更有效地緩解 GAN-SR 模型在真實世界測試數據中產生的偽影

2. 相關工作

  1. MSE-based Super-Resolution.
    • 本質:通過最小化 SR 輸出與 HR 真實值之間的像素距離( l 1 l_1 l1? l 2 l_2 l2?距離)來恢復高保真結果。
    • 缺點:優化像素距離不可避免地會導致缺乏精細細節的平滑重建。
    • 代表模型:SRCNN、VDSR、EDSR、 RCAN
  2. GAN-based Super-Resolution
    • 本質: 通過GAN的生成器與判別器交替博弈,來提高 SR 結果的感知質量。
    • 缺點:GAN-SR重建的圖像會產生偽影。
    • 代表模型:SRGAN、ESRGAN、 BSRGAN、Real-ESRAGN、RealBasicVSR、FastRealVSR、SPSR 、LDL

3. 方法論

3.1 GAN-SR
  • 現有的GAN-SR方法,都是使用三種損失的加權和進行訓練:
    ![[Pasted image 20250306183613.png|500]]

  • 為了解決GAN訓練的不穩定性,首先僅使用 l r e c o n s l_recons lr?econs進行預訓練,生成MSE-SR模型;然后使用$l_GAN對MSE-SR模型進行微調,來得到最終的GAN-SR模型

  • 通過下圖可以看到,含有偽影的GAN-SR結果的視覺質量甚至比MSE-SR結果更差。并且GAN-SR偽影類型復雜,特征各異,且隨圖像內容不同而不同。
    ![[Pasted image 20250306183818.png]]

因此本文的目的就是檢測出GAN-SR生成圖像的偽影區域,并使用MSE-SR生成圖像來替換此偽影區域。

3.2 檢測偽影區域

本文主要解決的GAN-SR推理偽影:
(1)偽影不會出現在預訓練的MSE-SR模型:在模型訓練時不穩定優化產生的偽影。(確保偽影是由于GAN引起)
(2)偽影明顯, 面積較大。

  1. 計算局部紋理的復雜性 : (局部區域 P 內像素強度的標準差)
    ![[Pasted image 20250306184351.png|400]]

  2. 計算MSE-SR與GAN-SR塊之間的局部紋理差異:
    ![[Pasted image 20250306184443.png|200]]

![[Pasted image 20250306184622.png|300]]

  • 從上圖可以看到
    • 對于相似語義塊;d越大,GAN偽影越明顯
    • 對于不同語義塊:d不能直接反應GAN偽影現象
  1. 因此要改進紋理差異為相對值:
    ![[Pasted image 20250306184527.png|200]]||500

  2. 紋理差異歸一化:
    ![[Pasted image 20250306184836.png|300]]

  3. 分母優化:
    ![[Pasted image 20250306184900.png|200]]

![[Pasted image 20250310160028.png|300]]

經過上述操作后,可以看到圖中最后一列已經能夠分辨出GAN-SR相較于MSE-SR產生的偽影,但是任然存在細微的差異,因此進行進一步的優化。
6. SegFormer分割不同區域:
![[Pasted image 20250310160326.png|300]]

  1. 分區域區分偽影: (threshold=0.7):
    ![[Pasted image 20250310160400.png|300]]

![[Pasted image 20250310160430.png|300]]

經過更細致的優化,可以從圖中的最右側看出,已經完全區分了GAN-SR相較于MSE-SR產生的偽影,并且也不會對MSE-SR的相應區域進行細微的懲罰。

3.3 改進GAN-SR模型

通過上述3.2檢測的偽影區域,本文得到了一個結論:

  • 沒有偽影的弱恢復甚至比帶有偽影的強恢復更好
    因此使用MSE-SR替換GAN-SR中偽影的區域:
    ![[Pasted image 20250310161219.png|300]]

![[Pasted image 20250310161237.png|300]]

3.4 小結
  1. 將推理的真實世界圖像通過MSE-SR模型生成偽GT圖像;
  2. 使用低分辨率LR圖像與偽GT圖像進行微調訓練,重建出偽影較少的超分辨率SR圖像。

4. 實驗

4.1可視化分析

![[Pasted image 20250310161440.png|500]]在這里插入圖片描述

4.2 用戶調研分析

在這里插入圖片描述

  1. 相較于GAN-SR模型,驗證DeSRA模型是否減少偽影
    • 20組隨機打亂的圖像對,15人參與調研,選擇認為偽影較少的圖像。
  2. 相較于MSE-SR模型,驗證DeSRA模型是否重建更多的紋理細節
    • 20組隨機打亂的圖像對,15人參與調研,選擇認為更多細節的圖像。

5. 結論

  1. 分析GAN-SR偽影,并提出了檢測和刪除偽影的DeSRA模型:

    • 首先測量MSE-SR 和 GAN-SR重建圖像的相對局部方差,然后根據距離圖和語義區域定位偽影區域。在檢測到有偽影的區域后,我們使用基于 MSE 的結果作為偽GT圖像來微調模型。
  2. SOTA:

    • 實驗表明,DeSRA能夠有效的檢測和刪除偽影,并且顯著提高了GAN-SR模型在真實世界超分辨率技術的實際應用能力。

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

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

相關文章

Vue3 Pinia 符合直覺的Vue.js狀態管理庫

Pinia 符合直覺的Vue.js狀態管理庫 什么時候使用Pinia 當兩個關系非常遠的組件,要傳遞參數時使用Pinia組件的公共參數使用Pinia

Web Worker如何在本地使用

首先了解一下什么是Web Worker Web Worker 是一種在后臺線程中運行 JavaScript 的機制,允許你在不阻塞主線程的情況下執行耗時的任務。這對于保持網頁的響應性和流暢性非常重要,特別是在需要進行復雜計算或大量數據處理時。 主要特點 多線程&#xff1…

Javaweb后端文件上傳@value注解

文件本地存儲磁盤 阿里云oss準備工作 阿里云oss入門程序 要重啟一下idea,上面有cmd 阿里云oss案例集成 優化 用spring中的value注解

MAC-禁止百度網盤自動升級更新

通過終端禁用更新服務(推薦)? 此方法直接移除百度網盤的自動更新組件,無需修改系統文件。 ?步驟: ?1.關閉百度網盤后臺進程 按下 Command + Space → 輸入「活動監視器」→ 搜索 BaiduNetdisk 或 UpdateAgent → 結束相關進程。 ?2.刪除自動更新配置文件 打開終端…

數據結構:有序表的插入

本文是我編寫的針對計算機專業考研復習《數據結構》所用資料內容選刊。主要目的在于向復習這門課程的同學說明,此類問題不僅僅使用順序表,也可以使用鏈表。并且,在復習中,兩種數據結構都要掌握。 若線性表中的數據元素相互之間可以…

DeepSeek大語言模型下幾個常用術語

昨天刷B站看到復旦趙斌老師說的一句話“科幻電影里在人腦中植入芯片或許在當下無法實現,但當下可以借助AI人工智能實現人類第二腦”(大概是這個意思) 💞更多內容,可關注公眾號“ 一名程序媛 ”,我們一起從 …

Html5學習教程,從入門到精通, HTML5超鏈接應用的詳細語法知識點和案例代碼(18)

HTML5超鏈接應用的詳細語法知識點和案例代碼 超鏈接(Hyperlink),也稱為躍點鏈接,是互聯網和文檔編輯中的一種重要概念。 超鏈接的定義 超鏈接是指從一個網頁指向一個目標的連接關系,這個目標可以是另一個網頁&#…

MYSQL之創建數據庫和表

創建數據庫db_ck (下面的創建是最好的創建方法,如果數據庫存在也不會報錯,并且指定使用utf8mb4) show databases命令可以查看所有的數據庫名,可以找到剛剛創建的db_ck數據庫 使用該數據庫時,發現里面沒有…

[pytest] 配置

這里寫目錄標題 PytestInitRun3. 根據命令行選項將不同的值傳遞給測試函數 Report1. 向測試報告標題添加信息2. 分析測試持續時間 pytest --durations33. 增量測試 - 測試步驟--junitxml{report}.xml1. testsuite1.1 在測試套件級別添加屬性節點 record_testsuite_property 2. …

Manus聯創澄清:我們并未使用MCP技術

摘要 近日,Manus聯創針對外界關于其產品可能涉及“沙盒越獄”的疑問進行了正式回應。公司明確表示并未使用Anthropic的MCP(模型上下文協議)技術,并強調MCP是一個旨在標準化應用程序與大型語言模型(LLM)之間…

初始化E9環境,安裝Sqlserver數據庫

title: 初始化E9環境,安裝Sqlserver數據庫 date: 2025-03-10 19:27:19 tags: E9SqlServer初始化E9環境,安裝Sqlserver數據庫 安裝E9本地環境安裝Sql server 數據庫1、檢查SQL Server服務是否開啟2、檢查SQL Server網絡網絡配置是否開啟創建一個ecology數據庫點擊初始化數據庫…

推薦一個基于Koin, Ktor Paging等組件的KMM Compose Multiplatform項目

Kotlin Multiplatform Mobile(KMM)已經從一個雄心勃勃的想法發展成為一個穩定而強大的框架,為開發人員提供了在多個平臺上無縫共享代碼的能力。通過最近的穩定版本里程碑,KMM已成為跨平臺開發領域的改變者。 環境設置 帶有Kotli…

在WSL2-Ubuntu中安裝CUDA12.8、cuDNN、Anaconda、Pytorch并驗證安裝

#記錄工作 提示:整個過程最好先開啟系統代理,也可以用鏡像源,確保有官方發布的最新特性和官方庫的完整和兼容性支持。 期間下載會特別慢,需要在系統上先開啟代理,然后WSL設置里打開網絡模式“Mirrored”,以設置WSL自動…

Ubuntu 24.04.2 允許 root 登錄桌面、 ssh 遠程、允許 Ubuntu 客戶機與主機拖拽傳遞文件

允許 root 登錄桌面 修改 /etc/pam.d/gdm-autologin , /etc/pam.d/gdm-password 加 # 以注釋掉 auth required pam_succeed_if.so user ! root quiet_success 允許 root 通過 ssh 登錄 修改 /etc/ssh/sshd_config ... #PermitRootLogin prohibit-password PermitRootLogin …

SQLAlchemy系列教程:如何執行原生SQL

Python中的數據庫交互提供了高級API。但是,有時您可能需要執行原始SQL以提高效率或利用數據庫特定的特性。本指南介紹在SQLAlchemy框架內執行原始SQL。 在SQLAlchemy中執行原生SQL SQLAlchemy雖然以其對象-關系映射(ORM)功能而聞名&#xff…

基于SpringBoot的手機銷售網站設計與實現(源碼+SQL腳本+LW+部署講解等)

專注于大學生項目實戰開發,講解,畢業答疑輔導,歡迎高校老師/同行前輩交流合作?。 技術范圍:SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬蟲、數據可視化、安卓app、大數據、物聯網、機器學習等設計與開發。 主要內容:…

瀏覽器安全問題

1. XSS攻擊 概念 XSS 攻擊指的是跨站腳本攻擊,是一種代碼注入攻擊。攻擊者通過在網站注入惡意腳本,使之在用戶的瀏覽器上運行,從而盜取用戶的信息如 cookie 等 XSS本質是因為網站沒有對惡意代碼進行過濾,與正常代碼混合在一起了…

Spring(五)容器-依賴注入的三種方式

目錄 總結:通用的三種注入方式 1 字段注入 2 構造器注入 3 set注入 總結:通用的三種注入方式 優先使用構造器注入謹慎使用 Setter 注入避免濫用字段注入 通過構造器傳入依賴,確保對象創建時即完成初始化。通過 Setter 方法注入依賴&#x…

Python貝殼網二手小區數據爬取(2025年3月更)

文章目錄 一、代碼整體架構解析二、各部分代碼詳解1. main()主函數解析2. 會話初始化(偽裝瀏覽器身份)3. 動態參數生成(反爬蟲核心機制)4. 列表頁抓取(獲取小區列表)5. 列表頁解析(提取小區信息…

使用服務器搭建一個專屬的密碼管理工具Vaultwarden

一、服務器配置與Docker環境 ?實例選型與系統準備? ?推薦配置?:?1核2GB內存?(萊卡云L1型實例),Vaultwarden資源占用低,適合輕量級部署?34。?操作系統?:選擇 ?Ubuntu 22.04 LTS?,兼容…