文章來源:我愛計算機視覺(ID:aicvml)
朋友們,今天想跟大家聊一篇圖像修復領域的有意思的新工作。如今,我們對圖片質量的要求越來越高,但拍攝過程中總免不了各種意外,比如模糊、噪點、光線不足等等。傳統的圖像修復模型往往是“專科醫生”,一個模型對應一種問題。但我們更想要一個“全科醫生”,一個模型搞定所有圖像退化問題,這就是所謂的“通用圖像修復”。
最近,來自 北京大學、JIUTIAN Research 和國防科大 的研究者們就提出了一個名為 MaskDCPT 的通用圖像修復預訓練方法。這個名字拆開看就是 Masked Degradation Classification Pre-Training(掩碼退化分類預訓練),思路可以說非常巧妙。它不直接一上來就修復圖像,而是先學會“診斷”圖像壞掉的類型。
簡單來說,這個方法通過一個統一的框架,讓模型在預訓練階段就見多識廣,不僅學會重建高質量圖像,還學會了識別輸入圖像的“病癥”(即退化類型)。這種“診斷+治療”的模式,讓模型在面對各種復雜的、甚至是沒見過的圖像退化問題時,表現得異常出色。
![]()
論文標題 : Universal Image Restoration Pre-training via Masked Degradation Classification
論文地址 : https://arxiv.org/abs/2510.13282
代碼倉庫 : https://github.com/MILab-PKU/MaskDCPT
從官方給出的效果圖就能看到,無論是“五項全能”的綜合修復任務,還是真實的現實世界場景,MaskDCPT 預訓練過的模型在保真度和感知質量上都達到了頂尖水平。
研究背景與動機
通用圖像修復的目標是用一個模型解決多種多樣的圖像退化問題,比如去噪、去模糊、去雨、低光增強等等。之前的預訓練方法,很多是借鑒自然語言處理領域的成功經驗,比如掩碼自編碼器(MAE),在圖像上做類似“完形填空”的任務來學習特征。
但這些方法有個問題:它們大多只關注圖像內容本身的重建,而忽略了一個非常重要的信息——圖像究竟是“怎么壞的”。不同類型的退化(比如高斯噪聲和JPEG壓縮),其底層特征和修復方式是截然不同的。如果模型能提前知道退化類型,無疑會對修復工作大有裨益。
作者們認為,退化信息和圖像內容信息在修復任務中是互補的。因此,他們想設計一種新的預訓練范式,能同時利用這兩種信息,從而學習到更通用、更強大的圖像修復能力。
MaskDCPT:掩碼退化分類預訓練
為了實現這個目標,研究者們設計了 MaskDCPT 框架。這個框架的整體流程相當清晰直觀。
![]()
它的核心思想可以概括為以下幾步:
輸入與掩碼 :輸入一張低質量(退化)的圖像,并像做“完形填空”一樣,在圖像上隨機遮掉一部分小塊(patch-level masking)。
編碼器提取特征 :一個修復骨干網絡(比如 CNN 或 Transformer)作為編碼器,負責從被遮擋的低質量圖像中提取特征。
雙解碼器設計 :接下來是關鍵,模型有兩個“頭”(解碼器),分頭行動:
重建解碼器 :它的任務是利用編碼器提煉的特征,把被遮擋的圖像“腦補”完整,重建出對應的高質量、無損的圖像。這是一個圖像重建任務。
分類解碼器 :它的任務同樣是基于那些特征,但目標不是重建圖像,而是判斷輸入的低質量圖像到底屬于哪一種退化類型(比如是模糊了,還是加了噪點)。這是一個分類任務。
通過這種方式,MaskDCPT 將退化類型作為一種“極弱監督”信號,巧妙地融入到預訓練中。模型為了同時完成好“重建”和“分類”這兩個任務,就必須學習到一種既懂圖像內容、又懂退化信息的廣義特征表示。CV君覺得,這種設計有點像讓模型“知其然,亦知其所以然”,不僅要會修,還要知道修的是什么毛病,思路非常贊。
作者還通過實驗發現,退化分類的準確率和圖像修復的性能是正相關的,這印證了他們最初的猜想。同時,合適的掩碼率(mask ratio)也很重要,太低了模型學不到上下文,太高了又會丟失關鍵信息。
![]()
上圖展示了分類準確率與訓練迭代次數、圖像掩碼率的關系,可以看到隨著訓練進行,分類準確率穩步提升,并且在75%的掩碼率附近達到最佳。
UIR-2.5M:一個全新的大規模修復數據集
光有好的方法還不夠,還需要足夠多、足夠好的數據來“喂養”模型。為此,作者們還貢獻了一個大規模的通用圖像修復數據集——UIR-2.5M。
![]()
這個數據集有多“壕”呢?它包含了 250萬 個圖像對,涵蓋了 19種 不同的退化類型和超過 200個 退化等級,而且同時包含了合成數據和真實的現實世界數據。這為訓練更魯棒、更通用的修復模型提供了堅實的基礎。
實驗效果:性能顯著提升
MaskDCPT 的效果到底如何?實驗結果給出了答案:非常驚艷。
全能型修復任務(All-in-One Restoration)
在包含去雨、去雪、去模糊、去噪和去霧的“五項全能”修復任務上,使用 MaskDCPT 預訓練的模型,無論是基于 CNN 還是 Transformer 架構,性能都得到了巨大提升。
![]()
從上表中可以看到,與那些需要專門為“全能”任務設計的復雜模型相比,僅僅是用了 MaskDCPT 預訓練的經典模型(如 Uformer),就在 PSNR/SSIM 等指標上輕松超越了它們。PSNR 指標平均至少提升了 3.77 dB,這是一個非常顯著的進步。
![]()
視覺效果對比也同樣證明了其優越性,修復后的圖像細節更清晰,偽影更少。
真實世界與未見過的退化場景
更具挑戰性的是在真實世界和“域外”(Out-of-Domain)場景中的表現。
![]()
在6種真實世界的退化任務上,MaskDCPT 預訓練的模型在感知指標 PIQE 上相比基線降低了 34.8%,這意味著修復后的圖像在人眼看起來更自然、質量更高。
![]()
上圖的視覺對比非常直觀,經過 MaskDCPT 預訓練的模型能夠更好地處理真實復雜的低光和模糊問題。
當面對訓練時從未見過的高強度噪聲(σ = 75的高斯噪聲)時,MaskDCPT 展現了強大的泛化能力。
![]()
可以看到,只有經過 MaskDCPT 預訓練的模型能夠有效去除強噪聲,同時不產生多余的奇怪紋理。
混合退化場景
在更復雜的混合退化場景(比如低光+模糊)中,MaskDCPT 同樣表現出色。
![]()
![]()
無論是定量指標還是視覺效果,都證明了該方法在處理復雜光照和結構問題上的能力。
消融實驗
作者還進行了一系列消融實驗,驗證了方法設計的合理性。例如,他們比較了不同的掩碼策略和掩碼率,證明了 patch-level 的掩碼和75%的掩碼率是最佳選擇。
![]()
![]()
同時,他們也驗證了退化分類這個任務的重要性,證明了它確實能幫助模型提升修復性能。
![]()
總結
總的來說,MaskDCPT 這個工作直觀、有效,通過一個巧妙的雙任務設計,為通用圖像修復的預訓練提供了一個全新的、更強大的范式。作者不僅提出了新方法,還貢獻了寶貴的數據集和開源代碼,可以說是非常扎實和全面的工作了。
大家對這個“先診斷、后修復”的思路怎么看?歡迎在評論區留下你的看法!
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.