張利平,張紅英,吳 斌
(西南科技大學(xué) 信息工程學(xué)院,四川 綿陽(yáng) 621010)
中國(guó)作為一個(gè)具有悠久歷史的文化大國(guó),在電影業(yè)有著百余年的文化積累。那些保存至今的優(yōu)秀影片資料數(shù)以萬(wàn)計(jì),但由于當(dāng)時(shí)技術(shù)條件限制、長(zhǎng)期存放以及多次播放,造成影片有許多損傷,如灰塵沾染、圖像抖動(dòng)、畫面閃爍、劃痕、臟點(diǎn)、顆粒增多等。因此,保存和修復(fù)這筆珍貴的人類財(cái)產(chǎn)刻不容緩,也為開展高清晰度電視內(nèi)容服務(wù)提供了重要節(jié)目來(lái)源。本文主要針對(duì)老膠片中常見的垂直劃痕,討論了對(duì)其數(shù)字修復(fù)之前的檢測(cè)技術(shù),為后續(xù)的自動(dòng)修復(fù)奠定基礎(chǔ)。
劃痕大致有兩種[1]:一種僅限于畫格之內(nèi)的小損傷,另一種出現(xiàn)在一段連續(xù)畫格上,如直線劃痕。劃痕大部分由操作不當(dāng)引起,如當(dāng)膠片經(jīng)過(guò)攝影機(jī)、印片機(jī)等設(shè)備或膠轉(zhuǎn)磁和掃描過(guò)程中,若清潔保養(yǎng)不當(dāng)?shù)?,與膠片接觸的細(xì)小顆粒都會(huì)導(dǎo)致連續(xù)劃傷。當(dāng)這些劃傷影響了膠片的感光層就無(wú)法用物理的方法修復(fù),而需采取數(shù)字處理方式修復(fù)。
其中,直線劃痕是這些劃傷中較為普遍的失真,在圖像中常呈線狀分布。它通常有3~10個(gè)像素寬,傾斜角度小于5°(近似直線),亮度呈衰減余弦函數(shù)分布。所覆蓋區(qū)被嚴(yán)重破壞,在同一位置保持若干幀,或呈現(xiàn)輕微移動(dòng),以各種長(zhǎng)度和對(duì)比度出現(xiàn)。在黑白影片中或?yàn)楹谏?,或?yàn)榘咨徊噬捌锌赡転楦吡炼葎澓刍虬祫澓?,也可能是彩色(多?shù)情況下是藍(lán)色)。直線劃痕又可分為垂直劃痕(Vertical Scratch)和水平劃痕(Horizontal Scratch)。前者表現(xiàn)為圖像從上到下的直線區(qū)域像素?fù)p失,后者表現(xiàn)為從左到右的直線劃傷。前者在舊電影中相當(dāng)普遍,嚴(yán)重時(shí)呈雨?duì)罘植迹绊懥擞^眾對(duì)圖像的主觀質(zhì)量。直線垂直劃痕數(shù)學(xué)模型如下[2]
式中:Z(k)為劃痕信號(hào);A為劃痕中心亮度差;p為衰減系數(shù)(p<1);c為劃痕中心位置;f0為由局部平均灰度值決定的偏移量;k=(i,j,t);t為時(shí)間。
Kokaram[3]于1998年首先對(duì)垂直劃痕特征進(jìn)行了系統(tǒng)性研究,并提出了相應(yīng)數(shù)學(xué)模型,檢測(cè)過(guò)程中使用中值濾波和霍夫變換,其研究結(jié)果被歐盟AURORA膠片電影修復(fù)項(xiàng)目所采用。但該方法存在一些缺陷,如需要人為調(diào)整不同門限值,不區(qū)分真正劃痕和相似場(chǎng)景元素,計(jì)算時(shí)間長(zhǎng),易漏檢長(zhǎng)度不及圖像高度一半的短劃痕等。2004年,V.Bruni[4]修改了Kokaram劃痕模型,給出了一個(gè)更通用的劃痕亮度模型和圖像退化模型。此法雖克服了以往算法的一些不足,但該算法仍未很好地解決自然線條物體與劃痕相區(qū)別的問(wèn)題。
在工業(yè)生產(chǎn)中,也常采集工業(yè)器件圖像后用數(shù)字圖像處理技術(shù)分析,如閾值分割、形態(tài)學(xué)處理、連通域標(biāo)記等來(lái)檢查器件是否被劃傷[5-6]。對(duì)于這些內(nèi)容較簡(jiǎn)單、背景與所要檢測(cè)目標(biāo)的亮度差別較明顯的圖像,用基本的圖像處理技術(shù)不論在效果上還是檢測(cè)速度上都能達(dá)到工業(yè)檢測(cè)的要求。筆者提出的劃痕檢測(cè)方法也能用于工業(yè)生產(chǎn)中的檢測(cè),因?yàn)樵撍惴ㄏ啾纫酝乃惴ǜ鼮榭焖?,能達(dá)到工業(yè)檢測(cè)的要求。
本文進(jìn)行劃痕檢測(cè)時(shí),首先從視頻序列中截取一幀存在劃痕的圖像或在圖像中加入劃痕,再針對(duì)此圖像進(jìn)行處理,檢測(cè)算法如下:
1)圖像灰度化處理。本文主要針對(duì)的是灰度圖像劃痕檢測(cè),為后續(xù)的Hough變換作準(zhǔn)備。在灰度化的處理過(guò)程中采用以下公式
式中:R,G,B分別為圖像紅、綠、藍(lán)顏色通道,每個(gè)通道都含有大量信息,采用式(2)灰度化后能滿足人眼視覺(jué)的要求,且比較快速,為后續(xù)的邊緣檢測(cè)和Hough變換節(jié)省時(shí)間。
2)Sobel算子邊緣檢測(cè)。Sobel算子是圖像處理中的邊緣檢測(cè)算子之一,它是一離散性差分算子,用來(lái)運(yùn)算圖像亮度函數(shù)的梯度近似值。Sobel算子有2個(gè),一個(gè)對(duì)通常的水平邊緣響應(yīng)最大,一個(gè)對(duì)通常的垂直邊緣響應(yīng)最大。而圖像中的垂直劃痕具有明顯的梯度特性,本文則采用對(duì)垂直邊緣響應(yīng)最大的Sobel算子進(jìn)行初步邊緣檢測(cè),見公式(2),目的是突出垂直劃痕的特征。雖然該算法能產(chǎn)生較好的檢測(cè)效果,但是容易檢測(cè)到偽邊緣和形成不閉合區(qū)域,所以需進(jìn)一步的檢測(cè)定位,公式如下
3)Canny算子邊緣檢測(cè)。鑒于Sobel算子的不足,將在這一步中采用具有最優(yōu)階梯型的邊緣檢測(cè)算法,即Canny邊緣檢測(cè)來(lái)進(jìn)一步處理。Canny邊緣檢測(cè)根據(jù)信噪比與定位乘積進(jìn)行測(cè)度,從而得到最優(yōu)化逼近算子。這種檢測(cè)方法也屬于先平滑后求導(dǎo)的方法,既能有效抑制噪聲,也能精確確定邊緣位置?;静襟E是:先用高斯濾波器平滑圖像;再用一階偏導(dǎo)的有限差分來(lái)計(jì)算梯度的幅度和方向;然后對(duì)梯度幅值進(jìn)行非極大值抑制;最后用雙閾值算法檢測(cè)和連接邊緣。此時(shí),圖像中的垂直劃痕作為特殊的邊緣也被清晰的標(biāo)識(shí)出來(lái)。
4)概率Hough變換檢測(cè)垂直直線。標(biāo)準(zhǔn)的Hough變換雖然能夠準(zhǔn)確地檢測(cè)出圖像中的直線,但是處理時(shí)間較長(zhǎng),為了提高整個(gè)算法的速度,本文采用了一種新的Hough變換,即概率Hough變換(PHT)[7]。 其基本理論依據(jù)及大致步驟為:每個(gè)參數(shù)空間的點(diǎn)唯一對(duì)應(yīng)于原圖像中的n個(gè)特征點(diǎn)。例如直線檢測(cè)中,Hough參數(shù)空間的每個(gè)點(diǎn)能被原圖的2個(gè)特征點(diǎn)表示。假如原圖中的特征點(diǎn)為
從原圖中隨機(jī)取一對(duì)特征點(diǎn)(di,dj),其中 di=(xi,yi),dj=(xj,yj),這樣參數(shù)(a,b)可以通過(guò)以下公式求得
數(shù)組H(a,b)根據(jù)求得的結(jié)果不斷的積累,當(dāng)一直計(jì)算到某個(gè)數(shù)組超過(guò)規(guī)定的一個(gè)最大值 (這里預(yù)先設(shè)定閾值T),這個(gè)最大的H(a,b)數(shù)組就是檢測(cè)到的直線。返回線段分割,這樣更快速有效,對(duì)于非貫穿整個(gè)圖像的較短的劃痕也能標(biāo)識(shí)出來(lái)。但此時(shí)被標(biāo)識(shí)直線包括垂直和非垂直的直線,設(shè)定限制直線上點(diǎn)的橫坐標(biāo)即可保留其中的垂直直線。
5)形態(tài)學(xué)處理并寬度約束得到真正的垂直劃痕。通過(guò)概率Hough變換已檢測(cè)出圖像中的垂直直線,其中也包括自然垂直物,則需要排除它們。本文先進(jìn)行形態(tài)學(xué)中的開運(yùn)算處理,再設(shè)定寬度閾值來(lái)排除非劃痕。此做法是根據(jù)劃痕一般為3~10個(gè)像素寬,經(jīng)過(guò)開運(yùn)算后圖像中的自然垂直物 (如門框邊界等)的相鄰邊界會(huì)連成一個(gè)區(qū)域,則總寬度就比劃痕大出許多;此時(shí)真正劃痕也比非自然垂直物和非劃痕的其他細(xì)線噪聲寬度大許多,設(shè)定相應(yīng)的寬度范圍就可將較細(xì)和太寬的垂直直線去除,最終得到真正劃痕的位置。
實(shí)驗(yàn)選用了3個(gè)實(shí)例,第1幅實(shí)驗(yàn)圖來(lái)自文獻(xiàn)[8],只有一條亮度劃痕,有很小的噪聲,用來(lái)檢驗(yàn)算法的有效性;第2幅實(shí)驗(yàn)圖是人為加上黑色劃痕的圖像,圖中左邊有自然垂直物,用來(lái)檢驗(yàn)算法排除自然垂直物的性能;第3幅實(shí)驗(yàn)圖也是來(lái)自文獻(xiàn)[8],它包含了多條暗劃痕,且有較大噪聲干擾,用來(lái)檢驗(yàn)算法在噪聲下的穩(wěn)定性。
第1幅圖像中的亮劃痕長(zhǎng)度與圖像高度近似相等,如圖1a所示;經(jīng)本文算法過(guò)程依次得到圖1b,1c,1d。由于該圖只含一條劃痕,所以無(wú)需進(jìn)行后續(xù)的形態(tài)學(xué)等處理。
圖1 第1幅帶劃痕圖像的檢測(cè)
從圖1中可以看出最終檢測(cè)出來(lái)的劃痕沒(méi)有貫穿整體圖像,但是劃痕最明顯的部分已被檢測(cè)出,說(shuō)明筆者提出的算法在舊電影處理中是可行的。
第2幅圖像經(jīng)過(guò)本文的一系列處理后得到圖2,可以看出本文算法能夠排除左邊自然垂直物,最終得到右側(cè)真正劃痕。本實(shí)驗(yàn)中寬度閾值范圍為[2,12],寬度在這個(gè)區(qū)間的為劃痕。
圖2 第2幅帶劃痕圖像的檢測(cè)
第3幅圖像有一定的噪聲,包含多條圖像,且長(zhǎng)短不一,如圖3a所示。利用本文算法依次得到圖3b,3c,3d。
圖3 第3幅帶劃痕圖像的檢測(cè)
實(shí)驗(yàn)3的結(jié)果進(jìn)一步說(shuō)明在一定噪聲影響下,本算法仍具有很好的穩(wěn)定性。
本文算法與Kokaram模型方法的檢測(cè)劃痕數(shù)目對(duì)比如表1所示。
表1 本文算法和Kokaram模型方法的測(cè)試數(shù)據(jù)對(duì)比
從上述表格可以看出,實(shí)驗(yàn)2中把部有自然垂直物的圖像,Kokaram模型發(fā)生了誤檢,而本文算法排除了誤檢;實(shí)驗(yàn)3中由于大量噪聲的干擾,Kokaram模型檢測(cè)效果非常不理想,本文方法卻可以比較穩(wěn)定地檢測(cè)劃痕,雖然那些比較長(zhǎng)的劃痕是斷續(xù)的,邊緣有一兩條誤檢,但是對(duì)于比較短的劃痕檢測(cè)出來(lái)了,效果較好。在計(jì)算復(fù)雜上,本文采用的是概率Hough變換,提高了檢測(cè)速度。
:
[1]周磊.電影膠片修復(fù)及噪聲處理關(guān)鍵技術(shù)的研究[D].上海:上海交通大學(xué),2008.
[2]ROOSMALEN V.Restoration of archived film and video[D].Holland:Delft University of Technology,1999.
[3]KOKARAM A C.Motion picture restoration digital algorithms for artifact suppression in degraded motion picture film and video[M].Berlin:Springer-Verlag,1998.
[4]JOYEUX L; BOUKIR S; BESSERER B.Film line scratch removal using Kalman filtering and Bayesian restoration[EB/OL].[2009-09-20].http://neuron2.net/library/scratch.pdf.
[5]李哲毓,高明,馬衛(wèi)紅.基于計(jì)算機(jī)視覺(jué)的管殼表面劃痕檢測(cè)技術(shù)研究[J].應(yīng)用光學(xué),2007,28(6): 803-805.
[6]頂金明.金屬鍍層工件表面缺陷自動(dòng)檢測(cè)系統(tǒng)的研究[D].天津:天津大學(xué),2004.
[7]XU Lei.A new curve detection method:randomized Hough transform[J].Pattern Recognition Letters, 1990, 11(5): 331-338.
[8]BRUNI V,VITULANO D,KOKARAM A.Fast removal of line scratches in old movies[C]//Proc.the 17th International Conference on Pattern Recognition.Cambridge,UK:[s.n.].2004:827-830.