徐 敏, 丁友東, 董 蓀, 張倩倩, 李傅媛, 陳 鈺
(1. 上海大學(xué)上海電影學(xué)院, 上海200072;2. 上海大學(xué)上海電影特效工程技術(shù)研究中心, 上海200072)
目前, 中國電影資料館的膠片庫存有3 萬多部、60 多萬本, 但由于年代久遠(yuǎn)、保存不當(dāng)以及轉(zhuǎn)印、播放次數(shù)過多等因素造成影片有許多損傷, 因此加緊膠片電影數(shù)字化修復(fù)工作已是迫在眉睫. 噪聲是數(shù)字化修復(fù)中比較常見的全局性損傷, 常見的噪聲有閃爍噪聲、劃痕噪聲、霉斑噪聲、谷粒噪聲和白噪聲5 種類型, 其中最具代表性的是谷粒噪聲. 去噪是圖像預(yù)處理中很關(guān)鍵的一步, 旨在減小視頻圖像中的噪聲的同時(shí), 盡可能地保留邊緣和紋理信息. 目前較常用的有空域和變換域兩種去噪方式, 而適用于谷粒噪聲消除的算法大致有4 種, 即非線性閾值去噪法、基于統(tǒng)計(jì)學(xué)的去噪算法、基于線性最小均方誤差的去噪算法和自適應(yīng)去噪法. 文獻(xiàn)[1]能有效消除谷粒噪聲, 但同時(shí)也刪掉了圖像的部分細(xì)節(jié). 文獻(xiàn)[2]適用于斑點(diǎn)噪聲去除和圖像邊緣檢測. 文獻(xiàn)[3]在保護(hù)結(jié)構(gòu)的基礎(chǔ)上去除噪聲, 卻沒有利用圖像的整體結(jié)構(gòu)及區(qū)域信息. 文獻(xiàn)[4]能較好保留圖像的細(xì)節(jié)和紋理且應(yīng)用廣泛. 此外, 很多學(xué)者利用彩色圖像本身三通道之間的有機(jī)聯(lián)系進(jìn)行去噪[5-7], 但算法的復(fù)雜度很高. 市場上也有很多專門去除谷粒噪聲的圖像修復(fù)軟件和降噪工具, 但卻是或價(jià)格昂貴, 或效果不好. 本工作提出基于分區(qū)域雙邊濾波的噪聲修復(fù)算法, 目標(biāo)是去除膠片電影中常見的谷粒噪聲, 為后續(xù)斑點(diǎn)、劃痕、穩(wěn)像、閃爍等修復(fù)工作提供質(zhì)量保證.
本工作的去噪原理是通過研究含噪圖像, 尋找圖像特征或信息分布規(guī)律, 對像素值直接進(jìn)行濾波處理, 從而達(dá)到去除噪聲的目的, 因此尋找膠片上谷粒噪聲的產(chǎn)生原因及其在圖片上的分布特征是消除谷粒噪聲算法中很關(guān)鍵的一步.
谷粒噪聲是光線照射到鹵化銀上發(fā)生化學(xué)作用而產(chǎn)生的, 具有很多不可控因素, 如膠片過期, 儲藏室環(huán)境的溫度、濕度、光照控制不穩(wěn)定, 過曝或欠曝, 膠片感光度過高等. 谷粒噪聲的特征呈大小不一、隨機(jī)排列的顆粒狀, 直方圖接近高斯分布, 在幀與幀之間獨(dú)立存在且在時(shí)間軸方向沒有相關(guān)性, 噪點(diǎn)位置與周邊像素點(diǎn)的灰度值不同, 以純黑、純白色噪點(diǎn)數(shù)量居多. 根據(jù)黑白負(fù)片的形成原理, 將膠片底片中銀的密度d 和曝光量e 之間的對數(shù)關(guān)系表示為[8]

根據(jù)式(1), 可變形得到式(2), 即從密度域到曝光域的反變換,

假設(shè)膠片圖像為re(m,n), 且se(m,n), vd(m,n)分別表示膠片在曝光域、密度域受噪聲影響的圖像, 則re(m,n) = ve(m,n)se(m,n). 根據(jù)式(2)可將從密度域接收圖像變換到曝光域接收圖像表示為

