影像降噪之Unprocessing Images for Learned Raw Denoising

程式設計師-圖哥發表於2020-09-30

1. 摘要

當用於訓練的資料與用於評估的資料相似時,機器學習技術最有效。這對於學習過的單影像去噪演算法來說是正確的,這些演算法應用於真實的原始相機感測器讀數,但由於實際的限制,通常在合成影像資料上進行訓練。雖然從合成影像推廣到真實影像需要仔細考慮相機感測器的噪聲特性,影像處理管道的其他方面(如增益、顏色校正和色調對映)常常被忽略,儘管它們對原始測量資料如何轉換成最終影像有重要影響。為了解決這個問題,我們提出了一種通過反轉影像處理管道的每個步驟來反處理影像的技術,從而使我們能夠從普遍可用的網際網路照片合成現實的原始感測器測量。此外,在評估我們的損失函式時,我們還對影像處理管道的相關元件建模,這使得訓練能夠意識到去噪後將發生的所有相關光度處理。通過對訓練資料和模型輸出進行反處理和處理,我們可以訓練出一個簡單的卷積神經網路,它的錯誤率在Darmstadt Noise資料集上比之前的技術低14%-38%,快9-18,也適用於這個資料集之外的感測器資料。

論文:https://arxiv.org/abs/1811.11127
程式碼:https://github.com/timothybrooks/unprocessing

2. 介紹

傳統的單影像去噪演算法通常是對影像的性質及其要去除的噪聲進行分析建模。相比之下,現代的去噪方法通常使用神經網路來學習從噪聲影像到無噪聲影像的對映。深度學習能夠表示影像和噪聲的複雜屬性,但是訓練這些模型需要大的成對資料集。因此,大多數基於學習的去噪技術依賴於合成訓練資料。儘管在設計用於去噪的神經網路方面做了大量的工作,最近的基準測試表明,在對真實的噪聲原始影像進行評估時,深度學習模型往往比傳統手工設計的演算法表現得更好。我們認為,造成這種差異的部分原因是不現實的合成訓練資料。由於噪聲是加性的、白噪聲和高斯噪聲的假設,許多經典演算法對真實資料的推廣效果很差。最近的工作已經發現了這種不準確性,並轉移到更復雜的噪聲模型,更好地匹配物理影像形成。但是,這些技術沒有考慮典型影像處理管道的許多步驟。為了改善人工訓練資料與真實原始影像之間的不匹配,一種方法是利用降噪演算法所針對的同一攝像機捕獲有噪聲和無噪聲的影像對。然而,捕捉噪聲和無噪聲的影像對是困難的,需要長時間曝光或多攝影像,以及後處理來應對相機的運動和照明變化。獲取這些影像對既昂貴又耗時,而在訓練神經網路時,為了防止過度擬合,需要大量的訓練資料,這又加劇了這個問題。此外,由於不同的相機感測器表現出不同的噪聲特徵,將一種學習去噪演算法應用到新的相機感測器可能需要捕獲新的資料集。
在這裡插入圖片描述

圖1 來自Darmstadt噪聲資料集的影像,其中我們給出(a)噪聲輸入影像,(b)地面真值無噪聲影像,©先前最先進演算法的輸出,以及(d)模型的輸出。四幅影像均由原始Bayer空間轉換為sRGB進行視覺化。每個結果旁邊是三個裁剪的子影像,用最近鄰插值渲染。更多結果見補充。

當適當建模時,合成資料是簡單和有效的。數字感測器的物理特性和成像管道的步驟已經得到了很好的理解,可以利用它們從幾乎任何影像中生成訓練資料,只需要使用目標攝像機感測器的基本資訊。提出了一種對影像處理管道關鍵部件建模的系統方法,對一般的網際網路影像進行反處理以生成真實的原始資料,並將傳統的影像處理操作整合到神經網路的訓練中。在Darmstadt Noise資料集中對真實的噪聲原始影像進行評估時,我們的模型的錯誤率降低了14%-38%,比以前的技術水平快了9 -18個百分點。模型輸出的視覺化結果如圖1所示。我們的反處理和處理方法還可以在生成我們的綜合訓練資料時,泛化沒有明確建模裝置捕獲的影像。本文從以下幾個方面展開:第2節對相關工作進行了回顧。在第3節中,我們詳細介紹了原始影像處理管道的步驟,並定義了每個步驟的逆過程。在第4節中,我們提出了將一般的網路影像處理為合成原始資料的反處理程式,修改訓練損失以適應原始處理,訓練我們簡單有效的去噪神經網路模型。在第5節中,我們展示了我們的模型在Darmstadt噪聲資料集上的改進效能,並提供了一個消融研究,隔離了我們方法的各個方面的相對重要性。

