論文:Noise2Noise
Github:第三方復現(xiàn)Noise2Noise
引言
用深度學習方法進行圖像去噪的時候,通常需要大量的訓練圖像樣本對辅搬,即帶有噪聲的圖片和去噪后的圖片,可是去噪后的圖片往往很難獲得吧慢,比如在攝影中马靠,需要長曝光才能獲得無噪聲圖片。在MRI圖像中看蚜,獲取無噪聲圖片則更加難叫搁。
這篇論文的作者就提出了一種不需要無噪聲圖片作為標簽的去噪方法。方法非常有意思供炎,實現(xiàn)起來也很簡單渴逻。那就是:輸入輸出都是帶有噪聲的圖片(噪聲是人工加入的,0均值音诫,高斯噪聲)惨奕,進行訓練。
初次看的時候竭钝,直接看的源代碼梨撞,感覺有點難以置信,這也行香罐?有一點卧波,突破認知極限了。咋一看庇茫,以有噪聲的圖像作為CNN的標簽港粱,怎么可能會有效呢?
核心思路
我們先思考一個問題旦签,使用:噪聲圖像-噪聲圖像樣本對訓練一個CNN會怎么樣查坪?
由于輸入,輸出的噪聲噪聲都是隨機的顷霹,那么如果讓CNN強行去學習二者之間的映射關(guān)系咪惠,CNN能學到什么呢?
- 當訓練樣本很少時淋淀,CNN會學習到兩種噪聲模式的轉(zhuǎn)換關(guān)系
- 當樣本數(shù)量足夠多的時候遥昧,由于噪聲是隨機的覆醇,不可預測的。站在最小化Loss的角度炭臭,CNN就可以學習到清晰的圖像本身了永脓。CNN是不可能學習到某種噪聲轉(zhuǎn)換規(guī)律從而使得Loss最小化的,因為噪聲始終是隨機的鞋仍。這種角度是個人理解常摧,可能不太直觀,下面從作者論文里給的公式推導來理解威创。
理論推導
先看一個小問題落午,對于室內(nèi)溫度估計問題:如果,我有一系列觀測溫度(y1, y2, y3, y4.....)肚豺,那么真實的溫度z溃斋,就可以建模為下列優(yōu)化問題:
這個公式很直觀,就是最小化損失函數(shù)(距離函數(shù))L的期望吸申,這個損失函數(shù)是關(guān)于z的一個函數(shù)梗劫。對于所有觀測y,都要最小化損失截碴。所以可以把L看成一個以y為變量的概率分布梳侨,最小化所有樣本的損失,其實就是最小化期望(即損失的均值)日丹。如果距離度量方式是2范數(shù)走哺,那么真實溫度z就是y的均值。所以聚凹,真實溫度割坠,其實是y的均值,至于每一次觀測y(i)是什么妒牙,根本不重要彼哼,優(yōu)化的目標是考慮所有觀測的均值。
那么湘今,對于圖像去噪問題敢朱,輸入噪聲圖像設為x(i),輸出的清晰圖像設為y(i)摩瞎。那么拴签,我們可以將問題建模為如下優(yōu)化問題:
上述公式的\theta是CNN的權(quán)重參數(shù),x, y不是相互獨立的旗们,所以化為:
同樣的蚓哩,如果改變p(y/x)的分布,只要條件期望不變上渴,最終求得的\theta
也不會變岸梨。所以喜颁,如果我們對標簽y添加一個0均值的高斯噪聲作為擾動得到y(tǒng)'。那么曹阔,上述建模公式就轉(zhuǎn)化為如下一個優(yōu)化問題了:
如上半开,模型訓練就簡單了。
結(jié)果
作者嘗試了脈沖噪聲赃份,高斯噪聲寂拆,伯努利噪聲,蒙特卡洛噪聲抓韩,效果都是接近state of art纠永。整個論文思路蠻簡單的,就是一開始不太能理解园蝠,用噪聲圖片訓練模型的思路