根據(jù)式(3)可知, 底片上的零均值方差固定的高斯噪聲vd(m,n), 在經(jīng)過顯影處理后, 獲得了具有典型谷粒噪聲特性的曝光域圖像噪聲ve(m,n), 因此認(rèn)為膠片電影中的谷粒噪聲是依賴于信號的乘性非高斯噪聲模型.
圖 1(a) 是 m × n 大小的視頻序列中第 t 幀含有谷粒噪聲的圖像, 記為 I(x,y,t),x ∈(0,m-1),y ∈ (0,n-1); 圖 1(b)是原圖像紅色方框處的局部放大效果, 可見有很多不同大小且呈顆粒狀的噪點(diǎn).

圖1 谷粒噪聲樣圖Fig.1 Grain noise pattern
在圖像去噪前, 需建立谷粒噪聲模型, 其中乘性高斯噪聲模型和加性高斯噪聲模型應(yīng)用最為廣泛. 假設(shè)n(x,y,t)為第t 幀圖像上待去除的噪聲, c(x,y,t)為第t 幀圖像去噪后的干凈原始圖像, 則待修復(fù)圖像的加性噪聲模型、乘性噪聲模型如下:

由式(4)可以看出, 加性噪聲疊加在視頻原始信號之上, 與原始信號不相關(guān); 而式(5)則說明乘性噪聲是原始信號灰度的放大與縮小, 與原始信號密切相關(guān). 接下來將作更詳細(xì)的算法描述與實(shí)現(xiàn), 并通過幾組對比實(shí)驗(yàn), 突出本算法在谷粒噪聲修復(fù)中的良好性能.
在圖像的不同區(qū)域, 受到圖像信號的影響, 谷粒噪聲的大小也會發(fā)生變化, 這使得研究去除谷粒噪聲的模型也相對困難. 面對實(shí)際電影膠片中存在的結(jié)構(gòu)多樣化、損傷程度不一致的谷粒噪聲, 本工作提出的算法實(shí)現(xiàn)的前提是利用圖像本身RGB 三通道的相關(guān)性依次對谷粒噪聲進(jìn)行運(yùn)動檢測、噪聲識別、圖像去噪和圖像增強(qiáng).
由于后一幀與當(dāng)前幀存在延時(shí), 故選擇當(dāng)前幀(第t 幀)的前兩幀(第t-1 和t-2 幀)來輔助計(jì)算運(yùn)動矢量 d(dx,dy,t), 再根據(jù) d(dx,dy,t)是否大于 D1來判斷當(dāng)前幀的像素運(yùn)動. 通過絕對差法計(jì)算得到第t 幀與第t-1 幀的運(yùn)動矢量d1,

如果d1(dx,dy,t)> D1,則認(rèn)為第 t 幀與第 t-1 幀在(x,y)位置存在像素運(yùn)動,即 d(dx,dy,t)=0; 否則, 繼續(xù)計(jì)算第t 幀與第t-2 幀的運(yùn)動矢量d2,

如果 d2(dx,dy,t)> D1,則認(rèn)為第 t 幀與第 t-2 幀在(x,y)位置存在像素運(yùn)動,即d(dx,dy,t)=1; 否則, 認(rèn)為第 t 幀與第 t-1, t-2 幀在(x,y)位置都不存在像素運(yùn)動, 即d(dx,dy,t)=2.
在正常情況下, 同一圖像序列中相鄰幀上同一個(gè)像素點(diǎn)的運(yùn)動矢量值是相等的. 假設(shè)第t 幀圖像上的像素點(diǎn) E(x,y)的運(yùn)動矢量就是(dx,dy,t), 則 E 點(diǎn)在 t-1,t+1 幀的匹配位置分別為(x-dx,y-dy,t-1), (x+dx,y+dy,t+1). 設(shè) E 的亮度空間梯度為

利用人眼對亮度變化敏感程度不同的特性, 將G1, G2, G3三者中值較小的2 個(gè)像素的亮度平均值作為背景色 G(x,y,t). 假設(shè)三者中的最大值與 max 相等, 則 G(x,y,t) =(G1+G2+G3-max)/2. 令ΔE1, ΔE2, ΔE3分別為第 t-1, t, t+1 幀與背景色的差值, 結(jié)合韋伯定律定義噪聲判定公式,