3. 相關工作

單幅影像去噪一直是計算機視覺和影像處理領域的研究熱點。經典的技術,如各向異性擴散、全變差去噪和小波核取心,在訊號和噪聲都表現出特定統計規律的前提下,使用手工設計的演算法從噪聲輸入中恢復乾淨的訊號。這些引數化模型雖然簡單有效,但其容量和表達能力有限,這使得人們對BM3D和非區域性均值等非引數、自相似性驅動的技術越來越感興趣。從簡單的分析技術向資料流方法的轉變繼續以詞典學習和KSVD和專家領域等基本搜尋演算法的形式進行,這些演算法通過查詢稀疏性保持或統計規律建模良好的影像表示形式進行操作。在現代,大多數單影像去噪演算法完全是資料驅動的,由深度神經網路組成,經過訓練可以從噪聲影像迴歸到去噪影像。最經典的去噪工作是在影像噪聲為加性、白噪聲和高斯噪聲的假設下進行的。該模型雖然方便、簡單,但並不現實,光子到達感測器的隨機過程更適合描述為“拍攝”和“讀取”噪聲。整體噪聲可以更準確地建模為包含高斯和泊松訊號相關分量或者從一個方差是強度函式的異方差高斯分佈中取樣。分析建模影像噪聲的一種替代方法是使用真實的噪聲和無噪聲影像的例子。這可以通過捕捉由一對真實照片組成的資料集來實現,其中一張照片是短曝光,因此會產生噪聲,而另一張照片是長曝光,因此基本上沒有噪聲。這些資料集可以觀察到,使用合成資料訓練的最新技術被老模型(如BM3D)所超越。因此,最近的工作通過收集這些真實的、成對的資料顯示出了進展,這些資料不僅用於評估,而且用於訓練模型。這些方法顯示了巨大的希望,但將這種技術應用於特定的相機需要大量的艱苦的收集與僅需要合成訓練資料或校準引數的老技術相比,該攝像機的訓練資料需要完全對齊,大大增加了從業者的負擔。此外,還不清楚該資料集採集程式如何用於捕捉小運動無處不在的物件,如水、雲、樹葉或生物。最近的研究表明,可以使用同一場景的多個噪聲影像作為訓練資料而不是成對的噪聲和無噪聲影像,但這並沒有很大程度上減輕這些大型真實照片資料集的侷限性或勞動要求。雖然人們普遍認為,在影像形成過程中對噪聲進行正確的建模是學習有效去噪演算法的關鍵,一個較少被深入探討的問題是用於將原始感測器讀數轉換成最終影像的影像處理管道的影響。現代影像處理管道由幾個步驟組成,這些步驟轉換影像強度,從而影響輸入噪聲如何縮放或修改,以及最終呈現的影像如何作為原始感測器測量的函式出現。在這項工作中,當為我們的模型合成訓練資料時,我們對這些步驟進行建模和反求,並證明這樣做可以顯著提高去噪效能。

4. 影像處理管線

現代數位相機試圖呈現一種令人愉快的和對世界的準確形象,類似於被感知到的人類的眼睛。然而,來自相機的原始感測器資料還不像照片,需要許多處理階段才能將其噪聲線性強度轉換為最終形式。在這一部分,我們描述了一個傳統的影像處理管道,從感測器測量到最終影像。為了能夠生成真實的合成原始資料,我們還描述了管道中的每個步驟如何被倒置。通過這個過程,我們可以把一般的網際網路影像轉換成訓練對,很好地近似Darmstadt Noise資料集,並推廣到其他原始影像。有關我們的反處理步驟的概述,請參見圖2。
在這裡插入圖片描述
圖2.一個視覺化的資料管道和網路訓練過程。對MIR Flickr資料集中的sRGB影像進行反處理,加入了真實感的拍攝和讀出噪聲來合成有噪聲的原始輸入影像。噪聲影像通過去噪神經網路輸入,然後在計算L1損失前對網路的輸出和無噪聲的原始影像進行原始處理。

