引言:
傳統的天氣修復如去雨、去雪、去霧等任務,在各自的領域都取得了良好的性能。然而,這些工作通常聚焦于單種類型天氣,如圖:
真實世界中的惡劣天氣(雨滴,雨流,霧,雪等)往往是組合出現的,這對于干凈圖像的修復提出了更高的挑戰。針對這一問題,J. Han等人提出了Blind Image Decomposition (BID)[1],即將不同天氣看做組合隨機,強度隨機,可疊加的圖層,通過圖像分解[2]的方式恢復所有的疊加元素 (包括干凈圖像)。實際上,BID可以理解為Deraining,Dehazing,Raindrop and Snow Removal等多種天氣恢復的組合任務。
概述:
自BID任務提出 (BIDeN, ECCV22) 以來,仍存在兩個主要問題:
現有方法需要大量數據的監督,然而高質量的圖像對在惡劣的現實世界場景中通常無法獲取。而合成數據集受限于手工設計的天氣退化模型,不可避免地會限制最終的修復質量。
圖像分解致力于通過完備的監督信號還原出包括噪聲天氣在內的所有圖層,指向各圖層的 multi-head decoder 會限制模型的結構設計與優化(如上圖(e)),"decomposition" 的模式似乎也與經典的圖像映射思維有些矛盾。
為了解決上述問題,我們結合 Masked AutoEncoder (MAE)[3]提出了一種高效且簡單的預訓練模式:Context-aware Pretraining (CP),
包含兩個 pretext 任務:混合圖像分離和損失圖形重建。
假設圖像的恢復過程遵循從結構到紋理的模式 (coarse-to-fine)[4],我們的思路很簡單,首先利用兩個 pretext 任務在預訓練階段重建出結構信息,隨后再 fine-tuning 階段即可快速地基于結構進行紋理填充。
方法:
為了驗證所提出pretext任務的有效性,我們構建了一個基線網絡 Context-aware Pretrained Network (CPNet), CPNet包含兩個transformer-based 的編碼器,一個信息融合模塊以及一個預測解碼器。
在預訓練期間,我們混合兩個pretext任務,并從編碼器獲得上下文感知嵌入,然后應用解碼器從嵌入中恢復原始的結構信息 (RTV平滑)[5]。其中,信息融合模塊明確地利用了空間通道維度中的關聯特征,而多頭預測模塊促進了紋理引導的外觀流 (appearance flow)。
盡管簡單,但自監督的預訓練編碼器在減少對標注需求的同時,顯式地促進了基于上下文的特征學習。通過 Fine-tuning 階段的高斯采樣,外觀流得以顯式地利用原圖中未遮擋區域的紋理特征。
損失函數方面,除了傳統的重構和對抗損失,針對 appearance flow map,我們提出了一個新的采樣損失:
其中分子項確保外觀流經過 (Δx, Δy)的 offset 后的紋理匹配,分母則對預訓練的結構修復提出進一步的約束。
此外,BID 任務同樣可以被看作是一類圖像屬性編輯任務 (image translation)[6],其中初始屬性標簽為隨機 one-hot 編碼(天氣組合隨機,1 表示圖像受此天氣影響),最終目標為全 0 的 attribute label。因此我們額外引入了一項條件損失:
其中P_i(x)代表的就是圖像 x 具有第 i 種天氣特征的概率。
實驗:
1. 定量實驗:
基于我們的模型做了一些finetune,可以在下游任務上得到較好的提升,特別是針對混合天氣復雜的場景下,預訓練帶來的好處越明顯。
相對于 multi-head decoder 的訓練模式,同樣在多天氣混合數據集上訓練,我們的模型在特定單一天氣的測試集上仍保持較好的穩定性。
2. 定性實驗
訓練后我們觀察到網絡可以在多種天氣混合的場景下實現較好的復原,如下圖。
此外我們也嘗試了可視化兩個 encoder 特征中激活值較大的區域。可見圖像分離和重建兩個 pretext task 任務的側重點并不相同,并且通過控制目標 attribute label,可以實現特定涂層的保留與去除。
-
編碼器
+關注
關注
45文章
3692瀏覽量
135509 -
圖像
+關注
關注
2文章
1090瀏覽量
40611 -
模型
+關注
關注
1文章
3393瀏覽量
49372
原文標題:CVPR 2023 | 怎么一次性處理臺風天(雨/霧/雪等)?
文章出處:【微信號:CVer,微信公眾號:CVer】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
歐度MEDI-SNAP一次性醫用插頭發布
Nordic推出nPM2100 PMIC,延長一次性電池工作時間
Nordic發布nPM2100 PMIC,延長一次性電池工作時間
長光辰芯發布首款一次性醫療內窺鏡CMOS圖像傳感器
一次性鋰電池為什么不能充電?一文講清!

一次性鋰電池為何不能充電?一文帶你了解

【AI技術支持】USB_CDC電腦串口一次性發送100000byte丟包問題處理

ODU MEDI-SNAP一次性醫用插拔自鎖插頭產品介紹
aP8942A一次性編程(OTP)語音集成電路英文手冊
esp32如何一次性讀取大文件數據?
一次性注射針剛性測試儀作用與重要性

請問如何將TIM1_CCR1H和TIM1_CCR1L合并成一個變量,之后一次性賦值?
一次性使用無菌腦積水分流器綜合性測試儀

評論