如果 ΔE2< T(x,y,t), 則 E 點(diǎn)為“干凈”的像素點(diǎn); 如果 ΔE2> T(x,y,t) 且 ΔE1<T(x,y,t), ΔE3< T(x,y,t), 則 E 點(diǎn)為極大概率受噪聲污染的像素點(diǎn), 但如果得到 E 點(diǎn)鄰域內(nèi)還存在這樣的點(diǎn), 則確定E 點(diǎn)為噪點(diǎn), 反之則被視為“干凈”的像素點(diǎn); 如果上述兩個(gè)條件都不滿足, 則E 點(diǎn)為可疑像素點(diǎn).
本工作將從空間域上分別對圖像的細(xì)節(jié)區(qū)域、平坦區(qū)域進(jìn)行濾波去噪處理. 細(xì)節(jié)區(qū)域即邊緣或紋理細(xì)節(jié)豐富的區(qū)域, 平坦區(qū)域即像素值變化小且紋理細(xì)節(jié)較少的區(qū)域. Sobel算子認(rèn)為鄰域內(nèi)距離不同的點(diǎn), 對算子結(jié)果產(chǎn)生的影響不同[9]. 距離越遠(yuǎn), 權(quán)值越小, 產(chǎn)生的影響越小. 定義水平算子S1和垂直算子S2如下:

則原圖x 方向上的卷積V(x,y,t)和y 方向上的卷積H(x,y,t)分別為

如果 H(x,y,t)或V(x,y,t)中任一項(xiàng)大于閾值 T, 則認(rèn)為該像素屬于細(xì)節(jié)區(qū)域, 反之則屬于平坦區(qū)域.
2.3.1 細(xì)節(jié)區(qū)域去噪
由于細(xì)節(jié)區(qū)域包含邊緣, 而邊緣點(diǎn)在圖像濾波過程中很容易被識別為噪點(diǎn), 因此對細(xì)節(jié)區(qū)域去噪前會根據(jù)鄰域像素點(diǎn)的相關(guān)性對窗口內(nèi)的噪點(diǎn)進(jìn)行二次判別. 假設(shè)當(dāng)前鄰域窗口大小為 (2n+1)× (2n+1), Imid, Ix∈Wn,y∈Wn(x,y,t), mean(I(x,y,t))分別表示濾波窗口 Wn的中點(diǎn)、窗口內(nèi)像素點(diǎn)的灰度值和灰度值對應(yīng)的均值. 噪聲檢測因子μ(x,y,t)可表示為

當(dāng) μ(x,y,t) ≥ R 時(shí), 判定窗口含有噪聲點(diǎn), 則輸出鄰域內(nèi)像素點(diǎn)歸一化后的加權(quán)值;當(dāng)μ(x,y,t) <R時(shí), 判定該像素點(diǎn)是邊緣點(diǎn), 按原值輸出窗口內(nèi)的像素點(diǎn). 本工作取3×3的鄰域窗口, min(μ(x,y,t)), max(μ(x,y,t))分別表示 μ(x,y,t)的最小值和最大值, 閾值 R 為

接著, 對細(xì)節(jié)區(qū)域的噪點(diǎn)作自適應(yīng)加權(quán)平均濾波去噪處理[10]. 定義加權(quán)系數(shù)為

式中: Δ為窗口內(nèi)其他像素與當(dāng)前像素的絕對差; D2為判斷閾值; M(x,y,t)是歸一化常數(shù);α和ε都是濾波器的參數(shù). 噪點(diǎn)修復(fù)公式為
2.3.2 非細(xì)節(jié)區(qū)域去噪
對于非細(xì)節(jié)區(qū)域, 采用中值濾波, 運(yùn)用濾波窗口鄰域內(nèi)的中值像素點(diǎn)代替中心像素點(diǎn)[11],

2.3.3 彩色圖像去噪
對于彩色圖像, 運(yùn)用三通道之間的相關(guān)性計(jì)算權(quán)重, 再分別進(jìn)行濾波. 對于細(xì)節(jié)區(qū)域, 同理采用自適應(yīng)加權(quán)濾波去噪算法. 首先, 定義彩色圖像的權(quán)重,

式中: Ix, Iy分別是以x, y 為中心的圖像塊內(nèi)的像素點(diǎn); λβ2是歸一化參數(shù); max 的作用是當(dāng)距離D 小于0 時(shí), 權(quán)重為1. 再根據(jù)權(quán)重分別對R, G, B 通道進(jìn)行濾波,

對于非細(xì)節(jié)區(qū)域, 同理采用中值濾波分別對R, G, B 通道進(jìn)行濾波,