4.1 Shot and Read Noise

雖然經過處理的影像中的噪聲可能由於畫素值之間的非線性和相關性而具有非常複雜的特徵,但是原始感測器資料中的噪聲是很容易理解的。感測器噪聲主要來自兩個來源:光子到達統計和讀出電路中的不精確。散粒噪聲是一個泊松隨機變數,其均值為真實光強(以光電子測量)。讀出噪聲是一個近似高斯隨機變數,均值為零,方差固定。我們可以把它們近似成一個單一的異方差高斯分佈,把每個觀測到的強度y當作一個隨機變數,其方差是真實訊號x的函式。
在這裡插入圖片描述
引數 λ r e a d \lambda_{read} λread λ s h o t \lambda_{shot} λshot取決於感測器的模擬和數字增益。對於一些數字增益 g d g_{d} gd,模擬增益 g a g_{a} ga,和固定感測器讀出方差 σ r 2 \sigma_{r}^{2} σr2
在這裡插入圖片描述
這兩個增益級別由相機設定,作為使用者選擇的ISO光敏感級別或某些自動曝光演算法的直接函式。因此對於特定的曝光 λ r e a d \lambda_{read} λread λ s h o t \lambda_{shot} λshot的值可以由相機計算出來,通常作為後設資料的一部分儲存附帶原始影像檔案。為了選擇合成影像的噪聲級別,我們對真實原始影像中不同的shot/read噪聲引數對的聯合分佈進行建模,並從中抽取樣本。針對Darmstadt Noise資料集,提出了一種合理的shot/read噪聲因子取樣方法
在這裡插入圖片描述
有關此過程的視覺化,請參見圖3
在這裡插入圖片描述
圖3. Darmstadt資料集shot和read噪聲引數。每個圓大小表示資料集中有多少影像共享shot/read噪聲對。為了選擇每個合成訓練影像的噪聲水平,我們從紅色的分佈中隨機抽取shot和read噪聲引數。

4.2 Demosaicing

傳統相機感測器中的每個畫素都由一個紅色、綠色或藍色濾光片覆蓋,濾光片按拜耳模式排列,如R-G-G-B。恢復影像中每個畫素的三種顏色測量值的過程是一個被廣泛研究的去馬賽克。Darmstadt資料集遵循了使用雙線性插值進行去馬賽克的慣例,我們採用了這種方法。反轉這個步驟是很簡單的——對於影像中的每個畫素,我們根據Bayer濾鏡模式省略它的三個顏色值中的兩個。

4.3 Digital Gain

相機通常會對所有影像強度應用數字增益,其中每個影像的特定增益由相機的自動曝光演算法選擇。這些自動曝光演算法通常是專有的“黑匣子”,很難對任何單個影像進行反向工程。但是要將這一步反轉為一對合成和真實資料集,合理的啟發式方法是簡單地找到一個全域性縮放,它最能匹配兩個資料集中所有影像強度的邊際統計量。為了產生這種縮放,我們假設我們的實際和合成影像強度都來自不同的指數分佈
在這裡插入圖片描述
對於x≥0。尺度引數λ的最大似然估計簡單地是樣本均值的倒數,並且縮放x等於λ的逆縮放。這意味著我們可以通過使用兩組樣本均值的比率來匹配兩組指數均勻分佈的強度。使用我們的合成資料和Darmstadt資料集時,此縮放比例為1.25。為了更全面的資料增強,並確保在訓練中我們的模型在整個[0,1]中觀察畫素強度,我們不使用這種常數尺度,而是從以0.8為中心、標準差為0.1的正態分佈中抽取逆增益,從而得到大致跨越[0.5,1.1]的逆增益。

4.3 White Balance

