先確定的方法按照每個(gè)子塊選擇一個(gè)矢量來(lái)積累。作為選擇一個(gè)矢量的方法,例如存在采用視差量最大的矢量的方法、采用子塊的特別指定的位置(左上等)的矢量的方法等。
[0094]接著,對(duì)圖像解碼裝置進(jìn)行說(shuō)明。圖7是示出本實(shí)施方式中的圖像解碼裝置的結(jié)構(gòu)的框圖。圖像解碼裝置200如圖7所示那樣具備:位流輸入部201、位流存儲(chǔ)器202、參照?qǐng)D像輸入部203、參照?qǐng)D像存儲(chǔ)器204、參照深度圖輸入部205、參照深度圖存儲(chǔ)器206、視差矢量設(shè)定部207、視點(diǎn)合成圖像生成部208、以及圖像解碼部209。
[0095]位流輸入部201輸入對(duì)成為解碼對(duì)象的圖像進(jìn)行編碼后的碼數(shù)據(jù)的位流。在以下,將該成為解碼對(duì)象的圖像稱為解碼對(duì)象圖像。在此是指攝像機(jī)B的圖像。此外,在以下,將拍攝了解碼對(duì)象圖像的攝像機(jī)(在此為攝像機(jī)B)稱為解碼對(duì)象攝像機(jī)。
[0096]位流存儲(chǔ)器202存儲(chǔ)針對(duì)輸入的解碼對(duì)象圖像的位流。參照?qǐng)D像輸入部203輸入生成視點(diǎn)合成圖像(視差補(bǔ)償圖像)時(shí)參照的圖像。在以下,將在此輸入的圖像稱為參照?qǐng)D像。在此,輸入攝像機(jī)A的圖像。參照?qǐng)D像存儲(chǔ)器204存儲(chǔ)輸入的參照?qǐng)D像。在以下,將拍攝了參照?qǐng)D像的攝像機(jī)(在此為攝像機(jī)A)稱為參照攝像機(jī)。
[0097]參照深度圖輸入部205輸入生成視點(diǎn)合成圖像時(shí)參照的深度圖。在此,輸入針對(duì)參照?qǐng)D像的深度圖,但是,也可以為針對(duì)其他的攝像機(jī)的深度圖。在以下,將該深度圖稱為參照深度圖。
[0098]深度圖表示在對(duì)應(yīng)的圖像的各像素中映現(xiàn)的被攝體的三維位置。只要能通過(guò)另外提供的攝像機(jī)參數(shù)等信息而得到三維位置,則無(wú)論是怎樣的信息都可以。例如,能夠使用從攝像機(jī)到被攝體的距離、針對(duì)與圖像平面不平行的軸的坐標(biāo)值、針對(duì)其他的攝像機(jī)(例如攝像機(jī)B)的視差量。此外,在此,由于只要能得到視差量則都可以,所以也可以不是深度圖而是使用直接表現(xiàn)視差量的視差圖。
[0099]再有,在此,作為深度圖而以圖像的方式進(jìn)行傳遞,但是,只要能得到同樣的信息,則不是圖像的方式也可以。參照深度圖存儲(chǔ)器206存儲(chǔ)輸入的參照深度圖。在以下,將與參照深度圖對(duì)應(yīng)的攝像機(jī)(在此為攝像機(jī)A)稱為參照深度攝像機(jī)。
[0100]視差矢量設(shè)定部207按照解碼對(duì)象圖像或分割了解碼對(duì)象圖像的每個(gè)塊設(shè)定針對(duì)參照深度圖的視差矢量。視點(diǎn)合成圖像生成部208 (視點(diǎn)間預(yù)測(cè)部)使用參照深度圖來(lái)求取解碼對(duì)象圖像的像素與參照?qǐng)D像的像素的對(duì)應(yīng)關(guān)系,生成針對(duì)解碼對(duì)象圖像的視點(diǎn)合成圖像。圖像解碼部209使用視點(diǎn)合成圖像來(lái)從位流對(duì)解碼對(duì)象圖像進(jìn)行解碼,并輸出解碼圖像。
[0101]接著,參照?qǐng)D8來(lái)說(shuō)明圖7所示的圖像解碼裝置200的工作。圖8是示出圖7所示的圖像解碼裝置200的工作的流程圖。
[0102]位流輸入部201輸入對(duì)解碼對(duì)象圖像進(jìn)行了編碼的位流,并存儲(chǔ)在位流存儲(chǔ)器202中(步驟S21)。與此并行地,參照?qǐng)D像輸入部203輸入?yún)⒄請(qǐng)D像,并存儲(chǔ)在參照?qǐng)D像存儲(chǔ)器204中。此外,參照深度圖輸入部205輸入?yún)⒄丈疃葓D,并存儲(chǔ)在參照深度圖存儲(chǔ)器206中(步驟S22)。
[0103]在步驟S22中輸入的參照?qǐng)D像和參照深度圖與在編碼側(cè)使用的信息相同。這是因?yàn)?,通過(guò)使用與在圖像編碼裝置100中使用的信息完全相同的信息,從而抑制漂移等編碼噪聲的產(chǎn)生。但是,在容許這樣的編碼噪聲的產(chǎn)生的情況下,也可以輸入與在編碼時(shí)使用信息不同的信息。關(guān)于參照深度圖,除了另外解碼的信息以外,有時(shí)也使用通過(guò)對(duì)針對(duì)多個(gè)攝像機(jī)解碼的多視點(diǎn)圖像應(yīng)用立體聲匹配等而估計(jì)的深度圖、使用解碼后的視差矢量、運(yùn)動(dòng)矢量等而估計(jì)的深度圖等。
[0104]接著,圖像解碼裝置200按照分割了解碼對(duì)象圖像的每個(gè)塊一邊制作視點(diǎn)合成圖像一邊從位流對(duì)解碼對(duì)象圖像進(jìn)行解碼。即,在將示出解碼對(duì)象圖像的塊的索引的變量blk初始化為O之后(步驟S23),一邊對(duì)blk每次加一(步驟S26) —邊重復(fù)以下的處理(步驟S24、步驟S25)直到blk變?yōu)閚umBlks (步驟S27)。再有,numBlks表示解碼對(duì)象圖像中的進(jìn)行解碼處理的單位塊的個(gè)數(shù)。
[0105]在按照解碼對(duì)象圖像的每個(gè)塊進(jìn)行的處理中,首先,在視差矢量設(shè)定部207 (參照深度區(qū)域設(shè)定部)和視點(diǎn)合成圖像生成部208 (視點(diǎn)間預(yù)測(cè)部)中,生成針對(duì)塊blk的視點(diǎn)合成圖像(步驟S24)。此處的處理與前述的圖2所示的步驟S14 (圖3所示的步驟S1401~S1407)相同,因此,省略詳細(xì)的說(shuō)明。關(guān)于由作為預(yù)測(cè)區(qū)域分割設(shè)定部的視點(diǎn)合成圖像生成部208進(jìn)行的子塊分割(編碼對(duì)象區(qū)域內(nèi)的區(qū)域分割)、按照每個(gè)子塊進(jìn)行的處理也是同樣的。
[0106]接著,在得到了視點(diǎn)合成圖像之后,圖像解碼部209 —邊將視點(diǎn)合成圖像用作預(yù)測(cè)圖像,一邊從位流對(duì)解碼對(duì)象圖像進(jìn)行解碼并輸出(步驟S25)。該結(jié)果所得的解碼圖像成為圖像解碼裝置200的輸出。再有,只要能夠?qū)ξ涣髡_地解碼,則無(wú)論對(duì)解碼使用怎樣的方法都可以。一般,使用與在編碼時(shí)使用的方法對(duì)應(yīng)的方法。
[0107]在MPEG-2、H.264、JPEG等一般的活動(dòng)圖像編碼或圖像編碼中被編碼的情況下,在按照每個(gè)塊施行了熵解碼、反二值化、反量化等之后施行IDCT等反頻率變換而得到了預(yù)測(cè)殘差信號(hào)之后,加上預(yù)測(cè)圖像,在像素值范圍內(nèi)進(jìn)行削波,由此,進(jìn)行解碼。
[0108]在本實(shí)施方式中,在全部的塊中將視點(diǎn)合成圖像用作預(yù)測(cè)圖像,但是,也可以將按照每個(gè)塊用不同的方法生成的圖像用作預(yù)測(cè)圖像。在該情況下,需要判別將用哪種方法生成的圖像用作了預(yù)測(cè)圖像來(lái)使用適當(dāng)?shù)念A(yù)測(cè)圖像。例如,在如H.264那樣對(duì)示出了生成預(yù)測(cè)圖像的方法(模式、矢量信息等)的信息進(jìn)行編碼并包括于位流的情況下,可以通過(guò)對(duì)該信息進(jìn)行解碼,從而選擇適當(dāng)?shù)念A(yù)測(cè)圖像來(lái)進(jìn)行解碼。
[0109]再有,圖8所示的步驟S24的詳細(xì)處理與圖3所示的處理工作同等,但是,在設(shè)定視差矢量dv的步驟S1401中,需要進(jìn)行與編碼側(cè)相同的處理。作為其一種方法,存在將視差矢量dv復(fù)用到位流的情況。在該情況下,如圖9所示,圖像解碼裝置200只要還具備位流分離部210和視差矢量解碼部211 (深度參照視差矢量設(shè)定部)即可。圖9是示出圖7所示的圖像解碼裝置200的變形例的框圖。
[0110]位流分離部210將輸入的位流分離為針對(duì)視差矢量dv的位流和針對(duì)解碼對(duì)象圖像的位流。此外,在視差矢量解碼部211中,根據(jù)分離的位流來(lái)解碼視差矢量dv,在視點(diǎn)合成圖像生成部208中使用解碼后的視差矢量。即,如圖10所示,在按照每個(gè)塊blk對(duì)視差矢量進(jìn)行解碼之后(步驟S28),進(jìn)行視點(diǎn)合成圖像的生成(步驟S24)和解碼對(duì)象圖像的解碼(步驟S25)。圖10是示出圖8所示的工作的變形例的流程圖。
[0111]再有,也可以不是按照每個(gè)塊對(duì)視差矢量進(jìn)行解碼,而是按照幀、片等大的每個(gè)單位對(duì)全局的視差矢量進(jìn)行解碼,在該幀、片內(nèi)的塊中,作為相同的視差矢量而使用解碼后的全局視差矢量。在該情況下,如圖11所示,在按照每個(gè)塊進(jìn)行的處理之前,對(duì)針對(duì)參照深度圖的視差矢量進(jìn)行解碼(步驟S29)。圖11是示出圖8所示的工作的變形例的流程圖。
[0112]作為其他的方法,也可以根據(jù)在對(duì)塊blk進(jìn)行解碼之前被解碼的塊中被解碼的矢量信息來(lái)設(shè)定針對(duì)塊blk的視差矢量。
[0113]具體而言,在對(duì)與塊blk空間或時(shí)間上相鄰的塊、幀等進(jìn)行解碼時(shí)使用了視差補(bǔ)償預(yù)測(cè)的情況下,在該塊中一些視差矢量被解碼。因而,也可以依照預(yù)先確定的方法,根據(jù)這些視差矢量來(lái)求取塊blk的視差矢量。
[0114]作為預(yù)先確定的方法,存在根據(jù)相鄰塊中的視差矢量進(jìn)行中值預(yù)測(cè)的方法、直接使用特別指定的塊中的視差矢量的方法。在該情況下,如圖12所示,圖像解碼裝置200只要還具備矢量信息存儲(chǔ)器212 (圖像參照視差矢量積累部)即可。圖12是示出圖7所示的圖像解碼裝置200的變形例的框圖。矢量信息存儲(chǔ)器212積累在圖像解碼部209中生成預(yù)測(cè)圖像時(shí)使用的矢量信息。所積累的矢量信息在視差矢量設(shè)定部207中設(shè)定針對(duì)其他的塊blk的視差矢量時(shí)被利用。
[0115]此外,可以將該方法與前述的通過(guò)對(duì)視差矢量進(jìn)行解碼來(lái)將任意的矢量作為視差矢量的方法進(jìn)行組合。例如,可以對(duì)根據(jù)在對(duì)塊blk進(jìn)行解碼之前被解碼的塊中被解碼的矢量信息而估計(jì)的矢量,加上根據(jù)位流而解碼的矢量來(lái)作為視差矢量dv。再有,如前述的那樣,也可以根據(jù)與塊blk相同的位置的參照深度圖的深度值來(lái)求取視差矢量dv。
[0116]在前述的說(shuō)明中,說(shuō)明了對(duì)I幀中的全部的像素進(jìn)行編碼和解碼的處理,但是也能夠僅應(yīng)用于一部分的像素,而在其他的像素中,可以使用在H.264/AVC等中使用的畫(huà)面內(nèi)預(yù)測(cè)編碼、運(yùn)動(dòng)補(bǔ)償預(yù)測(cè)編碼等來(lái)進(jìn)行編碼或解碼。在該情況下,需要對(duì)示出按照每個(gè)像素使用哪種方法進(jìn)行了預(yù)測(cè)的信息進(jìn)行編碼和解碼。此外,也可以不是按照每個(gè)像素而是按照每個(gè)塊使用其他的預(yù)測(cè)方式來(lái)進(jìn)行編碼或解碼。再有,在僅針對(duì)一部分的像素、塊進(jìn)行使用視點(diǎn)合成圖像的預(yù)測(cè)的情況下,通過(guò)僅針對(duì)該像素進(jìn)行生成視點(diǎn)合成圖像的處理(圖2所示的步驟S14、圖8所示的步驟S24、S28),從而能夠削減視點(diǎn)合成處理所涉及的運(yùn)算量。
[0117]此外,在前述的說(shuō)明中,說(shuō)明了對(duì)I幀進(jìn)行編碼和解碼的處理,但是,也能夠通過(guò)重復(fù)多幀來(lái)應(yīng)用于活動(dòng)圖像編碼。此外,也能夠僅應(yīng)用于活動(dòng)圖像的一部分的幀、一部分的塊。進(jìn)而,在前述的說(shuō)明中,說(shuō)明了圖像編碼裝置和圖像解碼裝置的結(jié)構(gòu)和處理工作,但是,能夠通過(guò)與這些圖像編碼裝置和圖像解碼裝置的各部分的工作對(duì)應(yīng)的處理工作來(lái)實(shí)現(xiàn)本發(fā)明的圖像編碼方法和圖像解碼方法。
[0118]進(jìn)而,在前述的說(shuō)明中,設(shè)為參照深度圖為針對(duì)用與編碼對(duì)象攝像機(jī)或解碼對(duì)象攝像機(jī)不同的攝像機(jī)拍攝的圖像的深度圖來(lái)進(jìn)行了說(shuō)明,但是,也能夠?qū)⑨槍?duì)在與編碼對(duì)象攝像機(jī)或解碼對(duì)象攝像機(jī)不同的時(shí)刻由編碼對(duì)象攝像機(jī)或解碼對(duì)象攝像機(jī)拍攝的圖像的深度圖用作參照深度圖。在該情況下,在步驟S1401、步驟S18、步驟S28、步驟S29中,不是對(duì)視差矢量而是對(duì)運(yùn)動(dòng)矢量進(jìn)行設(shè)定或解碼。
[0119]圖13是示出通過(guò)計(jì)算機(jī)和軟件程序來(lái)構(gòu)成前述的圖像編碼裝置100的情況下的硬件結(jié)構(gòu)的框圖。
[0120]圖13所示的系統(tǒng)為通過(guò)總線連接如下部分的結(jié)構(gòu):執(zhí)行程序的CPU50、存儲(chǔ)器51、編碼對(duì)象圖像輸入部52、參照?qǐng)D像輸入部53、參照深度圖輸入部54、程序存儲(chǔ)裝置55、以及位流輸出部56。
[0121]RAM等存儲(chǔ)器51儲(chǔ)存CPU50訪問(wèn)的程序、數(shù)據(jù)。編碼對(duì)象圖像輸入部52輸入來(lái)自攝像機(jī)等的編碼對(duì)象的圖像信號(hào)。該編碼對(duì)象圖像輸入部52也可以為存儲(chǔ)圖像信號(hào)的磁盤(pán)裝置等存儲(chǔ)部。參照?qǐng)D像輸入部53輸入來(lái)自攝像機(jī)等的參照對(duì)象的圖像信號(hào)。該參照?qǐng)D像輸入部53也可以為存儲(chǔ)圖像信號(hào)的磁盤(pán)裝置等存儲(chǔ)部。參照深度圖輸入部54輸入來(lái)自深度攝像機(jī)等的針對(duì)