攝像機(jī)和/或深度參數(shù)的信號通知的制作方法
【專利摘要】提供了一種編碼器(310)和其中的方法,用于提供與攝像機(jī)參數(shù)和深度參數(shù)中的至少一項“所述參數(shù)”有關(guān)的更新消息;一種解碼器(320)和其中的方法,用于對更新消息進(jìn)行解碼;包括編碼器(310)的第一設(shè)備(800);以及包括解碼器(320)的第二設(shè)備(1000)。所述參數(shù)使解碼器(320)能夠基于針對第二攝像機(jī)位置的第二視圖和第二視圖的所述參數(shù)來合成針對第一攝像機(jī)位置的第一視圖。所述編碼器(310)檢測所述參數(shù)中的哪些隨時間改變。接著,所述編碼器(310)將參數(shù)模塊化為相應(yīng)模塊。此外,所述編碼器(310)將每個相應(yīng)模塊編碼為更新消息,并向解碼器(320)發(fā)送該更新消息。接著,所述解碼器(320)對更新消息的每個相應(yīng)模塊進(jìn)行解碼,以獲得要更新的參數(shù)。
【專利說明】攝像機(jī)和/或深度參數(shù)的信號通知
【技術(shù)領(lǐng)域】
[0001]此處的實施例涉及多視圖顯示和視圖合成技術(shù)。具體地,公開了一種編碼器和其中的方法,用于提供與攝像機(jī)參數(shù)和深度參數(shù)中的至少一項有關(guān)的更新消息;以及一種解碼器和其中的方法,用于對與攝像機(jī)參數(shù)和深度參數(shù)中的至少一項有關(guān)的更新消息進(jìn)行解碼。
【背景技術(shù)】
[0002]三維(3D)視頻和三維電視(3DTV)領(lǐng)域正獲得契機(jī),并被視為消費(fèi)者電子產(chǎn)品、移動設(shè)備、計算機(jī)和電影的下一邏輯階段。二維(2D)視頻之上的附加緯度提供了用于顯示內(nèi)容的多個不同方向,并提高了觀看者和內(nèi)容之間交互的潛力。
[0003]下一代自動立體視覺顯示器允許觀看者在無需眼鏡的情況下體驗深度感知。這些顯示器沿不同方向投影稍有不同的畫面,如示出了示例顯示方案的圖1所示。因此,如果觀看者位于顯示器前方的適當(dāng)位置,他/她的左右眼看到相同場景的稍有不同的畫面,使得可以創(chuàng)建對深度的感知。為了當(dāng)用戶在屏幕前移動時實現(xiàn)平滑視差和視點的改變,產(chǎn)生多個視圖(通常7-28個)。視圖是從特定攝像機(jī)位置獲取的場景的畫面或視頻。
[0004]當(dāng)使用上述方法時,一個問題可能是:發(fā)送視圖可能需要高比特率。然而,可以通過發(fā)送較小數(shù)目的(例如I至3個)關(guān)鍵視圖并由所發(fā)送的關(guān)鍵視圖通過所謂視圖合成過程產(chǎn)生其他視圖,來克服該問題。這些合成視圖可以位于關(guān)鍵視圖之間(內(nèi)插)或位于關(guān)鍵視圖所覆蓋的范圍之外(外插)。
[0005]視圖合成技術(shù)之一是基于深度圖像的渲染(DIBR)。為了便于視圖合成,DIBR使用關(guān)鍵視圖的深度圖(理論上,也可以是其他視圖的深度圖)。深度圖可由具有與視圖(如,視頻幀)相同分辨率的灰度圖像來表示。·此時,深度圖的每個像素表示針對圖像/視頻幀中的對應(yīng)像素,從攝像機(jī)到對象的距離。
[0006]存在可以在視圖合成中使用的多個參數(shù)。這些參數(shù)可以被稱為視圖合成相關(guān)參數(shù)。
[0007]為了便于DIBR視圖合成,需要針對執(zhí)行視圖合成的設(shè)備或程序模塊發(fā)信號通知多個參數(shù)。在這些參數(shù)中,首先是表示所考察幀的深度圖中的最近和最遠(yuǎn)深度值的z near和z far。需要這些值,以將量化后的深度圖采樣映射至它們表示的真實深度值(以下公式之一)。如果來自空間原點的全部深度值全為正或全為負(fù),使用上方的公式。否則,使用下方的公式。
[0008]V ? 1.0 ^ 1.0I 1.0
255,0ZJ Zfm (I)
I O
Zrj-tA.?
/ j ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[0009]— ‘ V ? 1.0 1.0 ] + 1,0
255.0.々J Z!V (2)o[0010]這些公式1、2用于將量化后的深度值轉(zhuǎn)換為真實深度值。變量V表示灰度深度圖中每個像素的亮度值(對于8比特深度圖,在O和255之間)。Tz表示平移矢量的z分量(z坐標(biāo))。
[0011]視圖合成所需的另一參數(shù)集是攝像機(jī)參數(shù)。
[0012]用于3D視頻的攝像機(jī)參數(shù)通常分為兩部分。被稱為內(nèi)在(內(nèi)部)攝像機(jī)參數(shù)的第一部分表示針對所獲取圖像的攝像機(jī)的光學(xué)特性,如,焦距、圖像主點的坐標(biāo)以及徑向失真。外在(外部)攝像機(jī)參數(shù)表示所選真實世界坐標(biāo)中的攝像機(jī)位置及其光軸的方向(此處重要的方面是場景中攝像機(jī)相對彼此和對象的位置)。此處應(yīng)注意是的:外在參數(shù)或外在攝像機(jī)參數(shù)可以包括平移參數(shù),該平移參數(shù)可以包括在平移矢量中。在基于使用深度信息的視圖合成過程(如DIBR)中需要內(nèi)在和外在攝像機(jī)參數(shù)。
[0013]作為上述DIBR方案的備選,可以使用分層深度視頻(LDV)。LDV方案使用多個層來進(jìn)行場景表示。這些層可以是前景紋理、前景深度、背景紋理和背景深度。
[0014]為了使不同設(shè)備關(guān)于如何發(fā)信號通知攝像機(jī)參數(shù)等兼容,對如何向解碼器發(fā)送攝像機(jī)參數(shù)的方式進(jìn)行了標(biāo)準(zhǔn)化。
[0015]這些標(biāo)準(zhǔn)化方式之一定義于多視圖視頻編碼(MVC)標(biāo)準(zhǔn)中,該標(biāo)準(zhǔn)定義于眾所周知的高級視頻編碼(AVC)標(biāo)準(zhǔn)(又稱H.264)的附錄H中。MVC的范圍覆蓋從多個視點表示場景的立體或多視圖的聯(lián)合編碼。該標(biāo)準(zhǔn)最終采用相同場景的這些視圖之間的相關(guān)性,以實現(xiàn)比獨(dú)立壓縮視圖更好的壓縮效率。MVC標(biāo)準(zhǔn)還覆蓋向解碼器發(fā)送攝像機(jī)參數(shù)信息。攝像機(jī)參數(shù)作為補(bǔ)充增強(qiáng)信息(SEI)消息來發(fā)送。SEI消息的語法示于表0.1中。
[0016]已提出對運(yùn)動圖像專家組(MPEG)標(biāo)準(zhǔn)化的貢獻(xiàn),以向解碼器發(fā)信號通知z_near和z_far值。所提出的用于發(fā)信號通知z_near和z_far參數(shù)的語法示于表0.2中。
[0017]可以從表0.1看到以浮點表示發(fā)送攝像機(jī)參數(shù)。浮點表示允許支持較高的參數(shù)動態(tài)范圍,并有利于以較高精度發(fā)送攝像機(jī)參數(shù)。Vetix)等證明較高的攝像機(jī)參數(shù)精度對于視圖合成是重要的。
[0018]在許多視頻編碼標(biāo)準(zhǔn)/方案中,為了獲得較高的編碼效率并支持時間縮放性,可以按照與視頻畫面的顯示順序不同的順序?qū)σ曨l畫面進(jìn)行編碼。這樣的編碼結(jié)構(gòu)的示例之一是大量使用雙向畫面預(yù)測的分級B編碼。
[0019]在H.264 / AVC中,在網(wǎng)絡(luò)抽象層(NAL)單元首部中發(fā)信號通知編碼順序和顯示順序,分別表示為幀編號和畫面順序計數(shù)(POC)。解碼器應(yīng)遵循非遞減的幀編號順序,以對序列進(jìn)行解碼。另一方面,顯示器應(yīng)遵循遞增的POC順序,以在屏幕上呈現(xiàn)圖像。圖2示出了不同的編碼順序和顯示順序的概念。
[0020]即使上述方法(如DIBR和LDV)降低了編碼器和解碼器之間的比特率,仍期望進(jìn)一步降低所需的比特率。
【發(fā)明內(nèi)容】
[0021]目的是降低編碼器和解碼器之間所需的比特率。
[0022]該目的是通過使用更新消息(如修改后的SEI消息)或其他手段引入用于發(fā)送攝像機(jī)參數(shù)和/或深度參數(shù)的新語法來解決的。這樣的其他手段可以是在比特流中發(fā)送參數(shù)并且參數(shù)使用修改后的SEI消息以外的某種表示。[0023]因此,提供了一種編碼器中的方法,用于以帶寬高效的方式發(fā)送攝像機(jī)和/或深度參數(shù)。
[0024]因此,該目的是通過編碼器中的方法來實現(xiàn)的,所述方法用于提供與攝像機(jī)參數(shù)和深度參數(shù)中的至少一項有關(guān)的更新消息。攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項使解碼器能夠基于針對第二攝像機(jī)位置的第二視圖以及攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項來合成針對第一攝像機(jī)位置的第一視圖。攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項與第二視圖有關(guān)。編碼器檢測攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項中的哪些隨時間改變。接著,編碼器將檢測到的攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項模塊化為相應(yīng)模塊。接著,編碼器將每個相應(yīng)模塊編碼為更新消息,并向解碼器發(fā)送更新消息。
[0025]根據(jù)另一方面,該目的是通過編碼器來實現(xiàn)的,所述編碼器被配置為提供與攝像機(jī)參數(shù)和深度參數(shù)中的至少一項有關(guān)的更新消息。攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項使解碼器能夠基于針對第二攝像機(jī)位置的第二視圖以及攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項來合成針對第一攝像機(jī)位置的第一視圖,其中,攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項與第二視圖有關(guān)。編碼器包括處理電路,所述處理電路被配置為:
[0026]檢測攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項中的哪些隨時間改變,
[0027]將攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項模塊化為相應(yīng)模塊;
[0028]將每個相應(yīng)模塊編碼為更新消息;以及
[0029]向解碼器發(fā)送更新消息。
[0030]根據(jù)一些實施例,第一設(shè)備包括所述編碼器。第一設(shè)備可以是如詳細(xì)描述中舉例說明的第一用戶設(shè)備等。
[0031]此外,提供了解碼器中的方法,用于接收與攝像機(jī)參數(shù)和/或深度參數(shù)并使用所述攝像機(jī)和/或深度參數(shù)來合成攝像機(jī)視圖。
[0032]因此,該目的通過解碼器中的方法來實現(xiàn)的,所述方法用于對與攝像機(jī)參數(shù)和深度參數(shù)中的至少一項有關(guān)的更新消息進(jìn)行解碼。攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項使解碼器能夠基于針對第二攝像機(jī)位置的第二視圖以及攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項來合成針對第一攝像機(jī)位置的第一視圖。攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項與第二視圖有關(guān)。解碼器從編碼器接收更新消息,其中,所述更新消息包括針對攝像機(jī)參數(shù)和深度參數(shù)中的至少一項的相應(yīng)模塊。接著,解碼器對更新消息的每個相應(yīng)模塊進(jìn)行解碼,以獲得要更新的攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項。
[0033]根據(jù)又一方面,該目的是通過解碼器來實現(xiàn)的,所述解碼器被配置為對與攝像機(jī)參數(shù)和深度參數(shù)中的至少一項有關(guān)的更新消息進(jìn)行解碼.攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項使解碼器能夠基于針對第二攝像機(jī)位置的第二視圖以及攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項來合成針對第一攝像機(jī)位置的第一視圖。攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項與第二視圖有關(guān)。所述解碼器包括處理電路,所述處理電路被配置為:
[0034]從編碼器接收更新消息,其中,所述更新消息包括針對攝像機(jī)參數(shù)和深度參數(shù)中的至少一項的相應(yīng)模塊;以及
[0035]對更新消息的每個相應(yīng)模塊進(jìn)行解碼,以獲得要更新的攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項。
[0036]根據(jù)一些實施例,第二設(shè)備包括所述解碼器。第二設(shè)備可以是如詳細(xì)描述中舉例說明的第二用戶設(shè)備等。
[0037]根據(jù)此處的實施例,攝像機(jī)和/或深度參數(shù)被劃分為邏輯塊或模塊。接著,僅當(dāng)前中貞中與先前巾貞相比改變的攝像機(jī)參數(shù)和/或最近和最遠(yuǎn)深度值(z near和zfar)被發(fā)送至解碼器。這可以降低向接收機(jī)發(fā)送信息所需的比特率。
[0038]為了進(jìn)一步降低參數(shù)的所需比特率,根據(jù)一些實施例,執(zhí)行發(fā)信號通知攝像機(jī)和/或深度參數(shù)的增量改變,這與攝像機(jī)和/或深度參數(shù)的預(yù)測有關(guān)。增量改變作為真實攝像機(jī)和/或深度參數(shù)與估計的攝像機(jī)和/或深度參數(shù)之間的差來發(fā)送。
[0039]因此,在一些實施例中,還可以使用預(yù)測器(如計算公式),以更高效地發(fā)送攝像機(jī)和/或深度參數(shù)。接著,發(fā)送參數(shù)的真實值和預(yù)測值之間的差(或預(yù)測誤差)。因此,減少了在編碼器和解碼器之間發(fā)送的信息量。
[0040]根據(jù)其他實施例,攝像機(jī)和/或深度參數(shù)的增量改變還可以與畫面間(幀間)預(yù)測結(jié)構(gòu)高效組合。畫面間預(yù)測結(jié)構(gòu)可以基于分級編碼。作為示例,畫面間(幀間)可以是分級B-幀、P-幀等。接著,發(fā)送并按幀的編碼順序計算攝像機(jī)參數(shù)的更新。這允許接收機(jī)在不影響攝像機(jī)參數(shù)和/或深度參數(shù)的預(yù)測的情況下丟棄較高分級層的更新信息(如修改后的S EI消息)。
[0041]此處以及在本文中的其他部分,術(shù)語“參數(shù)”采取外在和內(nèi)在攝像機(jī)參數(shù)、當(dāng)前中貞/攝像機(jī)中被稱為z_near和zfar的最近和最遠(yuǎn)深度值以及與視圖合成有關(guān)的其他元數(shù)據(jù)信息。在本公開中,“攝像機(jī)參數(shù)和深度參數(shù)中的至少一項”被理解為指“攝像機(jī)參數(shù)和/或深度參數(shù)”。
[0042]此處實施例的優(yōu)點是:使更高效地發(fā)信號通知參數(shù)成為可能。更高效的發(fā)信號通知可以例如通過在攝像機(jī)參數(shù)和/或z_near、z_far值中的一些隨時間改變的情況下使用更新消息或發(fā)信號通知攝像機(jī)參數(shù)和z_near z_far值的其他方式來實現(xiàn)。此處的實施例降低了發(fā)信號通知參數(shù)所需的比特率。
【專利附圖】
【附圖說明】
[0043]通過以下詳細(xì)描述以及附圖,將易于理解此處公開的實施例的各種方面(包括特定特征及其優(yōu)點),附圖中:
[0044]圖1是沿自動立體視覺顯示的不同方向呈現(xiàn)的多個視圖的概覽,
[0045]圖2是編碼順序和顯示順序的示意,
[0046]圖3是可以實現(xiàn)實施例的系統(tǒng)的概覽,
[0047]圖4是示出了在圖3的系統(tǒng)中實現(xiàn)的根據(jù)實施例的示例方法的示意的組合信令和流程圖,
[0048]圖5a_5d是示出了顯示順序和編碼順序的框圖,
[0049]圖6是示出了具有三個B-幀的分級預(yù)測結(jié)構(gòu)的概覽。
[0050]圖7是示出了當(dāng)從編碼器觀察時圖4的示例方法的示意流程圖,
[0051]圖8是示出了被配置為執(zhí)行圖4和/或7的方法的示例編碼器的示意框圖,
[0052]圖9是示出了當(dāng)從解碼器觀察時圖4的示例方法的示意流程圖,以及
[0053]圖10是被配置為執(zhí)行圖4和/或9的方法的示例解碼器的示意框圖。【具體實施方式】
[0054]以上介紹的現(xiàn)有方案的一個問題是:多視圖獲取信息SEI消息包括全部攝像機(jī)參數(shù)。如果相同的攝像機(jī)參數(shù)對整個視頻序列有效(即,如果參數(shù)隨時間相對恒定),這將運(yùn)轉(zhuǎn)良好。然而,一些多視圖序列可能具有恒定的特定攝像機(jī)參數(shù)以及隨時間改變的其他攝像機(jī)參數(shù)。參數(shù)中的一些(例如平移矢量以及z_near和z_far參數(shù))可能每巾貞改變,而一些參數(shù)可能對于整個幀序列恒定。還十分常見的是:對于特定類型的內(nèi)容,最小和最大深度值z_near和z_far每巾貞變化。當(dāng)使用浮點表示發(fā)送攝像機(jī)參數(shù)和z_near、z_far值時,針對每個攝像機(jī)和每個單個幀重發(fā)全部參數(shù)集可能意味著需要發(fā)送一些附加量的比特。因此,希望減少在編碼的視頻序列中表示攝像機(jī)參數(shù)和/或深度參數(shù)所需的比特數(shù)。
[0055]在單個SEI消息中攜帶針對全部視圖的攝像機(jī)參數(shù)的機(jī)制的另一問題是:如果使用“視圖縮放性”(即,從N視圖序列中(通過比特流提取)提取M〈N個視圖的子集),則將必須重寫SEI消息以反映新的M-視圖表示,S卩,將必須從消息中移除針對尚未提取的視圖的參數(shù)。這樣的重寫過程可能引起非期望的復(fù)雜度和延遲。
[0056]在繼續(xù)詳細(xì)描述前,將簡要說明一些術(shù)語。
[0057]術(shù)語“幀”指畫面。因此,兩個幀可以是兩個畫面(無任何對時間或位置對齊的限制)。兩個幀可以對應(yīng)于相同或不同的時間實例或者對應(yīng)于相同或不同的視圖(即,不同的攝像機(jī)位置)。典型地,當(dāng)兩個幀對應(yīng)于相同的時間實例時,兩個幀與不同的視圖有關(guān)。此夕卜,典型地,當(dāng)兩個幀對應(yīng)于相同視圖時,兩個幀與不同的時間實例有關(guān)。時間實例可以是連續(xù)或非連續(xù)的。
[0058]如上所述,術(shù)語“視圖”是從特定攝像機(jī)位置獲取的場景的幀或幀序列。
[0059]術(shù)語“視圖間預(yù)測”與由另一畫面預(yù)測畫面中的一部分有關(guān),所述另一畫面與另一視圖(例如攝像機(jī)位置,可以是虛擬或真實的)有關(guān)。
[0060]術(shù)語“時間預(yù)測”與由另一畫面預(yù)測畫面中的一部分有關(guān),所述另一畫面屬于相同視圖但屬于不同時間實例或時刻。
[0061]為了完整起見,但未在此處使用,術(shù)語片(slice)參照H.264、MVC、高效率視頻編碼(HEVC)及相關(guān)技術(shù)的術(shù)語命名。片是通常以光柵掃描順序(在HEVC中非必要)包括整數(shù)個宏塊(或CU)的畫面的一部分。因此,片可以是畫面的一部分。片還可以包括整個畫面,但不總是這樣。一般地,在H.264中,片可以幀間或幀內(nèi)預(yù)測。在H.264和MVC中存在被稱為IDR片的一種片。如果片之一是IDR,則相同畫面中的所有其他片也應(yīng)是IDR片。然而,在其他情況下,畫面可以包括幀間和幀內(nèi)預(yù)測片。
[0062]此處,術(shù)語“幀內(nèi)預(yù)測”畫面(幀)用于指代不使用(或不允許使用)幀間預(yù)測的畫面。術(shù)語“幀間預(yù)測”畫面(幀)用于指代使用(或允許使用)幀間預(yù)測的畫面。
[0063]此外,如此處使用的,當(dāng)結(jié)合攝像機(jī)和/或深度參數(shù)使用時術(shù)語“真實”指當(dāng)編碼時在編碼器可用的攝像機(jī)和/或深度參數(shù)。鑒于在解碼器處提取或預(yù)測的攝像機(jī)和/或深度參數(shù),這是可用參數(shù)是真實的。
[0064]圖3是可以實現(xiàn)此處實施例的通信系統(tǒng)100 (如無線通信系統(tǒng)、多媒體系統(tǒng)等)的概覽。
[0065]通信系統(tǒng)100包括編碼器310和解碼器320。
[0066]編碼器310包括處理電路311,如處理器。處理電路311可以被配置為配置和/或壓縮攝像機(jī)和深度參數(shù)。深度參數(shù)可以被稱為深度圖參數(shù)(以z_near z_far值作為示例)。
[0067]此外,編碼器310包括輸入部分313,用于從攝像機(jī)、攝像機(jī)陣列或從確定攝像機(jī)參數(shù)和/或深度圖的z_near / z_far參數(shù)的3D視頻處理系統(tǒng)接收輸入。z_near和z_far參數(shù)又稱深度參數(shù)。輸入通常來自多個攝像機(jī)。如果僅存在一個攝像機(jī),可能僅存在2D視頻。此時,顯示2D視頻通常不需要攝像機(jī)參數(shù)。
[0068]編碼器310還包括:存儲器312,用于存儲攝像機(jī)和深度圖參數(shù)中的一些以及其他信息;以及輸出部分314,用于發(fā)送所配置和/或壓縮的攝像機(jī)參數(shù)和/或深度參數(shù)。
[0069]解碼器320包括:輸入部分324,用于從編碼器310接收攝像機(jī)參數(shù)和/或深度參數(shù)。這些攝像機(jī)參數(shù)和/或深度參數(shù)由處理電路321 (如處理器)處理,并由視圖合成器323用于合成視圖。解碼器320還包括:存儲器322,用于存儲例如先前接收的攝像機(jī)和深度參數(shù)。
[0070]根據(jù)此處的實施例,編碼器310可以包括在如圖1所示的第一設(shè)備中,解碼器320可以包括在如圖9所示的第二設(shè)備中。
[0071]如此處使用的,表述“設(shè)備”可以指用戶設(shè)備、移動電話、蜂窩電話、配備有無線通信能力的個人數(shù)字助理(PDA)、智能電話、配備有內(nèi)部或外部移動寬帶調(diào)制解調(diào)器的膝上型計算機(jī)、配備有無線通信能力的傳感器設(shè)備、便攜式電子無線通信設(shè)備等。
[0072]如前所述,一些攝像機(jī)參數(shù)可以對于幀序列恒定,而一些參數(shù)可以隨每幀改變。這些參數(shù)可能需要被發(fā)送至接收機(jī)(即,解碼器320)以進(jìn)行視圖合成。
[0073]以下,根據(jù)不同的實施例,描述了用于降低發(fā)送攝像機(jī)參數(shù)和/或深度參數(shù)所需的比特率的方法。特別地,描述了由編碼器310預(yù)測用于發(fā)送的攝像機(jī)參數(shù)和/或深度參數(shù)或者由解碼器320根據(jù)接收的攝像機(jī)參數(shù)預(yù)測攝像機(jī)參數(shù)和/或深度參數(shù)。
[0074]參照圖4,組合信令和流程圖示出了在根據(jù)圖3的通信系統(tǒng)100中實現(xiàn)時的示例方法。編碼器310執(zhí)行用于提供與攝像機(jī)參數(shù)和深度參數(shù)中的至少一項有關(guān)的更新消息的方法。因此,解碼器320執(zhí)行用于對與攝像機(jī)參數(shù)和深度參數(shù)中的至少一項有關(guān)的更新消息進(jìn)行解碼的方法。攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項使解碼器320能夠基于針對第二攝像機(jī)位置的第二視圖以及攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項來合成針對第一攝像機(jī)位置的第一視圖。攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項與第二視圖有關(guān)。
[0075]更新消息可以是SEI消息或某種其他表示。
[0076]更新消息可以包括第一消息和第二消息。第一消息可以包括攝像機(jī)參數(shù),第二消息可以包括深度參數(shù)。參見以下“攝像機(jī)參數(shù)更新消息”以及“實施例7”部分。
[0077]攝像機(jī)參數(shù)可以包括旋轉(zhuǎn)矩陣,其中,更新消息可以包括用于指示所述旋轉(zhuǎn)矩陣是單位矩陣的指示。參見以下“實施例8”部分。攝像機(jī)參數(shù)可以包括內(nèi)在參數(shù)、外在參數(shù)和/或深度參數(shù)可以包括znear和/或zfar值。
[0078]根據(jù)一些實施例,第一視圖與第三巾貞或第四巾貞有關(guān)。在一些不例中,第三巾貞是與第四幀相同的幀。
[0079]應(yīng)理解的是:術(shù)語“攝像機(jī)”不一定指物理攝像機(jī),而是指要合成視圖的攝像機(jī)的可能位置。
[0080]可以按任意適當(dāng)?shù)捻樞驁?zhí)行以下動作。[0081]動作401
[0082]為了確定向解碼器320發(fā)信號通知哪些參數(shù),編碼器310檢測攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項中的哪些隨時間改變??梢詢?yōu)選僅發(fā)送隨時間改變的參數(shù)的更新。因此,與第一視圖相比,隨時間改變的參數(shù)中的至少一些對于第二視圖是不同的。
[0083]作為示例,可以向解碼器320發(fā)送在第二視圖的第二幀和第一視圖的第一幀之間改變的攝像機(jī)參數(shù)和/或深度參數(shù)。在該示例中,第一和第二幀可以與不同的時間實例有關(guān)。該示例可以與此處描述的時間預(yù)測組合。
[0084]作為另一示例,可以向解碼器320發(fā)送在與第二攝像機(jī)位置相對應(yīng)的第二視圖和與第一攝像機(jī)位置相對應(yīng)的第一視圖之間改變的攝像機(jī)參數(shù)和/或深度參數(shù)。在該示例中,第一視圖和第二視圖可以與相同的時間實例有關(guān)。該示例可以與此處描述的視圖間預(yù)測組合。
[0085]動作402
[0086]當(dāng)編碼器310知曉哪些參數(shù)隨時間改變或哪些參數(shù)從第二視圖到第一視圖改變時,這些參數(shù)可以被組織成模塊。因此,編碼器310將檢測到的攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項模塊化為相應(yīng)模塊。當(dāng)編碼器310模塊化攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項時,攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項被劃分或分割為不同模塊。按照該方式,攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項被放入塊或模塊中,從而僅向解碼器發(fā)送隨時間改變的參數(shù)。
[0087]相應(yīng)模塊可以與內(nèi)在參數(shù)、外在參數(shù)或深度參數(shù)有關(guān)。參見“實施例1”部分。
[0088]相應(yīng)模塊可以與平移矢量(又稱平移參數(shù))的X分量有關(guān)。參見“實施例2”部分。
[0089]在與預(yù)測有關(guān)的其他實施例中,每個相應(yīng)模塊可以包括相應(yīng)差值參數(shù),所述差值參數(shù)指示預(yù)測的攝像機(jī)參數(shù)和真實的攝像機(jī)參數(shù)和/或預(yù)測的深度參數(shù)和真實的深度參數(shù)之間的差。這可以在動作403至405的一個或多個之后執(zhí)行。參見“實施例5”部分。
[0090]還應(yīng)注意的是:將參數(shù)劃分為模塊的劃分可以是固定(預(yù)定)和對于編碼器和解碼器已知的。在該情況下,編碼器僅需向解碼器發(fā)信號通知預(yù)定義模塊中的哪些被發(fā)送。
[0091]動作403
[0092]該動作與時間預(yù)測有關(guān)。
[0093]為了減少在編碼器310和解碼器320之間發(fā)送的比特數(shù)目,編碼器310和解碼器320可以商定預(yù)測算法。該預(yù)測算法將由編碼器310在編碼前的預(yù)測期間以及將由解碼器320在解碼后的提取期間使用。
[0094]因此,編碼器310可以基于針對第一幀和第二幀的攝像機(jī)參數(shù)和/或深度參數(shù),線性預(yù)測針對位于第一和第二幀附近的第三幀的攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項。第一和第二幀附近可以指關(guān)于時間的附近。第一和第二幀可以是任意幀。由于參考第一和第二幀來預(yù)測第三幀,第一和第二幀可以稱為參考幀。由于當(dāng)前可以對第三幀編碼,第三幀可以被稱為當(dāng)前幀。參見以下“實施例4”部分。
[0095]關(guān)于時間(即顯示順序),第三針可以位于第一和第二幀之間。在其他示例中,第三幀位于第一和第二幀之前或之后。第一和第二幀可以彼此相鄰。當(dāng)?shù)谌龓挥诘谝缓偷诙g時,第一和第二幀關(guān)于時間可以分開。當(dāng)?shù)谌龓挥诘谝缓偷诙盎蛑髸r,第一和第二幀也可以分開。
[0096]當(dāng)動作402與預(yù)測有關(guān)時,可以在動作402前執(zhí)行動作403。等效地,如上所述當(dāng)動作402與預(yù)測有關(guān)時,可以在動作403后執(zhí)行動作402。
[0097]動作404
[0098]該動作與視圖間預(yù)測有關(guān)。
[0099]編碼器310可以基于針對其他攝像機(jī)(例如位于第二攝像機(jī)位置)的其他攝像機(jī)參數(shù)和/或深度參數(shù),來預(yù)測針對攝像機(jī)(例如位于第一攝像機(jī)位置)的攝像機(jī)參數(shù)和/或深度參數(shù)。其他攝像機(jī)參數(shù)和/或深度參數(shù)可以與所預(yù)測的攝像機(jī)參數(shù)和/或深度參數(shù)有效的相同時間實例有關(guān)。參見“視圖間預(yù)測”部分。
[0100]當(dāng)動作402與預(yù)測有關(guān)時,可以在動作402前執(zhí)行動作404。等效地,如上所述當(dāng)動作402與預(yù)測有關(guān)時,可以在動作404后執(zhí)行動作402。
[0101]動作405
[0102]編碼器310可以基于針對其他幀的其他攝像機(jī)參數(shù)和/或其他深度參數(shù),來預(yù)測針對第四幀的攝像機(jī)參數(shù)和/或深度參數(shù)。第四幀可以與第一視圖有關(guān)。其他幀可以與第二視圖有關(guān)。第四幀和其他幀可以與不同的時間實例或相同時刻的不同視圖有關(guān)。此處,由于在該動作中與第三幀類似地預(yù)測第四幀,第四幀可以是當(dāng)前幀。其他攝像機(jī)參數(shù)可以是針對當(dāng)前幀(如第三或第四幀)之前(按照顯示順序或編碼順序)的幀的編碼的參數(shù)。參見“SEI參考”部分。換言之,第三或第四幀可以是當(dāng)前幀或目前幀,即,攝像機(jī)和/或深度參數(shù)有效的幀。
[0103]當(dāng)動作402與預(yù)測有關(guān)時,可以在動作402前執(zhí)行動作405。等效地,如上所述當(dāng)動作402與預(yù)測有關(guān)時,可以在動作405后執(zhí)行動作402。然而,在一些示例中,模塊化對于編碼器和解碼器可以是已知的。此處,動作的順序可以不同于此處示出的順序。
[0104]在動作403或404中描述的預(yù)測可以與根據(jù)一些實施例的SEI參考的使用組合使用。
[0105]動作406
[0106]編碼器310將每個相應(yīng)模塊編碼為更新消息。作為示例,編碼器選擇更新消息的適當(dāng)格式,如,根據(jù)不同實施例的表1-8所示的SEI消息的格式。
[0107]對每個相應(yīng)模塊進(jìn)行編碼可以不包括對攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項的精度進(jìn)行編碼。還可以對參數(shù)子集(如內(nèi)在參數(shù)、旋轉(zhuǎn)參數(shù)、平移參數(shù)(平移矢量)或z_near / z_far)的更新進(jìn)行編碼。還可以僅發(fā)送這些參數(shù)模塊的一部分,例如,僅平移矢量的χ分量??梢元?dú)立做出對更新每個參數(shù)集的判決。參見“實施例3”部分。
[0108]對每個相應(yīng)模塊進(jìn)行編碼可以不包括對預(yù)測的深度參數(shù)進(jìn)行編碼。當(dāng)預(yù)測的深度參數(shù)不隨時間改變或當(dāng)解碼器320可以從更新消息預(yù)測深度參數(shù)時,這可以是有益的。參見“實施例6”部分。
[0109]對每個相應(yīng)模塊進(jìn)行編碼可以遵循攝像機(jī)參數(shù)和/或深度參數(shù)相關(guān)的幀的編碼順序。參見“對時間縮放性的支持”部分。在其他示例中,對每個相應(yīng)模塊進(jìn)行編碼可以遵循攝像機(jī)參數(shù)和/或深度參數(shù)相關(guān)的幀的顯示順序。
[0110]動作407
[0111]編碼器310向解碼器320發(fā)送更新消息。如在動作406中編碼的,更新消息包括針對攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項的相應(yīng)模塊。
[0112]按照該方式,如上所述,在SEI消息中僅發(fā)送攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項中隨時間改變的參數(shù)。作為結(jié)果,與不采用如動作401和402中的檢測和模塊化的情況相比,需要發(fā)送較少數(shù)目的比特。
[0113]動作408
[0114]在該動作中,解碼器320對編碼器310已在動作406中編碼的更新消息執(zhí)行解碼。因此,解碼器320對更新消息的每個相應(yīng)模塊進(jìn)行解碼,以獲得要更新的攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項。
[0115]對每個相應(yīng)模塊進(jìn)行解碼可以不包括對攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項的精度進(jìn)行解碼。參見“實施例3”部分。
[0116]每個相應(yīng)模塊可以包括相應(yīng)差值參數(shù),所述差值參數(shù)指示預(yù)測的攝像機(jī)參數(shù)和真實的攝像機(jī)參數(shù)和/或預(yù)測的深度參數(shù)和真實的深度參數(shù)之間的差。此處相應(yīng)差值參數(shù)可以被稱為預(yù)測誤差。參見“實施例5”部分。
[0117]對每個相應(yīng)模塊進(jìn)行解碼不包括對預(yù)測的深度參數(shù)進(jìn)行解碼。參見“實施例6”部分。
[0118]對每個相應(yīng)模塊進(jìn)行解碼可以遵循攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項相關(guān)的幀的編碼順序。參見“對時間縮放性的支持”部分。
[0119]動作409
[0120]解碼器320可以在動作408中的解碼后,基于針對第一幀和第二幀的攝像機(jī)參數(shù)和/或深度參數(shù),來提取針對位于第一和第二幀附近的第三幀的攝像機(jī)參數(shù)和/或深度參數(shù)中的所述至少一項。在該動作中,解碼器320提取動作403中編碼器310所預(yù)測攝像機(jī)參數(shù)和/或深度參數(shù)。在動作409-411的上下文中,在使用與編碼器310相同或相應(yīng)的算法的同時,提取可以包括預(yù)測。參見“實施例4 ”部分。
[0121]動作410
[0122]解碼器320可以基于針對其他攝像機(jī)(例如其他攝像機(jī)視圖)的其他攝像機(jī)參數(shù),來提取針對攝像機(jī)(位于例如第一攝像機(jī)位置)的攝像機(jī)參數(shù)。在該動作中,解碼器320提取動作404中編碼器310所預(yù)測的攝像機(jī)參數(shù)和/或深度參數(shù)。參見“視圖間預(yù)測”部分。
[0123]動作411
[0124]解碼器320可以基于針對相同攝像機(jī)的其他幀的其他攝像機(jī)參數(shù)和/或其他深度參數(shù),來提取針對第四幀的攝像機(jī)參數(shù)和/或深度參數(shù)。在該動作中,解碼器320提取動作405中編碼器310所預(yù)測的攝像機(jī)參數(shù)和/或深度參數(shù)。參見“SEI參考”部分。
[0125]此處的實施例可以組合以創(chuàng)建其他實施例。
[0126]在參數(shù)更新中重用參數(shù)表示的一部分(精度和/或指數(shù))
[0127]可以通過僅更新比特流中的部分值,來實現(xiàn)進(jìn)一步減少花費(fèi)在發(fā)信號通知攝像機(jī)參數(shù)上的比特數(shù)目。例如,用于表示值的浮點精度可以對序列(或序列的一部分)恒定。因此,可以針對整個序列(或針對起始于幀內(nèi)(IDR)幀的一組畫面)發(fā)信號通知精度。可以在與IDR畫面相關(guān)的SEI (或其他參數(shù)表示)中發(fā)信號通知這些參數(shù)。接著,針對GOP內(nèi)的參數(shù)值僅發(fā)送尾數(shù)、符號和指數(shù)。甚至更高效的參數(shù)表示將是針對參數(shù)的“預(yù)測誤差”(參數(shù)的真實和預(yù)測值之間的差)發(fā)送尾數(shù)、符號和指數(shù)值(關(guān)于預(yù)測參見“攝像機(jī)參數(shù)和Znear、z far值的預(yù)測”以及“對時間縮放性的支持”部分)。
[0128]節(jié)約比特的另一方式是對多個幀使用相同的指數(shù),并僅更新尾數(shù)部分。然后,發(fā)信號通知參數(shù)的指數(shù)是否更新的比特應(yīng)添加至SEI消息。參數(shù)的模塊化(實施例1-3、5-8)
[0129]如之前說明的,在特定情形下僅一些攝像機(jī)參數(shù)隨時間改變(例如,僅攝像機(jī)參數(shù)中平移矢量的χ分量)。例如,在ID(線性)攝像機(jī)配置中,僅外在攝像機(jī)參數(shù)中平移矢量的χ分量改變。即使攝像機(jī)基線距離隨時間改變,僅平移矢量的χ坐標(biāo)改變。
[0130]因此,將攝像機(jī)參數(shù)(和z_near z_far值)劃分為模塊將是有益的,其中,針對每個模塊發(fā)信號通知是否更新每個模塊的值。每個模塊可以繼而包括其他模塊以及信令比特,所述信令比特指示是否針對當(dāng)前幀更新針對這些模塊的參數(shù)。可以通過發(fā)送參數(shù)的新值或預(yù)測誤差(參數(shù)值及其預(yù)測值之間的差)來更新這些模塊中的參數(shù)的值。應(yīng)在發(fā)射機(jī)和接收機(jī)之間協(xié)商更新參數(shù)值的形式。發(fā)信號通知參數(shù)值的方式可以對于標(biāo)準(zhǔn)(或系統(tǒng))恒定,或者可以通過SEI消息或其他手段針對特定的壓縮視頻序列(或序列的一部分)來發(fā)信號通知所述方式。
[0131]例如,考慮到外在攝像機(jī)參數(shù),攝像機(jī)旋轉(zhuǎn)矩陣可以置于一個模塊中,而攝像機(jī)平移矢量置于另一模塊中。例如在常用于MPEG三維視頻(3DV)編碼的ID攝像機(jī)配置的情況下,這將是有益的。
[0132]攝像機(jī)參數(shù)更新消息
[0133]提出使用不同的SEI消息(具有不同表示)來發(fā)送針對IDR幀的攝像機(jī)參數(shù)并發(fā)送(針對GOP中的預(yù)測幀的)攝像機(jī)參數(shù)的更新。另一方案是使用相同SEI消息的不同結(jié)構(gòu),具有標(biāo)記以表明當(dāng)前SEI (表示)是用于所有參數(shù)還是用于參數(shù)的更新。SEI消息的類型(或其結(jié)構(gòu))也可從SEI消息(或表示)所屬的訪問單元的類型來導(dǎo)出。這意味著上述第一消息可以具有與第二消息不同的結(jié)構(gòu)。
[0134]區(qū)分SEI消息(表示)的類型將允許使用包含參數(shù)更新在內(nèi)的SEI消息(表示)的更模塊化的結(jié)構(gòu)。在針對IDR幀的SEI消息中,如果發(fā)送模塊中的參數(shù),模塊化結(jié)構(gòu)將導(dǎo)致在信令上浪費(fèi)比特,這是由于發(fā)送這樣的模塊中的大部分參數(shù)(或者甚至全部參數(shù))。相反,更新消息將受益于模塊化結(jié)構(gòu),這是由于僅更新一部分參數(shù)。
[0135]攝像機(jī)參數(shù)的視圖間預(yù)測
[0136]還可以根據(jù)與相同(或不同)時刻對應(yīng)的另一攝像機(jī)中的攝像機(jī)參數(shù)來更新攝像機(jī)參數(shù)。接著,應(yīng)參考攝像機(jī)參數(shù)SEI (或攝像機(jī))或者指代攜帶參考消息(以及潛在的參考幀的POC編號或幀編號)的子比特流的另一標(biāo)識符,來發(fā)送更新SEI消息。接著,可以將來自另一攝像機(jī)的參數(shù)的值與攝像機(jī)參數(shù)中從一個攝像機(jī)到另一攝像機(jī)改變的一些參數(shù)的更新一起使用。在所有攝像機(jī)中,內(nèi)在攝像機(jī)參數(shù)也通常是相同的。例如,在ID(線性)攝像機(jī)配置中,僅外在攝像機(jī)參數(shù)中的平移矢量的χ分量改變(與MPEG3DV中類似)。該情形將極大地受益于使用模塊化攝像機(jī)參數(shù)結(jié)構(gòu)。
[0137]可以通過發(fā)送參數(shù)的新值或預(yù)測誤差(參數(shù)的當(dāng)前值及其預(yù)測值之間的差)來更新這些模塊中的參數(shù)的值??梢陨潭ㄡ槍z像機(jī)的預(yù)測順序。如果使用“主視圖”和“從視圖”來對多視圖視頻編碼(如使用H.264 / AVC的附錄H而可能的),在編碼結(jié)構(gòu)中發(fā)送主視圖的參數(shù)而在從視圖中對它們進(jìn)行更新是符合邏輯的。還可以顯式地發(fā)信號通知、導(dǎo)出或固定參數(shù)的預(yù)測結(jié)構(gòu)。
[0138]攝像機(jī)參數(shù)的視圖間預(yù)測可以與攝像機(jī)參數(shù)的時間預(yù)測組合。這樣的組合的示例可以在主視圖中使用時間預(yù)測并在從視圖中使用視圖間預(yù)測。另一示例可以在IDR訪問單元中使用視圖間預(yù)測并在屬于相同攝像機(jī)的GOP “內(nèi)”的畫面間使用時間預(yù)測。這些結(jié)構(gòu)的其他組合也是可能的。
[0139]SEI 參考
[0140]改進(jìn)攝像機(jī)參數(shù)和z_near / z_far值的預(yù)測的另一方式是引入“SEI參考”。此時,(SEI)參數(shù)更新可以基于具有與當(dāng)前SEI的參數(shù)值接近的參數(shù)值的(SEI)消息。為了使得能夠參考另一 SEI,將引入“SEI參考”。取代對SEI消息的參考,可以使用對幀編號(flame_num)的參考。接著,接收機(jī)可以例如使用flame_num(或視圖編號)來指示要用作預(yù)測的參數(shù)位于何處。可以在視圖間預(yù)測和/或時間預(yù)測中使用SEI參考。
[0141]實施例1
[0142]在該實施例中,參數(shù)被劃分為3部分:內(nèi)在參數(shù)、外在參數(shù)和znear / zfar值。每部分可以與其他部分獨(dú)立地包括在SEI消息中,在針對每個幀不是所有參數(shù)都需要更新的情況下,這可以使得所需比特率更低。
[0143]以下的表示出了 multiview_acquisition_info的示例SEI消息或其他表示。以下劃線標(biāo)出了一些特定改變,其他改變可能無下劃線。在本實施例中加入了 z_near_z_far標(biāo)記以及z_near和z_far的信令。
[0144]參見針對實施例1的表I。
[0145]實施例2
[0146]在第二實施例中,使用以下SEI 消息 multiview_acquisition_update_info ()更新攝像機(jī)參數(shù)和z_near / z_far值??梢钥吹?可以使用少量比特來更新更新消息中的參數(shù)。附加地添加了被稱為update_X_0nly_flag的標(biāo)記。這樣做是為了具有與其他分量獨(dú)立地更新平移矢量的χ分量的可能。這覆蓋了線性(ID)攝像機(jī)配置的一般情形,其中,僅平移矢量的分量X改變。在以下表中強(qiáng)調(diào)了與multiview_acquisition_message O不同的字段。這些改變主要包括模塊化組中的參數(shù),以便于僅更新與先前幀相比改變的參數(shù)。參見針對實施例2的表2。
[0147]實施例3
[0148]在第三實施例中,使用以下SEI 消息 multiview_acquisition_update_info O 來更新攝像機(jī)參數(shù)和z_near、z_far值。可以看到:可以使用少量比特來更新更新消息中的參數(shù)。附加地,平移矢量中的參數(shù)被標(biāo)記update_x_only_flag劃分為兩部分。這樣做是為了具有將平移矢量的χ分量與y和z分量分離的可能。由于已針對IDR巾貞在multiview_acquisition_info O消息中發(fā)信號通知了攝像機(jī)參數(shù)和z_near, z_far值的精度,不發(fā)信號通知該精度。
[0149]參見針對實施例3的表3。
[0150]實施例5
[0151]在第五實施例中,由于z_near和z_far是深度圖的特征并且攝像機(jī)參數(shù)是攝像機(jī)位置的特征,深度圖參數(shù)z_near和z_far的信令與攝像機(jī)參數(shù)的信令分開。更新消息被用作對針對其他幀發(fā)送的參數(shù)值的更新。關(guān)于針對視圖間情況發(fā)送攝像機(jī)參數(shù),針對主視圖發(fā)送參數(shù),并且在從視圖中更新參數(shù)。在該情況下,如果針對從視圖的內(nèi)在攝像機(jī)參數(shù)與主視圖中的參數(shù)相同,不需要重發(fā)針對從視圖的內(nèi)在攝像機(jī)參數(shù)。
[0152]在該情況下,針對攝像機(jī)參數(shù)的更新可以被發(fā)送為預(yù)測的參數(shù)值和真實的參數(shù)值之間的差,如在“攝像機(jī)參數(shù)和z near, z far值的預(yù)測”和“對時間縮放性的支持”部分中指示的。
[0153]參見針對實施例5的表5.1-5.4。
[0154]實施例6
[0155]在第六實施例中,由于z_near和z_far是深度圖的特征并且攝像機(jī)參數(shù)是攝像機(jī)位置的特征,參數(shù)z_near和z_far的信令與攝像機(jī)參數(shù)的信令分開。更新消息被用作對針對其他幀發(fā)送的參數(shù)值的更新。關(guān)于針對視圖間情況發(fā)送攝像機(jī)參數(shù),針對主視圖發(fā)送參數(shù),并且在從視圖中更新參數(shù)。在該情況下,如果針對從視圖的內(nèi)在攝像機(jī)參數(shù)與主視圖中的參數(shù)相同,不需要重發(fā)針對從視圖的內(nèi)在攝像機(jī)參數(shù)。
[0156]在該情況下,在不預(yù)測的情況下發(fā)送對參數(shù)(包括z_near和z_far值)的更新。然而,存在僅更新尾數(shù)值的選項。由于與參數(shù)值的符號和指數(shù)相比,尾數(shù)改變更加頻繁,當(dāng)發(fā)信號通知較慢改變的參數(shù)值時這是有用的。
[0157]參見針對實施例6的表6.1-6.5。如表6.5所示,z_near和z_far的備選語法與表6.4相比有所更新。在該情況下,根本不發(fā)信號通知符號和指數(shù),這是由于可以取而代之地發(fā)送包括發(fā)送z_values的整個消息。
[0158]實施例7
[0159]在第七實施例中,使用兩個不同的消息來分別發(fā)信號通知參數(shù)z_near和z_far以及發(fā)信號通知攝像機(jī)參數(shù)。在該示例中不使用更新消息。取而代之地,使用一個消息類型來初始化和更新Z-值,并使用另一個消息類型來初始化和更新攝像機(jī)參數(shù)。如上所述,具有單獨(dú)的用于初始化和更新的消息可以允許節(jié)約例如初始化消息中的比特(例如通過省略指示要更新哪些參數(shù)模塊的標(biāo)記);類似地,可以節(jié)約更新消息中的比特(例如通過從初始化消息導(dǎo)出精度參數(shù))。然而,具有單獨(dú)的用于初始化和更新的消息的可能存在以下缺點:不同消息類型(SEI類型)的值空間可能是有限的;并且針對一種類型的信令消耗兩個類型(SEI類型)可能是非期望的。當(dāng)例如省略精度參數(shù)時,分組丟失情況下的誤差傳播也可能存在問題。因此,在該示例中,針對每個參數(shù)類型使用一種類型的SEI。
[0160]對于view_acquisition_info,定義三個不同模塊:“ intrinsic_param”、“rotation_param”和“translation_param”。對于它們中的每一個,發(fā)送指示相應(yīng)參數(shù)是否更新的標(biāo)記。在設(shè)置“translation_param_flag”的情況下,存在僅更新分量χ的另一選項(標(biāo)記)。
[0161]在不更新參數(shù)模塊的情況下,使用來自參考畫面(例如,就POC或編碼順序(幀編號)而言最接近的先前畫面)的相應(yīng)值。備選地(未示例),可以使用時間參考幀指示符(如POC編號)來指示參考幀。在沒有先前畫面被認(rèn)為可用的IDR畫面的情況下,可以使用根據(jù)另一視圖進(jìn)行預(yù)測。參考視圖可以是也用于多視圖視頻預(yù)測的相同視圖,或者其可以是通過視圖標(biāo)識符(此處未示例)單獨(dú)發(fā)信號通知的。此外,可以使用多個視圖進(jìn)行多視圖預(yù)測。
[0162]參見針對實施例7的表7.1-7.2。[0163]還提出:如果要相對于相應(yīng)參考參數(shù)更新任一參數(shù),僅發(fā)送相應(yīng)的SEI消息之一。例如,對于攝像機(jī)參數(shù)信令,這意味著:如果不發(fā)送view_acquisition_info消息,則隱式地假設(shè) intrinsic_param_fIag=O> rotation_param_fIag=O 且 translation_paran_fIag=Oo因此,在實際的view_acqusition_info消息中將從不出現(xiàn)這三個標(biāo)記被設(shè)置為O的情況,這可以用于進(jìn)一步優(yōu)化。在以下示例中對此進(jìn)行了示意(以下劃線標(biāo)出了一些特定參數(shù),其中,如果其他兩個標(biāo)記為O,不發(fā)送translation_param_flag,這是由于不包括所有三個標(biāo)記被設(shè)置為O的情況)。參見針對實施例7的表7.3。
[0164]實施例8
[0165]在第八實施例中,考慮攝像機(jī)參數(shù)的特定特征,以進(jìn)一步改進(jìn)參數(shù)的壓縮。例如,在攝像機(jī)參數(shù)的1-D(線性)配置中,旋轉(zhuǎn)矩陣等于單位矩陣。因此,可以通過發(fā)信號通知旋轉(zhuǎn)矩陣是單位矩陣而不發(fā)信號通信旋轉(zhuǎn)矩陣元素來實現(xiàn)附加的比特率節(jié)約。表8中提供了這樣的SEI消息的語法。該實施例以及或適用的所有其他實施例可以單獨(dú)使用或可以與其他實施例組合。
[0166]參照針對實施例8的表8,函數(shù)“set_identity_rotation_matrix() ”將旋轉(zhuǎn)矩陣的主對角線上的元素(以浮點格式)設(shè)置為等于1,并將所有其他元素設(shè)置為等于O。
[0167]攝像機(jī)參數(shù)和z near、z far值的預(yù)測
[0168]可以使用差分脈沖編碼調(diào)制(DPCM)由攝像機(jī)參數(shù)的先前值來預(yù)測攝像機(jī)參數(shù)。DPCM意味著:針對先前值之后的下一值,參數(shù)的下一值被發(fā)送為針對當(dāng)前幀的攝像機(jī)參數(shù)的值或z_near和z_far值與按照幀編碼順序先前幀中該參數(shù)的值之間的差。
[0169]令Pi表示幀i處的參數(shù)P的值。此時,幀1-Ι中的參數(shù)P的值將是Pm。對當(dāng)前幀中的參數(shù)P的值的預(yù)測則是Pi’ = Pm。需要發(fā)送參數(shù)值和預(yù)測的參數(shù)值之間的差。因此,向接收機(jī)發(fā)送差值(Ii=P1-P/ =P1-Pi^1O
[0170]攝像機(jī)參數(shù)的另一預(yù)測是根據(jù)兩個先前值的線性預(yù)測。該模型假設(shè)參數(shù)值線性改變。此時,對參數(shù)值的預(yù)測將是先前參數(shù)值加上先前參數(shù)值和先前參數(shù)值之前的參數(shù)值之間的差。接著,對殘差值進(jìn)行編碼。
[0171]以下給出對參數(shù)的線性預(yù)測的示例。令幀i_2中的參數(shù)P的值為P"。對當(dāng)前幀中參數(shù)P的值的預(yù)測則是Pi’ Ph+(Ph-Pp2) =Z-Ph-Pp2。向接收機(jī)發(fā)送真實和預(yù)測值之間的差 Cli=P1-Pi, =p1-2*pi_1+pi_2o
[0172]還可以注意到:雖然使用對原始參數(shù)值的浮點運(yùn)算來表示殘差值,可以精確地發(fā)送該值。由于以選擇的精度來表示MVC格式下的參數(shù)值,可以與針對每個幀獨(dú)立發(fā)送參數(shù)一樣精確地發(fā)送相同的值。因此,不因預(yù)測發(fā)生參數(shù)值漂移。
[0173]幀內(nèi)幀或包含即時解碼刷新(IDR)片的幀應(yīng)在不進(jìn)行預(yù)測的情況下發(fā)送攝像機(jī)參數(shù)和z_near、z_far值,以允許調(diào)諧至比特流,所述IDR片提供對比特流的隨機(jī)訪問能力。在該情況下,如果采用使用兩個先前值的線性預(yù)測,僅當(dāng)起始于最后IDR幀的另個先前參數(shù)值可用時,才應(yīng)用線性預(yù)測。如果IDR幀的參數(shù)值為Ptl且下一幀(按照編碼或顯示順序)的參數(shù)值為P1, IDR幀之后的幀的參數(shù)的值應(yīng)被預(yù)測為與IDR幀相對應(yīng)的參數(shù)的值,即,Pi,=P0。
[0174]對時間縮放性的支持
[0175]參數(shù)值的編碼可以被選擇為遵循幀的顯示順序(例如畫面順序計數(shù)(POC))。然而,當(dāng)使用分級B-幀、分級P-幀或支持時間縮放性的任何其他編碼結(jié)構(gòu)時,如果預(yù)測攝像機(jī)參數(shù)的順序與幀的編碼順序(幀編號(frame_num))相同,可能是有益的。此時,如果幀的解碼順序與顯示順序不同,攝像機(jī)參數(shù)的預(yù)測應(yīng)順序解碼順序(或時間縮放性順序)。
[0176]在該情況下預(yù)測參數(shù)的一種方式將是重復(fù)最后編碼的參數(shù)值(即,預(yù)測將使用相同或低分級等級中最接近POC中的參數(shù)的值)。
[0177]對參數(shù)值進(jìn)行編碼的通常更高效的另一方式是將位于相同或較低等級的預(yù)測分層中的(在顯示順序上)最接近幀中的參數(shù)的值用作預(yù)測。該方法在比特率方面更加高效,這是由于其意味著從相鄰幀預(yù)測參數(shù),而按視頻預(yù)測順序的預(yù)測可能導(dǎo)致更大的參數(shù)差值以及因此較大的預(yù)測誤差(差值)(由于預(yù)測不那么高效,較大的參數(shù)差值可能需要更多的比特來對預(yù)測差值進(jìn)行編碼)。
[0178]圖5a_5d中示出了上述預(yù)測順序。按照顯示順序預(yù)測攝像機(jī)參數(shù)提高了比特率效率,但在支持時間縮放性方面潛在地不那么靈活。按照解碼順序預(yù)測攝像機(jī)參數(shù)支持時間縮放性,但可以導(dǎo)致較高的比特率。注意,在圖中,“解碼順序”方法和“解碼順序(備選)”方法之間的區(qū)別在于:第一方法使用嚴(yán)格的解碼順序來進(jìn)行參數(shù)預(yù)測,而第二方法使用在考慮解碼順序時可用的最接近的解碼可用畫面。
[0179]圖5a示出了分級B預(yù)測結(jié)構(gòu)的示例。
[0180]圖5b示出了遵循顯示順序的參數(shù)預(yù)測的示例。
[0181]圖5c示出了遵循編碼/解碼順序的參數(shù)預(yù)測的示例,其中,使用(按照編碼順序的)先前幀的參數(shù)值。
[0182]圖5d示出了遵循編碼/解碼順序的預(yù)測的備選示例,其中,使用按照顯示順序與當(dāng)前幀最接近(且之前)的幀的參數(shù)值。
[0183]到目前為止,提出了兩種方法,以視頻解碼順序預(yù)測參數(shù)或以視頻顯示順序預(yù)測參數(shù)。在兩種方法中,假設(shè)預(yù)測順序是預(yù)定的(為視頻解碼順序或視頻顯示順序或其變型),并且隨每幀在消息(例如SEI)中發(fā)送相應(yīng)的預(yù)測差。預(yù)定預(yù)測順序的方法的備選是具有動態(tài)預(yù)測順序,這意味著使用(SEI)消息發(fā)送哪些參數(shù)被用于預(yù)測的指示。例如,SEI消息可以攜帶字段“referenCe_p0C”,其指示攜帶所參考的參數(shù)的畫面的畫面順序計數(shù)。備選地,其還可以包含“referenCe_p0C_delta”,即,所參考的參數(shù)的POC和當(dāng)前POC的差。另一備選將是使用flame_num作為對巾貞的參考。在該情況下,“reference_flame_num”或“ reference_f I ame_num_de I ta ”可以被發(fā)送為預(yù)測參考的指示符。
[0184]對參數(shù)值的線性預(yù)測使用在預(yù)測分級中保持在相同等級的幀中的參數(shù)的值之間的線性內(nèi)插。例如,可以不進(jìn)行預(yù)測僅直接發(fā)送1-和P-幀(或作為最重要的等級的最低分級等級中的B-幀)中的參數(shù),或者可以從最低時間層中的先前參數(shù)值來預(yù)測參數(shù)。接著,可以通過參數(shù)值之間的線性內(nèi)插,來找到顯示順序位于預(yù)測幀之間的幀的預(yù)測值。還可以使用先前時間層,在預(yù)測分級的較高時間層上應(yīng)用線性內(nèi)插。在該情況下,可以使用較低時間層中兩個最近幀的參數(shù)值之間的線性內(nèi)插,以獲得對另一時間等級的預(yù)測。線性內(nèi)插可以被實現(xiàn)為兩個先前(按編碼順序)幀中的參數(shù)值的加權(quán)平均,權(quán)重與用于參數(shù)預(yù)測的幀和當(dāng)前(預(yù)測的)幀之間的距離(按顯示順序)成比例。
[0185]實施例4-分級B-預(yù)測情況下Z-值的線性預(yù)測
[0186]在第四實施例中,描述分級B-幀情況下參數(shù)值的線性預(yù)測的示例。[0187]圖6示出了具有三個B-幀的分級預(yù)測結(jié)構(gòu)。使用具有三個時間縮放層的分級B-預(yù)測結(jié)構(gòu)。IrB2I4表示可以參考的三個幀,匕和匕表示兩個非參考幀(未被任意其他幀用作參考的幀)。
[0188]在multiview_acquisition_info O消息中發(fā)送被表示為P(Iq)的中貞Itl的參數(shù)P。接著,預(yù)測值P’ (P4)被獲得為P’ (P4)=P(10)。幀B2的參數(shù)P的預(yù)測值被獲得為P’ (B2) =0.5*p (10) +0.5*p’ (P4)。參數(shù)Id1和b3的預(yù)測值被獲得為P,(Id1)=0.75*p(10)+0.25*p,(P4)和 p,(b3)=0.25*p(10)+0.75*p,(P4)。獲得參數(shù)的預(yù)測值的可替換方式是 P’(Id1)=0.5*p (I。)+0.5*p’ (B2)和 p’ (b3) =0.5*p (B2)+0.5*p’ (P4)。
[0189]通過使用在multiview_acquisition_info O消息的相應(yīng)prec_p字段中指定的精度進(jìn)行計算,獲得參數(shù)P的預(yù)測值。
[0190]參數(shù)P的殘差值在根據(jù)上述實施例之一的multiview_acquisition_update_info O消息中發(fā)送,并且在接收機(jī)中被添加至預(yù)測值P’以獲得參數(shù)P值。
[0191]圖7示出了當(dāng)從編碼器310觀察時圖4的示例方法的示意流程圖。因此,編碼器310執(zhí)行用于提供與攝像機(jī)參數(shù)和深度參數(shù)中的至少一項有關(guān)的更新消息的方法。如上所述,攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項使解碼器320能夠基于針對第二攝像機(jī)位置的第二視圖以及攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項,來合成針對第一攝像機(jī)位置的第一視圖,其中,攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項與第二視圖有關(guān)。
[0192]如上所述,攝像機(jī)參數(shù)可以包括內(nèi)在參數(shù)、外在參數(shù),和/或其中深度參數(shù)可以包括znear和/或zfar值。
[0193]攝像機(jī)參數(shù)可以包括旋轉(zhuǎn)矩陣,其中,更新消息包括用于指示旋轉(zhuǎn)矩陣是單位矩陣的指示。
[0194]可以按任意適當(dāng)?shù)捻樞驁?zhí)行以下動作。
[0195]動作701
[0196]編碼器310檢測攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項中的哪些隨時間改變。該動作與動作401相似。
[0197]動作702
[0198]編碼器310將檢測到的攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項模塊化402為相應(yīng)模塊。該動作與動作402相似。
[0199]在一些實施例中,相應(yīng)模塊與內(nèi)在參數(shù)、外在參數(shù)或深度參數(shù)有關(guān)。相應(yīng)模塊可以與平移參數(shù)(平移矢量)的X分量有關(guān)。每個相應(yīng)模塊可以包括相應(yīng)差值參數(shù),所述差值參數(shù)指示預(yù)測的攝像機(jī)參數(shù)和真實的攝像機(jī)參數(shù)和/或預(yù)測的深度參數(shù)和真實的深度參數(shù)之間的差。
[0200]在一些實施例中,一些參數(shù)的模塊化可以是固定(預(yù)定)的和對于編碼器和解碼器已知的。此時,編碼器應(yīng)僅向解碼器發(fā)信號通知在當(dāng)前消息中發(fā)送哪些模塊以及不發(fā)送哪些模塊。
[0201]動作703
[0202]可以在動作702前執(zhí)行該動作。編碼器310基于針對第一和第二幀的攝像機(jī)參數(shù)和/或深度參數(shù),線性預(yù)測針對位于第一和第二幀附近的第三幀的攝像機(jī)參數(shù)和/或深度參數(shù)。該動作與動作403相似。[0203]動作704
[0204]編碼器310基于針對其他攝像機(jī)的其他攝像機(jī)參數(shù)和/或其他深度參數(shù),來預(yù)測針對攝像機(jī)的攝像機(jī)參數(shù)和/或深度參數(shù)。該動作與動作404相似。
[0205]動作705
[0206]編碼器310基于針對其他幀的其他攝像機(jī)參數(shù)和/或其他深度參數(shù),來預(yù)測針對第四巾貞的攝像機(jī)參數(shù)和/或深度參數(shù)。該動作與動作405相似。
[0207]動作706
[0208]編碼器310將每個相應(yīng)模塊編碼為更新消息。對每個相應(yīng)模塊進(jìn)行編碼可以不包括對攝像機(jī)參數(shù)和/或深度參數(shù)(相應(yīng)差值參數(shù),指示預(yù)測的攝像機(jī)參數(shù)和真實的攝像機(jī)參數(shù)和/或預(yù)測的深度參數(shù)和真實的深度參數(shù)之間的差)的精度進(jìn)行編碼。對每個相應(yīng)模塊進(jìn)行編碼可以不包括對深度參數(shù)(或預(yù)測的深度參數(shù)和真實的深度參數(shù)之間的差)進(jìn)行編碼。對每個相應(yīng)模塊進(jìn)行編碼可以遵循攝像機(jī)參數(shù)和/或深度參數(shù)相關(guān)的幀的編碼順序或顯示順序。
[0209]更新消息可以包括第一消息和第二消息,其中,第一消息包括攝像機(jī)參數(shù),第二消息包括深度參數(shù)。
[0210]該動作與動作406相似。
[0211]動作707
[0212]編碼器310向解碼器320發(fā)送更新消息。該動作與動作407相似。
[0213]圖8示出了被配置為執(zhí)行圖4和/或6的方法的示例編碼器310。因此,編碼器310被配置為提供與攝像機(jī)參數(shù)和/或深度參數(shù)有關(guān)的更新消息。如上所述,攝像機(jī)參數(shù)和/或深度參數(shù)使解碼器320能夠基于針對第二攝像機(jī)位置的第二視圖以及攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項來合成針對第一攝像機(jī)位置的第一視圖。攝像機(jī)參數(shù)和/或深度參數(shù)與第二視圖有關(guān)。
[0214]如上所述,攝像機(jī)參數(shù)可以包括內(nèi)在參數(shù)、外在參數(shù),和/或其中深度參數(shù)可以包括znear和/或zfar值。相應(yīng)模塊可以與內(nèi)在參數(shù)、外在參數(shù)或深度參數(shù)有關(guān)。相應(yīng)模塊可以與平移參數(shù)的χ分量有關(guān)。如上所述,每個相應(yīng)模塊可以包括相應(yīng)差值參數(shù),所述差值參數(shù)指示預(yù)測的攝像機(jī)參數(shù)和真實的攝像機(jī)參數(shù)和/或預(yù)測的深度參數(shù)和真實的深度參數(shù)之間的差。
[0215]更新消息可以包括第一消息和第二消息,其中,第一消息包括攝像機(jī)參數(shù),第二消息包括深度參數(shù)。
[0216]攝像機(jī)參數(shù)可以包括旋轉(zhuǎn)矩陣,其中,更新消息可以包括用于指示所述旋轉(zhuǎn)矩陣是單位矩陣的指示。
[0217]在一些實施例中,第一設(shè)備800可以包括編碼器310。
[0218]如上所述,編碼器310包括處理電路311 (如處理器),處理電路311被配置為:
[0219]將攝像機(jī)參數(shù)和深度參數(shù)中的至少一項模塊化為相應(yīng)模塊;
[0220]將每個相應(yīng)模塊編碼為更新消息;以及
[0221]向解碼器320發(fā)送更新消息。
[0222]處理電路311還可以被配置為:在對每個相應(yīng)模塊進(jìn)行編碼時,不包括對攝像機(jī)參數(shù)和/或深度參數(shù)的精度進(jìn)行編碼。[0223]處理電路311還可以被配置為:
[0224]在模塊化之前,基于針對第一幀和第二幀的攝像機(jī)參數(shù)和/或深度參數(shù),線性預(yù)測針對位于第一和第二幀附近的第三幀的攝像機(jī)參數(shù)和/或深度參數(shù)。
[0225]處理電路311還可以被配置為:在對每個相應(yīng)模塊進(jìn)行編碼時,不包括對預(yù)測的深度參數(shù)進(jìn)行編碼。
[0226]處理電路311可以被配置為:當(dāng)對每個相應(yīng)模塊進(jìn)行編碼時,遵循攝像機(jī)參數(shù)和/或深度參數(shù)相關(guān)的幀的編碼順序。備選地,處理電路311可以被配置為:當(dāng)對每個相應(yīng)模塊進(jìn)行編碼時,遵循攝像機(jī)參數(shù)和/或深度參數(shù)相關(guān)的幀的顯示順序。
[0227]處理電路311可以被配置為:基于針對其他攝像機(jī)的其他攝像機(jī)參數(shù),來預(yù)測針對攝像機(jī)的攝像機(jī)參數(shù)。
[0228]處理電路311可以被配置為:基于針對其他幀的其他攝像機(jī)參數(shù)和/或其他深度參數(shù),來預(yù)測針對第四幀的攝像機(jī)參數(shù)和/或深度參數(shù)。
[0229]編碼器310還包括:存儲器312,用于存儲要由例如處理電路311執(zhí)行的軟件。軟件可以包括指令,所述指令使處理電路能夠執(zhí)行以上結(jié)合圖4和/或6描述的編碼器310中的方法。
[0230]圖9示出了當(dāng)從解碼器320觀察時圖4的示例方法。因此,解碼器320執(zhí)行用于對與攝像機(jī)參數(shù)和/或深度參數(shù)有關(guān)的更新消息進(jìn)行解碼的方法。如上所述,攝像機(jī)參數(shù)和/或深度參數(shù)使解碼器320能夠基于針對第二攝像機(jī)位置的第二視圖以及攝像機(jī)參數(shù)和深度參數(shù)中的一個或更多個來合成針對第一攝像機(jī)位置的第一視圖。攝像機(jī)參數(shù)和/或深度參數(shù)與第二視圖有關(guān)。
[0231]如上所述,攝像機(jī)參數(shù)可以包括內(nèi)在參數(shù)、外在參數(shù)和/或平移參數(shù),和/或其中深度參數(shù)可以包括znear和/或zfar值。攝像機(jī)參數(shù)可以包括選擇矩陣,其中,更新消息可以包括用于指示所述旋轉(zhuǎn)矩陣是單位矩陣的指示。
[0232]可以按任意適當(dāng)?shù)捻樞驁?zhí)行以下動作。
[0233]動作901
[0234]解碼器320從編碼器310接收更新消息,其中,更新消息包括針對攝像機(jī)參數(shù)和深度參數(shù)中的至少一項的相應(yīng)模塊。該動作與動作407相似。
[0235]如上所述,更新消息可以包括第一消息和第二消息,其中,第一消息可以包括攝像機(jī)參數(shù),第二消息可以包括深度參數(shù)。
[0236]相應(yīng)模塊可以與內(nèi)在參數(shù)、外在參數(shù)或深度參數(shù)有關(guān)。相應(yīng)模塊可以與平移參數(shù)(平移矢量)的X分量有關(guān)。每個相應(yīng)模塊可以包括相應(yīng)差值參數(shù),所述差值參數(shù)指示預(yù)測的攝像機(jī)參數(shù)和真實的攝像機(jī)參數(shù)和/或預(yù)測的深度參數(shù)和真實的深度參數(shù)之間的差。
[0237]動作902
[0238]解碼器320對更新消息的每個相應(yīng)模塊進(jìn)行解碼,以獲得要更新的攝像機(jī)參數(shù)和/或深度參數(shù)。該動作與動作408相似。
[0239]對每個相應(yīng)模塊進(jìn)行解碼可以不包括對攝像機(jī)參數(shù)和/或深度參數(shù)的精度進(jìn)行解碼。對每個相應(yīng)模塊進(jìn)行解碼可以不包括對預(yù)測的深度參數(shù)進(jìn)行解碼。對每個相應(yīng)模塊進(jìn)行解碼可以遵循攝像機(jī)參數(shù)和/或深度參數(shù)相關(guān)的幀的編碼順序或顯示順序。
[0240]動作903[0241]優(yōu)選地,在動作902后執(zhí)行該動作。解碼器320可以基于針對第一和第二幀的攝像機(jī)參數(shù)和/或深度參數(shù),提取位于第一和第二幀附近的第三幀的攝像機(jī)參數(shù)和/或深度參數(shù)。該動作與動作409相似。
[0242]動作904
[0243]解碼器320可以基于針對其他攝像機(jī)的其他攝像機(jī)參數(shù)和/或其他深度參數(shù),來提取針對攝像機(jī)的攝像機(jī)參數(shù)和/或深度參數(shù)。該動作與動作410相似。
[0244]動作905
[0245]解碼器320可以基于針對相同攝像機(jī)的其他幀的其他攝像機(jī)參數(shù)和/或其他深度參數(shù),來提取針對第四巾貞的攝像機(jī)參數(shù)和/或深度參數(shù)。該動作與動作411相似。
[0246]圖10示出了被配置為執(zhí)行圖4和/或8的方法的示例解碼器320。因此,解碼器320被配置為對與攝像機(jī)參數(shù)和/或深度參數(shù)有關(guān)的更新消息進(jìn)行解碼。如上所述,攝像機(jī)參數(shù)和/或深度參數(shù)使解碼器320能夠基于針對第二攝像機(jī)位置的第二視圖以及攝像機(jī)參數(shù)和深度參數(shù)中的一個或更多個來合成針對第一攝像機(jī)位置的第一視圖。攝像機(jī)參數(shù)和/或深度參數(shù)與第二視圖有關(guān)。
[0247]在一些實施例中,第二設(shè)備1000包括解碼器320。
[0248]攝像機(jī)參數(shù)可以包括內(nèi)在參數(shù)、外在參數(shù),和/或其中深度參數(shù)可以包括znear和/或zfar值。攝像機(jī)參數(shù)可以包括旋轉(zhuǎn)矩陣,其中,更新消息可以包括用于指示所述旋轉(zhuǎn)矩陣是單位矩陣的指示。
[0249]更新消息可以包括第一消息和第二消息,其中,第一消息可以包括攝像機(jī)參數(shù),第二消息可以包括深度參數(shù)。
[0250]解碼器320包括處理電路321 (如處理器),處理電路321被配置為:
[0251]從編碼器310接收更新消息,其中,所述更新消息包括針對攝像機(jī)參數(shù)和深度參數(shù)中的至少一項的相應(yīng)模塊;以及
[0252]對更新消息的每個相應(yīng)模塊進(jìn)行解碼,以獲得攝像機(jī)參數(shù)和/或深度參數(shù)。
[0253]如上所述,每個相應(yīng)模塊包括相應(yīng)差值參數(shù),所述差值參數(shù)指示預(yù)測的攝像機(jī)參數(shù)和真實的攝像機(jī)參數(shù)和/或預(yù)測的深度參數(shù)和真實的深度參數(shù)之間的差。相應(yīng)模塊可以與內(nèi)在參數(shù)、外在參數(shù)或深度參數(shù)有關(guān)。相應(yīng)模塊可以與平移參數(shù)的X分量有關(guān)。
[0254]處理電路321可以被配置為:在對每個相應(yīng)模塊進(jìn)行解碼時,不包括對攝像機(jī)參數(shù)和/或深度參數(shù)的精度進(jìn)行解碼。
[0255]處理電路321還可以被配置為:在解碼后,基于針對第一幀和第二幀的攝像機(jī)參數(shù)和/或深度參數(shù),提取針對位于第一和第二幀附近的第三幀的攝像機(jī)參數(shù)和/或深度參數(shù)。
[0256]處理電路321可以被配置為:在對每個相應(yīng)模塊進(jìn)行解碼時,不包括對預(yù)測的深度參數(shù)進(jìn)行解碼。
[0257]處理電路321還可以被配置為:當(dāng)對每個相應(yīng)模塊進(jìn)行解碼時,遵循攝像機(jī)參數(shù)和/或深度參數(shù)相關(guān)的幀的編碼順序。
[0258]處理電路321還可以被配置為提取針對攝像機(jī)的攝像機(jī)參數(shù),其中,所述提取基于針對其他攝像機(jī)的其他攝像機(jī)參數(shù)。
[0259]處理電路321還可以被配置為:基于針對其他幀的其他攝像機(jī)參數(shù)和/或其他深度參數(shù),來提取針對第四幀的攝像機(jī)參數(shù)和/或深度參數(shù)。
[0260]解碼器320還包括存儲器322,用于存儲要由例如處理電路執(zhí)行的軟件。軟件可以包括指令,所述指令使處理電路能夠執(zhí)行以上結(jié)合圖4和/或8描述的解碼器320中的方法。
[0261]如此處使用的,術(shù)語“處理電路”可以指處理單元、處理器、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)等。作為示例,處理器、ASIC、FPGA等可以包括一個或更多個處
理器核。
[0262]如此處使用的,術(shù)語“存儲器”可以指硬盤、磁存儲介質(zhì)、便攜式計算機(jī)盤、閃存、隨機(jī)存取存儲器(RAM)等。此外,存儲器可以是處理器的內(nèi)部寄存存儲器。
[0263]在一些實施例中,編碼器310或解碼器320可以被配置用于通過有線或無線接口的通信。此外,此處的實施例可以包括經(jīng)由多功能介質(zhì)(如DVD或藍(lán)光盤)的通信。根據(jù)一些這樣的實施例,編碼器310可以包括或者可能連接至媒體播放器,如,DVD /藍(lán)光播放器。
[0264]即使描述了各種方面的實施例,對于本領(lǐng)域技術(shù)人員而言,其許多不同的改變、修改等將變得顯而易見。因此,所描述的實施例并非意在限制本公開的范圍。
[0265]表
[0266]表0.1:多視圖獲取信息SEI消息語法
[0267]
【權(quán)利要求】
1.一種編碼器(310)中的方法,用于提供與攝像機(jī)參數(shù)和深度參數(shù)中的至少一項有關(guān)的更新消息,其中,攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項使解碼器(320)能夠基于針對第二攝像機(jī)位置的第二視圖以及攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項來合成針對第一攝像機(jī)位置的第一視圖,其中,攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項與第二視圖有關(guān),其中,所述方法包括: 檢測(401)攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項中的哪些隨時間改變, 將檢測到的攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項模塊化為(402)相應(yīng)模塊; 將每個相應(yīng)模塊編碼為(406)更新消息;以及 向解碼器(320)發(fā)送(407)更新消息。
2.根據(jù)權(quán)利要求1所述的方法,其中,所述攝像機(jī)參數(shù)包括內(nèi)在參數(shù)、外在參數(shù);和/或其中所述深度參數(shù)包括z_near和/或z_far值。
3.根據(jù)權(quán)利要求1或2所述的方法,其中,所述相應(yīng)模塊與內(nèi)在參數(shù)、外在參數(shù)或深度參數(shù)有關(guān)。
4.根據(jù)權(quán)利要求1-3中任一項所述的方法,其中,所述相應(yīng)模塊與平移參數(shù)的χ分量有關(guān)。
5.根據(jù)權(quán)利要求1-4中任一項所述的方法,其中,對每個相應(yīng)模塊進(jìn)行編碼不包括對攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項的精度進(jìn)行編碼。
6.根據(jù)權(quán)利要求1-5中任一項所述的方法,其中,所述方法還包括,在模塊化(402)之N /.1IJ:` 基于針對第一幀和第二幀的攝像機(jī)參數(shù)和/或深度參數(shù),線性預(yù)測(403)針對位于第一和第二幀附近的第三幀的攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項。
7.根據(jù)權(quán)利要求6所述的方法,其中,每個相應(yīng)模塊包括相應(yīng)差值參數(shù),所述差值參數(shù)指示預(yù)測的攝像機(jī)參數(shù)和真實的攝像機(jī)參數(shù)和/或預(yù)測的深度參數(shù)和真實的深度參數(shù)之間的差。
8.根據(jù)權(quán)利要求7所述的方法,其中,對每個相應(yīng)模塊進(jìn)行編碼不包括對預(yù)測的深度參數(shù)進(jìn)行編碼。
9.根據(jù)權(quán)利要求1或2所述的方法,其中,所述更新消息包括第一消息和第二消息,所述第一消息包括攝像機(jī)參數(shù),所述第二消息包括深度參數(shù)。
10.根據(jù)權(quán)利要求1-9中任一項所述的方法,其中,所述攝像機(jī)參數(shù)包括旋轉(zhuǎn)矩陣,所述更新消息包括用于指示所述旋轉(zhuǎn)矩陣是單位矩陣的指不。
11.根據(jù)權(quán)利要求1-10中任一項所述的方法,其中,對每個相應(yīng)模塊進(jìn)行編碼遵循攝像機(jī)參數(shù)和/或深度參數(shù)相關(guān)的幀的編碼順序。
12.根據(jù)權(quán)利要求1-11中任一項所述的方法,其中,所述方法還包括: 基于針對其他攝像機(jī)的其他攝像機(jī)參數(shù)和/或其他深度參數(shù),來預(yù)測(404)針對攝像機(jī)的攝像機(jī)參數(shù)和/或深度參數(shù)。
13.根據(jù)權(quán)利要求1-12中任一項所述的方法,其中,所述方法還包括: 基于針對其他幀的其他攝像機(jī)參數(shù)和/或其他深度參數(shù),來預(yù)測(405)針對第四幀的攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項。
14.一種解碼器(320)中的方法,用于對與攝像機(jī)參數(shù)和深度參數(shù)中的至少一項有關(guān)的更新消息進(jìn)行解碼,其中,攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項使解碼器能夠基于針對第二攝像機(jī)位置的第二視圖以及攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項來合成針對第一攝像機(jī)位置的第一視圖,其中,攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項與第二視圖有關(guān),其中,所述方法包括: 從編碼器(310)接收(407)更新消息,其中,所述更新消息包括針對攝像機(jī)參數(shù)和深度參數(shù)中的至少一項的相應(yīng)模塊;以及 對更新消息的每個相應(yīng)模塊進(jìn)行解碼(408),以獲得要更新的攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項。
15.根據(jù)權(quán)利要求14所述的方法,其中,所述攝像機(jī)參數(shù)包括內(nèi)在參數(shù)、外在參數(shù)和/或平移參數(shù),和/或其中所述深度參數(shù)包括z_near和/或z_far值。
16.根據(jù)權(quán)利要求14或15所述的方法,其中,所述相應(yīng)模塊與內(nèi)在參數(shù)、外在參數(shù)或深度參數(shù)有關(guān)。
17.根據(jù)權(quán)利要求14-16中任一項所述的方法,其中,所述相應(yīng)模塊與平移矢量的χ分量有關(guān)。
18.根據(jù)權(quán)利要求14-17中任一項所述的方法,其中,對每個相應(yīng)模塊進(jìn)行解碼不包括對攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項的精度進(jìn)行解碼。
19.根據(jù)權(quán)利要求14-18中任一項所述的方法,其中,所述方法還包括,在解碼(408)之后: 基于針對第一幀和第二幀的攝像機(jī)參數(shù)和/或深度參數(shù),提取(409)針對位于第一和第二幀附近的第三幀的攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項。
20.根據(jù)權(quán)利要求19所述的方法,其中,每個相應(yīng)模塊包括相應(yīng)差值參數(shù),所述差值參數(shù)指示預(yù)測的攝像機(jī)參數(shù)和真實的攝像機(jī)參數(shù)和/或預(yù)測的深度參數(shù)和真實的深度參數(shù)之間的差。
21.根據(jù)權(quán)利要求20所述的方法,其中,對每個相應(yīng)模塊進(jìn)行解碼不包括對預(yù)測的深度參數(shù)進(jìn)行解碼。
22.根據(jù)權(quán)利要求14或15所述的方法,其中,所述更新消息包括第一消息和第二消息,所述第一消息包括攝像機(jī)參數(shù),所述第二消息包括深度參數(shù)。
23.根據(jù)權(quán)利要求14-22中任一項所述的方法,其中,所述攝像機(jī)參數(shù)包括旋轉(zhuǎn)矩陣,所述更新消息包括用于指示所述旋轉(zhuǎn)矩陣是單位矩陣的指示。
24.根據(jù)權(quán)利要求14-23中任一項所述的方法,其中,對每個相應(yīng)模塊進(jìn)行解碼遵循攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項相關(guān)的幀的編碼順序。
25.根據(jù)權(quán)利要求14-24中任一項所述的方法,其中,所述方法還包括: 基于針對其他攝像機(jī)的其他攝像機(jī)參數(shù)和/或其他深度參數(shù),來提取(410)針對攝像機(jī)的攝像機(jī)參數(shù)和/或深度參數(shù)。
26.根據(jù)權(quán)利要求14-25中任一項所述的方法,其中,所述方法還包括: 基于針對相同攝像機(jī)其他幀的其他攝像機(jī)參數(shù)和/或其他深度參數(shù),來提取(411)針對第四幀的攝像機(jī)參數(shù)和/或深度參數(shù)。
27.—種編碼器(310),被配置為提供與攝像機(jī)參數(shù)和深度參數(shù)中的至少一項有關(guān)的更新消息,其中,攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項使解碼器(320)能夠基于針對第二攝像機(jī)位置的第二視圖以及攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項來合成針對第一攝像機(jī)位置的第一視圖,其中,攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項與第二視圖有關(guān),其中,所述編碼器(310)包括處理電路(311),所述處理電路(311)被配置為: 檢測攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項中的哪些隨時間改變, 將攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項模塊化為相應(yīng)模塊; 將每個相應(yīng)模塊編碼為更新消息;以及 向解碼器(320)發(fā)送更新消息。
28.根據(jù)權(quán)利要求27所述的編碼器(310),其中,所述攝像機(jī)參數(shù)包括內(nèi)在參數(shù)、外在參數(shù),和/或其中所述深度參數(shù)包括z_near和/或z_far值。
29.根據(jù)權(quán)利要求27或28所述的編碼器(310),其中,所述相應(yīng)模塊與內(nèi)在參數(shù)、外在參數(shù)或深度參數(shù)有關(guān)。
30.根據(jù)權(quán)利要求27-29中任一項所述的編碼器(310),其中,所述相應(yīng)模塊與平移參數(shù)的χ分量有關(guān)。
31.根據(jù)權(quán)利要求27-30中任一項所述的編碼器(310),其中,所述處理電路(311)被配置為:在對每個相應(yīng)模塊進(jìn)行編碼時,不包括對攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項的精度進(jìn)行編碼。
32.根據(jù)權(quán)利要求27-31中任一項所述的編碼器(310),其中,所述處理電路(311)還被配置為:` 在模塊化之前,基于針對第一幀和第二幀的攝像機(jī)參數(shù)和/或深度參數(shù),線性預(yù)測針對位于第一和第二幀附近的第三幀的攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項。
33.根據(jù)權(quán)利要求32所述的編碼器(310),其中,每個相應(yīng)模塊包括相應(yīng)差值參數(shù),所述差值參數(shù)指示預(yù)測的攝像機(jī)參數(shù)和真實的攝像機(jī)參數(shù)和/或預(yù)測的深度參數(shù)和真實的深度參數(shù)之間的差。
34.根據(jù)權(quán)利要求33所述的編碼器(310),其中,所述處理電路(311)還被配置為:在對每個相應(yīng)模塊進(jìn)行解碼時,不包括對預(yù)測的深度參數(shù)進(jìn)行編碼。
35.根據(jù)權(quán)利要求27或28所述的編碼器(310),其中,所述更新消息包括第一消息和第二消息,所述第一消息包括攝像機(jī)參數(shù),所述第二消息包括深度參數(shù)。
36.根據(jù)權(quán)利要求27-35中任一項所述的編碼器(310),其中,所述攝像機(jī)參數(shù)包括旋轉(zhuǎn)矩陣,所述更新消息包括用于指示所述旋轉(zhuǎn)矩陣是單位矩陣的指示。
37.根據(jù)權(quán)利要求27-36中任一項所述的編碼器(310),其中,所述處理電路(311)還被配置為:當(dāng)對每個相應(yīng)模塊進(jìn)行編碼時,遵循攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項相關(guān)的幀的編碼順序。
38.根據(jù)權(quán)利要求27-37中任一項所述的編碼器(310),其中,所述處理電路(311)還被配置為:基于針對其他攝像機(jī)的其他攝像機(jī)參數(shù)和/或其他深度參數(shù),來預(yù)測針對攝像機(jī)的攝像機(jī)參數(shù)和/或深度參數(shù)。
39.根據(jù)權(quán)利要求27-38中任一項所述的編碼器(310),其中,所述處理電路(311)還被配置為:基于針對其他幀的其他攝像機(jī)參數(shù)和/或其他深度參數(shù),來預(yù)測針對第四幀的攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項。
40.一種第一設(shè)備(800),包括根據(jù)權(quán)利要求27-39中任一項所述的編碼器(310)。
41.一種解碼器(320),被配置為對與攝像機(jī)參數(shù)和深度參數(shù)中的至少一項有關(guān)的更新消息進(jìn)行解碼,其中,攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項使解碼器(320)能夠基于針對第二攝像機(jī)位置的第二視圖以及攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項來合成針對第一攝像機(jī)位置的第一視圖,其中,攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項與第二視圖有關(guān),其中,所述解碼器(320)包括處理電路(321),所述處理電路(321)被配置為: 從編碼器(310)接收更新消息,其中,所述更新消息包括針對攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項的相應(yīng)模塊;以及 對更新消息的每個相應(yīng)模塊進(jìn)行解碼,以獲得攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項。
42.根據(jù)權(quán)利要求41所述的解碼器(320),其中,所述攝像機(jī)參數(shù)包括內(nèi)在參數(shù)、外在參數(shù)和/或平移參數(shù),和/或其中所述深度參數(shù)包括z_near和/或z_far值。
43.根據(jù)權(quán)利要求41或42所述的解碼器(320),其中,所述相應(yīng)模塊與內(nèi)在參數(shù)、外在參數(shù)或深度參數(shù)有關(guān)。
44.根據(jù)權(quán)利要求41-43中任一項所述的解碼器(320),其中,所述相應(yīng)模塊與平移參數(shù)的χ分量有關(guān)。
45.根據(jù)權(quán)利要求41-44中任一項所述的解碼器(320),其中,所述處理電路(321)被配置為:在對每個相應(yīng)模塊進(jìn)行解碼時,不包括對攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項的精度進(jìn)行解碼。
46.根據(jù)權(quán)利要求41-45中任一項所述的解碼器(320),其中,所述處理電路(321)被配置為:在解碼后,基于針對第一幀和第二幀的攝像機(jī)參數(shù)和/或深度參數(shù),提取針對位于第一和第二幀附近的第三幀的攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項。
47.根據(jù)權(quán)利要求46所述的解碼器(320),其中,每個相應(yīng)模塊包括相應(yīng)差值參數(shù),所述差值參數(shù)指示預(yù)測的攝像機(jī)參數(shù)和真實`的攝像機(jī)參數(shù)和/或預(yù)測的深度參數(shù)和真實的深度參數(shù)之間的差。
48.根據(jù)權(quán)利要求47所述的解碼器(320),其中,所述處理電路(321)被配置為:在對每個相應(yīng)模塊進(jìn)行解碼時,不包括對預(yù)測的深度參數(shù)進(jìn)行解碼。
49.根據(jù)權(quán)利要求41或42所述的解碼器(320),其中,所述更新消息包括第一消息和第二消息,所述第一消息包括攝像機(jī)參數(shù),所述第二消息包括深度參數(shù)。
50.根據(jù)權(quán)利要求41-49中任一項所述的解碼器(320),其中,所述攝像機(jī)參數(shù)包括旋轉(zhuǎn)矩陣,所述更新消息包括用于指示所述旋轉(zhuǎn)矩陣是單位矩陣的指示。
51.根據(jù)權(quán)利要求41-50中任一項所述的解碼器(320),其中,所述處理電路(321)還被配置為:當(dāng)對每個相應(yīng)模塊進(jìn)行解碼時,遵循攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項相關(guān)的幀的編碼順序。
52.根據(jù)權(quán)利要求41-51中任一項所述的解碼器(320),其中,所述處理電路(321)還被配置為提取針對攝像機(jī)的攝像機(jī)參數(shù)和/或深度參數(shù),其中,所述提取基于針對其他攝像機(jī)的其他攝像機(jī)參數(shù)和/或其他深度參數(shù)。
53.根據(jù)權(quán)利要求41-52中任一項所述的解碼器(320),其中,所述處理電路(321)還被配置為:基于針對其他幀的其他攝像機(jī)參數(shù)和/或其他深度參數(shù),來提取針對第四幀的攝像機(jī)參數(shù)和深度參數(shù)中的所述至少一項。
54.一種第二設(shè)備(1000),包括根據(jù)權(quán)利要求41-53中任一項所述的解碼器(320)。
【文檔編號】H04N19/597GK103875250SQ201280050210
【公開日】2014年6月18日 申請日期:2012年6月1日 優(yōu)先權(quán)日:2011年8月12日
【發(fā)明者】安德烈·諾金, 巫壯飛, 托馬斯·盧瑟 申請人:瑞典愛立信有限公司