相機記錄的影像是照亮場景的燈光的顏色和場景中物體的材質顏色的結果。攝像機管道的一個目標是消除光照的一些影響,生成在“中性”光照下被點亮的影像。這是由白平衡演算法執行的,它使用啟發式或統計方法估計影像中紅色和藍色通道的每個通道增益。從合成資料中反演這一過程具有挑戰性,因為像自動曝光一樣,相機的白平衡演算法是未知的,因此很難進行反向工程。然而,像Darmstadt這樣的RAW影像資料集記錄了它們影像的白平衡後設資料,因此我們可以簡單地從該資料集中白平衡增益的經驗分佈中取樣,從而合成一些較為真實的資料。紅色增益在[1.9,2.4],藍色增益在[1.5,1.9],均勻獨立取樣

在合成訓練資料時,我們對數字和白平衡的逆增益進行取樣,並利用它們的結果得到用於合成資料的每個通道的逆增益。這種反向增益幾乎總是小於聯合,這意味著天真地獲取合成影像將導致資料集系統地缺少高光,幾乎不包含裁剪畫素。這是有問題的,因為正確處理飽和影像強度在去噪時是至關重要的。為了說明這一點,我們不把我們的逆增益1/g用簡單的乘法應用到某個強度x上,而是我們應用保強變換f(x,g),當g≤1或對於一些閾值t = 0.9 x≤t時是線性的,但是當g > 1,x > t時是一個立方變換:
在這裡插入圖片描述
在這裡插入圖片描述
這個變換被設計成當x<=t時f(x,g) = x/g,當g<=1時f(1,g) =1,f(x,g)是連續可微的。這個函式用圖形4表示。
在這裡插入圖片描述
圖4 函式f(x,g)(定義在公式6中)我們用於在保持高光的同時降低合成影像的強度x,得到一組具有代表性的增益{g}。

4.5 Color Correction

一般來說,相機感測器的濾色器與sRGB顏色空間所期望的光譜不匹配。為了解決這個問題,相機將應用一個3x3顏色校正矩陣(CCM)來將自己的相機空間RGB顏色測量轉換為sRGB值。Darmstadt資料集由四個攝像頭組成,每個攝像頭在進行色彩校正時使用自己的固定CCM。為了生成能夠推廣到資料集中所有相機的合成資料,我們對這四種CCM的隨機凸組合進行取樣,對於每一幅合成影像,我們應用取樣CCM的逆來撤銷顏色校正的效果。

4.6 Gamma Compression

由於人類對影像黑暗區域的漸變更加敏感,伽瑪壓縮通常用於將更多動態範圍的位元分配給低強度畫素。我們使用標準gamma曲線,同時注意將輸入鉗位到 ϵ = 1 0 − 8 \epsilon=10^{-8} ϵ=108的伽馬曲線,以防止訓練期間數值不穩定:
在這裡插入圖片描述
在生成合成資料時,我們應用此運算子的(略微近似,由於\epsilon)逆。
在這裡插入圖片描述
在這裡插入圖片描述
圖5 (a)來自MIR Flickr資料集的sRGB影像的每個顏色通道的直方圖;(b)按照第4.1節列舉並在第3節詳細說明的過程建立的未處理影像;©來自Darmstadt資料集的真實原始影像。注意,真實原始強度的分佈和我們的未加工強度是相似的。

4.7 Tone Mapping

高動態範圍的影像需要極端的色調對映,即使是標準的低動態範圍的影像,也經常使用s形曲線來處理,以匹配電影的特徵曲線。可以執行更復雜的具有邊緣感知的本地音調對映,但是對這種操作進行反向工程是困難的。因此,我們假設色調對映是用一個簡單的平滑步長曲線執行的,並且在生成合成資料時使用該曲線的逆。

s m o o t h s t e p ( x ) = 3 x 2 − 2 x 3 ( 9 ) smoothstep(x)=3x^{2}-2x^{3}(9) smoothstep(x)=3x22x3(9)

