圖解雜訊與去噪 之一: fix pattern noise(FPN)與 temporal noise

雜訊分類

雜訊有很多種分類方法,比如從頻率上分,可以分為高頻,中頻,低頻雜訊

從色彩空間上分,可以分為luma noise亮度雜訊與chroma noise彩色雜訊。

從時態上分,可以分為fix pattern noise與temporal noise。Fix pattern noise 與時間無關,表現上看就是雜訊幅度不隨時間變化。Temporal noise是隨時間變化,在低光下錄製的視頻中不斷變化的細小信號就是temporal noise。

也有的分法把fix pattern noise定義為在圖像行或者列存在的一條條的雜訊,如下圖所示。

Temporal noise視覺上是一種高頻雜訊。

雜訊計算

均值 mu = dfrac {sum^{n}_{i=1}X_{i}}{n}

標準差 sigma=dfrac {1}{n-1}sum ^{n}_{i=1}left(u-x{i}right)^{2}

圖像的標準差可以作為圖像雜訊水平的評價值。

按照如下曝光時間,每個曝光時間拍30張black 照片。

texp_time = [0.063, 1.003,16, 64,257,513,770,1027,1283,1540,1797,2054];ntraw_avg = 0;ntfor kk = 0:30:(30*12-1)nt for i = 1:30nt fname = fileNames{kk+i}; nt fprintf(processing %s %dn, fname, kk+i);nt raw = double(imread([fold fname]));nt raw = raw(:,:,1);nt raw_avg = raw + raw_avg; nt endnt raw_avg = raw_avg./30; nt nt avg_signal((kk/30)+1) = round(mean2(raw_avg));nt fpn_total((kk/30)+1) = std2(raw_avg);nt nt fpn_col_exp((kk/30)+1) = std(mean(raw_avg,1));nt% avg_sig_col_exp((kk/30)+1,:) = mean(raw_avg,1);nt nt fpn_row_exp((kk/30)+1) = std(mean(raw_avg,2));nt% avg_sig_row_exp((kk/30)+1) = mean(raw_avg,2);n

如上計算,可以得到圖像的平均信號,每個曝光的FPN noise,以及行,列FPN noise,行列均值。

把曝光逐漸增加,確保圖像能夠達到飽和,在10個曝光值,每個曝光值下拍30張flat field照片

traw_avg = 0;nttemp_noise = zeros(30,480*752);ntfor kk = 0:30:(30*11-1)nt for i = 1:30nt fname = fileNames{kk+i};nt fprintf(processing %s %dn, fname, kk+i);nt raw = double(imread([fold fname]));nt raw = raw(:,:,1);nt raw_avg = raw + raw_avg;nt temp_noise(i,:) = raw(:);nt endnt raw_avg = raw_avg./30;nt nt std_temp_noise = std(temp_noise,1);nt nt avg_signal((kk/30)+1) = round(mean2(raw_avg));nt temporal_total((kk/30)+1) = median(std_temp_noise);n

如上計算,可以得到圖像的temporal noise

最後圖像飽和,所以雜訊降低至0。

FPN noise是相關雜訊,temporal noise是不相關雜訊。

兩個圖像相加:

S = S_1 + S_2 S代表信號

sigma^{2}_{t}=sigma^{2}_{t1}+sigma^{2}_{t2}sigma_{t} 代表temporal noise

信噪比SNR dfrac {S}{sigma_{t}}=dfrac {S_{1}+S_{2}}{left(sigma^{2}_{t1}+sigma^{2}_{t2}right)^{0.5}}

S_{1} = S_{2}, sigma_{t1} = sigma_{t2} 信噪比SNR dfrac {S}{sigma_{t}}=2^{0.5}dfrac{S_{1}}{sigma_{t1}}

S_{1} = S_{2}=...=S_{n} , 信噪比SNR dfrac {S}{sigma_{t}}=n^{0.5}dfrac{S_{1}}{sigma_{t1}}

該公式從理論上證明了n幀平均會降低temporal noise `$n^{0.5}$` 倍。所以信號處理中去除temporal noise的方法就是多幀平均加運動檢測,如果存在圖像存在變化就不累加,如果圖像無變化就累加平均。

而FPN noise 是相關雜訊

sigma_{fpn} = sigma_{fpn1} + sigma_{fpn2}

S = S_{1} + S_{2}

dfrac {S}{sigma_{fpn}} = dfrac {S_{1}+S_{2}}{sigma_{fpn1}+sigma_{fpn2}}

S_{1} = S_{2}, sigma_{fpn1} = sigma_{fpn2}時, dfrac {S}{sigma_{fpn}} = dfrac {S_{1}}{sigma_{fpn1}}

多幀平均不會降低FPN。

通過上圖可以看出,經過多幀平均後,雜訊的floor變成了FPN。

通過多幀平均可以分離temporal noise和FPN,然後用其他信號處理的方法去除FPN,下一篇將介紹去噪的Spacial domain 和 transform domain的方法。


推薦閱讀:

數碼單反是暴利產品嗎?為什麼中國沒有自己的數碼單反?
佳能5D4、5D3、5D2、5D縱評
未來你的日本之旅又多了一個好去處!
只要2.2萬元高像素、高速度單反帶回家,尼康D850正式發布
如何評價富士發布的相機X-Pro2?

TAG:相机 | 成像 | 成像质量 |