隨著多媒體技術(shù)的發(fā)展和完善,3D顯示技術(shù)和3D視頻技術(shù)取得了突破性的成就,未來的視頻傳輸將不僅僅局限于二維視頻。兩年前《阿凡達(dá)》的上映,在國內(nèi)掀起了3D電影的觀影狂潮,因其結(jié)合IMAX電影放映系統(tǒng),更加增強(qiáng)了電影的視覺震撼,這使得3D電影成為電影發(fā)展的趨勢[1]。就在去年,國家廣電總局也推出了我國首個(gè)3D電視試驗(yàn)頻道,并于2012年元旦試播,春節(jié)正式播出。3D電視頻道的首播也帶動(dòng)了3D電視的熱銷,其促進(jìn)了新的文化消費(fèi),帶動(dòng)了電視機(jī)的更新?lián)Q代,這將從一個(gè)方面促進(jìn)我國經(jīng)濟(jì)的發(fā)展。我們可以預(yù)見,在未來3D視頻技術(shù)將擁有著龐大的市場需求和應(yīng)用前景[2]。
3D視頻技術(shù)在很多行業(yè)領(lǐng)域都有所應(yīng)用,如在數(shù)字電視、可視會(huì)議、工業(yè)領(lǐng)域、醫(yī)療衛(wèi)生領(lǐng)域、建筑領(lǐng)域和軍事國防領(lǐng)域都有著廣闊的應(yīng)用前景。
三維顯示是傳統(tǒng)二維顯示技術(shù)的擴(kuò)展和延伸,雖然二維圖像中也隱含著深度信息,如當(dāng)同一個(gè)物體在距離觀察點(diǎn)不同時(shí)將具有不同的大小和清晰度,我們就可以據(jù)此判定物體的遠(yuǎn)近,但是這種深度信息是不精確的,它依賴于人眼的主觀感受。三維視頻最明顯的特征就是在傳統(tǒng)二維視頻的基礎(chǔ)上增加了場景的深度信息,這種深度信息將更加精確地描述場景內(nèi)各物體的遠(yuǎn)近,以形成立體感受。在實(shí)際操作中,這種深度信息是通過深度圖像進(jìn)行表達(dá)的。
通過以上闡述我們可以推想,3D視頻技術(shù)將成為未來視頻技術(shù)中的主流,而基于深度圖像的立體顯示技術(shù)由于其真實(shí)感和臨場逼真感,更將成為未來研究的重點(diǎn)和熱點(diǎn)。目前,對于彩色圖像和灰度圖像的特性已經(jīng)有很多成熟的研究方法,由于深度圖像是通過不同的原理獲得的(在1.3中將進(jìn)行詳細(xì)闡述),這些已有的方法是否仍然適用于深度圖像呢?本文正是通過運(yùn)用這些已有的方法對深度圖像進(jìn)行邊緣特性、紋理特性及運(yùn)動(dòng)特性的分析,進(jìn)而得出深度圖像與彩色圖和灰度圖之間的異同。
隨著人們對視覺要求的不斷提高,3D立體顯示技術(shù)逐漸成為了人們研究的熱點(diǎn)。3D視頻可以分為雙視(雙目)和多視(多目)3D視頻。雙視3D視頻是指用兩路攝像機(jī)對景物進(jìn)行拍攝,經(jīng)過后期的制作以及傳輸,最后顯示在用戶終端的屏幕上。觀眾需佩戴與3D顯示器相配套的3D眼鏡,使左右眼分別看到兩路攝像機(jī)拍攝到的圖像。由于人的雙眼之間存在著一定的間距(平均值為6.3cm),因此當(dāng)觀看一個(gè)景物時(shí),左右眼的相對位置是不同的,這就使雙眼看到的景物存在差異,即產(chǎn)生了雙目視差[3]。基于雙目視差原理,觀眾就可以在腦中形成立體的圖像。目前,大多數(shù)的3D顯示都是基于這種同時(shí)提供兩個(gè)視圖的立體顯示。除此之外,多視顯示也逐漸得到大量的應(yīng)用,其相比于雙視顯示可以提供更多的信息,顯示的效果更好,并且可以提供裸眼立體顯示,這就克服了觀眾接受3D視頻的最大障礙。因?yàn)橛行┯^眾可能已經(jīng)佩戴有眼鏡,如果還需佩戴3D眼鏡這無形之中就增加了觀眾的負(fù)擔(dān),并且更容易造成人眼的視覺疲勞和暈眩感[3]。多視3D視頻可以帶給用戶前所未有的交互體驗(yàn)并使他們沉浸在立體的場景之中,當(dāng)觀眾觀看視頻時(shí),只要移動(dòng)他們的位置就可以看到原先被物體遮擋的場景,而這種特性是多視顯示獨(dú)有的。多視點(diǎn)視頻是由位于不同方位和角度的攝像機(jī)對同一場景同時(shí)拍攝得到的,其除了具有時(shí)間上的相關(guān)性外還具有視點(diǎn)間的關(guān)聯(lián),這就使多視點(diǎn)視頻的數(shù)據(jù)量很龐大,存在大量的數(shù)據(jù)冗余。巨大的數(shù)據(jù)量已經(jīng)成為制約其廣泛發(fā)展的瓶頸,于是人們提出了多視點(diǎn)視頻編碼(MVC ,Multiview Coding)的概念,MVC主要致力于多視點(diǎn)視頻的高效壓縮編碼,其傳輸過程如圖1.1所示,這里只顯示了兩路攝像機(jī)輸入的情況,當(dāng)然發(fā)送端可以擴(kuò)展為N路攝像機(jī)。#p#分頁標(biāo)題#e#
圖像的邊緣是圖像的基本特征之一,兩個(gè)具有不同灰度值的相鄰區(qū)域之間總存在著邊緣[6]。
邊緣的本質(zhì)是灰度值的不連續(xù),這種不連續(xù)性常可以通過求導(dǎo)數(shù)方便的檢測到,一般常用一階和二階導(dǎo)數(shù)來檢測邊緣。一階導(dǎo)數(shù)在圖像中區(qū)域由暗到明的位置處有一個(gè)向上的階躍,而在其他的位置處都為零,這表明可用一階導(dǎo)數(shù)的幅值來檢測邊緣的存在,而幅度峰值一般對應(yīng)著邊緣的位置;而二階導(dǎo)數(shù)是對一階導(dǎo)數(shù)的求導(dǎo),則二階導(dǎo)數(shù)的過零點(diǎn)處對應(yīng)著圖像的邊緣點(diǎn)[6]。
盡管Canny算子計(jì)算邊緣幅度的一階導(dǎo)數(shù),但它本質(zhì)上是一種基于二階導(dǎo)數(shù)的算子。八方向Kirsch算子是一種方向微分算子,它利用一組方向模板分別計(jì)算不同方向上的差分值,以最大值作為邊緣強(qiáng)度,最大值的方向作為邊緣方向[6]。
實(shí)際中,根據(jù)數(shù)字圖像的特點(diǎn),在圖像中求導(dǎo)數(shù)是利用差分近似微分來進(jìn)行的,差分可以通過算子模板與圖像進(jìn)行卷積實(shí)現(xiàn)。根據(jù)模板的大小和模板中每一個(gè)系數(shù)的差異會(huì)有不同的算子,它們在進(jìn)行邊緣檢測時(shí)具有不同的性能。
Sobel算子的思想是鄰近的像素點(diǎn)對當(dāng)前像素點(diǎn)產(chǎn)生的影響是不等價(jià)的,所以距離不同的像素具有不同的權(quán)值,一般認(rèn)為距離越大,產(chǎn)生的影響越小。其假定以當(dāng)前像素為中心獲取一個(gè)的鄰域,將該鄰域中的像素點(diǎn)分別與其模板中對應(yīng)的權(quán)值相乘,再將各結(jié)果進(jìn)行相加進(jìn)而得到每個(gè)像素位置的偏導(dǎo)數(shù)。它的兩個(gè)模板見圖2.3,左邊的模板可近似求得y方向的導(dǎo)數(shù),右邊的模板可近似求得x方向的導(dǎo)數(shù),
如果取卷積值中的最大值的絕對值作為邊緣強(qiáng)度,并且用最大值符號(hào)的方法來確定相應(yīng)的邊緣方向,則由于各模板的對稱性只需要用前四個(gè)模板就可以了。
此外,Kirsch算子的方向模板也可以有不同的尺寸,如八方向模板;方向微分算子的方向也不僅限于8個(gè)[6]。
坎尼(canny)指出一個(gè)好的邊緣檢測算子應(yīng)具有的三個(gè)指標(biāo):①低差錯(cuò)率,避免漏檢或誤檢邊緣;②精確定位,檢測出的邊緣應(yīng)在的真正邊界上,即找到中心點(diǎn);③單像素寬,對每個(gè)邊緣有惟一的響應(yīng)。
Canny邊緣檢測的步驟是先用高斯平滑濾波器對圖像進(jìn)行濾波處理,以去除圖像中的噪聲 ,然后用某種一階梯度算子計(jì)算濾波后圖像中每個(gè)像素的梯度幅值,為了得到更加合理的邊緣,其要對梯度的幅值進(jìn)行“非極大值抑制”,以得到細(xì)化的邊緣,最后用雙閾值法選取兩個(gè)閾值確定真正的邊緣點(diǎn)。#p#分頁標(biāo)題#e#
如圖2.7中第2行第2列的圖像為Roberts算子對灰度圖進(jìn)行邊緣檢測的結(jié)果。由該結(jié)果我們可知Roberts算子可以檢測出圖像的大致輪廓,但是輪廓線比較淡,不很清晰,圖像中比較細(xì)的邊緣可能會(huì)被忽略掉。Roberts最大的優(yōu)點(diǎn)就是計(jì)算簡單并且計(jì)算量小、速度快,算子的定位精度高,但是由于沒有進(jìn)行平滑處理,就會(huì)對噪聲比較敏感,不具有抑制噪聲的能力,因此該算子適合對邊緣清晰并且噪聲較少的圖像進(jìn)行邊緣檢測。
如圖2.8中第1行第2列的圖像為Sobel算子對灰度圖進(jìn)行邊緣檢測的結(jié)果。將該結(jié)果與Roberts算子的檢測結(jié)果進(jìn)行對比我們可以發(fā)現(xiàn)Sobel算子檢測出的邊緣更加清晰,可以檢測出更多的細(xì)節(jié),但是邊緣的線條較粗,包含了不少的偽邊緣。Sobel算子中心系數(shù)使用權(quán)重2的思想是通過突出中心點(diǎn)的作用而達(dá)到平滑的目的,因此Sobel算子具有一定的平滑作用,能夠?yàn)V除一些噪聲,這就使其受噪聲的影響比較小,但是這種平滑能力也平滑了一些真正的邊緣。由于Sobel算子能夠產(chǎn)生較好的檢測效果且計(jì)算量不是很大,因此成為比較常用的邊緣檢測算子。
如圖2.8中第2行第2列的圖像為Kirsch算子對灰度圖進(jìn)行邊緣檢測的結(jié)果。我們可以發(fā)現(xiàn)Kirsch算子檢測出的邊緣較為模糊,線條相比于Sobel算子更粗,定位精度更低。通過比較我們可知Sobel算子邊緣檢測所產(chǎn)生的結(jié)果還是非常令人滿意的,相較于Kirsch算子其產(chǎn)生的邊緣更適度、更細(xì)致,而Kirsch算子生成的結(jié)果比較夸張。雖然Kirsch算子的計(jì)算量比較大,但是其可以檢測出邊緣的方向,并且對噪聲較多、對比度較差的圖像處理的效果會(huì)較好。
如圖2.9中第2列的圖像為Canny算子對灰度圖進(jìn)行邊緣檢測的結(jié)果。與上面討論的算子不同的是這里的檢測結(jié)果進(jìn)行了二值化處理,但是不影響我們對其性能的分析。通過該結(jié)果我們可以發(fā)現(xiàn)Canny算子檢測出的效果最好,能夠檢測出邊緣中較細(xì)的部分,產(chǎn)生的邊緣是單像素寬,非常符合邊緣檢測算子應(yīng)具有的三個(gè)指標(biāo)。與其他邊緣檢測算子的不同之處在于,Canny算子使用了高低兩個(gè)閾值分別檢測出強(qiáng)邊緣和弱邊緣,并且僅當(dāng)弱邊緣與強(qiáng)邊緣相連時(shí)才將弱邊緣包含在輸出的圖像中,由于噪聲分布是隨機(jī)性的出現(xiàn)在圖像中,這就不容易使噪聲被誤檢做邊緣輸出,更容易檢測出真正的弱邊緣。Canny算子的邊緣定位準(zhǔn)確,連續(xù)性較好,其采用高斯平滑函數(shù)對圖像進(jìn)行平滑濾波處理,因此具有較強(qiáng)的去噪能力。此外,選取的閾值越高檢測出的邊緣越少,因此在實(shí)際操作時(shí)我們需要一定的方法來判決閾值。
Novak等人發(fā)現(xiàn),彩色圖像和灰度圖像大約有90%的邊緣是相同的,這就是說,有10%的邊緣在灰度圖像中是檢測不到的,而這些邊緣來自顏色的變化[8]。#p#分頁標(biāo)題#e#
有些圖像在局部區(qū)域中可能無規(guī)律可循,但在整體上卻表現(xiàn)出某種規(guī)律性。習(xí)慣上,我們把這種局部不規(guī)則但是在宏觀上卻有規(guī)律的特性稱之為紋理[9]。紋理可以認(rèn)為是灰度(或顏色)在空間以一定的規(guī)律變化而形成的圖案[6]。
圖像的紋理分析已經(jīng)在許多領(lǐng)域得到了廣泛的應(yīng)用,其因包含物體表面及其周圍環(huán)境的信息,多用于圖像檢索和圖像的分類中。如氣象云圖多是紋理型的對象,在分析云類(積云、卷云、積雨云、層云等)時(shí)我們就可以通過它們不同的紋理特征進(jìn)行識(shí)別;對遙感圖像進(jìn)行紋理分析也已成為非常成熟的應(yīng)用領(lǐng)域,不同的地形地貌在遙感圖像中將呈現(xiàn)出不同的紋理圖像,如河流、湖泊、農(nóng)田、城市都可以通過紋理將它們區(qū)分開[10]。
紋理分析的方法可以歸納為3種:統(tǒng)計(jì)法、結(jié)構(gòu)法和頻譜法,本文主要應(yīng)用紋理描述的統(tǒng)計(jì)方法中的灰度共生矩陣(GLCM,Gray level co-occurrence matrix)對圖像進(jìn)行紋理分析。圖像的GLCM是一種用于確定紋理特性的很好的方法,廣泛用于將圖像的灰度值轉(zhuǎn)換為紋理信息。
設(shè)為目標(biāo)區(qū)域中具有特定空間聯(lián)系的像素對的集合,表示一幅二維數(shù)字圖像,灰度級(jí)別為,則共生矩陣中各元素可以定位為:
上式表示了具有某種特定空間關(guān)系、灰度值分別為和的像素對的個(gè)數(shù)(表示了集合中的元素個(gè)數(shù)),顯然是的矩陣。若和之間的距離為,兩者之間的坐標(biāo)橫軸之間的夾角為,則我們就可以得到各種間距及角度的GLCM ,通常取為0或1,為,,和四個(gè)方向[6]。
當(dāng)兩像素間的距離和角度等位置關(guān)系選定后,就可以生成相應(yīng)的GLCM,如下式所示:
這樣就將的空間坐標(biāo)轉(zhuǎn)換為了具有一定空間關(guān)系的兩個(gè)像素的灰度級(jí)同時(shí)發(fā)生的概率(進(jìn)行歸一化處理后)。
在實(shí)際操作中,我們往往不是直接應(yīng)用得到的GLCM,而是在其基礎(chǔ)上獲取二次統(tǒng)計(jì)量——紋理描述符進(jìn)行分析。Haralick等人定義了14個(gè)用于紋理分析的特征量,但其中僅有4個(gè)是不相關(guān)的,一般用能量(又稱角二階矩)、熵、慣性矩(又稱對比度)和相關(guān)性這四個(gè)量值來提取圖像的紋理特征[11]。
事物總是處于不斷的運(yùn)動(dòng)變化之中,對場景進(jìn)行連續(xù)采集的圖像序列能夠反映出場景中物體以及場景的運(yùn)動(dòng)與變化,與運(yùn)動(dòng)信息有著密切的聯(lián)系。運(yùn)動(dòng)信息既有大小也有方向,可以用矢量來表達(dá),即運(yùn)動(dòng)矢量(MV,Motion Vector)。對圖像進(jìn)行運(yùn)動(dòng)分析就是對圖像中的運(yùn)動(dòng)信息或運(yùn)動(dòng)矢量的檢測。
視頻圖像的數(shù)據(jù)量十分驚人,但是圖像序列在時(shí)間上有很強(qiáng)的相關(guān)性,因此需要通過各種方法有效降低圖像的冗余度來減少數(shù)據(jù)量以便于圖像序列的處理和傳輸。基于塊的運(yùn)動(dòng)估計(jì)方法能夠反映出圖像序列相鄰幀之間的運(yùn)動(dòng)信息,是實(shí)現(xiàn)視頻壓縮編碼的重要技術(shù),其可以有效地去除圖像的幀間冗余度,獲得較高的壓縮比,廣泛應(yīng)用于各種視頻壓縮編碼方案中[12]。#p#分頁標(biāo)題#e#
運(yùn)動(dòng)估計(jì)用來估計(jì)物體的位移,得到MV,運(yùn)動(dòng)補(bǔ)償則根據(jù)得到的MV得到盡可能接近當(dāng)前幀的預(yù)測幀。原理上,運(yùn)動(dòng)估計(jì)首先需要進(jìn)行物體的劃分,即劃分圖像中的靜止區(qū)域和運(yùn)動(dòng)區(qū)域,但由于實(shí)際的圖像序列內(nèi)容變化繁多,將運(yùn)動(dòng)的物體從中劃分出來非常困難,因此采用基于塊的運(yùn)動(dòng)估計(jì)在活動(dòng)圖像編碼中是一種變通可行的方法[13]。基于塊的運(yùn)動(dòng)估計(jì)先把一幅圖像分為互不重疊的個(gè)像素子塊,然后以每個(gè)子塊為單元計(jì)算MV,并將其編碼發(fā)送到接收端。需要注意的一點(diǎn)是,在基于塊的運(yùn)動(dòng)估計(jì)和運(yùn)動(dòng)補(bǔ)償中有一個(gè)基本假設(shè),即塊內(nèi)所有的像素具有相同的平移運(yùn)動(dòng),這樣子塊的MV也就是子塊內(nèi)所有像素的MV了。
基于塊的運(yùn)動(dòng)估計(jì)算法有很多,其中全搜索算法(FS,F(xiàn)ull Search)是基本算法,雖然其性能最優(yōu),但是運(yùn)算量卻很大,耗時(shí)較長。視頻信號(hào)的處理需要較高的實(shí)時(shí)性,尤其如視頻會(huì)議等圖像對實(shí)時(shí)性的要求更高,因此對視頻圖像序列處理的延時(shí)是有限的。在實(shí)際應(yīng)用場合中我們一般需要采用運(yùn)算量大為減少,耗時(shí)較短,但性能略低于全搜索的算法,三步搜索算法(TSS,Three Step Search)是目前應(yīng)用廣泛的快速運(yùn)動(dòng)估計(jì)算法之一,而菱形搜索算法(DS,Diamond Search)是目前快速算法中性能最優(yōu)異的算法之一。基于塊的運(yùn)動(dòng)估計(jì)算法有很多種,這里僅給出3種有代表性的估計(jì)算法。
(1)全搜索算法:
基于塊的運(yùn)動(dòng)估計(jì)算法在估計(jì)一個(gè)子塊的位移時(shí),在前一幀圖像中以當(dāng)前子塊為中心的一個(gè)范圍內(nèi)進(jìn)行匹配運(yùn)算,該范圍稱為搜索區(qū)。在搜索區(qū)中尋找一個(gè)與當(dāng)前子塊最匹配的子塊,這兩個(gè)子塊中心的位移即為估計(jì)的MV。FS需要在整個(gè)搜索區(qū)進(jìn)行匹配運(yùn)算得到的平均絕對誤差(MAD,Mean Absolute Differences)值,然后在所得的所有MAD值中找到最小值,該值所對應(yīng)的子塊與當(dāng)前子塊匹配得最好,兩者之間的位移即對應(yīng)最佳MV。假定搜索區(qū)水平和垂直方向的最大位移均為,那么FS需要次誤差計(jì)算。
(2)三步搜索算法:
TSS搜索共需三步即可,三步搜索也因此得名,其搜索步長依次為4、2、1。步驟具體如下:①從當(dāng)前子塊的中心開始,以4為步長,在周圍距離步長的8個(gè)點(diǎn)及中心點(diǎn)處進(jìn)行匹配運(yùn)算,求出最佳匹配子塊的中心位置;②以前一步求出的最佳子塊為中心,以2為步長,按照相同的方法找到最佳匹配子塊的中心;③再以前一步求出的最佳子塊為中心,以1為步長,按照相同的方法找到最佳匹配子塊的中心,它與當(dāng)前子塊中心的位置偏移量即為估計(jì)的MV。可以看到,當(dāng)時(shí),三步搜索法僅需要次匹配,其比FS匹配的次數(shù)少多了。
(3)菱形搜索算法:#p#分頁標(biāo)題#e#
DS采用了兩種搜索模板,分別是有9個(gè)搜索點(diǎn)的大模板和有5個(gè)搜索點(diǎn)的小模板。開始搜索時(shí)先用大模板進(jìn)行匹配運(yùn)算,找出最小塊匹配誤差點(diǎn),然后以前一步得到的最小塊匹配誤差點(diǎn)為中心,按照同樣的方法進(jìn)行匹配運(yùn)算,當(dāng)最小塊匹配誤差點(diǎn)出現(xiàn)在中心點(diǎn)時(shí),便可以將大模板換成小模板,再進(jìn)行匹配運(yùn)算,這時(shí)5個(gè)點(diǎn)中的最小塊匹配誤差點(diǎn)即為最佳匹配點(diǎn),根據(jù)該點(diǎn)可以形成最終的MV [12]。
目前視頻編碼標(biāo)準(zhǔn)在對視頻信號(hào)進(jìn)行編碼時(shí),采用的是YUV的顏色編碼方法,而非RGB格式。YUV分為三個(gè)分量,“Y”表示亮度,也就是灰度值,而“U”和“V”的表示兩個(gè)色差分量。這樣的表示方法是為了彩色電視向下兼容黑白電視,因?yàn)樗鼘⒘炼刃畔ⅲ╕)與色差信息(UV)分離,沒有UV分量一樣可以顯示完整的圖像,只不過圖像是黑白的。為了減少數(shù)據(jù)量,對色差信號(hào)的采樣率是亮度信號(hào)的一半,因此在進(jìn)行運(yùn)動(dòng)估計(jì)的時(shí)候我們可以只對灰度圖像進(jìn)行檢測,即Y分量,而UV分量都可以通過Y分量的檢測結(jié)果進(jìn)行推算得到[14]。因此通過灰度圖像的運(yùn)動(dòng)估計(jì)分析結(jié)果,彩色圖像可以得出類似的結(jié)論,所以這里我們僅僅給出了灰度圖像和深度圖像運(yùn)動(dòng)估計(jì)的檢測結(jié)果。