s m o o t h s t e p − 1 ( y ) = 1 2 − s i n ( s i n − 1 ( 1 − 2 y ) 3 ) ( 10 ) smoothstep^{-1}(y)=\frac{1}{2}-sin(\frac{sin^{-1}(1-2y)}{3})(10) smoothstep1(y)=21sin(3sin1(12y))(10)

其中,兩者僅在[0,1]中的輸入上定義。

5. 演算法介紹

現在我們已經定義了影像處理管道的每個步驟和每個步驟的逆,我們可以構建去噪神經網路模型。用於訓練我們網路的輸入和真實狀況是使用影像處理管道的逆處理的未處理的合成資料,其中輸入影像已被噪聲損壞。在評估損失最小化之前,我們的網路的輸出和地面實況由我們的管道進行處理。

5.1 Unprocessing Training Images

為了生成真實的合成RAW資料,我們通過對影像處理轉換進行順序逆變來對影像進行反處理,如圖2所示。這包括逆變,按順序,色調對映(3.7節),應用伽瑪解壓(3.6節),將sRGB應用到相機RGB色彩校正矩陣(3.5節),以及逆變白平衡增益(3.4節)和數字增益(3.3節)。得到的合成RAW影像在訓練期間用作無噪聲真實狀況,並且新增了shot和read噪聲(第3.1節)以建立嘈雜的網路輸入。我們合成的RAW影像更接近真實的原始強度,如圖5所示。
在這裡插入圖片描述
圖6 我們模型網路結構。輸入到網路的是一個4通道噪聲拼接影像與一個4通道噪聲級圖連線,輸出是一個4通道去噪拼接影像。

5.2 Processing Raw Images

由於RAW影像在被檢視之前最終要經過一個影像處理管道(ISP),因此我們模型的輸出影像在評估任何損失之前也應該受到這個管道的約束。因此我們RAW處理應用到我們的模型的輸出,依次由應用白平衡收益(3.4節),雙線性去馬賽克(3.2節),應用色彩校正矩陣從相機RGB轉換到sRGB(3.5節),和gamma壓縮(3.6節)。這個簡化的影像處理管道與Darmstadt噪聲資料集基準中使用的管道相匹配,對於一般的影像管道是一個很好的近似。在計算損失之前,我們將此處理應用於網路輸出和地面真值無噪聲影像。將這個管道合併到訓練中,可以讓網路推斷出下游處理將如何影響所需的去噪行為。

5.3 網路結構

我們的去噪網路以Bayer域中的噪聲原始影像作為輸入,在同一域中輸出降噪影像。作為一個額外的輸入,我們根據影像的shot和read噪聲引數,通過網路對輸入影像中的噪聲標準差進行逐畫素估計。這些資訊作為4個額外通道連線到輸入端,每個通道對應於R-G-G-B拜耳平面。我們使用U-Net架構,在編碼器和解碼器塊之間具有相同規模的跳躍連線(詳見圖6),編碼時採用盒下采樣,解碼時採用雙線性上取樣,PReLU啟用函式。我們的模型沒有直接預測去噪影像,而是預測一個被新增回輸入影像的殘差。

5.4 訓練

為了建立我們的合成訓練資料,我們從MIR Flickr擴充套件資料集的100萬張照片開始,留出5%的資料集用於驗證,5%用於測試。我們通過使用高斯2x核心(σ= 1)下采樣,以減少噪聲的影響,量化,JPEG壓縮,去馬賽克和其他artifact。然後,我們對每個影像隨機裁取128x128,隨機水平和垂直翻轉進行資料增強。我們通過應用4.1節中描述的反處理步驟來合成噪聲和乾淨的原始訓練對。我們使用Adam進行訓練,學習率為 1 0 − 4 10^{-4} 104 β 1 = 0.9 \beta _{1}=0.9 β1=0.9 β 2 = 0.999 \beta _{2}=0.999 β2=0.999 ϵ = 1 0 − 7 \epsilon=10^{-7} ϵ=107,批大小為16。我們的模型和燒蝕被訓練在一個單一的NVIDIA Tesla P100 GPU上集中超過約3.5百萬步,這需要3天。

