本發(fā)明涉及對多視點活動圖像進行編碼和解碼的活動圖像編碼裝置、活動圖像解碼裝置、活動圖像編碼方法、以及活動圖像解碼方法。
本申請基于在2014年3月20日申請的特愿2014-058903號要求優(yōu)先權,并將其內容引用于此。
背景技術:
以往,已知由使用多個攝像機拍攝了相同的被攝物和背景的多個圖像構成的多視點圖像(Multiview images:多視點圖像)。將該使用多個攝像機拍攝的活動圖像稱為多視點活動圖像(或多視點視頻)。
在以下的說明中,將使用1個攝像機拍攝的圖像(活動圖像)稱為“二維圖像(二維活動圖像)”,將使用位置、方向(以下,稱為視點)不同的多個攝像機拍攝了相同的被攝物和背景的二維圖像(二維活動圖像)組稱為“多視點圖像(多視點活動圖像)”。
二維活動圖像關于時間方向具有強的相關性,通過利用該相關性,從而能夠提高編碼效率。另一方面,在多視點圖像或多視點活動圖像中,在各攝像機被同步的情況下,各攝像機的視頻的相同的時刻所對應的幀(圖像)是從不同的位置拍攝了完全相同的狀態(tài)的被攝物和背景的幀(圖像),因此,在攝像機間(相同的時刻的不同的二維圖像間)具有強的相關性。在多視點圖像或多視點活動圖像的編碼中,通過利用該相關性,從而能夠提高編碼效率。
在此,對與二維活動圖像的編碼技術相關的現(xiàn)有技術進行說明。在以作為國際編碼標準的H. 264、MPEG-2、MPEG-4為首的以往的許多二維活動圖像編碼方式中,利用運動補償預測、正交變換、量化、熵編碼這樣的技術來進行高效率的編碼。例如,在H. 264中,能夠進行利用了過去或未來的多個幀與編碼對象幀的時間相關性的編碼。
關于在H. 264中使用的運動補償預測技術的細節(jié),例如被記載在非專利文獻1中。對在H. 264中使用的運動補償預測技術的概要進行說明。
在H. 264的運動補償預測中,將編碼對象幀分割為各種尺寸的塊,在各塊中允許具有不同的運動矢量和不同的參照幀。通過使用在各塊中不同的運動矢量,從而實現(xiàn)對按照每個被攝物而不同的運動進行補償后的精度高的預測。另一方面,通過使用在各塊中不同的參照幀,從而實現(xiàn)考慮了由于時間變化而產(chǎn)生的遮擋(occlusion)的精度高的預測。
接著,對以往的多視點圖像或多視點活動圖像的編碼方式進行說明。
多視點圖像的編碼方法與多視點活動圖像的編碼方法的不同在于,在多視點活動圖像中除了攝像機間的相關性之外還同時存在時間方向的相關性??墒?,在哪一種情況下均能使用相同的方法來利用攝像機間的相關性。因此,在此,對在多視點活動圖像的編碼中使用的方法進行說明。
關于多視點活動圖像的編碼,以往存在為了利用攝像機間的相關性而利用將運動補償預測應用于相同的時刻的被不同的攝像機拍攝的圖像的“視差補償預測”來對多視點活動圖像高效率地進行編碼的方式。在此,視差是指在配置于不同的位置的攝像機的圖像平面上被攝物上的相同的部分所存在的位置的差。
圖8是示出在攝像機(第一攝像機和第二攝像機)間產(chǎn)生的視差的概念圖。在圖8所示的概念圖中,垂直地俯視光軸平行的攝像機的圖像平面。像這樣,在不同的攝像機的圖像平面上投影被攝物上的相同的部分的位置通常被稱為對應點。
在視差補償預測中,基于其對應關系,根據(jù)參照幀來預測編碼對象幀的各像素值,對其預測殘差和示出對應關系的視差信息進行編碼。視差按照作為對象的攝像機對、位置的每一個發(fā)生變化,因此,需要按照進行視差補償預測的每個區(qū)域對視差信息進行編碼。
實際上,在H. 264的多視點活動圖像編碼方式中,按照使用視差補償預測的每個塊對表示視差信息的矢量進行編碼。
再有,關于根據(jù)視差信息提供的對應關系,通過使用攝像機參數(shù),從而存在基于對極幾何約束使用示出被攝物的三維位置的一維量而不是二維矢量來表示的情況。
作為示出被攝物的三維位置的信息,存在各種表現(xiàn),但是,使用從成為基準的攝像機到被攝物的距離或者與攝像機的圖像平面不平行的軸上的坐標值的情況較多。再有,也存在不使用距離而使用距離的倒數(shù)的情況。此外,由于距離的倒數(shù)為與視差成比例的信息,所以,也存在設定2個成為基準的攝像機而表現(xiàn)為在由這些攝像機拍攝的圖像間的視差量的情況。
無論使用了怎樣的表現(xiàn),都沒有本質的不同,因此,在以下,不進行根據(jù)表現(xiàn)的區(qū)別,將示出這些三維位置的信息表現(xiàn)為深度。
在多視點視頻中,除了圖像信號之外,關于運動信息,也在攝像機間存在相關性。在非專利文獻2中,為了利用那樣的相關性,基于由視差得到的對應關系,通過根據(jù)參照幀來估計編碼對象幀的運動信息的“視點間運動矢量預測”來削減運動信息的編碼所涉及的碼量,實現(xiàn)高效率的多視點活動圖像的編碼。
現(xiàn)有技術文獻
非專利文獻
非專利文獻1:ITU-T Recommendation H.264(03/2009),“Advanced video coding for generic audiovisual services”, March, 2009;
非專利文獻2:J. Konieczny and M. Domanski,“Depth-based interview prediction of motion vectors for improved multiview video coding,”in Proc. 3DTV-CON2010, June 2010。
技術實現(xiàn)要素:
發(fā)明要解決的課題
但是,在非專利文獻2所記載的方法中,基于由視差得到的對應關系,使參照幀中的運動信息為編碼對象幀的運動信息,因此,在參照幀中的運動信息與編碼對象幀中的實際的運動信息不一致的情況下,進行使用了錯誤的運動信息的圖像信號的預測,存在圖像信號的預測殘差的編碼所涉及的碼量增加這樣的問題。
針對該問題,考慮了如下方法:不是復寫參照幀的運動信息,而是將參照幀的運動信息用作預測運動信息,對針對編碼對象幀的運動信息進行預測編碼,由此,防止圖像信號的預測殘差的編碼所涉及的碼量的增加并能夠進行利用了關于攝像機間的運動信息的相關性的編碼。
通常地,被攝物的運動為在三維空間中進行的自由的運動。因此,由特定的攝像機觀測的運動為將那樣的三維運動向作為攝像機的投影面的二維平面映射后的結果。
在將三維運動向2個不同的攝像機的投影面投影時僅為為了該運動信息一致而將2個攝像機平行地配置并且在相對于攝像機的光軸垂直的平面上進行三維運動時。也就是說,在不滿足那樣的特定的條件的情況下,針對視點不同的幀的運動信息的攝像機間相關性低。因此,即使將由非專利文獻2所記載的方法生成的運動信息用于預測,也存在不能進行精度高的運動信息的預測并且不能削減運動信息的編碼所涉及的碼量這樣的問題。
本發(fā)明是鑒于這樣的情況而完成的,其目的在于提供即使在針對視點不同的幀的運動信息中的攝像機間相關性低的情況下也能夠針對運動信息實現(xiàn)精度高的預測來實現(xiàn)高效率的編碼的活動圖像編碼裝置、活動圖像解碼裝置、活動圖像編碼方法、以及活動圖像解碼方法。
用于解決課題的方案
本發(fā)明提供,一種活動圖像編碼裝置,在對由多個不同的視點的活動圖像構成的多視點活動圖像的1個幀進行編碼時,使用針對與編碼對象圖像的視點不同的參照視點的參照視點圖像的運動信息即參照視點運動信息,一邊在不同的視點間進行預測一邊按照作為對所述編碼對象圖像進行分割后的區(qū)域的編碼對象區(qū)域的每一個進行編碼,所述活動圖像編碼裝置的特征在于,具有:編碼對象區(qū)域視差信息設定單元,針對所述編碼對象區(qū)域設定示出所述參照視點圖像上的對應區(qū)域的編碼對象區(qū)域視差信息;臨時運動信息設定單元,根據(jù)所述參照視點運動信息來設定由所述編碼對象區(qū)域視差信息示出的所述參照視點圖像上的對應區(qū)域的臨時運動信息;過去視差信息設定單元,設定由所述臨時運動信息示出的參照視點上的區(qū)域中的針對所述編碼對象圖像的視點的視差信息即過去視差信息;以及運動信息生成單元,使用所述編碼對象區(qū)域視差信息和所述過去視差信息來對所述臨時運動信息進行變換,由此,生成針對所述編碼對象區(qū)域的運動信息。
作為典型例,所述運動信息生成單元使用所述編碼對象區(qū)域視差信息和所述過去視差信息來根據(jù)所述臨時運動信息恢復被攝物的三維空間中的運動信息,將該恢復后的運動信息向所述編碼對象圖像投影,由此,生成針對所述編碼對象區(qū)域的運動信息。
作為另一典型例,上述活動圖像編碼裝置還具有參照對象區(qū)域分割單元,所述參照對象區(qū)域分割單元將所述參照圖像上的對應區(qū)域向小區(qū)域分割,所述臨時運動信息設定單元按照每個所述小區(qū)域設定所述臨時運動信息,所述運動信息生成單元按照每個所述小區(qū)域生成所述運動信息。
在該情況下,所述過去視差信息設定單元按照每個所述小區(qū)域設定所述過去視差信息也可。
作為優(yōu)選例,所述編碼對象區(qū)域視差信息設定單元根據(jù)針對所述多視點活動圖像中的被攝物的深度圖來設定所述編碼對象區(qū)域視差信息。
作為另一優(yōu)選例,所述過去視差信息設定單元根據(jù)針對所述多視點活動圖像中的被攝物的深度圖來設定所述過去視差信息。
作為另一優(yōu)選例,還具有當前視差信息設定單元,所述當前視差信息設定單元設定所述參照圖像上的對應區(qū)域中的針對所述編碼對象圖像的視點的視差信息即當前視差信息,所述運動信息生成單元使用所述當前視差信息和所述過去視差信息來對所述臨時運動信息進行變換。
所述當前視差信息設定單元根據(jù)針對所述多視點活動圖像中的被攝物的深度圖來設定所述當前視差信息也可。
進而,所述運動信息生成單元根據(jù)所述編碼對象視差信息、所述過去視差信息和所述臨時運動信息的和來生成針對所述編碼對象區(qū)域的運動信息。
本發(fā)明也提供,一種活動圖像解碼裝置,在根據(jù)由多個不同的視點的活動圖像構成的多視點活動圖像的碼數(shù)據(jù)對解碼對象圖像進行解碼時,使用針對與解碼對象圖像的視點不同的參照視點的參照視點圖像的運動信息即參照視點運動信息,一邊在不同的視點間進行預測一邊按照作為對所述解碼對象圖像進行分割后的區(qū)域的解碼對象區(qū)域的每一個進行解碼,所述活動圖像解碼裝置的特征在于,具有:解碼對象區(qū)域視差信息設定單元,針對所述解碼對象區(qū)域設定示出所述參照視點圖像上的對應區(qū)域的解碼對象區(qū)域視差信息;臨時運動信息設定單元,根據(jù)所述參照視點運動信息來設定由所述解碼對象區(qū)域視差信息示出的所述參照視點圖像上的對應區(qū)域的臨時運動信息;過去視差信息設定單元,設定由所述臨時運動信息示出的參照視點上的區(qū)域中的針對所述解碼對象圖像的視點的視差信息即過去視差信息;以及運動信息生成單元,使用所述解碼對象區(qū)域視差信息和所述過去視差信息來對所述臨時運動信息進行變換,由此,生成針對所述解碼對象區(qū)域的運動信息。
作為典型例,所述運動信息生成單元使用所述解碼對象區(qū)域視差信息和所述過去視差信息來根據(jù)所述臨時運動信息恢復被攝物的三維空間中的運動信息,將該恢復后的運動信息向所述解碼對象圖像投影,由此,生成針對所述解碼對象區(qū)域的運動信息。
作為另一典型例,還具有參照對象區(qū)域分割單元,所述參照對象區(qū)域分割單元將所述參照圖像上的對應區(qū)域向小區(qū)域分割,所述臨時運動信息設定單元按照每個所述小區(qū)域設定所述臨時運動信息,所述運動信息生成單元按照每個所述小區(qū)域生成所述運動信息。
在該情況下,所述過去視差信息設定單元按照每個所述小區(qū)域設定所述過去視差信息也可。
作為優(yōu)選例,所述解碼對象區(qū)域視差信息設定單元根據(jù)針對所述多視點活動圖像中的被攝物的深度圖來設定所述解碼對象區(qū)域視差信息。
作為另一優(yōu)選例,所述過去視差信息設定單元根據(jù)針對所述多視點活動圖像中的被攝物的深度圖來設定所述過去視差信息。
作為另一優(yōu)選例,還具有當前視差信息設定單元,所述當前視差信息設定單元設定所述參照圖像上的對應區(qū)域中的針對所述解碼對象圖像的視點的視差信息即當前視差信息,所述運動信息生成單元使用所述當前視差信息和所述過去視差信息來對所述臨時運動信息進行變換。
所述當前視差信息設定單元根據(jù)針對所述多視點活動圖像中的被攝物的深度圖來設定所述當前視差信息也可。
進而,所述運動信息生成單元根據(jù)所述解碼對象視差信息、所述過去視差信息和所述臨時運動信息的和來生成針對所述解碼對象區(qū)域的運動信息也可。
本發(fā)明也提供,一種活動圖像編碼方法,在對由多個不同的視點的活動圖像構成的多視點活動圖像的1個幀進行編碼時,使用針對與編碼對象圖像的視點不同的參照視點的參照視點圖像的運動信息即參照視點運動信息,一邊在不同的視點間進行預測一邊按照作為對所述編碼對象圖像進行分割后的區(qū)域的編碼對象區(qū)域的每一個進行編碼,所述活動圖像編碼方法的特征在于,具備:編碼對象區(qū)域視差信息設定步驟,針對所述編碼對象區(qū)域設定示出所述參照視點圖像上的對應區(qū)域的編碼對象區(qū)域視差信息;臨時運動信息設定步驟,根據(jù)所述參照視點運動信息來設定由所述編碼對象區(qū)域視差信息示出的所述參照視點圖像上的對應區(qū)域的臨時運動信息;過去視差信息設定步驟,設定由所述臨時運動信息示出的參照視點上的區(qū)域中的針對所述編碼對象圖像的視點的視差信息即過去視差信息;以及運動信息生成步驟,使用所述編碼對象區(qū)域視差信息和所述過去視差信息來對所述臨時運動信息進行變換,由此,生成針對所述編碼對象區(qū)域的運動信息。
本發(fā)明此外也提供,一種活動圖像解碼方法,在根據(jù)由多個不同的視點的活動圖像構成的多視點活動圖像的碼數(shù)據(jù)對解碼對象圖像進行解碼時,使用針對與解碼對象圖像的視點不同的參照視點的參照視點圖像的運動信息即參照視點運動信息,一邊在不同的視點間進行預測一邊按照作為對所述解碼對象圖像進行分割后的區(qū)域的解碼對象區(qū)域的每一個進行解碼,所述活動圖像解碼方法的特征在于,具備:解碼對象區(qū)域視差信息設定步驟,針對所述解碼對象區(qū)域設定示出所述參照視點圖像上的對應區(qū)域的解碼對象區(qū)域視差信息;臨時運動信息設定步驟,根據(jù)所述參照視點運動信息來設定由所述解碼對象區(qū)域視差信息示出的所述參照視點圖像上的對應區(qū)域的臨時運動信息;過去視差信息設定步驟,設定由所述臨時運動信息示出的參照視點上的區(qū)域中的針對所述解碼對象圖像的視點的視差信息即過去視差信息;以及運動信息生成步驟,使用所述解碼對象區(qū)域視差信息和所述過去視差信息來對所述臨時運動信息進行變換,由此,生成針對所述解碼對象區(qū)域的運動信息。
發(fā)明效果
根據(jù)本發(fā)明,得到如下這樣的效果:即使在運動信息的視點間相關性低的情況下,也能夠通過基于物體的三維的運動的變換來針對運動信息實現(xiàn)精度高的預測,能夠以少的碼量對多視點活動圖像進行編碼。
附圖說明
圖1是示出本發(fā)明的實施方式中的活動圖像編碼裝置的結構的框圖。
圖2是示出圖1所示的活動圖像編碼裝置100的工作的流程圖。
圖3是示出圖1所示的運動信息生成部106中的生成運動信息的工作(步驟S103)的詳細處理工作的流程圖。
圖4是示出本發(fā)明的實施方式中的活動圖像解碼裝置的結構的框圖。
圖5是示出圖4所示的活動圖像解碼裝置200的工作的流程圖。
圖6是示出通過計算機和軟件程序構成圖1所示的活動圖像編碼裝置100的情況下的硬件結構的框圖。
圖7是示出通過計算機和軟件程序構成圖4所示的活動圖像解碼裝置200的情況下的硬件結構的框圖。
圖8是示出在攝像機間產(chǎn)生的視差的概念圖。
具體實施方式
以下,參照附圖來對本發(fā)明的實施方式的活動圖像編碼裝置和活動圖像解碼裝置進行說明。
在以下的說明中,說明設想對在第一視點(稱為視點A)、第二視點(稱為視點B)這2個視點處拍攝的多視點活動圖像進行編碼的情況,并將視點A作為參照視點來對視點B的活動圖像的1個幀進行編碼或解碼。
再有,假設根據(jù)需要另外提供為了根據(jù)深度信息得到視差而需要的信息。具體地,為表示視點A與視點B的位置關系的外部參數(shù)或表示利用攝像機的向圖像平面的投影信息的內部參數(shù),但是,即使為這些以外的方式,只要根據(jù)深度信息得到視差,也可以提供另外的信息。
與這些攝像機參數(shù)相關的詳細的說明例如被記載在參考文獻“Oliver Faugeras,“Three-Dimension Computer Vision”, MIT Press; BCTC/UFF-006.37 F259 1993, ISBN: 0-262-06158-9.”中。在該參考文獻中,記載了與示出多個攝像機的位置關系的參數(shù)、表示利用攝像機的向圖像平面的投影信息的參數(shù)相關的說明。
圖1是示出本實施方式中的活動圖像編碼裝置的結構的框圖。
活動圖像編碼裝置100如圖1所示那樣具備:編碼對象圖像輸入部101、編碼對象圖像存儲器102、參照視點運動信息輸入部103、參照視點運動信息存儲器104、視差信息生成部105、運動信息生成部106、圖像編碼部107、圖像解碼部108、以及參照圖像存儲器109。
編碼對象圖像輸入部101將成為編碼對象的圖像輸入到活動圖像編碼裝置100中。在以下,將該成為編碼對象的圖像稱為編碼對象圖像。在此,假設按照另外確定的編碼順序1個幀1個幀地輸入針對視點B的活動圖像。此外,將拍攝了編碼對象圖像的視點(在此為視點B)稱為編碼對象視點。
編碼對象圖像存儲器102存儲所輸入的編碼對象圖像。
參照視點運動信息輸入部103將針對參照視點(在此為視點A)的活動圖像的運動信息(運動矢量等)輸入到活動圖像編碼裝置100中。在以下,將在此輸入的運動信息稱為參照視點運動信息,將提供參照視點運動信息的與編碼對象圖像相同時刻的幀稱為參照視點圖像。
參照視點運動信息存儲器104存儲所輸入的參照視點運動信息。
再有,編碼對象圖像或參照視點運動信息被存儲在活動圖像編碼裝置100的外部,只要編碼對象圖像輸入部101或參照視點運動信息輸入部103在適當?shù)亩〞r將需要的編碼對象圖像或參照視點運動信息輸入到活動圖像編碼裝置100中,則也可以不具備編碼對象圖像存儲器102或參照視點運動信息存儲器104。
視差信息生成部105生成編碼對象圖像與參照視點圖像的視差信息(視差矢量)。
運動信息生成部106使用參照視點運動信息和視差信息來生成編碼對象圖像的運動信息。
圖像編碼部107使用所生成的運動信息來對編碼對象圖像進行預測編碼。
圖像解碼部108對編碼對象圖像的位流進行解碼。
參照圖像存儲器109存儲在對編碼對象圖像的位流進行解碼時得到的解碼圖像。
接著,參照圖2來說明圖1所示的活動圖像編碼裝置100的工作。圖2是示出圖1所示的活動圖像編碼裝置100的工作的流程圖。
首先,編碼對象圖像輸入部101將編碼對象圖像輸入到活動圖像編碼裝置100中,并存儲到編碼對象圖像存儲器102中。參照視點運動信息輸入部103將參照視點運動信息輸入到活動圖像編碼裝置100中,并存儲到參照視點運動信息存儲器104中(步驟S101)。
再有,假設在步驟S101中輸入的參照視點運動信息與對已經(jīng)編碼完畢的信息進行解碼后的信息等在解碼側得到的信息相同。這是因為,通過使用與由解碼裝置得到的信息完全相同的信息,從而抑制漂移(drift)等編碼噪聲的產(chǎn)生。但是,在容許那樣的編碼噪聲的產(chǎn)生的情況下,也可以輸入編碼前的信息等僅在編碼側得到的信息。
關于參照視點運動信息,也可以使用在對參照視點圖像進行編碼時使用的運動信息,也可以為針對參照視點另外編碼后的信息。此外,也能夠對針對參照視點的活動圖像進行解碼而使用根據(jù)此估計而得到的運動信息。
在編碼對象圖像和參照視點運動信息的輸入結束之后,將編碼對象圖像分割為預先確定的大小的區(qū)域,按照每個所分割的區(qū)域對編碼對象圖像的圖像信號進行編碼(步驟S102~S107)。
即,當假設使用blk表示編碼對象區(qū)域索引并且使用numBlks表示1個幀中的總編碼對象區(qū)域數(shù)目時,使用0初始化blk(步驟S102),之后,一邊對blk加上1(步驟S106),一邊重復以下的處理(步驟S103~S105)直到blk變?yōu)閚umBlks(步驟S107)。
在通常的編碼中,向16像素×16像素的被稱為宏塊的處理單位塊分割,但是,只要與解碼側相同,則也可以分割為其他的大小的塊。此外,也可以分割為按照每個場所不同的大小的塊。
在按照每個編碼對象區(qū)域重復的處理中,首先,運動信息生成部106生成編碼對象區(qū)域blk中的運動信息mv(步驟S103)。以后詳細地說明在此的處理。
在得到針對編碼對象區(qū)域blk的運動信息之后,圖像編碼部107使用運動信息mv一邊參照被存儲在參照圖像存儲器109中的圖像一邊對針對編碼對象區(qū)域blk的圖像信號(像素值)進行預測編碼(步驟S104)。編碼的結果得到的位流成為活動圖像編碼裝置100的輸出。
再有,在編碼的方法中,使用怎樣的方法都可以。在MPEG-2、H. 264/AVC等通常的編碼中,對塊blk的圖像信號與預測圖像的差分信號依次實施DCT等頻率變換、量化、二值化、熵編碼,由此,進行編碼。
此外,怎樣使用所生成的運動信息mv來進行編碼都可以。例如,將利用運動信息mv的運動補償預測圖像作為預測圖像來對編碼對象區(qū)域blk的圖像信號進行編碼也可。
作為另外的方法,對針對mv的補正矢量cmv進行設定、編碼,將按照通過cmv補正mv后的運動信息而生成的運動補償預測圖像作為預測圖像,對編碼對象區(qū)域blk的圖像信號進行編碼也可。在該情況下,也一起輸出針對cmv的位流。
接著,圖像解碼部108使用位流、運動信息mv和存儲在參照圖像存儲器109中的圖像來對針對塊blk的圖像信號進行解碼,將作為解碼結果的解碼圖像存儲到參照圖像存儲器109中(步驟S105)。
在此,使用與在編碼時使用的手法對應的手法。例如,只要為MPEG-2、H. 264/AVC等通常的編碼,則對位流依次實施熵解碼、逆二值化、逆量化、IDCT等頻率逆變換,對所得到的二維信號加上預測圖像,最后在像素值的值域中進行裁剪(clipping),由此,對該圖像信號進行解碼。
再有,對在編碼側的處理成為無損耗的稍前的數(shù)據(jù)和預測圖像進行接收并通過簡化后的解碼處理來進行解碼處理也可。即,只要為前述的例子,則對在編碼時施加量化處理后的值和預測圖像進行接收,對向該量化后的值依次實施逆量化、頻率逆變換而得到的二維信號加上預測圖像,在像素值的值域中進行裁剪,由此,對該圖像信號進行解碼也可。
接著,參照圖3來說明圖1所示的運動信息生成部106生成編碼對象區(qū)域blk中的運動信息的處理(圖2所示的步驟S103)的細節(jié)。圖3是示出該生成處理的細節(jié)的流程圖。
在生成運動信息的處理中,首先,視差信息生成部105設定編碼對象區(qū)域blk中的與參照視點圖像的視差矢量dvblk(與本發(fā)明的編碼對象區(qū)域視差信息對應)(步驟S1401)。
在在此的處理中,只要能夠在解碼側實現(xiàn)相同的處理,則使用怎樣的方法都可以。
例如,能夠使用在對編碼對象區(qū)域blk的周邊區(qū)域進行編碼時使用的視差矢量、針對編碼對象圖像整體或包含編碼對象區(qū)域的部分圖像設定的全局視差矢量、針對編碼對象區(qū)域另外設定并編碼的視差矢量等。此外,對在不同的區(qū)域或在過去被編碼的圖像中使用的視差矢量進行存儲來使用也可。
再有,設定多個視差矢量候補,使用它們的平均矢量也可,通過從它們之中根據(jù)某些基準(眾數(shù)(mode)、中央、最大范數(shù)(norm)、最小范數(shù)等)選擇1個視差矢量來決定也可。
如果,在所存儲的視差矢量的對象為與參照視點不同的視點的情況下,按照與參照視點的位置關系來進行縮放(scaling),由此,施加變換也可。
作為另外的方法,假設將針對編碼對象圖像的深度圖另外輸入到活動圖像編碼裝置中,基于與編碼對象區(qū)域blk相同的位置的深度圖,設定針對參照視點圖像的視差信息也可。
進而,作為另外的方法,在將與編碼對象視點不同的視點之一作為深度視點時,另外輸入針對深度視點的深度圖,使用該深度圖來求取也可。
具體地,估計編碼對象區(qū)域blk中的編碼對象視點與深度視點的視差DV,基于由blk+DV得到的位置的深度圖,設定針對參照視點圖像的視差信息也可。
接著,利用視差信息dvblk求取相對應的參照視點上的對應區(qū)域cblk(步驟S1402)。具體地,通過對blk加上上述生成的視差信息dvblk來求取。再有,對應區(qū)域cblk為由視差信息dvblk示出的參照視點圖像上的區(qū)域。
在得到對應區(qū)域cblk之后,視差信息生成部105設定對應區(qū)域cblk中的與編碼對象圖像的視差矢量dv_srcblk(與本發(fā)明的當前視差信息對應)(步驟S1403)。
在此的處理只要作為對象的區(qū)域或起點和終點所對應的視點不同就與步驟S1401相同,使用怎樣的方法都可以。再有,不使用與步驟S1401相同的方法也可。
此外,為了簡化處理,假設dv_srcblk=-dvblk也可。
進而,也可以適應性地選擇簡化的方法和通常的方法。例如,估計dvblk的精度(可靠度)而基于其來決定是否簡化也可。
接著,運動信息生成部106根據(jù)針對對應區(qū)域cblk存儲的參照視點運動信息來設定臨時運動信息tmv(步驟S1404)。
再有,在對應區(qū)域內存在多個運動信息的情況下,從其中選擇一個運動信息。以怎樣的基準來選擇都可以,但是,例如,選擇針對對應區(qū)域的中心存儲的運動信息也可,選擇針對在對應區(qū)域之中最廣的區(qū)域設定的運動信息也可。
此外,在如H. 264等那樣使用按照每個參照幀目錄(list)設定不同的運動的運動信息的情況下,設定按照每個參照幀目錄選擇運動而得到的運動信息也可。
在得到臨時運動信息tmv之后,運動信息生成部106利用該臨時運動信息求取相對應的參照視點上的參照區(qū)域rblk(步驟S1405)。具體地,通過對對應區(qū)域cblk加上臨時運動信息tmv來求取。再有,參照區(qū)域rblk為由臨時運動信息示出的時間上不同的幀上的區(qū)域。
在得到參照區(qū)域rblk之后,視差信息生成部105設定參照區(qū)域rblk中的與編碼對象圖像的視差矢量dv_dstblk(與本發(fā)明的過去視差信息對應)(步驟S1406)。
在此的處理只要作為對象的區(qū)域或視點和終點所對應的視點不同就與步驟S1401或S1403相同,使用怎樣的方法都可以。再有,不使用與步驟S1401或S1403相同的方法也可。
在最后,運動信息生成部106使用dv_srcblk、dv_dstblk、tmv,按照下面的(1)式來求取針對編碼對象區(qū)域blk的運動信息mv(步驟S1407)。
mv = tmv + dv_dstblk - dv_srcblk…(1)。
再有,在前述的說明中,將運動信息mv直接設定為編碼對象區(qū)域blk的運動信息,但是,預先設定時間間隔,按照該預先確定的時間間隔和生成運動信息mv的時間間隔對運動信息mv進行縮放,設定將以前的時間間隔替換為該預先確定的時間間隔而得到的運動信息也可。
通過像這樣做,從而針對不同的區(qū)域而生成的運動信息全部具有相同的時間間隔,將在運動補償預測時參照的圖像統(tǒng)一,能夠限定訪問的存儲器空間。
再有,訪問的存儲器空間被限定,由此,能夠進行高速緩存命中(cache hit)(目標的數(shù)據(jù)存在于高速緩存(cache)區(qū)域,可讀出)來提高處理速度。
此外,在前述的說明中,假設針對全部對應區(qū)域cblk而存在參照視點運動信息,但是,在對應區(qū)域cblk中進行幀內預測的情況下等,也存在不存在參照視點運動信息的可能性。在那樣的情況下,假設未得到運動信息而結束處理也可,使用預先確定的方法設定運動信息也可。
在對應區(qū)域cblk中不存在參照視點運動信息的情況下,作為設定臨時運動信息的方法,例如,設定由預先確定的時間間隔和零矢量構成的臨時運動信息也可,存儲針對在稍前處理的編碼對象區(qū)域而生成的臨時運動信息來設定所存儲的臨時運動信息也可。
再有,存儲的臨時運動信息在固定的定時向零矢量重置也可。
此外,在針對對應區(qū)域cblk而不存在參照視點運動信息的情況下,在不設定臨時運動信息的情況下,使用預先確定的方法直接生成針對編碼對象區(qū)域blk的運動信息mv也可。例如,設定由預先確定的時間間隔和零矢量構成的運動信息也可。
進而,在前述的說明中,針對編碼對象區(qū)域blk整體而生成1個運動信息(按照參照幀或預測方向的每一個包含多個運動矢量和參照幀也可),但是,將編碼對象區(qū)域分割為小區(qū)域,按照每個該小區(qū)域生成運動信息也可。
在該情況下,按照每個小區(qū)域重復圖3所示的處理也可,按照每個小區(qū)域僅重復圖3的一部分處理(例如S1402~1407)也可。
接著,對本實施方式中的活動圖像解碼裝置進行說明。圖4是示出本實施方式中的活動圖像解碼裝置的結構的框圖。
活動圖像解碼裝置200如圖4所示那樣具備:位流輸入部201、位流存儲器202、參照視點運動信息輸入部203、參照視點運動信息存儲器204、視差信息生成部205、運動信息生成部206、圖像解碼部207、以及參照圖像存儲器208。
位流輸入部201將成為解碼對象的活動圖像的位流輸入到活動圖像解碼裝置200中。在以下,將該成為解碼對象的活動圖像的1個幀稱為解碼對象圖像。在此,指視點B的活動圖像的1個幀。此外,在以下,將拍攝了解碼對象圖像的視點(在此為視點B)稱為解碼對象視點。
位流存儲器202存儲所輸入的針對解碼對象圖像的位流。
參照視點運動信息輸入部203將針對參照視點(在此為視點A)的活動圖像的運動信息(運動矢量等)輸入到活動圖像解碼裝置200中。在以下,將在此輸入的運動信息稱為參照視點運動信息,將提供參照視點運動信息的與解碼對象圖像相同時刻的幀稱為參照視點圖像。
參照視點運動信息存儲器204存儲所輸入的參照視點運動信息。
再有,位流或參照視點運動信息被存儲在活動圖像解碼裝置200的外部,只要位流輸入部201或參照視點運動信息輸入部203在適當?shù)亩〞r將需要的位流或參照視點運動信息輸入到活動圖像解碼裝置200中,則也可以不具備位流存儲器202或參照視點運動信息存儲器204。
視差信息生成部205生成解碼對象圖像與參照視點圖像的視差信息(視差矢量)。
運動信息生成部206使用參照視點運動信息和視差信息來生成解碼對象圖像的運動信息。
圖像解碼部207使用所生成的運動信息來根據(jù)位流對解碼對象圖像進行解碼并輸出。
參照圖像存儲器208存儲所得到的解碼對象圖像,以便以后的解碼。
接著,參照圖5來說明圖4所示的活動圖像解碼裝置200的工作。圖5是示出圖4所示的活動圖像解碼裝置200的工作的流程圖。
首先,位流輸入部201將對解碼對象圖像進行編碼后的結果的位流輸入到活動圖像解碼裝置200中,并存儲到位流存儲器202中。參照視點運動信息輸入部203將參照視點運動信息輸入到活動圖像解碼裝置200中,并存儲到參照視點運動信息存儲器204中(步驟S201)。
再有,假設在步驟S201中輸入的參照視點運動信息與在編碼側使用的信息相同。這是因為,通過使用與由活動圖像編碼裝置得到的信息完全相同的信息,從而抑制漂移等編碼噪聲的產(chǎn)生。但是,在容許那樣的編碼噪聲的產(chǎn)生的情況下,也可以輸入與在編碼時使用的信息不同的信息。
關于參照視點運動信息,也可以使用在對參照視點圖像進行解碼時使用的運動信息,也可以為針對參照視點另外編碼后的信息。此外,也能夠對針對參照視點的活動圖像進行解碼而使用根據(jù)此估計而得到的運動信息。
在位流和參照視點運動信息的輸入結束之后,將解碼對象圖像分割為預先確定的大小的區(qū)域,按照每個所分割的區(qū)域根據(jù)位流對解碼對象圖像的視頻信號進行解碼(步驟S202~S206)。
即,當假設使用blk表示解碼對象區(qū)域索引并且使用numBlks表示1個幀中的總解碼對象區(qū)域數(shù)目時,使用0初始化blk(步驟S202),之后,一邊對blk加上1(步驟S205),一邊重復以下的處理(步驟S203、S204)直到blk變?yōu)閚umBlks(步驟S206)。
在通常的解碼中,向16像素×16像素的被稱為宏塊的處理單位塊分割,但是,只要與編碼側相同,則也可以分割為其他的大小的塊。此外,也可以分割為按照每個場所不同的大小的塊。
在按照每個解碼對象區(qū)域重復的處理中,首先,運動信息生成部206生成解碼對象區(qū)域blk中的運動信息mv(步驟S203)。在此的處理只要“編碼”與“解碼”不同就與前述的步驟S103相同。
在得到針對解碼對象區(qū)域blk的運動信息mv之后,圖像解碼部207使用該運動信息mv一邊參照被存儲在參照圖像存儲器208中的圖像一邊根據(jù)位流對針對解碼對象區(qū)域blk的解碼對象圖像的圖像信號(像素值)進行解碼(步驟S204)。所得到的解碼對象圖像被存儲在參照圖像存儲器208中,并且,成為活動圖像解碼裝置200的輸出。
在解碼對象圖像的解碼中,使用與在編碼時使用的方法對應的方法。例如,在使用MPEG-2、H. 264/AVC等通常的編碼的情況下,對碼數(shù)據(jù)依次實施熵解碼、逆二值化、逆量化、IDCT等頻率逆變換,對所得到的二維信號加上預測圖像,最后在像素值的值域中進行裁剪,由此,對該圖像信號進行解碼。
再有,怎樣使用所生成的運動信息mv來進行解碼都可以。例如,將利用運動信息mv的運動補償預測圖像作為預測圖像來對解碼對象區(qū)域blk的視頻信號進行解碼也可。
作為另外的方法,根據(jù)位流對針對mv的補正矢量cmv進行解碼,將按照通過cmv補正mv后的運動信息而生成的運動補償預測圖像作為預測圖像,對解碼對象區(qū)域blk的圖像信號進行解碼也可。在該情況下,關于針對cmv的位流,需要被包含在輸入到該活動圖像解碼裝置中的位流內或者另外提供。
再有,在前述的說明中,說明了對1個幀進行編碼和解碼的處理,但是,能夠通過重復多個幀來對活動圖像進行編碼。再有,不應用于活動圖像的全部的幀也可。
此外,在前述的說明中,說明為對圖像整體進行編碼/解碼的處理,但是,也能夠僅應用于圖像的一部分。在該情況下,判斷是否應用處理,對示出其的標志進行編碼或解碼也可,使用某些另外的方案來指定其也可。例如,表現(xiàn)為示出生成每個區(qū)域的預測圖像的手法的模式之一也可。
進而,在前述的說明中,說明了活動圖像編碼裝置和活動圖像解碼裝置的結構和處理工作,但是,能夠通過與這些活動圖像編碼裝置和活動圖像解碼裝置的各部的工作對應的處理工作來實現(xiàn)本發(fā)明的活動圖像編碼方法和活動圖像解碼方法。
像這樣,在生成處理對象的視點處的運動信息時,不直接再次利用已有的運動信息,而是使用針對與編碼或解碼的處理對象的視點不同的視點的運動信息,考慮與已有的運動信息對應的三維空間中的運動信息,對針對與處理對象的視點不同的視點的運動信息施加變換來利用。由此,即使在視點不同的幀上的運動信息中的攝像機間相關性低的情況下,也能夠針對運動信息實現(xiàn)精度高的預測,能夠以少的碼量對多視點活動圖像進行編碼。
圖6是示出通過計算機和軟件程序構成前述的活動圖像編碼裝置100的情況下的硬件結構的框圖。圖6所示的系統(tǒng)為以總線連接有以下各部的結構:執(zhí)行程序的CPU50、CPU50訪問的儲存有程序、數(shù)據(jù)的RAM等存儲器51、將來自攝像機等的編碼對象的視頻信號輸入到活動圖像編碼裝置內的編碼對象圖像輸入部52(也可以是利用磁盤裝置等的存儲視頻信號的存儲部)、從存儲器等將參照視點的運動信息輸入到活動圖像編碼裝置內的參照視點運動信息輸入部53(也可以是利用磁盤裝置等的存儲運動信息的存儲部)、儲存有使CPU50執(zhí)行活動圖像編碼處理的軟件程序即活動圖像編碼程序541的程序存儲裝置54、以及例如經(jīng)由網(wǎng)絡輸出通過CPU50執(zhí)行被加載到存儲器51中的活動圖像編碼程序541而生成的位流的位流輸出部55(也可以是利用磁盤裝置等的存儲位流的存儲部)。
圖7是示出通過計算機和軟件程序構成前述的活動圖像解碼裝置200的情況下的硬件結構的框圖。圖7所示的系統(tǒng)為以總線連接有以下各部的結構:執(zhí)行程序的CPU60、CPU60訪問的儲存有程序、數(shù)據(jù)的RAM等存儲器61、將活動圖像編碼裝置利用本手法來進行編碼后的位流輸入到活動圖像解碼裝置內的位流輸入部62(也可以是利用磁盤裝置等的存儲位流的存儲部)、將來自攝像機等的參照視點的運動信息輸入到活動圖像解碼裝置內的參照視點運動信息輸入部63(也可以是利用磁盤裝置等的存儲運動信息的存儲部)、儲存有使CPU60執(zhí)行活動圖像解碼處理的軟件程序即活動圖像解碼程序641的程序存儲裝置64、以及將通過CPU60執(zhí)行被加載到存儲器61中的活動圖像解碼程序641來對位流進行解碼而得到的解碼對象圖像輸出到再生裝置等中的解碼對象圖像輸出部65(也可以是利用磁盤裝置等的存儲圖像信號的存儲部)。
也可以通過計算機實現(xiàn)前述的實施方式中的活動圖像編碼裝置100和活動圖像解碼裝置200。在該情況下,將用于實現(xiàn)該功能的程序記錄在計算機可讀取的記錄介質中,使計算機系統(tǒng)讀入記錄在該記錄介質中的程序并執(zhí)行,由此,也可以實現(xiàn)。
再有,在此所說的“計算機系統(tǒng)”包含OS、周圍設備等硬件。
此外,“計算機可讀取的記錄介質”是指軟盤、光磁盤、ROM、CD-ROM等可移動介質、內置于計算機系統(tǒng)的硬盤等存儲裝置。
進而,“計算機可讀取的記錄介質”也可以還包含像經(jīng)由因特網(wǎng)等網(wǎng)絡或電話線路等通信線路來發(fā)送程序的情況下的通信線那樣在短時間的期間動態(tài)地保持程序的記錄介質、像該情況下的成為服務器或客戶端的計算機系統(tǒng)內部的易失性存儲器那樣將程序保持固定時間的記錄介質。
此外,上述程序也可以是用于實現(xiàn)前述的功能的一部分的程序,進而,也可以是能通過與已經(jīng)記錄在計算機系統(tǒng)中的程序的組合來實現(xiàn)前述的功能的程序,也可以是使用PLD(Programmable Logic Device,可編程邏輯器件)、FPGA(Field Programmable Gate Array,現(xiàn)場可編程門陣列)等硬件來實現(xiàn)的程序。
以上,參照附圖來說明了本發(fā)明的實施方式,但是,上述實施方式只不過是本發(fā)明的例示,顯然本發(fā)明并不限定于上述實施方式。因此,也可以在不偏離本發(fā)明的技術思想和范圍的范圍內進行結構要素的追加、省略、替換、其他的變更。
產(chǎn)業(yè)上的可利用性
能夠應用于在使用針對從與拍攝了編碼(解碼)對象圖像的視點不同的視點拍攝的圖像的運動信息來一邊進行編碼(解碼)對象圖像的運動信息的估計或預測一邊進行編碼(解碼)時即使在視點不同的圖像上的運動信息中的攝像機間相關性低的情況下也達成高的編碼效率而不可缺少的用途。
附圖標記的說明
100…活動圖像編碼裝置
101…編碼對象圖像輸入部
102…編碼對象圖像存儲器
103…參照視點運動信息輸入部
104…參照視點運動信息存儲器
105…視差信息生成部
106…運動信息生成部
107…圖像編碼部
108…圖像解碼部
109…參照圖像存儲器
200…活動圖像解碼裝置
201…位流輸入部
202…位流存儲器
203…參照視點運動信息輸入部
204…參照視點運動信息存儲器
205…視差信息生成部
206…運動信息生成部
207…圖像解碼部
208…參照圖像存儲器。