本工作采用減小噪聲幅值的方式消除噪聲, 去噪后的圖像邊緣會變模糊, 下一步需要通過提高圖像的高頻分量進(jìn)行圖像增強(qiáng). 通過對原圖的直方圖均衡化來增強(qiáng)圖像, 即通過分析源圖像直方圖均衡化后各像素的灰度值, 計(jì)算出原始直方圖分布, 進(jìn)而求出原圖像灰度級到目標(biāo)圖像灰度級的灰度映射關(guān)系. 重復(fù)操作直至得出所有的映射關(guān)系, 最后按照映射關(guān)系對原圖像各像素點(diǎn)進(jìn)行灰度轉(zhuǎn)換, 實(shí)現(xiàn)圖像增強(qiáng).
采用 Matlab 實(shí)現(xiàn)測試, 運(yùn)行環(huán)境為 Intel 1.8 GHz 處理器, 4 GB 內(nèi)存. 如圖 2 所示, 測試素材從左至右依次是286×286 人工添加的谷粒噪聲圖, 756×466, 1 268×960 膠片電影中截選的真實(shí)素材.

圖2 谷粒噪聲測試素材Fig.2 Test material for grain noise
采用均值濾波算法對圖像進(jìn)行濾波(見圖3), 可見畫面明顯變平滑, 但進(jìn)一步觀察細(xì)節(jié)發(fā)現(xiàn), 五官沒有立體感, 嘴巴和鼻子也隨之不見. 圖4 展示的是4 種去噪算法的修復(fù)效果, 包括線性最小均方誤差估計(jì)(linear minimum mean square error, LMMSE)算法、格子Bolzmann方法(lattice Bolzmann method, LBM)、基于人眼感知噪聲分割的綜合去噪(human visual percept noise variance segmentation based synthesized grain noise removal, HSS) 算法和本算法.

圖3 均值濾波去噪效果Fig.3 Denoising effect of mean filtering

圖4 4 種算法的修復(fù)效果對比Fig.4 Comparison of repair effects of four algorithms
本工作從主觀評價(jià)和客觀評價(jià)兩個(gè)方面來判定算法優(yōu)劣.
(1) 主觀評價(jià). 通過觀察圖4 中3 組實(shí)驗(yàn)的修復(fù)效果發(fā)現(xiàn), 針對人工添加的谷粒噪聲, 利用LMMSE 算法和LBM 修復(fù)后效果都太過平滑, 而針對真實(shí)的谷粒噪聲, 這兩種算法幾乎不起作用; HSS 算法[12]對兩種條件下谷粒噪聲的修復(fù)效果都比較明顯, 且整體上起到了保護(hù)細(xì)節(jié)信息和避免過度平滑的作用. 但與HSS 算法相比, 本算法去噪后的圖像在主觀效果上更好, 畫面顆粒感明顯下降且邊緣處理得相對較好. 進(jìn)一步觀察圖4 中框選出來的信息比較集中的細(xì)節(jié)處發(fā)現(xiàn), 本算法修復(fù)的圖像更清晰自然, 且畫面效果更“干凈”.
(2) 客觀評價(jià). 客觀評價(jià)方法是通過去噪后的圖像偏離原始圖像的誤差程度來計(jì)算的,常用的方法有PSNR, SSIM 和算法運(yùn)行時(shí)間. 通過表1 可知, 運(yùn)用本算法去噪后的圖像的PSNR值明顯提高, 均在25 dB 以上, 同時(shí)SSIM 值均在0.75 以上, 性能明顯優(yōu)于其他算法,且計(jì)算時(shí)間幾乎縮短為原來的一半.

表1 4 種算法的客觀評價(jià)標(biāo)準(zhǔn)對比Table 1 Comparison of objective evaluation criteria of four algorithms
傳統(tǒng)的圖像濾波算法都過度重視PSNR 值, 且不考慮人眼的視覺特性, 導(dǎo)致修復(fù)后的圖像過于平滑且損失了很多高頻信息, 最終的視覺觀感不佳. 本工作提出的算法有效融合了多種算法的優(yōu)勢, 合理避免了一些算法缺陷, 創(chuàng)新之處在于著眼人眼對噪聲的容錯(cuò)特性以及大多數(shù)顆粒噪聲自身特征, 提出針對含有噪點(diǎn)的細(xì)節(jié)區(qū)域和平坦區(qū)域分別進(jìn)行不同的濾波處理. 實(shí)驗(yàn)結(jié)果證明本算法不論對人工添加的谷粒噪聲, 還是真實(shí)膠片中的谷粒噪聲, 都有較好的去噪表現(xiàn). 但對于背景復(fù)雜的圖像以及其他種類的噪聲, 修復(fù)效果仍不理想.