我們訓練了兩個模型,一個針對sRGB錯誤度量的效能,另一個針對RAW錯誤度量的效能。對於我們的sRGB模型,在計算損失之前,網路輸出和合成地面真值都被轉換到sRGB空間,如4.2節所述。我們“RAW”模型直接計算我們的網路輸出和我們的RAW合成地面真值之間的損失,沒有這個處理。對於這兩種實驗,我們都將輸出影像與地面真值影像之間的L1損耗最小化。

6. 測試

為了評估我們的技術,我們使用了Darmstadt噪聲資料集,它是50幅真實高解析度影像的基準,其中每幅高iso噪聲影像都與(幾乎)無噪聲的低iso地面真值影像相匹配。Darmstadt資料集代表了對早期去噪基準的顯著改進,去噪基準往往依賴於合成資料和合成(通常是不現實的)噪聲模型。Darmstadt資料集的額外優勢,它包含從四個不同的標準消費相機拍攝的影像在野外的自然場景的內容,在相機後設資料捕獲和相機仔細校準噪聲特性,以及影像的強度代表了RAW未經處理的線性強度。該資料集的另一個有價值的特性是,通過一個精心控制的線上提交系統,對資料集的評估受到了限制:整個資料集是測試集,對公眾完全隱藏了地面真實的無噪聲影像,提交資料集的頻率是有限的。因此,很難與此基準測試集過擬合。雖然這種方法在目標識別和立體的挑戰中很常見,但在影像去噪中並不常見。我們在Darmstadt資料集上的模型相對於先前工作的效能如表1所示。Darmstadt資料集將其評估分為多個類別:使用或不使用方差穩定變換的演算法,以及使用線性拜耳感測器讀數或使用雙線性去噪sRGB影像作為輸入的演算法。每一種對RAW輸入進行操作的演算法,在轉換到sRGB空間後,對原始Bayer影像和經過去噪的Bayer輸出進行評估。按照Darmstadt資料集的過程,我們對每種技術的raw和sRGB輸出報告PSNR和SSIM。一些演算法只對sRGB輸入進行操作;為了儘可能公平地對待以前的所有工作,我們提出了這些模型,並在sRGB空間中報告了它們的評估。對於使用和不使用方差穩定變換(VST)進行評估的演算法,我們將效能更好的版本包括在內。
在這裡插入圖片描述
表1. 我們的模型及其在Darmstadt噪聲資料集上的效能,與提交時從https://noise.visinf.tu-darmstadt.de/benchmark/獲得並按sRGB PSNR排序的所有已釋出技術相比。對於基準測試方法,無論是否使用方差穩定轉換(VST),我們報告哪個版本的效能更好,並相應地在演算法名稱中表明。我們報告使用RAW資料或sRGB資料作為輸入的基線技術,由於這個基準測試沒有根據RAW輸出評估sRGB-輸入技術,因此這些技術缺少RAW錯誤度量。對於每種技術和度量,我們在括號中報告相對的改進,這是通過將PSNR轉換為RMSE,將SSIM轉換為DSSIM,然後計算相對於效能最好的模型的誤差減少來完成的。我們的模型在一個單獨的子表中給出了燒蝕。每個度量的前三種技術(忽略燒蝕)都是彩色編碼的。執行時在可用時顯示(參見5.1節)

我們模型的兩個變體(一個針對sRGB,另一個針對raw)在所有輸出中產生的psnr和SSIMs顯著高於所有基線技術,每個模型變體在其目標領域的效能都優於其他變體。在PSNR和SSIM上的相對改進很難判斷,因為這兩個指標都被設計成在錯誤變得很小時達到飽和。為了幫助解決這個問題,在每個錯誤的旁邊,我們在括號中報告效能最好的模型相對於該模型的錯誤的相對減少。這是通過將PSNR轉換為RMSE (RMSE α 1 0 − P S N R / 10 \alpha \sqrt{10^{-PSNR/10}} α10PSNR/10 ,將SSIM轉換為DSSIM (DSSIM = (1-SSIM)/2),然後計算每個相對誤差的減少。

我們看到,我們的模型在兩個RAW指標上的誤差比效能第二好的技術(N3Net)減少了14%和25%,在兩個sRGB指標上的誤差比效能第二好的技術(N3Net、CBDNet)減少了21%和38%。與其他方法相比,我們模型輸出的視覺化結果可以在圖1和補充中看到。與基線相比,我們模型在輸出中低頻色度偽影減少,這在一定程度上提高了效能。

為了驗證我們的方法適用於其他資料集和裝置,我們對HDR+資料集的RAW影像去噪方法進行了評估。圖7和補充材料中提供了這些評估的結果。
在這裡插入圖片描述
圖7 來自HDR+資料集影像,其中我們以與圖1相同的格式表示(a)有噪聲的輸入影像和(b)模型的輸出。更多結果見補充。

除了我們感興趣的兩個主要模型外,我們還對我們的模型(sRGB)進行了消融研究,即移除一個或多個模型元件。無CCM、WB、增益表明,在生成合成訓練資料時,我們沒有執行sRGB對相機RGB CCM反演的反處理步驟,也沒有對白平衡和數字增益進行反演。沒有色調對映,Gamma表示我們沒有執行逆色調對映或Gamma解壓縮的反處理步驟。沒有反處理表示我們沒有執行任何反處理步驟,4 bigger表示我們將每個conv層的通道數量增加了3倍。Noise-blind是指沒有將噪聲電平作為輸入提供給網路。AWGN表明,不使用我們更現實的噪聲模型當合成訓練資料時,我們使用的加性高斯白噪聲σ在0.001~0.15之間均勻取樣。沒有殘差輸出表明我們的模型架構直接預測輸出影像,而不是預測新增到輸入中的殘差。

我們從消融研究中看到,移除我們提出的任何模型元件都會降低質量。效能對我們的噪聲建模最為敏感,因為使用高斯噪聲會顯著降低效能。反處理也有很大的貢獻,尤其是在使用sRGB度量進行評估時,儘管它比實際的噪聲模型稍微小一些。值得注意的是,增加網路大小並不能彌補未處理步驟的缺失。我們唯一的消融研究,實際上刪除了神經網路架構的一個元件(殘留輸出塊),導致最小的效能下降。

6.1 執行時間

表1還包括我們能夠找到的儘可能多的模型的執行時間。這些執行時間中的許多都是在不同的硬體平臺上以不同的計時約定產生的,因此我們在這裡詳細介紹這些數字是如何產生的。對於Darmstadt資料集的512x512幅影像,我們的模型的執行時為22ms,使用執行在單個NVIDIA GeForce GTX 1080Ti GPU上的TensorFlow實現,不包括將資料傳輸到GPU所花費的時間。我們報告平均值超過100次。DnCNN的執行時間取自[41],[41]報告了512x512影像在GPU (Nvidia Titan X)上60ms的執行時間,也不包括GPU記憶體傳輸時間。N3Net[31]的執行時間取自該論文,該論文報告的執行時間為[41]的3.5倍,建議執行時為210ms。在[6]中,它們為CPU實現在512x512映像上報告60秒的執行時間,並注意到它們的執行時間小於KSVD[2],我們相應地注意到這一點。CBDNet的執行時間取自[18],BM3D、TNRD、TWSC、MCWNNM的執行時取自[39]。我們無法在表1中找到其他技術的執行時間報告,儘管在[30]中他們注意到許多基準演算法太慢,無法應用於百萬畫素大小的影像。我們的模型是速度最快的技術:比N3Net[31]快9倍,比CBDnet[18]快18倍,這兩個是僅次於我們自己的技術。

7. 結論

我們提出了一種通過對攝像機影像處理管道的每個步驟進行建模和逆變,將普通影像處理成類似於真實攝像機感測器捕獲的原始測量的資料的技術。這使得我們能夠訓練卷積神經網路去噪原始影像資料,我們從大量可用的網際網路影像中合成了大量真實的噪聲/乾淨的成對訓練資料。此外,通過將標準的影像處理操作合併到學習過程中,我們能夠訓練一個網路,使其在評估輸出之前能夠明確地知道如何處理輸出。當我們得到的學習模型應用於Darmstadt噪聲資料集時,它比以前的技術水平低14%- 38%的錯誤率和9 -18的執行時間。

8. 最後

相關文章