JP2013207755A - 画像処理装置および方法 - Google Patents

画像処理装置および方法 Download PDF

Info

Publication number
JP2013207755A
JP2013207755A JP2012077823A JP2012077823A JP2013207755A JP 2013207755 A JP2013207755 A JP 2013207755A JP 2012077823 A JP2012077823 A JP 2012077823A JP 2012077823 A JP2012077823 A JP 2012077823A JP 2013207755 A JP2013207755 A JP 2013207755A
Authority
JP
Japan
Prior art keywords
image
unit
block
information
prediction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2012077823A
Other languages
English (en)
Inventor
Kenji Kondo
健治 近藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2012077823A priority Critical patent/JP2013207755A/ja
Priority to US13/759,518 priority patent/US20130259131A1/en
Priority to CN2013100903193A priority patent/CN103369316A/zh
Publication of JP2013207755A publication Critical patent/JP2013207755A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding

Abstract

【課題】符号化効率を向上させることができるようにする。
【解決手段】本技術の画像処理装置は、動き情報を参照する参照ブロックとして、カレントブロックの画像と異なる視点の符号化済みの画像の互いに異なるブロックを示す複数の参照ブロック情報を生成する生成部と、前記生成部により生成された複数の前記参照ブロック情報のそれぞれが示すブロックの中から、前記動き情報の参照先とするブロックを選択する選択部と、前記選択部により選択されたブロックの動き情報を参照して生成された前記カレントブロックの予測画像と前記カレントブロックの画像との差分画像を符号化する符号化部と、前記符号化部により生成された符号化データと前記選択部により選択されたブロックを示す前記参照ブロック情報とを伝送する伝送部とを備える。本技術は画像処理装置に適用することができる。
【選択図】図10

Description

本技術は、画像処理装置および方法に関し、特に、符号化効率を向上させることができるようにした画像処理装置および方法に関する。
従来、画像情報をデジタルとして取り扱い、その際、効率の高い情報の伝送、蓄積を目的とし、画像情報特有の冗長性を利用して、離散コサイン変換等の直交変換と動き補償により圧縮するMPEG(Moving Picture Experts Group)などの方式に準拠した装置が、放送局などの情報配信、及び一般家庭における情報受信の双方において普及した。
近年、H.264及びMPEG-4 Part10 (Advanced Video Coding、以下AVCと記す)より更なる符号化効率の向上を目的として、ITU-T(International Telecommunication Union Telecommunication Standardization Sector)と、ISO(International Organization for Standardization)/IEC(International Electrotechnical Commission)の共同の標準化団体であるJCTVC(Joint Collaboration Team - Video Coding)により、HEVC(High Efficiency Video Coding)と呼ばれる符号化方式の標準化が進められている(例えば、非特許文献1参照)。
このHEVC符号化方式においては、AVCにおけるマクロブロックと同様の処理単位としてコーディングユニット(CU(Coding Unit))が定義されている。このCUは、AVCのマクロブロックのようにサイズが16×16画素に固定されず、それぞれのシーケンスにおいて、画像圧縮情報中において指定される。
さらに、このような符号化技術を用いて、視差を利用して立体視表示される多視点画像の符号化への利用も提案されている。
ところで、動き情報の符号化方式の1つとして、Merge_FlagとMerge_Left_Flagが伝送される、Motion Partition Mergingと呼ばれる手法(マージモード)が提案されている(例えば、非特許文献2参照)。
このようなマージモードを、多視点画像の符号化に用いることを考える。多視点画像の場合、画像は複数のビュー(各視点の画像)よりなるので、より符号化効率を向上させるためには、このビュー間(視差方向)の相関性を利用した視点予測の利用も可能である。
Thomas Wiegand, Woo-Jin Han, Benjamin Bross, Jens-Rainer Ohm, Gary J. Sullivan, "Working Draft 1 of High-Efficiency Video Coding ", JCTVC-C403, Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG113rd Meeting: Guangzhou, CN, 7-15 October, 2010 Martin Winken, Sebastian Bosse, Benjamin Bross, Philipp Helle, Tobias Hinz, Heiner Kirchhoffer, Haricharan Lakshman, Detlev Marpe, Simon Oudin, Matthias Preiss, Heiko Schwarz, Mischa Siekmann, Karsten Suehring, and Thomas Wiegand,"Description of video coding technology proposed by Fraunhofer HHI",JCTVC-A116,April,2010
しかしながら、各ビューの画像は被写体の位置が互いにずれる可能性がある。そのため、視点が異なる符号化済みピクチャ領域を参照する視点予測の場合、従来の空間予測や時間予測の場合と同様に視点の異なるカレントブロックに近い位置を参照すると、カレントブロックの動きと異なる動きを参照してしまい、動き情報の予測精度が低減し、符号化効率が低減してしまう恐れがあった。
本技術は、このような状況に鑑みて提案されたものであり、符号化効率を向上させることを目的とする。
本技術の一側面は、動き情報を参照する参照ブロックとして、カレントブロックの画像と異なる視点の符号化済みの画像の互いに異なるブロックを示す複数の参照ブロック情報を生成する生成部と、前記生成部により生成された複数の前記参照ブロック情報のそれぞれが示すブロックの中から、前記動き情報の参照先とするブロックを選択する選択部と、前記選択部により選択されたブロックの動き情報を参照して生成された前記カレントブロックの予測画像と前記カレントブロックの画像との差分画像を符号化する符号化部と、前記符号化部により生成された符号化データと前記選択部により選択されたブロックを示す前記参照ブロック情報とを伝送する伝送部とを備える画像処理装置である。
前記参照ブロック情報は、前記参照ブロックを識別する識別情報であるようにすることができる。
各参照ブロックは、前記カレントブロックの画像と異なる視点の符号化済みの画像の、前記カレントブロックと同じ位置のコロケーテッドブロックから、互いに異なる向きに離れた位置のブロックであるようにすることができる。
前記伝送部は、前記カレントブロックの画像と異なる視点の符号化済みの画像の前記参照ブロックの位置を示す視点予測情報を伝送することができる。
前記視点予測情報は、前記参照ブロックの、前記カレントブロックと同じ位置のコロケーテッドブロックからの相対位置を示す情報であるようにすることができる。
前記視点予測情報は、前記参照ブロックの、前記カレントブロックと同じ位置のコロケーテッドブロックからの相対位置を示す情報であるようにすることができる。
前記視点予測情報は、互いに異なる参照ブロックの前記距離を示す複数の情報を含むことができる。
前記視点予測情報は、各参照ブロックの前記コロケーテッドブロックからの方向を示す情報をさらに含むことができる。
前記伝送部は、前記参照ブロックとして、前記カレントブロックの画像と異なる視点の符号化済みの画像のブロックを用いるか否かを示すフラグ情報を伝送することができる。
前記符号化部は、前記画像を多視点符号化することができる。
本技術の一側面は、また、画像処理装置の画像処理方法において、前記画像処理装置が、動き情報を参照する参照ブロックとして、カレントブロックの画像と異なる視点の符号化済みの画像の互いに異なるブロックを示す複数の参照ブロック情報を生成し、生成された複数の前記参照ブロック情報のそれぞれが示すブロックの中から、前記動き情報の参照先とするブロックを選択し、選択されたブロックの動き情報を参照して生成された前記カレントブロックの予測画像と前記カレントブロックの画像との差分画像を符号化し、生成された符号化データと選択されたブロックを示す前記参照ブロック情報とを伝送する画像処理方法である。
本技術の他の側面は、カレントブロックの画像と異なる視点の復号済みの画像の複数のブロックの中から、動き情報の参照先として選択された参照ブロックを示す参照ブロック情報を受け取る受け取り部と、前記受け取り部により受け取られた前記参照ブロック情報により示される前記参照ブロックの動き情報を用いて、前記カレントブロックの動き情報を生成する生成部と、前記生成部により生成された前記動き情報を用いて、前記カレントブロックの符号化データを復号する復号部とを備える画像処理装置である。
前記参照ブロック情報は、前記参照ブロックを識別する識別情報であるようにすることができる。
前記カレントブロックの画像と異なる視点の復号済みの画像の複数のブロックは、前記カレントブロックと同じ位置のコロケーテッドブロックから、互いに異なる向きに離れた位置のブロックであるようにすることができる。
前記参照ブロックを特定する特定部をさらに備え、前記受け取り部は、前記カレントブロックの画像と異なる視点の復号済みの画像の前記参照ブロックの位置を示す視点予測情報を受け取り、前記特定部は、前記受け取り部により受け取られた前記参照ブロック情報および前記視点予測情報を用いて前記参照ブロックを特定し、前記生成部は、前記特定部により特定された前記参照ブロックの動き情報を用いて、前記カレントブロックの動き情報を生成することができる。
前記視点予測情報は、前記参照ブロックの、前記カレントブロックと同じ位置のコロケーテッドブロックからの相対位置を示す情報であるようにすることができる。
前記視点予測情報は、前記参照ブロックの前記コロケーテッドブロックからの距離を示す情報を含むことができる。
前記視点予測情報は、互いに異なる参照ブロックの前記距離を示す複数の情報を含むことができる。
前記視点予測情報は、各参照ブロックの前記コロケーテッドブロックからの方向を示す情報をさらに含むことができる。
本技術の他の側面は、また、画像処理装置の画像処理方法において、前記画像処理装置が、カレントブロックの画像と異なる視点の復号済みの画像の複数のブロックの中から、動き情報の参照先として選択された参照ブロックを示す参照ブロック情報を受け取り、受け取られた前記参照ブロック情報により示される前記参照ブロックの動き情報を用いて、前記カレントブロックの動き情報を生成し、生成された前記動き情報を用いて、前記カレントブロックの符号化データを復号する画像処理方法である。
本技術の一側面においては、動き情報を参照する参照ブロックとして、カレントブロックの画像と異なる視点の符号化済みの画像の互いに異なるブロックを示す複数の参照ブロック情報が生成され、生成された複数の参照ブロック情報のそれぞれが示すブロックの中から、動き情報の参照先とするブロックが選択され、選択されたブロックの動き情報を参照して生成されたカレントブロックの予測画像とカレントブロックの画像との差分画像が符号化され、その符号化により生成された符号化データと選択されたブロックを示す参照ブロック情報とが伝送される。
本技術の他の側面においては、カレントブロックの画像と異なる視点の復号済みの画像の複数のブロックの中から、動き情報の参照先として選択された参照ブロックを示す参照ブロック情報が受け取られ、受け取られた参照ブロック情報により示される参照ブロックの動き情報を用いて、カレントブロックの動き情報が生成され、生成された動き情報を用いて、カレントブロックの符号化データが復号される。
本技術によれば、情報を処理することが出来る。特に、符号化効率を向上させることができる。
視差と奥行きについて説明する図である。 マージモードを説明する図である。 多視点画像の符号化の様子の例を説明する図である。 視差と動き情報の関係の例を説明する図である。 視差と動き情報の関係の他の例を説明する図である。 マージモードの参照ブロックの例を説明する図である。 マージモードの参照ブロックの例を説明する図である。 画像符号化装置の主な構成例を示すブロック図である。 コーディングユニットを説明する図である。 マージモード処理部の主な構成例を示すブロック図である。 シーケンスパラメータセットのシンタクスの例を示す図である。 ピクチャパラメータセットのシンタクスの例を示す図である。 シーケンス符号化処理の流れの例を説明するフローチャートである。 シーケンスパラメータセット符号化処理の流れの例を説明するフローチャートである。 ピクチャ符号化処理の流れの例を説明するフローチャートである。 ピクチャパラメータセット符号化処理の流れの例を説明するフローチャートである。 スライス符号化処理の流れの例を説明するフローチャートである。 CU符号化処理の流れの例を説明するフローチャートである。 CU符号化処理の流れの例を説明する、図18に続くフローチャートである。 マージモード処理の流れの例を説明するフローチャートである。 CUマージモード符号化処理の流れの例を説明するフローチャートである。 PU符号化処理の流れの例を説明するフローチャートである。 TU符号化処理の流れの例を説明するフローチャートである。 画像復号装置の主な構成例を示すブロック図である。 マージモード処理部の主な構成例を示すブロック図である。 シーケンス復号処理の流れの例を説明するフローチャートである。 シーケンスパラメータセット復号処理の流れの例を説明するフローチャートである。 ピクチャ復号処理の流れの例を説明するフローチャートである。 ピクチャパラメータセット復号処理の流れの例を説明するフローチャートである。 スライス復号処理の流れの例を説明するフローチャートである。 CU復号処理の流れの例を説明するフローチャートである。 CU復号処理の流れの例を説明する、図31に続くフローチャートである。 CUマージモード復号処理の流れの例を説明するフローチャートである。 PU復号処理の流れの例を説明するフローチャートである。 TU復号処理の流れの例を説明するフローチャートである。 コンピュータの主な構成例を示すブロック図である。 テレビジョン装置の概略的な構成の一例を示すブロック図である。 携帯電話機の概略的な構成の一例を示すブロック図である。 記録再生装置の概略的な構成の一例を示すブロック図である。 撮像装置の概略的な構成の一例を示すブロック図である。
以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
1.第1の実施の形態(画像符号化装置)
2.第2の実施の形態(画像復号装置)
3.第3の実施の形態(その他の方法)
4.第4の実施の形態(コンピュータ)
5.第5の実施の形態(応用例)
<1.第1の実施の形態>
[1−1本明細書におけるデプス画像(視差画像)の説明]
図1は、視差と奥行きについて説明する図である。
図1に示されるように、被写体Mのカラー画像が、位置C1に配置されたカメラc1と位置C2に配置されたカメラc2により撮影される場合、被写体Mの、カメラc1(カメラc2)からの奥行方向の距離である奥行きZは、以下の式(a)で定義される。
Z=(L/d)*f ・・・(a)
なお、Lは、位置C1と位置C2の水平方向の距離(以下、カメラ間距離という)である。また、dは、カメラc1で撮影されたカラー画像上の被写体Mの位置の、カラー画像の中心からの水平方向の距離u1から、カメラc2で撮影されたカラー画像上の被写体Mの位置の、カラー画像の中心からの水平方向の距離u2を減算した値、即ち視差である。さらに、fは、カメラc1の焦点距離であり、式(a)では、カメラc1とカメラc2の焦点距離は同一であるものとしている。
式(a)に示すように、視差dと奥行きZは、一意に変換可能である。従って、本明細書では、カメラc1とカメラc2により撮影された2視点のカラー画像の視差dを表す画像と奥行きZを表す画像とを総称して、デプス画像(視差画像)とする。
なお、デプス画像(視差画像)は、視差dまたは奥行きZを表す画像であればよく、デプス画像(視差画像)の画素値としては、視差dまたは奥行きZそのものではなく、視差dを正規化した値、奥行きZの逆数1/Zを正規化した値等を採用することができる。
視差dを8bit(0〜255)で正規化した値Iは、以下の式(b)により求めることができる。なお、視差dの正規化ビット数は8bitに限定されず、10bit,12bitなど他のビット数にすることも可能である。
I={255*(d-Dmin)}/{Dmax-Dmin} ・・・(b)
なお、式(b)において、Dmaxは、視差dの最大値であり、Dminは、視差dの最小値である。最大値Dmaxと最小値Dminは、1画面単位で設定されてもよいし、複数画面単位で設定されてもよい。
また、奥行きZの逆数1/Zを8bit(0〜255)で正規化した値yは、以下の式(c)により求めることができる。なお、奥行きZの逆数1/Zの正規化ビット数は8bitに限定されず、10bit,12bitなど他のビット数にすることも可能である。
y=255*(1/Z-1/Zfar)/(1/Znear-1/Zfar) ・・・(c)
なお、式(c)において、Zfarは、奥行きZの最大値であり、Znearは、奥行きZの最小値である。最大値Zfarと最小値Znearは、1画面単位で設定されてもよいし、複数画面単位で設定されてもよい。
このように、本明細書では、視差dと奥行きZとは一意に変換可能であることを考慮して、視差dを正規化した値Iを画素値とする画像と、奥行きZの逆数1/Zを正規化した値yを画素値とする画像とを総称して、デプス画像(視差画像)とする。ここでは、デプス画像(視差画像)のカラーフォーマットは、YUV420又はYUV400であるものとするが、他のカラーフォーマットにすることも可能である。
なお、デプス画像(視差画像)の画素値としてではなく、値I又は値yの情報自体に着目する場合には、値I又は値yを、デプス情報(視差情報)とする。更に、値I又は値yをマッピングしたものをデプスマップ(視差マップ)とする。
[1−2マージモード]
図2は、マージモードを説明する図である。非特許文献2には、動き情報の符号化方式の1つとして、図2に示されるような、Motion Partition Mergingと呼ばれる手法(マージモード)が提案されている。この手法においては、Merge_Flagと、Merge_Left_Flagという、2つのflagが、マージモードに関する情報であるマージ情報として伝送される。
Merge_Flag=1は、カレントブロックXの動き情報が、カレントブロックXの上に隣接する周辺ブロックT、若しくは、カレントブロックXの左に隣接する周辺ブロックLの動き情報と同一であることを示す。この時、マージ情報には、Merge_Left_Flagが含められ、伝送される。Merge_Flag=0は、カレントブロックXの動き情報が、周辺ブロックTおよび周辺ブロックLのいずれの動き情報とも異なることを示す。この場合、カレントブロックXの動き情報が伝送される。
カレントブロックXの動き情報が、周辺ブロックLの動き情報と同一である場合、Merge_Flag=1、かつ、Merge_Left_Flag=1となる。カレントブロックXの動き情報が、周辺ブロックTの動き情報と同一である場合、Merge_Flag=1、かつ、Merge_Left_Flag=0となる。
このように、マージモードにおいては、空間的な周辺ブロックが、動き情報を参照するブロック(参照ブロック)の候補とされる。このような空間方向の相関性を利用した動き情報の予測を空間予測と称する。
ところで動画像の場合、相関性の高い複数のピクチャが時間方向に並ぶ。そこで、このようなマージモードにおいて、空間的な周辺ブロックだけでなく、時間的な周辺ブロック、すなわち、符号化済みの異なるピクチャのブロックも、マージモードにおける参照ブロックの候補とされる。このような時間方向の相関性を利用した動き情報の予測を時間予測と称する。
[1−3多視点画像]
さらに、所謂3D画像のような多視点画像の符号化の場合、互いに視点(ビュー)が異なる複数系統の画像が存在する。つまり、相関性の高い複数のピクチャが視点方向(ビュー方向)に並ぶ。
そこで、視点的な周辺ブロック、つまり、他のビューの符号化済み画像(カレントブロックのビューと異なるビューの符号化済み画像)のブロックをマージモードにおける参照ブロックの候補とするようにする。このような視点方向の相関性を利用した動き情報の予測を視点予測と称する。
図3は、多視点画像の符号化の様子の例を説明する図である。例えば、右眼用画像であるビューRと左眼用画像であるビューLとからなる立体視用の3D画像の符号化の場合、各ピクチャは、図中矢印で示されるように、ビューRとビューLが交互に符号化される。
図3において、符号化対象であるカレントピクチャが左眼用画像のLtとする。この場合、1視点の画像の場合と同様に、そのカレントピクチャLtの、カレントブロックの近傍(隣接を含む)に位置するブロックが、マージモードの参照ブロックの候補とする空間的な周辺ブロックに設定される。
また、1視点の画像の場合と同様に、例えばカレントピクチャLtの1つ前に符号化されたピクチャL(t−1)(時間予測参照ピクチャ)の、カレントブロックと同じ位置のブロックであるコロケーテッドブロック、若しくは、その近傍に位置するブロックが、マージモードの参照ブロックの候補とする時間的な周辺ブロックに設定される。
これらに対して、右眼用画像のカレントピクチャと略同時刻のピクチャRt内に存在するブロックが、マージモードの参照ブロックの候補とする視点的な周辺ブロック設定される。
例えばシーンチェンジが発生した直後のように時間方向の相関性が低減し、かつ、動物体と背景との境界近傍のように、間方向の相関性が低減する場合、特に、このような視点方向のマージモードの参照ブロックの候補が有用になってくる。つまり、一般的には、視点方向のマージモードの参照ブロックの候補を設けることにより、符号化効率を向上させることができる。
ただし、ビュー間では視差が存在する。つまり、ピクチャ内における、ある被写体の位置は、ビュー毎に異なる。そのため、ピクチャRtの、カレントブロックと略同じ位置のブロックであるコロケーテッドブロック、若しくは、その周辺に位置するブロックの動き情報は、ピクチャLtのカレントブロックの動き情報と大きく異なる場合が考えられる。
図4は、視差と動き情報の関係の例を説明する図である。
図4に示される例の場合、点線で示されるように、動物体10の位置は、L画像面とR画像面とで互いに異なる。つまり、L画像面の動物体10の位置をカレントブロック(Current)とすると、R画像面におけるそのコロケーテッドブロック(Co-located)には、動物体10の画像が存在しない。したがって、例えば、R画像面におけるそのコロケーテッドブロックを動き情報の参照先とすると、カレントブロックの動き情報(動物体10の動きを表す動き情報)とは全く異なる動き情報が得られることになる。
仮にこのようなブロックの動き情報を用いて予測画像を生成すると、その予測精度が低減し、符号量が増大する恐れがある。つまり、符号化効率が低減する恐れがある。また、仮に、このようなブロックをマージモードにおける参照ブロックの候補の1つとすると、予測精度が低いので、このようなブロックは参照先として選択されない。つまり、このようなブロックは、符号化効率の向上に寄与しない。
そこで、視点予測の場合、コロケーテッドブロックやその近傍のブロックではなく、正しい動き情報を持つブロックを参照ブロックの候補とするようにする。
例えば、過去の奥行き情報と動き情報から現在時刻の奥行き情報を予測し、この予測された奥行情報から正しい動き情報を持ったブロック位置を予測することが考えられる。しかしながら、この方法の場合、参照先とするブロックの位置を逐一求めなければならず、処理量が極端に増大してしまうので、現実的ではない。
また、正しい動き情報を持ったブロック位置とCo-locatedブロック位置との距離情報を、ピクチャに1つずつ、符号化データに付加する方法が考えられる。しかしながら、この方法の場合、カレントピクチャで1つの位置しか正しい動き情報を持ったブロック位置を指定することができない。そのため、例えば、視差が交差するような画像では正しく正しい動き情報を持ったブロックの位置を指定できない。
図5は、視差と動き情報の関係の他の例を説明する図である。
ここで、L画像面のカレントブロックA(Current A)には、被写体11が投影されている。また、L画像面のカレントブロックB(Current B)には、被写体12が投影されている。R画像面のコロケーテッドブロックA(Co-located A)は、L画像面のカレントブロックA(Current A)と同じ位置のブロックである。R画像面のコロケーテッドブロックB(Co-located B)は、L画像面のカレントブロックB(Current B)と同じ位置のブロックである。
図5に示されるように、R画像面の、被写体11が投影されるブロックである、正しい動き情報を持つブロックAは、コロケーテッドブロックBに位置し、R画像面の、被写体12が投影されるブロックである、正しい動き情報を持つブロックBは、コロケーテッドブロックAに位置する。
つまり、正しい動き情報を持つブロックAは、コロケーテッドブロックA(Co-located A)よりも右側に位置する。これに対して、正しい動き情報を持つブロックBは、コロケーテッドブロックB(Co-located B)よりも左側に位置する。つまり、正しい動き情報を持つブロックとコロケーテッドブロック(Co-located)との位置関係は、ピクチャ内で1つに決まるとは限らない。
[1−4多視点画像符号化におけるマージモード]
そこで、マージモードにおいて、参照ブロックの候補に視点的な周辺ブロックを含める場合、複数のブロックを参照ブロックの候補とする。つまり、カレントブロックと異なるビューの、カレントブロックと略同時刻のピクチャに複数の参照ブロックの候補を設ける。このようにすることにより、予測精度がより高いブロックをマージモードの候補に含めることができ、予測精度を向上させることができる。つまり、符号化効率を向上させることができる。
これらの複数のブロックは、コロケーテッドブロックからある程度離れた位置に設定されるようにしてもよい。この距離は、例えばビュー間の視差量に応じて設定することができるようにしてもよい。例えば、被写体を撮像して符号化対象の画像を生成するカメラの設定情報に基づいてこの距離が設定されるようにしてもよい。また、この距離がユーザにより入力されるようにしてもよい。さらに、この距離は、ブロック毎に、互いに独立に設定することができるようにしてもよい。
また、各ブロックは、コロケーテッドブロックから見て互いに異なる方向に設定されるようにしてもよい。例えば、上述した左右画像の場合、左右方向に画像がずれるので、コロケーテッドブロック左方向および右方向のそれぞれに、マージモードにおける参照ブロックの候補とするブロックを設けるようにしてもよい。
図6は、図3に示される3D画像の符号化にける、マージモードの参照ブロックの例を説明する図である。この場合、図6に示されるように、空間的な周辺ブロック(S0乃至S4)や時間的な周辺ブロック(T0およびT1)だけでなく、視点的な周辺ブロック(V0およびV1)も、マージモードの参照ブロックに設定されるようにすることができる。
ブロックV0は、コロケーテッドブロックから左にlength_from_col0だけ離れた位置のブロックである。ブロックV1は、コロケーテッドブロックから右にlength_from_col1だけ離れた位置のブロックである。
図7は、マージモードの参照ブロックの例を説明する図である。図7においては、空間予測、時間予測、および視点予測の参照ブロックの候補の互いの空間的な位置関係を示している。斜線で示されるブロックがカレントブロックを示している。
このようにすることにより、図5の例のように、被写体の位置によって画像が左方向にも右方向にもずれる可能性がある場合であっても、予測精度を向上させることができ、符号化効率を向上させることができる。
なお、図6や図7に示される、カレントブロック(コロケーテッドブロック)とブロックV0との距離を示すlength_from_col0と、カレントブロック(コロケーテッドブロック)とブロックV1との距離を示すlength_from_col1は、復号側の装置に伝送されるようにしてもよい。例えば、length_from_col0およびlength_from_col1は、シーケンスパラメータセットやピクチャパラメータセット等、符号化データの所定の位置に格納されて、復号側に伝送されるようにしてもよい。なお、length_from_col0およびlength_from_col1に、カレントブロックからの方向を示す情報が含まれるようにしてもよい。さらに、length_from_col0およびlength_from_col1を、カレントブロックと同じ位置のコロケーテッドブロックからの相対位置を示す情報としてもよい。
ビュー間の視差量は少なくともピクチャ単位で一定であるので、このコロケーテッドブロックと参照ブロックの各候補との距離は、ピクチャ内では共通とするようにしてもよい。より正確には、上述したように、被写体の位置(奥行き)に応じて左右画像のズレ量は変化するため、この距離は、被写体の位置等に応じてブロック毎に設定するのが望ましい。しかしながら、その場合、処理量が極端に増大する恐れがあるし、また、上述したように候補とするブロックを複数設けることにより、十分な予測精度が得られる。そのため、この距離は、少なくともピクチャ単位以上の単位で共通化するようにしてもよい。
つまり、このコロケーテッドブロックと参照ブロックの各候補との距離を、視点予測情報として伝送するようにしてもよい。例えばピクチャパラメータセットやシーケンスパラメータセット等に含めて伝送するようにしてもよい。
その場合、ブロック毎に動き情報の代わりに伝送されるマージモードの参照ブロックを示す情報は、参照ブロックの候補を識別する識別情報とすることができる。つまり、ブロック毎に伝送する情報の情報量を低減させることができ、符号化効率を向上させることができる。
復号側の装置においては、受信した識別情報と、その識別情報が示すブロックのカレントブロックからの距離を示す情報に基づいて、参照ブロックの特定が可能になる。
[1−5画像符号化装置]
図8は、本技術を適用した画像処理装置である画像符号化装置の主な構成例を示すブロック図である。
図8に示される画像符号化装置100は、例えばHEVC(High Efficiency Video Coding)符号化方式や、H.264及びMPEG(Moving Picture Experts Group)4 Part10(AVC(Advanced Video Coding))符号化方式のように、動画像の画像データを符号化する。
図8に示されるように画像符号化装置100は、A/D変換部101、画面並べ替えバッファ102、演算部103、直交変換部104、量子化部105、可逆符号化部106、および蓄積バッファ107を有する。また、画像符号化装置100は、逆量子化部108、逆直交変換部109、演算部110、ループフィルタ111、フレームメモリ112、選択部113、イントラ予測部114、動き予測・補償部115、予測画像選択部116、およびレート制御部117を有する。
A/D変換部101は、入力された画像データをA/D変換し、変換後の画像データ(デジタルデータ)を画面並べ替えバッファ102に供給し、記憶させる。画面並べ替えバッファ102は、記憶した表示の順番のフレームの画像を、GOP(Group Of Picture)に応じて、符号化のためのフレームの順番に並べ替え、フレームの順番を並び替えた画像を、演算部103に供給する。画面並べ替えバッファ102は、各フレーム画像を、符号化処理の処理単位(符号化単位)となる所定の部分領域毎に演算部103に供給する。
また、画面並べ替えバッファ102は、フレームの順番を並び替えた画像を、同様に部分領域毎に、イントラ予測部114および動き予測・補償部115にも供給する。
演算部103は、画面並べ替えバッファ102から読み出された画像から、予測画像選択部116を介してイントラ予測部114若しくは動き予測・補償部115から供給される予測画像を減算し、その差分情報を直交変換部104に出力する。例えば、イントラ符号化が行われる画像の場合、演算部103は、画面並べ替えバッファ102から読み出された画像から、イントラ予測部114から供給される予測画像を減算する。また、例えば、インター符号化が行われる画像の場合、演算部103は、画面並べ替えバッファ102から読み出された画像から、動き予測・補償部115から供給される予測画像を減算する。
直交変換部104は、演算部103から供給される差分情報に対して、離散コサイン変換やカルーネン・レーベ変換等の直交変換を施す。なお、この直交変換の方法は任意である。直交変換部104は、その直交変換により得られた変換係数を量子化部105に供給する。
量子化部105は、直交変換部104から供給される変換係数を量子化する。量子化部105は、量子化された変換係数を可逆符号化部106に供給する。
可逆符号化部106は、量子化部105において量子化された変換係数を、任意の符号化方式で符号化し、符号化データ(ビットストリーム)を生成する。係数データは、レート制御部117の制御の下で量子化されているので、この符号化データの符号量は、レート制御部117が設定した目標値となる(若しくは目標値に近似する)。
また、可逆符号化部106は、イントラ予測のモードを示す情報等を含むイントラ予測情報をイントラ予測部114から取得し、インター予測のモードを示す情報や動きベクトル情報などを含むインター予測情報を動き予測・補償部115から取得する。さらに、可逆符号化部106は、ループフィルタ111において使用されたフィルタ係数等を取得する。
可逆符号化部106は、これらの各種情報を任意の符号化方式で符号化し、符号化データ(ビットストリーム)に含める(多重化する)。可逆符号化部106は、このように生成された符号化データを蓄積バッファ107に供給して蓄積させる。
可逆符号化部106の符号化方式としては、例えば、可変長符号化または算術符号化等が挙げられる。可変長符号化としては、例えば、H.264/AVC方式で定められているCAVLC(Context-Adaptive Variable Length Coding)などが挙げられる。算術符号化としては、例えば、CABAC(Context-Adaptive Binary Arithmetic Coding)などが挙げられる。
蓄積バッファ107は、可逆符号化部106から供給された符号化データを、一時的に保持する。蓄積バッファ107は、所定のタイミングにおいて、保持している符号化データを、ビットストリームとして、例えば、後段の図示せぬ記録装置(記録媒体)や伝送路などに出力する。つまり、符号化された各種情報が、画像符号化装置100によって画像データが符号化されて得られた符号化データを復号する装置(以下、復号側の装置とも称する)(例えば、後述する図24の画像復号装置300)に供給される。
また、量子化部105において量子化された変換係数は、逆量子化部108にも供給される。逆量子化部108は、その量子化された変換係数を、量子化部105による量子化に対応する方法で逆量子化する。逆量子化部108は、得られた変換係数を、逆直交変換部109に供給する。
逆直交変換部109は、逆量子化部108から供給された変換係数を、直交変換部104による直交変換に対応する方法で逆直交変換する。逆直交変換された出力(局所的に復号された差分情報)は、演算部110に供給される。
演算部110は、逆直交変換部109から供給された逆直交変換結果、すなわち、局所的に復号された差分情報に、予測画像選択部116を介してイントラ予測部114若しくは動き予測・補償部115から供給される予測画像を加算し、局所的に再構成された画像(以下、再構成画像と称する)を得る。その再構成画像は、ループフィルタ111またはフレームメモリ112に供給される。
ループフィルタ111は、デブロックフィルタや適応ループフィルタ等を含み、演算部110から供給される再構成画像に対して適宜フィルタ処理を行う。例えば、ループフィルタ111は、再構成画像に対してデブロックフィルタ処理を行うことにより再構成画像のブロック歪を除去する。また、例えば、ループフィルタ111は、そのデブロックフィルタ処理結果(ブロック歪みの除去が行われた再構成画像)に対して、ウィナーフィルタ(Wiener Filter)を用いてループフィルタ処理を行うことにより画質改善を行う。
なお、ループフィルタ111が、再構成画像に対してさらに、他の任意のフィルタ処理を行うようにしてもよい。また、ループフィルタ111は、必要に応じて、フィルタ処理に用いたフィルタ係数等の情報を可逆符号化部106に供給し、それを符号化させるようにすることもできる。
ループフィルタ111は、フィルタ処理結果(以下、復号画像と称する)をフレームメモリ112に供給する。
フレームメモリ112は、演算部110から供給される再構成画像と、ループフィルタ111から供給される復号画像とをそれぞれ記憶する。フレームメモリ112は、所定のタイミングにおいて、若しくは、イントラ予測部114等の外部からの要求に基づいて、記憶している再構成画像を、選択部113を介してイントラ予測部114に供給する。また、フレームメモリ112は、所定のタイミングにおいて、若しくは、動き予測・補償部115等の外部からの要求に基づいて、記憶している復号画像を、選択部113を介して、動き予測・補償部115に供給する。
選択部113は、フレームメモリ112から出力される画像の供給先を示す。例えば、イントラ予測の場合、選択部113は、フレームメモリ112からフィルタ処理されていない画像(再構成画像)を読み出し、周辺画素として、イントラ予測部114に供給する。
また、例えば、インター予測の場合、選択部113は、フレームメモリ112からフィルタ処理された画像(復号画像)を読み出し、参照画像として、それを動き予測・補償部115に供給する。
イントラ予測部114は、フレームメモリ112から、処理対象領域の周辺に位置する周辺領域の画像(周辺画像)を取得すると、その周辺画像の画素値を用いて、基本的にプレディクションユニット(PU(Prediction Unit))を処理単位として予測画像を生成するイントラ予測(画面内予測)を行う。イントラ予測部114は、予め用意された複数のモード(イントラ予測モード)でこのイントラ予測を行う。
つまり、イントラ予測部114は、候補となる全てのイントラ予測モードで予測画像を生成し、画面並べ替えバッファ102から供給される入力画像を用いて各予測画像のコスト関数値を評価し、最適なモードを選択する。イントラ予測部114は、最適なイントラ予測モードを選択すると、その最適なモードで生成された予測画像を、予測画像選択部116に供給する。
また、イントラ予測部114は、最適なイントラ予測モード等、イントラ予測に関する情報を含むイントラ予測情報を、適宜可逆符号化部106に供給し、符号化させる。
動き予測・補償部115は、画面並べ替えバッファ102から供給される入力画像と、フレームメモリ112から供給される参照画像とを用いて、基本的にPU(inter PU)を処理単位として、動き予測(インター予測)を行い、検出された動きベクトルに応じて動き補償処理を行い、予測画像(インター予測画像情報)を生成する。動き予測・補償部115は、予め用意された複数のモード(インター予測モード)でこのようなインター予測を行う。
つまり、動き予測・補償部115は、候補となる全てのインター予測モードで予測画像を生成し、各予測画像のコスト関数値を評価し、最適なモードを選択する。動き予測・補償部115は、最適なインター予測モードを選択すると、その最適なモードで生成された予測画像を、予測画像選択部116に供給する。
また、動き予測・補償部115は、最適なインター予測モード等、インター予測に関する情報を含むインター予測情報を可逆符号化部106に供給し、符号化させる。
予測画像選択部116は、演算部103や演算部110に供給する予測画像の供給元を選択する。例えば、イントラ符号化の場合、予測画像選択部116は、予測画像の供給元としてイントラ予測部114を選択し、そのイントラ予測部114から供給される予測画像を演算部103や演算部110に供給する。また、例えば、インター符号化の場合、予測画像選択部116は、予測画像の供給元として動き予測・補償部115を選択し、その動き予測・補償部115から供給される予測画像を演算部103や演算部110に供給する。
レート制御部117は、蓄積バッファ107に蓄積された符号化データの符号量に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部105の量子化動作のレートを制御する。
さらに、画像符号化装置100は、インター予測におけるマージモードに関する処理を行うマージモード処理部121を有する。
[1−6コーディングユニット]
ところで、AVCにおいては、符号化の処理単位(符号化単位)として、マクロブロックとサブマクロブロックによる階層構造が規定されている。しかしながら、このマクロブロックサイズを16画素×16画素とするのは、次世代符号化方式の対象となるような、UHD(Ultra High Definition;4000画素×2000画素)といった大きな画枠に対しては、最適ではない。
そこで、PostAVC符号化方式となる、HEVC(High Efficiency Video Coding)においては、マクロブロックの代わりの符号化単位としてコーディングユニット(CU(Coding Unit))が規定されている。
このコーディングユニット(CU)は、コーディングツリーブロック(CTB(Coding Tree Block))とも呼ばれ、AVCにおけるマクロブロックと同様の役割を果たす、ピクチャ単位の画像の多層構造の部分領域である。つまり、CUは、符号化処理の単位(符号化単位)である。マクロブロックの大きさが16×16画素に固定されているのに対し、CUの大きさは固定されておらず、それぞれのシーケンスにおいて画像圧縮情報中に指定されることになる。
特に、最大の大きさを持つCUを、ラージストコーディングユニット(LCU(Largest Coding Unit)と呼び、また、最小の大きさを持つCUをスモーレストコーディングユニット(SCU(Smallest Coding Unit))と称する。すなわち、LCUは、最大符号化単位であり、SCUは、最小符号化単位である。例えば画像圧縮情報に含まれるシーケンスパラメータセットにおいて、これらの領域のサイズが指定されることになるが、それぞれ、正方形で、2の冪乗で表される大きさに限定される。つまり、ある階層の(正方形の)CUが2x2に4分割された各領域が1階層下の(正方形の)CUとなる。
図2に、HEVCで定義されているコーディングユニット(Coding Unit)の例を示す。図2の例では、LCUの大きさが128(2N(N=64))であり、最大階層深度が5(Depth=4)となる。2Nx2Nの大きさのCUは、split_flagの値が「1」である場合、1つ下の階層となる、NxNの大きさのCUに分割される。
更に、CUは、イントラ若しくはインター予測の処理単位となる領域(ピクチャ単位の画像の部分領域)であるプレディクションユニット(Prediction Unit(PU))に分割され、また、直交変換の処理単位となる領域(ピクチャ単位の画像の部分領域)である、トランスフォームユニット(Transform Unit(TU))に分割される。
インター予測のPU(Inter Prediction Unit)の場合、大きさ2Nx2NのCUに対して、2Nx2N、2NxN、Nx2N、NxNの4種類のサイズが設定可能である。つまり、1つのCUに対して、そのCUと同サイズの1つPU、そのCUを縦若しくは横に2分割した2つのPU、若しくは、そのCUを縦および横にそれぞれ2分割した4つのPUを定義することができる。
画像符号化装置100は、このようなピクチャ単位の画像の部分領域を処理単位として符号化に関する各処理を行う。以下においては、画像符号化装置100が、HEVCで定義されるCUを符号化単位とする場合について説明する。つまり、LCUが最大符号化単位となり、SCUが最小符号化単位となる。ただし、画像符号化装置100による符号化の各処理の処理単位は、これに限らず、任意である。例えば、AVCで定義されるマクロブロックやサブマクロブロックを処理単位とするようにしてもよい。
なお、以下において、「ブロック」には、これらの各種領域(例えば、マクロブロック、サブマクロブロック、LCU、CU、SCU、PU、およびTU等)が全て含まれる(いずれの領域とすることもできる)。もちろん、上述した以外の単位が含まれてもよいし、説明の内容に応じて不可能な単位は、適宜、除外するものとする。
[1−7マージモード処理部]
図10は、マージモード処理部の主な構成例を示すブロック図である。
図10に示されるように、動き予測・補償部115は、動き探索部151、コスト関数算出部152、モード判定部153、動き補償部154、および動き情報バッファ155を有する。
また、マージモード処理部121は、視点予測判定部171、フラグ生成部172、視点予測情報生成部173、視点予測情報記憶部174、視点予測参照ブロック特定部175、候補ブロック特定部176、動き情報取得部177、参照画像取得部178、および差分画像生成部179を有する。
動き探索部151には、画面並べ替えバッファ102からの入力画像画素値と、フレームメモリ112からの参照画像画素値が入力される。さらに、動き探索部151には、動き情報バッファ155からカレントブロックの周辺に位置する、過去に符号化された周辺ブロックの動き情報である周辺動き情報を取得する。動き探索部151は、全てのインター予測モードについて動き探索処理を行い、動きベクトルと参照インデックスを含む動き情報を生成する。動き探索部151は、その動き情報をコスト関数算出部152に供給する。
また、動き探索部151は、探索した動きベクトルを用いて、参照画像に補償処理を行い、予測画像を生成する。さらに、動き探索部151は、その予測画像と入力画像の差分画像を算出し、その画素値である差分画素値をコスト関数算出部152に供給する。
コスト関数算出部152は、動き探索部151から各インター予測モードの差分画素値を取得する。また、コスト関数算出部152は、マージモード処理部121の差分画像生成部179から差分画素値、候補ブロック動き情報、および識別情報merge_idx等の情報を取得する。
コスト関数算出部152は、差分画素値を用いて、各インター予測モード(マージモードを含む)のコスト関数値を算出する。コスト関数算出部152は、各インター予測モードのコスト関数値、動き情報、およびmerge_idx等の情報をモード判定部153に供給する。
モード判定部153は、コスト関数算出部152から各インター予測モードのコスト関数値、動き情報、およびmerge_idx等の情報を取得する。モード判定部153は、全てのインター予測モードの中でコスト関数値が最も小さいモードを、最適なモードとして選択する。モード判定部153は、その最適なモードに選択されたインター予測モードを示す情報である最適モード情報を、その最適なモードに選択されたインター予測モードの動き情報若しくはmerge_idxとともに、動き補償部154に供給する。
動き補償部154は、モード判定部153から供給される最適モード情報、並びに、動き情報若しくはmerge_idx等の情報を取得する。動き補償部154は、動き情報若しくはmerge_idxを用いて、最適モード情報により示されるインター予測モードの参照画像画素値をフレームメモリ112から取得し、最適モード情報により示されるインター予測モードの予測画像を生成する。
動き補償部154は、生成した予測画像画素値を予測画像選択部116に供給する。また、動き補償部154は、最適モード情報、並びに、動き情報若しくはmerge_idx等の情報を可逆符号化部106に供給し、復号側に伝送させる。
また、動き補償部154は、動き情報若しくはmerge_idxが示す動き情報を動き情報バッファ155に供給し、記憶させる。
動き情報バッファ155は、動き補償部154から供給される動き情報を記憶し、その記憶している動き情報を、カレントブロックの周辺に位置する符号化済みの周辺ブロックの動き情報(周辺動き情報)として、動き探索部151に供給する。また、動き情報バッファ155は、記憶している動き情報を、候補ブロック動き情報として、マージモード処理部121の動き情報取得部177に供給する。
マージモード処理部121の視点予測判定部171は、例えば、ユーザ等の外部からの指示や、符号化対象の画像の種類等に基づいて、視点方向の周辺ブロックの動き情報を参照する(視点予測を行う)か否かを判定し、その判定結果をフラグ生成部172に通知する。フラグ生成部172は、その判定結果に基づいて、フラグ情報merge_support_3d_flagの値を設定する。
例えば、符号化対象の画像が左右のビューを有する3D画像の場合、視点予測判定部171は、視点予測を行うと判定し、フラグ生成部172は、merge_support_3d_flagの値を、マージモードの参照ブロックの候補に、視点方向の周辺ブロック(視点予測参照ブロック)を含めることを示す値(例えば1)に設定する。
また、例えば、符号化対象の画像が1ビューよりなる2D画像の場合、視点予測判定部171は、視点予測を行わないと判定し、フラグ生成部172は、merge_support_3d_flagの値を、マージモードの参照ブロックの候補に、視点方向の周辺ブロック(視点予測参照ブロック)を含めないことを示す値(例えば0)に設定する。
なお、フラグ生成部172は、merge_support_3d_flag以外のフラグ情報も生成するようにしてもよい。フラグ生成部172は、merge_support_3d_flagを含むフラグ情報を、可逆符号化部106に供給し、復号側に伝送させる。可逆符号化部106は、このフラグ情報を、例えば、図11に示されるシンタクスのように、シーケンスパラメータセットに含めて復号側に伝送する。もちろん、このフラグ情報の格納場所は任意であり、例えばピクチャパラメータセット等、シーケンスパラメータセット以外であってもよい。また、フラグ情報が、符号化データとは別のデータとして伝送されるようにしてもよい。
参照ブロックの候補が増大すると、符号化処理の負荷が増大するだけでなく、符号量も増大してしまう恐れがある。そこで、視点予測を行うか否かを判定し、その旨を示すフラグ情報を伝送することにより、参照ブロックの候補数を可変にすることができる。つまり、復号側の装置は、このフラグ情報に基づいて、参照ブロックの候補数を把握することができるので、この候補数が可変であっても、参照ブロックの識別情報を正しく把握することができる。つまり、merge_support_3d_flagを伝送することにより、参照ブロックの候補数の不要な増大を抑制することができる。
なお、視点予測を行うか否かは、画像のビュー数に依存する。つまり、ビュー数が変化しない限り、merge_support_3d_flagの値は一定である。一般的には、ビュー数はシーケンス毎に決定される。少なくともピクチャ内で変化することはない。したがって、merge_support_3d_flagを追加することによる情報量の増大は極僅かなものである。これに比べて、参照ブロックの候補数が増大すると、各ブロックの情報量が増大する。つまり、merge_support_3d_flagを伝送することにより、符号量の増大を抑制し、符号化効率を向上させることができる。
視点予測判定部171は、また、判定結果を視点予測情報生成部173、視点予測参照ブロック特定部175、および候補ブロック特定部176にも供給する。
視点予測情報生成部173は、その判定結果に基づいて視点予測を行うと判定した場合、カレントブロックと異なるビューの、カレントブロックと略同時刻のピクチャにおける、頃ケーテッドブロックと参照ブロックの候補との距離を示す情報(length_from_col0およびlength_from_col1)を含む視点予測情報を生成する。この距離は、予め定められていても良いし、符号化対象の画像のビュー間の視差情報に基づいて決定されるようにしてもよいし、被写体を撮像して符号化対象の画像を生成するカメラの設定情報等に基づいて決定されるようにしてもよい。また、ユーザ等の外部から指定されるようにしてもよい。
視点予測情報生成部173は、生成した視点予測情報を可逆符号化部106に供給し、復号側の装置に伝送させる。可逆符号化部106は、この視点予測情報を、例えば、図12に示されるシンタクスのように、ピクチャパラメータセットに含めて復号側に伝送する。もちろん、この視点予測情報の格納場所は任意であり、例えばシーケンスパラメータセット等、ピクチャパラメータセット以外であってもよい。また、視点予測情報が、符号化データとは別のデータとして伝送されるようにしてもよい。
視点予測情報生成部173は、生成した視点予測情報を視点予測情報記憶部174にも供給する。視点予測情報記憶部174は、視点予測情報を記憶する。視点予測情報記憶部174は、例えば視点予測参照ブロック特定部175等の外部の要求に基づいて、記憶している視点予測情報を視点予測参照ブロック特定部175に供給する。
視点予測参照ブロック特定部175は、視点予測判定部171の判定結果に基づいて視点予測を行うと判定した場合、視点予測情報記憶部174から視点予測情報を取得し、その視点予測情報に基づいて、マージモードの参照ブロックの視点方向の候補である視点予測参照ブロックを複数特定する。例えば、視点予測参照ブロック特定部175は、length_from_col0を用いて、カレントブロックに対するブロックV0を特定し、length_from_col1を用いて、カレントブロックに対するブロックV1を特定する。
視点予測参照ブロック特定部175は、特定した視点予測参照ブロックを示す情報を、候補ブロック特定部176に供給する。
候補ブロック特定部176は、マージモードの参照ブロックの候補とするブロック(候補ブロック)を特定する。候補ブロック特定部176は、マージモードの参照ブロックの空間方向の候補とするブロック、および、時間方向の候補とするブロックを特定する。
そして、候補ブロック特定部176は、視点予測判定部171の判定結果に基づいて視点予測を行うと判定した場合、空間方向および時間方向の候補とともに、視点方向の候補を候補ブロックに含める。また、視点予測判定部171の判定結果に基づいて視点予測を行わないと判定した場合、候補ブロック特定部176は、空間方向および時間方向の候補を候補ブロックに含める。
候補ブロック特定部176は、このように特定した候補ブロックの位置を示す情報、および、各候補を識別する識別情報merge_idxを動き情報取得部177に供給する。
動き情報取得部177は、動き情報バッファ155から各候補ブロックの動き情報(候補ブロック動き情報)を取得し、それを、識別情報merge_idxとともに、参照画像取得部178に供給する。
参照画像取得部178は、各動き情報に対応する参照画像(候補ブロック画素値)をフレームメモリ112から取得する。参照画像取得部178は、取得した各参照画像(候補ブロック画素値)を、識別情報merge_idxおよび候補ブロック動き情報とともに、差分画像生成部179に供給する。
差分画像生成部179は、画面並べ替えバッファ102から取得した入力画像(入力画像画素値)と、参照画像取得部178から取得した各参照画像(候補ブロック画素値)との差分画像(差分画素値)を生成する。差分画像生成部179は、生成した各差分画像(差分画素値)を、識別情報merge_idxおよび候補ブロック動き情報とともに、コスト関数算出部152に供給する。
コスト関数算出部152は、各候補ブロックについてのコスト関数値を算出する。これらの候補ブロックのいずれかのコスト関数値が最も小さい場合、モード判定部153は、最適なインター予測モードとして、マージモードを採用し、その候補ブロックを参照ブロックとして決定する。その場合、モード判定部153は、最適モード情報とともに識別情報merge_idxを動き補償部154に供給する。動き補償部154は、予測画像を生成して予測画像選択部116に供給するとともに、最適モード情報および識別情報merge_idxを可逆符号化部106に供給し、復号側の装置に伝送させる。可逆符号化部106は、これらの情報を、例えば符号化データに含めて伝送する。もちろん、これらの情報を、符号化データとは別のデータとして伝送するようにしてもよい。
以上のように、視点予測参照ブロック特定部175が、視点予測参照ブロックを複数得定することにより、画像符号化装置100は、マージモードにおける予測精度を向上させ、符号化効率を向上させることができる。
[1−8処理の流れ]
次に、以上のような画像符号化装置100により実行される各処理の流れについて説明する。最初に、図13のフローチャートを参照して、シーケンス符号化処理の流れの例を説明する。
ステップS101において、可逆符号化部106およびマージモード処理部121は、シーケンスパラメータセットを符号化する。
ステップS102において、A/D変換部101は、入力されたピクチャをA/D変換する。ステップS103において、画面並べ替えバッファ102は、A/D変換されたピクチャを記憶する。
ステップS104において、画面並べ替えバッファ102は、ピクチャの並べ替えを行うか否かを判定する。ピクチャの並べ替えを行うと判定された場合、処理は、ステップS105に進む。ステップS105において、画面並べ替えバッファ102は、ピクチャの並べ替えを行う。ピクチャが並べ替えられると、処理はステップS106に進む。また、ステップS104において、ピクチャの並べ替えを行わないと判定された場合、処理は、ステップS106に進む。
ステップS106において、演算部103乃至レート制御部117、並びに、マージモード処理部121は、処理対象であるカレントピクチャを符号化するピクチャ符号化処理を行う。
ステップS107において、画像符号化装置100は、処理対象時刻の全ての視点のピクチャを処理したか否かを判定する。未処理の視点が存在すると判定された場合、処理はステップS108に進む。
ステップS108において、画像符号化装置100は、未処理の視点を処理対象とする。処理は、ステップS102に戻り、それ以降の処理が繰り返される。つまり、ステップS102乃至ステップS108の処理が各視点について実行される。
ステップS107において、処理対象時刻の全ての視点のピクチャが処理されたと判定された場合、処理は、ステップS109に進み、次の時刻のピクチャが処理対象とされる。
ステップS109において、画像符号化装置100は、全てのピクチャを処理したか否かを判定する。未処理のピクチャが存在すると判定された場合、処理は、ステップS102に戻り、それ以降の処理が繰り返される。つまり、ステップS102乃至ステップS109の処理が繰り返し実行されることにより、全ての時刻の全ての視点のピクチャ(すなわち、シーケンスの全てのピクチャ)が符号化される。
ステップS109において、全てのピクチャが符号化されたと判定され場合、シーケンス符号化処理が終了する。
次に、図14のフローチャートを参照して、シーケンスパラメータセット符号化処理の流れの例を説明する。
ステップS111において、可逆符号化部106は、profile_idcやlevel_idcをストリーム(符号化データ)に含める。
また、フラグ生成部172は、merge_support_3d_flagを含むフラグ情報を生成し、可逆符号化部106に供給する。可逆符号化部106は、ステップS112において、そのフラグ情報を符号化し、符号化データの、例えばシーケンスパラメータセットに含める。このmerge_support_3d_flagにより、復号側の装置は、マージモードの参照ブロックの候補に、視点予測参照ブロックが含まれるか否かを把握することができる。
ステップS112の処理が終了すると、処理は、図13に戻る。
次に、図15のフローチャートを参照して、ピクチャ符号化処理の流れの例を説明する。
ステップS121において、可逆符号化部106は、ピクチャパラメータセットを符号化する。
ステップS122において、演算部103乃至可逆符号化部106、逆量子化部108乃至演算部110、選択部113乃至予測画像選択部116、並びに、マージモード処理部121は、カレントピクチャ内の、処理対象であるカレントスライスを符号化するスライス符号化処理を行う。
ステップS123において、画像符号化装置100は、カレントピクチャ内の全てのスライスを符号化したか否かを判定する。未処理のスライスが存在する場合、処理は、ステップS122に戻される。つまり、全てのスライスについてステップS122の処理が実行される。ステップS123において、カレントピクチャ内の全てのスライスが処理されたと判定された場合、処理は、ステップS124に進む。
ステップS124において、蓄積バッファ107は、可逆符号化部106により生成された処理対象ピクチャの符号化データ(ストリーム)を記憶し、蓄積する。
ステップS125において、レート制御部117は、蓄積バッファ107に蓄積された符号化データの符号量に基づいて、量子化部105のパラメータを制御することにより、符号化データのレートを制御する。
ステップS126において、ループフィルタ111は、ステップS122の処理により生成された再構成画像に対してデブロックフィルタ処理を行う。ステップS127において、ループフィルタ111は、サンプル・アダプティブ・オフセットを加える。ステップS128において、ループフィルタ111は、適応ループフィルタ処理を行う。
ステップS129において、フレームメモリ112は、以上のようにフィルタ処理された復号画像を記憶する。
ステップS129の処理が終了すると、処理は、図13に戻る。
次に、図16のフローチャートを参照して、ピクチャパラメータセット符号化処理の流れの例を説明する。
ステップS131において、可逆符号化部106は、ピクチャパラメータセットのシンタクスに沿って符号化を行う。
ステップS132において、視点予測判定部171は、マージモードの参照ブロックの候補として、視点方向の周辺ブロックを含めるか否かを判定する。含めると判定された場合、処理は、ステップS133に進む。
この場合、視点予測情報生成部173は、視点予測情報を生成する。ステップS133において、可逆符号化部106は、その視点予測情報(length_from_col0およびlength_from_col1)を符号化し、ピクチャパラメータセットに含める。
ステップS133の処理が終了すると、処理は図15に戻る。また、ステップS132において、視点方向の周辺ブロックを含めないと判定された場合、処理は図15に戻る。
次に、図17のフローチャートを参照して、スライス符号化処理の流れの例を説明する。
ステップS141において、可逆符号化部106は、modify_bip_small_mrg_l0をストリームに含める。
ステップS142において、演算部103乃至可逆符号化部106、逆量子化部108乃至演算部110、選択部113乃至予測画像選択部116、並びに、マージモード処理部121は、カレントスライス内の、処理対象であるカレントCUを符号化するCU符号化処理を行う。
ステップS143において、画像符号化装置100は、カレントスライス内の全てのLCUを処理したか否かを判定する。カレントスライス内に未処理のLCUが存在すると判定された場合、処理は、ステップS142に戻る。つまり、カレントスライス内の全てのLCUについて、ステップS142の処理が実行される。
ステップS143において、カレントスライス内の全てのLCUが処理されたと判定された場合、処理は、図15に戻る。
次に、図18および図19のフローチャートを参照して、CU符号化処理の流れの例を説明する。
ステップS151において、動き探索部151は、カレントCUについて、動き探索を行う。ステップS152において、マージモード処理部121は、マージモード処理を行う。
ステップS153において、コスト関数算出部152は、各イントラ予測モードのコスト関数を算出する。ステップS154において、モード判定部153は、算出されたコスト関数に基づいて、最適なイントラ予測モードを判定する。
ステップS155において、画像符号化装置100は、カレントCUを分割するか否かを判定する。分割すると判定された場合、処理をステップS156に進める。
ステップS156において、可逆符号化部106は、cu_split_flag=1を符号化し、符号化データ(ストリーム)に含める。
ステップS157において、画像符号化装置100は、カレントCUを分割する。
ステップS158において、演算部103乃至可逆符号化部106、逆量子化部108乃至演算部110、選択部113乃至予測画像選択部116、並びに、マージモード処理部121は、分割した各CUについて、CU符号化処理を再帰的に行う。さらにCUが分割される場合、その各CUについてCU符号化処理が再帰的に実行されることになる。
ステップS159において、画像符号化装置100は、カレントCUについて、分割した全てのCUが符号化されたか否かを判定する。未処理のCUが存在すると判定された場合、処理は、ステップS158に戻る。分割した全てのCUについて、ステップS158の処理が実行され、分割した全てのCUが符号化されたと判定された場合、処理は、図17に戻る。
また、ステップS155において、カレントCUを分割しないと判定された場合、処理は、ステップS160に進む。
ステップS160において、可逆符号化部106は、cu_split_flag=0を符号化し、符号化データ(ストリーム)に含める。
ステップS161において、画像符号化装置100は、ステップS154において選択されたカレントCUの最適なイントラ予測モードが、マージモードであるか否かを判定する。マージモードであると判定された場合、処理は、ステップS162に進む。
ステップS162において、可逆符号化部106は、skip_flag=1および識別情報merge_idxを符号化し、符号化データ(ストリーム)に含める。
ステップS163におて、画像符号化装置100は、カレントCUをマージモードでイントラ予測して符号化するCUマージモード符号化処理を行う。ステップS163の処理が終了すると、処理は、図17に戻る。
また、ステップS161において、マージモードでないと判定された場合、処理は、図19に進む。
図19のステップS164において、可逆符号化部106、選択部113乃至予測画像選択部116、並びに、マージモード処理部121は、カレントCUの、処理対象であるカレントPUを符号化するPU符号化処理を行う。
ステップS165において、演算部103は、ステップS164の処理により生成されたカレントPUの予測画像と入力画像との差分画像を生成する。
ステップS166において、直交変換部104乃至可逆符号化部106、逆量子化部108、並びに、逆直交変換部109は、カレントCUの、処理対象であるカレントTUを符号化するTU符号化処理を行う。
ステップS167において、演算部110は、ステップS166の処理により生成された差分画像と、ステップS164の処理により生成された予測画像とを加算し、再構成画像を生成する。
ステップS168において、画像符号化装置100は、カレントPU内の全てのTUが処理されたか否かを判定する。未処理のTUが存在すると判定された場合、処理は、ステップS166に戻る。
ステップS166乃至ステップS168の各処理が各TUについて実行され、ステップS168において、カレントPU内の全てのTUが処理されたと判定された場合、処理は、ステップS169に進む。
ステップS169において、画像符号化装置100は、カレントCUの全てのPUを処理したか否かを判定する。未処理のPUが存在すると判定された場合、処理は、ステップS164に戻る。
ステップS164乃至ステップS169の各処理が各PUについて実行され、ステップS169において、カレントCU内の全てのPUが処理されたと判定された場合、処理は、図17に戻る。
次に、図20のフローチャートを参照して、図18のステップS152において実行されるマージモード処理の流れの例を説明する。
ステップS171において、候補ブロック特定部176は、空間予測および時間予測の参照ブロックを候補として特定し、候補ブロックとする。
ステップS172において、視点予測参照ブロック特定部175および候補ブロック特定部176は、視点方向の周辺ブロックをマージモードの参照ブロックの候補に含めるか否かを判定する。含めると判定された場合、処理は、ステップS173に進む。
ステップS173において、視点予測参照ブロック特定部175は、視点予測参照ブロックを複数特定し、候補ブロック特定部176は、その複数の視点予測参照ブロックを候補ブロックに含める。
ステップS174において、動き情報取得部177は、各候補ブロックの動き情報を取得する。ステップS175において、動き情報取得部177は、動き情報が他のブロックと重複するブロックを候補ブロックから外す。ステップS176において、動き情報取得部177は、ゼロベクトルを候補に追加する。
ステップS177において、参照画像取得部178は、各動き情報に対応する参照画像を取得する。ステップS178において、差分画像生成部179は、各参照情報と入力画像との差分画像を生成する。
ステップS178の処理が終了すると、処理は、図18に戻る。
次に、図21のフローチャートを参照して、図18のステップS163において実行されるCUマージモード符号化処理の流れの例を説明する。
ステップS181において、動き補償部154は、カレントCUの予測画像を生成する。ステップS182において、演算部103は、カレントCUの差分画像を生成する。
ステップS183において、直交変換部104は、カレントCUの差分画像を直交変換する。ステップS184において、量子化部105は、カレントCUの直交変換係数を量子化する。ステップS185において、可逆符号化部106は、量子化されたカレントCUの直交変換係数を符号化する。
ステップS186において、逆量子化部108は、量子化されたカレントCUの直交変換係数を逆量子化する。ステップS187において、逆直交変換部109は、逆量子化により得られたカレントCUの直交変換係数を逆直交変換する。
ステップS188において、演算部110は、逆直交変換により得られたカレントCUの差分画像に、ステップS181において生成された予測画像を加算し、再構成画像を生成する。
ステップS188の処理が終了すると、処理は、図18に戻る。
図22のフローチャートを参照して、図19のステップS164において実行されるPU符号化処理の流れの例を説明する。
ステップS191において、画像符号化装置100は、マージモードであるか否かを判定する。マージモードであると判定された場合、処理は、ステップS192に進む。
ステップS192において、可逆符号化部106は、merge_flag=1を符号化し、符号化データ(ストリーム)に含める。
ステップS193において、動き補償部154は、カレントPUの予測画像を生成する。ステップS193の処理が終了すると、処理は、図19に戻る。
また、ステップS191において、マージモードでないと判定された場合、処理は、ステップS194に進む。
ステップS194において、可逆符号化部106は、merge_flag=0を符号化し、符号化データ(ストリーム)に含める。ステップS195において、可逆符号化部106は、予測モードを符号化し、符号化データ(ストリーム)に含める。ステップS196において、可逆符号化部106は、パーティションタイプを符号化する。
ステップS197において、予測画像選択部116は、イントラ予測か否かを判定する。イントラ予測と判定された場合、処理は、ステップS198に進む。
ステップS198において、可逆符号化部106は、MPMflagとIntra direction modeとを符号化し、符号化ストリームに含める。
ステップS199において、イントラ予測部114は、カレントPUの予測画像を生成する。ステップS199の処理が終了すると、処理は、図19に戻る。
また、ステップS197において、イントラ予測でないと判定された場合、処理は、ステップS200に進む。
ステップS200において、可逆符号化部106は、動き情報を符号化し、符号化データ(ストリーム)に含める。
ステップS201において、動き補償部154は、カレントPUの予測画像を生成する。ステップS201の処理が終了すると、処理は、図19に戻る。
次に、図23のフローチャートを参照して、図19のステップS166において実行されるTU符号化処理の流れの例を説明する。
ステップS211において、画像符号化装置100は、カレントTUを分割するか否かを判定する。カレントTUを分割すると判定された場合、処理は、ステップS212に進む。
ステップS212において、可逆符号化部106は、tu_split_flag=1を符号化し、符号化データ(ストリーム)に含める。
ステップS213において、画像符号化装置100は、カレントTUを分割する。ステップS214において、直交変換部104乃至可逆符号化部106、逆量子化部108、並びに、逆直交変換部109は、分割した各TUに対してTU符号化処理を再帰的に実行する。
ステップS215において、画像符号化装置100は、カレントTUを分割した全てのTUを処理したか否かを判定する。未処理のTUが存在する場合、処理は、ステップS214に戻る。また、ステップS215において、全てのTUについてステップTU符号化処理が行われたと判定された場合、処理は、図19に戻る。
また、ステップS212において、カレントTUを分割しないと判定された場合、処理は、ステップS216に進む。
ステップS216において、可逆符号化部106は、tu_split_flag=0を符号化し、符号化データ(ストリーム)に含める。
ステップS217において、直交変換部104は、カレントTUの差分画像(残差画像)を直交変換する。ステップS218において、量子化部105は、カレントTUの直交変換係数を、カレントCUの量子化パラメータ(QP)を用いて量子化する。
ステップS219において、可逆符号化部106は、量子化されたカレントTUの直交変換係数を符号化する。
ステップS220において、逆量子化部108は、量子化されたカレントTUの直交変換係数を、カレントCUの量子化パラメータ(QP)を用いて逆量子化する。ステップS221において、逆直交変換部109は、逆量子化されて得られた、カレントTUの直交変換係数を逆直交変換する。
ステップS221の処理が終了すると、処理は、図19に戻る。
以上のように各処理を行うことにより、画像符号化装置100は、マージモードの参照ブロックの候補として、視点方向の周辺ブロックを複数設定することができる。これにより、画像符号化装置100は、予測精度を向上させ、符号化効率を向上させることができる。
<2.第2の実施の形態>
[2−1画像復号装置]
図24は、本技術を適用した画像処理装置である画像復号装置の主な構成例を示すブロック図である。図24に示される画像復号装置300は、上述した画像符号化装置100に対応し、画像符号化装置100が画像データを符号化して生成したビットストリーム(符号化データ)を正しく復号し、復号画像を生成する。つまり、画像復号装置300は、フィールド符号化される、輝度信号と色差信号とで垂直方向の解像度が異なるインターレースフォーマットの画像が符号化された符号化データを復号する。
図24に示されるように画像復号装置300は、蓄積バッファ301、可逆復号部302、逆量子化部303、逆直交変換部304、演算部305、ループフィルタ306、画面並べ替えバッファ307、およびD/A変換部308を有する。また、画像復号装置300は、フレームメモリ309、選択部310、イントラ予測部311、動き予測・補償部312、および選択部313を有する。
蓄積バッファ301は、伝送されてきた符号化データを蓄積し、所定のタイミングにおいてその符号化データを可逆復号部302に供給する。可逆復号部302は、蓄積バッファ301より供給された、図8の可逆符号化部106により符号化された情報を、可逆符号化部106の符号化方式に対応する方式で復号する。可逆復号部302は、復号して得られた差分画像の量子化された係数データを、逆量子化部303に供給する。
また、可逆復号部302は、符号化データを復号して得られた最適な予測モードに関する情報を参照し、最適な予測モードにイントラ予測モードが選択されたかインター予測モードが選択されたかを判定する。つまり、可逆復号部302は、伝送されてきた符号化データにおいて採用された予測モードが、イントラ予測であるか、インター予測であるかを判定する。
可逆復号部302は、その判定結果に基づいて、その予測モードに関する情報を、イントラ予測部311若しくは動き予測・補償部312に供給する。例えば、画像符号化装置100において最適な予測モードとしてイントラ予測モードが選択された場合、可逆復号部302は、符号化側から供給された、その選択されたイントラ予測モードに関する情報であるイントラ予測情報をイントラ予測部311に供給する。また、例えば、画像符号化装置100において最適な予測モードとしてインター予測モードが選択された場合、可逆復号部302は、符号化側から供給された、その選択されたインター予測モードに関する情報であるインター予測情報を動き予測・補償部312に供給する。
逆量子化部303は、可逆復号部302により復号されて得られた量子化された係数データを、図8の量子化部105の量子化方式に対応する方式(逆量子化部108と同様の方式)で逆量子化を行う。逆量子化部303は、逆量子化された係数データを逆直交変換部304に供給する。
逆直交変換部304は、図8の直交変換部104の直交変換方式に対応する方式で逆量子化部303から供給される係数データを逆直交変換する。逆直交変換部304は、この逆直交変換処理により、画像符号化装置100において直交変換される前の差分画像に対応する差分画像を得る。
逆直交変換されて得られた差分画像は、演算部305に供給される。また、演算部305には、選択部313を介して、イントラ予測部311若しくは動き予測・補償部312から予測画像が供給される。
演算部305は、差分画像と予測画像とを加算し、画像符号化装置100の演算部103により予測画像が減算される前の画像に対応する再構成画像を得る。演算部305は、その再構成画像をループフィルタ306に供給する。
ループフィルタ306は、供給された再構成画像に対して、デブロックフィルタ処理や適応ループフィルタ処理等を含むループフィルタ処理を適宜施して復号画像を生成する。例えば、ループフィルタ306は、再構成画像に対してデブロックフィルタ処理を行うことにより、ブロック歪を除去する。また、例えば、ループフィルタ306は、そのデブロックフィルタ処理結果(ブロック歪みの除去が行われた再構成画像)に対して、ウィナーフィルタ(Wiener Filter)を用いてループフィルタ処理を行うことにより画質改善を行う。
なお、ループフィルタ306が行うフィルタ処理の種類は任意であり、上述した以外のフィルタ処理を行ってもよい。また、ループフィルタ306が、図8の画像符号化装置100から供給されたフィルタ係数を用いてフィルタ処理を行うようにしてもよい。
ループフィルタ306は、フィルタ処理結果である復号画像を画面並べ替えバッファ307およびフレームメモリ309に供給する。なお、このループフィルタ306によるフィルタ処理は省略することもできる。つまり、演算部305の出力が、フィルタ処理されずに、フレームメモリ309に格納されるようにすることもできる。例えば、イントラ予測部311は、この画像に含まれる画素の画素値を周辺画素の画素値として利用する。
画面並べ替えバッファ307は、供給された復号画像の並べ替えを行う。すなわち、図8の画面並べ替えバッファ102により符号化の順番のために並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。D/A変換部308は、画面並べ替えバッファ307から供給された復号画像をD/A変換し、図示せぬディスプレイに出力し、表示させる。
フレームメモリ309は、供給される再構成画像や復号画像を記憶する。また、フレームメモリ309は、所定のタイミングにおいて、若しくは、イントラ予測部311や動き予測・補償部312等の外部の要求に基づいて、記憶している再構成画像や復号画像を、選択部310を介してイントラ予測部311や動き予測・補償部312に供給する。
イントラ予測部311は、図8のイントラ予測部114と基本的に同様の処理を行う。ただし、イントラ予測部311は、符号化の際にイントラ予測により予測画像が生成された領域に対してのみ、イントラ予測を行う。
動き予測・補償部312は、可逆復号部302から供給されるインター予測情報に基づいてインター予測(動き予測や動き補償を含む)を行い、予測画像を生成する。なお、動き予測・補償部312は、可逆復号部302から供給されるインター予測情報に基づいて、符号化の際にインター予測が行われた領域に対してのみ、インター予測を行う。
イントラ予測部311および動き予測・補償部312は、予測処理単位の領域毎に、生成した予測画像を、選択部313を介して演算部305に供給する。
選択部313は、イントラ予測部311から供給される予測画像、若しくは、動き予測・補償部312から供給される予測画像を演算部305に供給する。
画像復号装置300は、さらに、マージモード処理部321を有する。
可逆復号部302は、画像符号化装置100から伝送される、例えば、フラグ情報(merge_support_3d_flag、MergeFlag、MergeLeftFlag等を含む)、視点予測情報(length_from_col0およびlength_from_col1を含む)、および、動き情報を参照する参照ブロックを示す情報(識別情報merge_idxを含む)等の、マージモードに関する情報を、マージモード処理部321に供給する。
マージモード処理部321は、供給された情報を用いて、カレントブロックの動き情報を生成(再構築)する。マージモード処理部321は、生成した動き情報を動き予測・補償部312に供給する。
[2−2マージモード処理部]
図25は、マージモード処理部の主な構成例を示すブロック図である。
図25に示されるように、動き予測・補償部312は、最適モード情報バッファ351、動き情報再構築部352、動き補償部353、および動き情報バッファ354を有する。
また、マージモード処理部321は、マージモード制御部371、空間予測動き情報再構築部372、時間予測動き情報再構築部373、および、視点予測動き情報再構築部374を有する。
最適モード情報バッファ351は、可逆復号部302から供給される最適モード情報を取得し、最適モードがマージモードでない場合、その最適モード情報を動き情報再構築部352に供給する。また、最適モードがマージモードの場合、最適モード情報バッファ351は、その最適モード情報をマージモード制御部371に供給する。
動き情報再構築部352は、可逆復号部302から供給される動き情報を用いてカレントブロックの動き情報を生成する(再構築する)。例えば、可逆復号部302から、カレントブロックの動き情報と、その予測動き情報との差分動き情報が供給される場合、動き情報再構築部352は、動き情報バッファ354から、復号済みの周辺ブロックの動き情報を取得する。動き情報再構築部352は、その動き情報を用いてカレントブロックの予測動き情報を生成する。そして、動き情報再構築部352は、その予測動き情報を差分動き情報に加算することにより、カレントブロックの動き情報を生成する(再構築する)。動き情報再構築部352は、生成した動き情報を動き補償部353に供給する。また、動き情報再構築部352は、生成した動き情報を動き情報バッファ354にも供給する。
マージモードでない場合、動き補償部353は、動き情報再構築部352から供給される動き情報に対応する参照画像をフレームメモリ309から取得する。また、マージモードの場合、動き補償部353は、空間予測動き情報再構築部372、時間予測動き情報再構築部373、若しくは、視点予測動き情報再構築部374から供給される動き情報を取得する。動き補償部353は、取得した動き情報に対応する参照画像をフレームメモリ309から取得し、予測画像とする。動き補償部353は、その予測画像画素値を選択部313に供給する。
動き情報バッファ354は、動き情報再構築部352から供給される動き情報を記憶する。動き情報バッファ354は、記憶している動き情報を、周辺ブロックの動き情報として、動き情報再構築部352、空間予測動き情報再構築部372、時間予測動き情報再構築部373、および、視点予測動き情報再構築部374に供給する。
マージモード制御部371は、マージモードの場合、可逆復号部302から供給されるマージモードに関する情報を取得し、その情報に基づいて、参照ブロックの予測方向を特定し、空間予測動き情報再構築部372、時間予測動き情報再構築部373、および、視点予測動き情報再構築部374を制御して、動き情報を生成させる(再構築させる)。
例えば、merge_support_3d_flag=1であり、識別情報merge_idxにより、視点方向の周辺ブロックが参照ブロックとして指定されている場合、マージモード制御部371は、視点予測情報を用いて視点予測参照ブロックを特定する。マージモード制御部371は、その特定した視点予測参照ブロックを示す情報を視点予測動き情報再構築部374に供給する。
また、例えば、識別情報merge_idx等により、時間方向の周辺ブロックが参照ブロックとして指定されている場合、マージモード制御部371は、時間予測参照ブロックを特定する。マージモード制御部371は、その特定した時間予測参照ブロックを示す情報を時間予測動き情報再構築部373に供給する。
また、例えば、識別情報merge_idx等により、空間方向の周辺ブロックが参照ブロックとして指定されている場合、マージモード制御部371は、空間予測参照ブロックを特定する。マージモード制御部371は、その特定した空間予測参照ブロックを示す情報を空間予測動き情報再構築部372に供給する。
空間予測動き情報再構築部372は、特定された空間予測参照ブロックの動き情報を動き情報バッファ354から取得し、それをカレントブロックの動き情報として動き補償部353に供給する。
また、時間予測動き情報再構築部373は、特定された時間予測参照ブロックの動き情報を動き情報バッファ354から取得し、それをカレントブロックの動き情報として動き補償部353に供給する。
さらに、視点予測動き情報再構築部374は、特定された視点予測参照ブロックの動き情報を動き情報バッファ354から取得し、それをカレントブロックの動き情報として動き補償部353に供給する。
以上のように、マージモード制御部371が、画像符号化装置100から供給されるマージモードに関する情報(識別情報merge_idx、merge_support_3d_flag、length_from_col0、およびlength_from_col1等)を用いてカレントブロックの動き情報を生成(再構築)する。したがって、画像復号装置300は、画像符号化装置100から供給される、時間方向の複数の周辺ブロックを含む候補の中から選択された参照ブロックを用いたマージモードにより符号化された符号化データを適切に復号することができる。したがって、画像復号装置300は、符号化効率の向上を実現することができる。
[2−3処理の流れ]
次に、以上のような画像復号装置300により実行される各処理の流れについて説明する。最初に、図26のフローチャートを参照して、シーケンス復号処理の流れの例を説明する。
蓄積バッファ301が、符号化データを取得すると、ステップS301において、可逆復号部302は、シーケンスパラメータセットを復号する。
ステップS302において、可逆復号部302乃至ループフィルタ306、フレームメモリ309乃至選択部313、並びに、マージモード処理部321は、処理対象であるカレントピクチャの符号化データを復号するピクチャ復号処理を行う。
ステップS303において、画面並べ替えバッファ307は、ステップS302の処理により符号化データが復号されて得られたカレントピクチャの画像データを記憶する。
ステップS304において、画面並べ替えバッファ307は、ピクチャの並べ替えを行うか否かを判定する。並べ替えを行うと判定された場合、処理はステップS305に進む。
ステップS305において、画面並べ替えバッファ307は、ピクチャの並べ替えを行う。ステップS305の処理が終了すると、処理は、ステップS306に進む。また、ステップS304において、並べ替えを行わないと判定された場合、処理は、ステップS306に進む。
ステップS306において、D/A変換部308は、ピクチャの画像データをD/A変換する。ステップS307において、画像復号装置300は、処理対象時刻の全ての視点のピクチャを処理したか否かを判定する。未処理の視点が存在すると判定された場合、処理はステップS308に進む。
ステップS308において、画像復号装置300は、処理対象時刻の、未処理の視点(ビュー)のピクチャを処理対象(カレントピクチャ)とする。ステップS308の処理が終了すると、処理は、ステップS302に戻る。
以上のように、ステップS302乃至ステップS308の各処理が、各ビューのピクチャに対して実行される。これにより、全てのビューのピクチャが復号される。ステップS307において、処理対象時刻の全ての視点(ビュー)のピクチャを処理したと判定された場合、処理は、ステップS309に進む。これにより、処理対象が次の時刻(次のピクチャ)に更新される。
ステップS309において、画像復号装置300は、シーケンスの全てのピクチャを処理したか否かを判定する。シーケンス内に未処理のピクチャが存在すると判定された場合、処理は、ステップS302に戻る。つまり、ステップS302乃至ステップS309の各処理が繰り返し実行されることにより、各時刻の全てのビューのピクチャが符号化され、最終的に、シーケンス内の全てのピクチャが復号される。
ステップS309において、全てのピクチャが処理されたと判定された場合、シーケンス復号処理が終了される。
次に、図27のフローチャートを参照して、図26のステップS301において実行されるシーケンスパラメータセット復号処理の流れの例を説明する。
ステップS311において、可逆復号部302は、profile_idc,lvel_idcを符号化データのシーケンスパラメータセットから抽出する。
ステップS312において、可逆復号部302は、merge_support_3d_flagを符号化データのシーケンスパラメータセットから抽出し、復号する。このように、シーケンスパラメータセットに含まれるmerge_support_3d_flagを読み出して利用するので、画像復号装置300は、参照ブロックの候補数を可変とすることができ、識別情報merge_idxの符号量の増大の抑制を実現することができる。
ステップS312の処理が終了すると、処理は図26に戻る。
次に、図28のフローチャートを参照して、図26のステップS302において実行されるピクチャ復号処理の流れの例を説明する。
ステップS321において、可逆復号部302は、ピクチャパラメータセットを復号するピクチャパラメータセット復号処理を行う。
ステップS322において、可逆復号部302乃至演算部305、選択部310乃至選択部313、並びに、マージモード処理部321は、カレントピクチャの、処理対象であるカレントスライスの符号化データを復号するスライス復号処理を行う。
ステップS323において、画像復号装置300は、カレントピクチャの全てのスライスを処理したか否かを判定する。カレントピクチャ内に未処理のスライスが存在すると判定された場合、処理は、ステップS322に戻る。つまり、カレントピクチャの各スライスに対して、ステップS322の処理が実行される。
ステップS323において、カレントピクチャ内の、全てのスライスの符号化データが復号されたと判定された場合、処理はステップS324に進む。
ステップS324において、ループフィルタ306は、ステップS322の処理により得られた再構成画像にデブロックフィルタ処理を行う。ステップS325において、ループフィルタ306は、サンプル・アダプティブ・オフセットを加える。ステップS326において、ループフィルタ306は、適応ループフィルタ処理を行う。
ステップS327において、フレームメモリ309は、以上のようにフィルタ処理された、カレントピクチャの画像データ(復号画像)を記憶する。
ステップS327の処理が終了すると、処理は、図26に戻る。
次に、図29のフローチャートを参照して、図28のステップS321において実行されるピクチャパラメータセット復号処理の流れの例を説明する。
ステップS331において、可逆復号部302は、ピクチャパラメータセットのシンタクスに沿って復号を行う。
ステップS332において、可逆復号部302は、シーケンスパラメータセットから抽出されたmerge_support_3d_flagの値に基づいて、視点方向の周辺ブロックをマージモードの参照ブロックの候補に含むか否かを判定する。マージモードにおいて視点予測が候補の1つとして適用されると判定された場合、処理はステップS333に進む。
ステップS333において、可逆復号部302は、ピクチャパラメータセットから、視点予測情報(例えばlength_from_col0およびlength_from_col1を含む)を抽出し、復号する。ステップS333の処理が終了すると、処理は、図28に戻る。
また、ステップS332において、merge_support_3d_flagが存在しない、若しくは、視点方向の周辺ブロックをマージモードの参照ブロックの候補に含まないと判定された場合、処理は、図28に戻る。
次に、図30のフローチャートを参照して、図28のステップS322において実行されるスライス復号処理の流れの例を説明する。
ステップS341において、可逆復号部302は、符号化データのスライスヘッダから、modify_bip_small_mrg_l0を抽出する。
ステップS342において、可逆復号部302乃至演算部305、選択部310乃至選択部313、並びに、マージモード処理部321は、カレントスライスの、処理対象であるカレントCUの符号化データを復号するCU復号処理を行う。
ステップS343において、画像復号装置300は、カレントスライスの全てのLCUの符号化データを復号したか否かを判定する。未処理のLCUが存在すると判定された場合、処理は、ステップS342に戻る。つまり、カレントスライスの全てのCU(LCU)に対して、ステップS342の処理が実行される。
ステップS343において、全てのLCUの符号化データが復号されたと判定された場合、処理は、図28に戻る。
次に、図31および図32のフローチャートを参照して、図30のステップS342において実行されるCU復号処理の流れの例を説明する。
ステップS351において、可逆復号部302は、カレントCUの符号化データからフラグ情報cu_split_flagを抽出し、復号する。
ステップS352において、画像復号装置300は、そのcu_split_flagの値が1であるか否かを判定する。cu_split_flagの値が、CUの分割を意味する値である1であると判定された場合、処理は、ステップS353に進む。
ステップS353において、画像復号装置300は、カレントCUを分割する。ステップS354において、可逆復号部302乃至演算部305、選択部310乃至選択部313、並びに、マージモード処理部321は、分割した各CUについてCU復号処理を再帰的に実行する。
ステップS355において、画像復号装置300は、カレントCUから分割した全てのCUを処理したか否かを判定する。未処理のCUが存在すると判定された場合、処理は、ステップS354に戻る。つまり、カレントCUから分割した全てのCUに対して、CU復号処理が再帰的に実行される。
ステップS355において、全てのCUを処理したと判定された場合、処理は、図30に戻る。
また、ステップS352において、cu_split_flagの値が、カレントCUをこれ以上分割しないことを意味する値である0であると判定された場合、処理は、ステップS356に進む。
ステップS356において、可逆復号部302は、カレントCUの符号化データから、フラグ情報skip_flagを抽出する。
ステップS357において、画像復号装置300は、そのフラグ情報skip_flagの値が1であるか否かを判定する。skip_flagの値が、スキップモードを示す値である1であると判定された場合、処理はステップS358に進む。
ステップS358において、可逆復号部302は、カレントCUの符号化データから識別情報merge_idxを抽出する。
ステップS359において、逆量子化部303乃至演算部305、動き予測・補償部312、選択部313、並びに、マージモード処理部321は、カレントCUの符号化データを、マージモードで復号するCUマージモード復号処理を行う。
ステップS359の処理が終了すると、処理は、図30に戻る。
また、ステップS357において、skip_flagの値が、スキップモードでないことを示す値である0であると判定された場合、処理は図32に進む。
図32のステップS361において、可逆復号部302乃至逆直交変換部304、選択部310乃至選択部313、並びに、マージモード処理部321は、カレントCUの、処理対象であるカレントPUの符号化データを復号するPU復号処理を行う。
ステップS362において、可逆復号部302乃至逆直交変換部304、選択部310乃至選択部313、並びに、マージモード処理部321は、カレントPUの、処理対象であるカレントTUの符号化データを復号するTU復号処理を行う。
ステップS363において、演算部305は、ステップS362の処理により得られたカレントTUの差分画像と予測画像とを加算し、再構成画像を生成する。
ステップS364において、画像復号装置300は、カレントPU内の全てのTUの符号化データを復号したか否かを判定する。未処理のTUが存在すると判定された場合、処理は、ステップS362に戻る。つまり、カレントPUの全てのTUに対して、ステップS362およびステップS363の各処理が実行される。
また、ステップS364において、全てのTUを処理したと判定された場合、処理は、ステップS365に進む。
ステップS365において、画像復号装置300は、全てのカレントCU内の全てのPUの符号化データを復号したか否かを判定する。未処理のPUが存在すると判定された場合、処理は、ステップS361に戻る。つまり、カレントCUの全てのPUに対して、ステップS361乃至ステップS365の各処理が実行される。
また、ステップS365において、全てのPUを処理したと判定された場合、処理は、図30に戻る。
次に、図32のフローチャートを参照して、図31のステップS359において実行されるCUマージモード復号処理の流れの例を説明する。
ステップS371において、マージモード制御部371は、フラグ情報、識別情報merge_idx、および視点予測情報等に基づいて参照ブロックを特定する。
ステップS372において、マージモード制御部371により制御される空間予測動き情報再構築部372乃至視点予測動き情報再構築部374のいずれかは、動き情報バッファ354から参照ブロックの動き情報を取得する。
ステップS373において、マージモード制御部371により制御される空間予測動き情報再構築部372乃至視点予測動き情報再構築部374のいずれかは、ステップS372において取得した動き情報を用いて、カレントCUの動き情報を生成する(再構築する)。
ステップS374において、動き補償部353は、ステップS373において生成(再構築)された動き情報に対応する参照画像を、選択部310を介してフレームメモリ309から取得する。
ステップS375において、動き補償部353は、ステップS374において取得した参照画像を用いてカレントCUの予測画像を生成する。
ステップS376において、可逆復号部302は、カレントCUの符号化データを復号する。逆量子化部303は、復号されて得られた、量子化された差分画像の直交変換係数を逆量子化する。
ステップS377において、逆直交変換部304は、ステップS376において逆量子化されて得られた、差分画像の直交変換係数を逆直交変換する。
ステップS378において、演算部305は、ステップS377において逆直交変換されて得られた差分画像の画像データに、ステップS375の処理により生成された予測画像を加算し、カレントCUの再構成画像を生成する。
ステップS378の処理が終了すると、処理は、図30に戻る。
次に、図34のフローチャートを参照して、図32のステップS361において実行されるPU復号処理の流れの例を説明する。
ステップS381において、可逆復号部302は、カレントPUの符号化データから、フラグ情報merge_flagを抽出し、復号する。
ステップS382において、画像復号装置300は、そのフラグ情報merge_flagの値に基づいて、カレントPUの予測モードがマージモードであるか否かを判定する。マージモードであると判定された場合、処理はステップS383に進む。
ステップS383において、可逆復号部302は、カレントPUの符号化データから、フラグ情報merge_idxを抽出する。
ステップS384において、マージモード制御部371は、フラグ情報、識別情報merge_idx、および視点予測情報等に基づいて参照ブロックを特定する。
ステップS385において、マージモード制御部371により制御される空間予測動き情報再構築部372乃至視点予測動き情報再構築部374のいずれかは、動き情報バッファ354から参照ブロックの動き情報を取得する。
ステップS386において、マージモード制御部371により制御される空間予測動き情報再構築部372乃至視点予測動き情報再構築部374のいずれかは、ステップS385において取得した動き情報を用いて、カレントPUの動き情報を生成する(再構築する)。
ステップS387において、動き補償部353は、ステップS386において生成(再構築)された動き情報に対応する参照画像を、選択部310を介してフレームメモリ309から取得する。
ステップS388において、動き補償部353は、ステップS387において取得した参照画像を用いてカレントPUの予測画像を生成する。
ステップS386の処理が終了すると、処理は、図32に戻る。
また、ステップS382において、マージモードでないと判定された場合、処理は、ステップS389に進む。
ステップS389において、可逆復号部302は、最適モード情報を符号化データから抽出し、復号する。ステップS390において、可逆復号部302は、パーティションタイプを復号する。
ステップS391において、画像復号装置300は、最適予測モードに基づいて、カレントPUの予測モードがイントラ予測であるか否かを判定する。イントラ予測であると判定された場合、処理は、ステップS392に進む。
ステップS392において、可逆復号部302は、MPMflagとIntra direction modeとを符号化データから抽出し、復号する。
ステップS393において、イントラ予測部311は、ステップS392において復号された情報を用いて、カレントPUの予測画像を生成する。
ステップS393の処理が終了すると、処理は、図32に戻る。
また、ステップS391において、インター予測であると判定された場合、処理は、ステップS394に進む。
ステップS394において、可逆復号部302は、動き情報を符号化データから抽出し、復号する。
ステップS395において、動き情報再構築部352は、ステップS394において抽出された動き情報を用いてカレントPUの動き情報を生成(再構築)する。動き補償部353は、生成されたカレントPUの動き情報を用いて、カレントPUの予測画像を生成する。
ステップS395の処理が終了すると、処理は、図32に戻る。
次に、図35のフローチャートを参照して、図32のステップS362において実行されるTU復号処理の流れの例を説明する。
ステップS401において、可逆復号部302は、フラグ情報tu_split_flagを符号化データから抽出し、復号する。
ステップS402において、画像復号装置300は、フラグ情報tu_split_flagの値が、TUの分割を意味する値である1であるか否かを判定する。フラグ情報tu_split_flagの値が1であると判定された場合、処理はステップS403に進む。
ステップS403において、画像復号装置300は、カレントTUを分割する。
ステップS404において、可逆復号部302乃至逆直交変換部304、選択部310乃至選択部313、並びに、マージモード処理部321は、カレントTUが分割された各TUに対してTU復号処理を再帰的に実行する。つまり、画像復号装置300は、ステップS405において、カレントTUの、分割された全てのTUを処理したか否かを判定する。そして、未処理のTUが存在すると判定された場合、処理がステップS404に戻る。このようにして、カレントTUが分割された全てのTUに対して、ステップS404のTU復号処理が実行される。ステップS405において、全てのTUが処理されたと判定された場合、処理は、図32に戻る。
また、ステップS402において、フラグ情報tu_split_flagの値が、カレントTUをこれ以上分割しないことを示す値である0であると判定された場合、処理はステップS406に進む。
ステップS406において、可逆復号部302は、カレントTUの符号化データを復号する。
ステップS407において、逆量子化部303は、ステップS406の処理により得られた、カレントTUの、量子化された差分画像の直交変換係数を、カレントCUの量子化パラメータ(QP)を用いて逆量子化する。
ステップS408において、逆直交変換部304は、ステップS407の処理により得られた、カレントTUの、差分画像の直交変換係数を逆直交変換する。
ステップS408の処理が終了すると、処理は、図32に戻る。
以上のように各処理を実行することにより、画像復号装置300は、画像符号化装置100から供給される、時間方向の複数の周辺ブロックを含む候補の中から選択された参照ブロックを用いたマージモードにより符号化された符号化データを適切に復号することができる。したがって、画像復号装置300は、符号化効率の向上を実現することができる。
<3.第3の実施の形態>
[その他]
なお、マージモードの参照ブロックの候補とする、視点方向の周辺ブロックの数は複数であればよく、3つ以上であっても良い。またその各候補は、コロケーテッドブロックに対して複数の方向に設けられればよく、それぞれの方向、および、方向数は任意である。また、1方向に複数の候補が設定されるようにしても良い。例えば、図7の例において、コロケーテッドブロックの垂直方向に位置するブロックV2やブロックV3を参照ブロックの候補としてもよい。また、ブロックV0乃至ブロックV2の全てを参照ブロックの候補に含めるようにしてもよい。これらの場合、画像符号化装置100が、ブロックV2やブロックV3に対しても視点予測情報(例えばlength_from_col2やlength_from_col3)を設定し、復号側の装置(画像復号装置300)に伝送するようにしてもよい。もちろん、コロケーテッドブロックの斜め方向に位置するブロックを参照ブロックの候補とすることも可能である。
ただし、候補数を増大させると、予測精度の向上が期待されるが、その分予測処理の負荷や符号量が増大するので、それらを総合的に判断して適切な値とするのが望ましい。また、各候補の方向は任意であるものの、ビュー間の視差の方向に沿って設けるのが望ましい。なお、以上においては、符号化・復号の対象の画像として、主に2視点の3D画像を例に説明したが、符号化・復号の対象とする画像の視点数は複数であれば任意である。つまり、画像符号化装置100や画像復号装置300が処理対象とする画像は、3視点以上(ビュー数3以上)の多視点動画像であってもよい。
また、視差予測情報として、参照ブロックの候補とする視差方向の周辺ブロックの、コロケーテッドブロックからの距離を示す情報を複数(length_from_col0, length_from_col1)を設けるように説明したが、これらを1つの情報にまとめてもよい。つまり、視差予測については、各候補のコロケーテッドブロックからの距離を共通(length_from_col)としてもよい。このようにすることにより、視差予測情報の符号量を低減させ、符号化効率を向上させることができる。
なお、この視差予測情報(length_from_col等)は、シーケンスヘッダに含めるようにしてもよい。例えば、カメラの視点の間の関係が同じである場合は、length_from_col情報が変化することは少ないためシーケンスヘッダに含めることで、符号量を少なくすることができる。
また、画像符号化装置100と画像復号装置300との間で、予め定められている情報(両者が既知の情報)は、伝送を省略することができる。
例えば、ステレオ画像のように視点間の関係が概ね同じような用途においては、length_from_col情報を画像符号化装置100と画像復号装置300との間で予め取り決めておくことで、この情報をストリームに含める必要がなくなる。このようにすることにより、符号化効率をさらに向上させることができる。
以上において、同一視点の時刻の異なる符号化済みピクチャのテンポラル予測ブロックと、異なる視点の同じ時刻の符号化済みピクチャの視点補正ブロックを分けて候補としたが、処理量を減らすために、同一視点の符号化済みピクチャであっても、異なる視点の符号化済みピクチャであっても、テンポラル予測ブロックおよび視点補正ブロックを候補として用いるようにしても良い。
<4.第4の実施の形態>
[コンピュータ]
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここでコンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
図36は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
図36に示されるコンピュータ500において、CPU(Central Processing Unit)501、ROM(Read Only Memory)502、RAM(Random Access Memory)503は、バス504を介して相互に接続されている。
バス504にはまた、入出力インタフェース510も接続されている。入出力インタフェース510には、入力部511、出力部512、記憶部513、通信部514、およびドライブ515が接続されている。
入力部511は、例えば、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部512は、例えば、ディスプレイ、スピーカ、出力端子などよりなる。記憶部513は、例えば、ハードディスク、RAMディスク、不揮発性のメモリなどよりなる。通信部514は、例えば、ネットワークインタフェースよりなる。ドライブ515は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブルメディア521を駆動する。
以上のように構成されるコンピュータでは、CPU501が、例えば、記憶部513に記憶されているプログラムを、入出力インタフェース510およびバス504を解して、RAM503にロードして実行することにより、上述した一連の処理が行われる。RAM503にはまた、CPU501が各種の処理を実行する上において必要なデータなども適宜記憶される。
コンピュータ(CPU501)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア521に記録して適用することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
コンピュータでは、プログラムは、リムーバブルメディア521をドライブ515に装着することにより、入出力インタフェース510を介して、記憶部513にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部514で受信し、記憶部513にインストールすることができる。その他、プログラムは、ROM502や記憶部513に、あらかじめインストールしておくことができる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、全ての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
また、以上において、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
例えば、本技術は、1つの機能を、ネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
上述した実施形態に係る画像符号化装置100(図8)および画像復号装置300(図24)は、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、4つの応用例について説明する。
<5.第5の実施の形態>
[5−1.応用例1:テレビジョン装置]
図37は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース909、制御部910、ユーザインタフェース911、及びバス912を備える。
チューナ902は、アンテナ901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ902は、復調により得られた符号化ビットストリームをデマルチプレクサ903へ出力する。即ち、チューナ902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送部としての役割を有する。
デマルチプレクサ903は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ904へ出力する。また、デマルチプレクサ903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部910に供給する。なお、デマルチプレクサ903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
デコーダ904は、デマルチプレクサ903から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ904は、復号処理により生成される映像データを映像信号処理部905へ出力する。また、デコーダ904は、復号処理により生成される音声データを音声信号処理部907へ出力する。
映像信号処理部905は、デコーダ904から入力される映像データを再生し、表示部906に映像を表示させる。また、映像信号処理部905は、ネットワークを介して供給されるアプリケーション画面を表示部906に表示させてもよい。また、映像信号処理部905は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部905は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
表示部906は、映像信号処理部905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD(Organic ElectroLuminescence Display)(有機ELディスプレイ)など)の映像面上に映像又は画像を表示する。
音声信号処理部907は、デコーダ904から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ908から音声を出力させる。また、音声信号処理部907は、音声データについてノイズ除去などの追加的な処理を行ってもよい。
外部インタフェース909は、テレビジョン装置900と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース909を介して受信される映像ストリーム又は音声ストリームが、デコーダ904により復号されてもよい。即ち、外部インタフェース909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置900における伝送部としての役割を有する。
制御部910は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース911から入力される操作信号に応じて、テレビジョン装置900の動作を制御する。
ユーザインタフェース911は、制御部910と接続される。ユーザインタフェース911は、例えば、ユーザがテレビジョン装置900を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部910へ出力する。
バス912は、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、音声信号処理部907、外部インタフェース909及び制御部910を相互に接続する。
このように構成されたテレビジョン装置900において、デコーダ904は、上述した実施形態に係る画像復号装置300(図24)の機能を有する。したがって、テレビジョン装置900は、符号化効率の向上を実現することができる。
[5−2.応用例2:携帯電話機]
図38は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機920は、アンテナ921、通信部922、音声コーデック923、スピーカ924、マイクロホン925、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931、操作部932、及びバス933を備える。
アンテナ921は、通信部922に接続される。スピーカ924及びマイクロホン925は、音声コーデック923に接続される。操作部932は、制御部931に接続される。バス933は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、及び制御部931を相互に接続する。
携帯電話機920は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。
音声通話モードにおいて、マイクロホン925により生成されるアナログ音声信号は、音声コーデック923に供給される。音声コーデック923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック923は、圧縮後の音声データを通信部922へ出力する。通信部922は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック923へ出力する。音声コーデック923は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
また、データ通信モードにおいて、例えば、制御部931は、操作部932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部931は、文字を表示部930に表示させる。また、制御部931は、操作部932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部922へ出力する。通信部922は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号をアンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部922は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部931へ出力する。制御部931は、表示部930に電子メールの内容を表示させると共に、電子メールデータを記録再生部929の記憶媒体に記憶させる。
記録再生部929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAM又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。
また、撮影モードにおいて、例えば、カメラ部926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部927へ出力する。画像処理部927は、カメラ部926から入力される画像データを符号化し、符号化ストリームを記録再生部929の記憶媒体に記憶させる。
また、テレビ電話モードにおいて、例えば、多重分離部928は、画像処理部927により符号化された映像ストリームと、音声コーデック923から入力される音声ストリームとを多重化し、多重化したストリームを通信部922へ出力する。通信部922は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部922は、生成した送信信号を、アンテナ921を介して基地局(図示せず)へ送信する。また、通信部922は、アンテナ921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部922は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部928へ出力する。多重分離部928は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部927、音声ストリームを音声コーデック923へ出力する。画像処理部927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部930に供給され、表示部930により一連の画像が表示される。音声コーデック923は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック923は、生成した音声信号をスピーカ924に供給して音声を出力させる。
このように構成された携帯電話機920において、画像処理部927は、上述した実施形態に係る画像符号化装置100(図8)の機能、および、画像復号装置300(図24)の機能を有する。従って、携帯電話機920は、符号化効率を向上させることができる。
また、以上においては携帯電話機920として説明したが、例えば、PDA(Personal Digital Assistants)、スマートフォン、UMPC(Ultra Mobile Personal Computer)、ネットブック、ノート型パーソナルコンピュータ等、この携帯電話機920と同様の撮像機能や通信機能を有する装置であれば、どのような装置であっても携帯電話機920の場合と同様に、本技術を適用した画像符号化装置および画像復号装置を適用することができる。
[5−3.応用例:記録再生装置]
図39は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置940は、音声データ及び映像データを復号する。
記録再生装置940は、チューナ941、外部インタフェース942、エンコーダ943、HDD(Hard Disk Drive)944、ディスクドライブ945、セレクタ946、デコーダ947、OSD(On-Screen Display)948、制御部949、及びユーザインタフェース950を備える。
チューナ941は、アンテナ(図示せず)を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ941は、復調により得られた符号化ビットストリームをセレクタ946へ出力する。即ち、チューナ941は、記録再生装置940における伝送部としての役割を有する。
外部インタフェース942は、記録再生装置940と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース942は、例えば、IEEE1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース942を介して受信される映像データ及び音声データは、エンコーダ943へ入力される。即ち、外部インタフェース942は、記録再生装置940における伝送部としての役割を有する。
エンコーダ943は、外部インタフェース942から入力される映像データ及び音声データが符号化されていない場合に、映像データ及び音声データを符号化する。そして、エンコーダ943は、符号化ビットストリームをセレクタ946へ出力する。
HDD944は、映像及び音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラムおよびその他のデータを内部のハードディスクに記録する。また、HDD944は、映像及び音声の再生時に、これらデータをハードディスクから読み出す。
ディスクドライブ945は、装着されている記録媒体へのデータの記録及び読み出しを行う。ディスクドライブ945に装着される記録媒体は、例えばDVDディスク(DVD-Video、DVD-RAM、DVD-R、DVD-RW、DVD+R、DVD+RW等)又はBlu-ray(登録商標)ディスクなどであってよい。
セレクタ946は、映像及び音声の記録時には、チューナ941又はエンコーダ943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD944またはディスクドライブ945へ出力する。また、セレクタ946は、映像及び音声の再生時には、HDD944またはディスクドライブ945から入力される符号化ビットストリームをデコーダ947へ出力する。
デコーダ947は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ947は、生成した映像データをOSD948へ出力する。また、デコーダ904は、生成した音声データを外部のスピーカへ出力する。
OSD948は、デコーダ947から入力される映像データを再生し、映像を表示する。また、OSD948は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。
制御部949は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース950から入力される操作信号に応じて、記録再生装置940の動作を制御する。
ユーザインタフェース950は、制御部949と接続される。ユーザインタフェース950は、例えば、ユーザが記録再生装置940を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部949へ出力する。
このように構成された記録再生装置940において、エンコーダ943は、上述した実施形態に係る画像符号化装置100(図8)の機能を有する。また、デコーダ947は、上述した実施形態に係る画像復号装置300(図24)の機能を有する。従って、記録再生装置940は、符号化効率を向上させることができる。
[5−4.応用例4:撮像装置]
図40は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
撮像装置960は、光学ブロック961、撮像部962、信号処理部963、画像処理部964、表示部965、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、制御部970、ユーザインタフェース971、及びバス972を備える。
光学ブロック961は、撮像部962に接続される。撮像部962は、信号処理部963に接続される。表示部965は、画像処理部964に接続される。ユーザインタフェース971は、制御部970に接続される。バス972は、画像処理部964、外部インタフェース966、メモリ967、メディアドライブ968、OSD969、及び制御部970を相互に接続する。
光学ブロック961は、フォーカスレンズ及び絞り機構などを有する。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCD又はCMOSなどのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部962は、画像信号を信号処理部963へ出力する。
信号処理部963は、撮像部962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部963は、カメラ信号処理後の画像データを画像処理部964へ出力する。
画像処理部964は、信号処理部963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部964は、生成した符号化データを外部インタフェース966又はメディアドライブ968へ出力する。また、画像処理部964は、外部インタフェース966又はメディアドライブ968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部964は、生成した画像データを表示部965へ出力する。また、画像処理部964は、信号処理部963から入力される画像データを表示部965へ出力して画像を表示させてもよい。また、画像処理部964は、OSD969から取得される表示用データを、表示部965へ出力する画像に重畳してもよい。
OSD969は、例えばメニュー、ボタン又はカーソルなどのGUIの画像を生成して、生成した画像を画像処理部964へ出力する。
外部インタフェース966は、例えばUSB入出力端子として構成される。外部インタフェース966は、例えば、画像の印刷時に、撮像装置960とプリンタとを接続する。また、外部インタフェース966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置960にインストールされ得る。さらに、外部インタフェース966は、LAN又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース966は、撮像装置960における伝送部としての役割を有する。
メディアドライブ968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。
制御部970は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置960の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース971から入力される操作信号に応じて、撮像装置960の動作を制御する。
ユーザインタフェース971は、制御部970と接続される。ユーザインタフェース971は、例えば、ユーザが撮像装置960を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部970へ出力する。
このように構成された撮像装置960において、画像処理部964は、上述した実施形態に係る画像符号化装置100(図8)の機能、および、画像復号装置300(図24)の機能を有する。従って、撮像装置960は、符号化効率を向上させることができる。
もちろん、本技術を適用した画像符号化装置および画像復号装置は、上述した装置以外の装置やシステムにも適用可能である。
なお、本明細書では、量子化パラメータが、符号化側から復号側へ伝送される例について説明した。量子化パラメータを伝送する手法は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像(又はビットストリーム)とは別の伝送路上で伝送されてもよい。また、情報は、画像(又はビットストリーム)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されてもよい。さらに、情報と画像(又はビットストリーム)とは、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。
なお、本技術は以下のような構成も取ることができる。
(1) 動き情報を参照する参照ブロックとして、カレントブロックの画像と異なる視点の符号化済みの画像の互いに異なるブロックを示す複数の参照ブロック情報を生成する生成部と、
前記生成部により生成された複数の前記参照ブロック情報のそれぞれが示すブロックの中から、前記動き情報の参照先とするブロックを選択する選択部と、
前記選択部により選択されたブロックの動き情報を参照して生成された前記カレントブロックの予測画像と前記カレントブロックの画像との差分画像を符号化する符号化部と、
前記符号化部により生成された符号化データと前記選択部により選択されたブロックを示す前記参照ブロック情報とを伝送する伝送部と
を備える画像処理装置。
(2) 前記参照ブロック情報は、前記参照ブロックを識別する識別情報である
前記(1)に記載の画像処理装置。
(3) 各参照ブロックは、前記カレントブロックの画像と異なる視点の符号化済みの画像の、前記カレントブロックと同じ位置のコロケーテッドブロックから、互いに異なる向きに離れた位置のブロックである
前記(1)または(2)に記載の画像処理装置。
(4) 前記伝送部は、前記カレントブロックの画像と異なる視点の符号化済みの画像の前記参照ブロックの位置を示す視点予測情報を伝送する
前記(1)乃至(3)のいずれかに記載の画像処理装置。
(5) 前記視点予測情報は、前記参照ブロックの、前記カレントブロックと同じ位置のコロケーテッドブロックからの相対位置を示す情報である
前記(1)乃至(4)のいずれかに記載の画像処理装置。
(6) 前記視点予測情報は、前記参照ブロックの前記コロケーテッドブロックからの距離を示す情報を含む
前記(5)に記載の画像処理装置。
(7) 前記視点予測情報は、互いに異なる参照ブロックの前記距離を示す複数の情報を含む
前記(6)に記載の画像処理装置。
(8) 前記視点予測情報は、各参照ブロックの前記コロケーテッドブロックからの方向を示す情報をさらに含む
前記(6)または(7)に記載の画像処理装置。
(9) 前記伝送部は、前記参照ブロックとして、前記カレントブロックの画像と異なる視点の符号化済みの画像のブロックを用いるか否かを示すフラグ情報を伝送する
前記(1)乃至(8)のいずれかに記載の画像処理装置。
(10) 前記符号化部は、前記画像を多視点符号化する
前記(1)乃至(9)のいずれかに記載の画像処理装置。
(11) 画像処理装置の画像処理方法において、
前記画像処理装置が、
動き情報を参照する参照ブロックとして、カレントブロックの画像と異なる視点の符号化済みの画像の互いに異なるブロックを示す複数の参照ブロック情報を生成し、
生成された複数の前記参照ブロック情報のそれぞれが示すブロックの中から、前記動き情報の参照先とするブロックを選択し、
選択されたブロックの動き情報を参照して生成された前記カレントブロックの予測画像と前記カレントブロックの画像との差分画像を符号化し、
生成された符号化データと選択されたブロックを示す前記参照ブロック情報とを伝送する
画像処理方法。
(12) カレントブロックの画像と異なる視点の復号済みの画像の複数のブロックの中から、動き情報の参照先として選択された参照ブロックを示す参照ブロック情報を受け取る受け取り部と、
前記受け取り部により受け取られた前記参照ブロック情報により示される前記参照ブロックの動き情報を用いて、前記カレントブロックの動き情報を生成する生成部と、
前記生成部により生成された前記動き情報を用いて、前記カレントブロックの符号化データを復号する復号部と
を備える画像処理装置。
(13) 前記参照ブロック情報は、前記参照ブロックを識別する識別情報である
前記(12)に記載の画像処理装置。
(14) 前記カレントブロックの画像と異なる視点の復号済みの画像の複数のブロックは、前記カレントブロックと同じ位置のコロケーテッドブロックから、互いに異なる向きに離れた位置のブロックである
前記(12)または(13)に記載の画像処理装置。
(15) 前記参照ブロックを特定する特定部をさらに備え、
前記受け取り部は、前記カレントブロックの画像と異なる視点の復号済みの画像の前記参照ブロックの位置を示す視点予測情報を受け取り、
前記特定部は、前記受け取り部により受け取られた前記参照ブロック情報および前記視点予測情報を用いて前記参照ブロックを特定し、
前記生成部は、前記特定部により特定された前記参照ブロックの動き情報を用いて、前記カレントブロックの動き情報を生成する
前記(12)乃至(14)のいずれかに記載の画像処理装置。
(16) 前記視点予測情報は、前記参照ブロックの、前記カレントブロックと同じ位置のコロケーテッドブロックからの相対位置を示す情報である
前記(15)に記載の画像処理装置。
(17) 前記視点予測情報は、前記参照ブロックの前記コロケーテッドブロックからの距離を示す情報を含む
前記(16)に記載の画像処理装置。
(18) 前記視点予測情報は、互いに異なる参照ブロックの前記距離を示す複数の情報を含む
前記(17)に記載の画像処理装置。
(19) 前記視点予測情報は、各参照ブロックの前記コロケーテッドブロックからの方向を示す情報をさらに含む
前記(17)または(18)に記載の画像処理装置。
(20) 画像処理装置の画像処理方法において、
前記画像処理装置が、
カレントブロックの画像と異なる視点の復号済みの画像の複数のブロックの中から、動き情報の参照先として選択された参照ブロックを示す参照ブロック情報を受け取り、
受け取られた前記参照ブロック情報により示される前記参照ブロックの動き情報を用いて、前記カレントブロックの動き情報を生成し、
生成された前記動き情報を用いて、前記カレントブロックの符号化データを復号する
画像処理方法。
100 画像符号化装置, 121 マージモード処理部, 171 視点予測判定部, 172 フラグ生成部, 173 視点予測情報生成部, 174 視点予測情報記憶部, 175 視点予測参照ブロック特定部, 176 候補ブロック特定部, 177 動き情報取得部, 178 参照画像取得部, 179 差分画像生成部, 300 画像復号装置, 321 マージモード処理部, 371 マージモード制御部, 372 空間予測動き情報再構築部, 373 時間予測動き情報再構築部, 374 視点予測動き情報再構築部

Claims (20)

  1. 動き情報を参照する参照ブロックとして、カレントブロックの画像と異なる視点の符号化済みの画像の互いに異なるブロックを示す複数の参照ブロック情報を生成する生成部と、
    前記生成部により生成された複数の前記参照ブロック情報のそれぞれが示すブロックの中から、前記動き情報の参照先とするブロックを選択する選択部と、
    前記選択部により選択されたブロックの動き情報を参照して生成された前記カレントブロックの予測画像と前記カレントブロックの画像との差分画像を符号化する符号化部と、
    前記符号化部により生成された符号化データと前記選択部により選択されたブロックを示す前記参照ブロック情報とを伝送する伝送部と
    を備える画像処理装置。
  2. 前記参照ブロック情報は、前記参照ブロックを識別する識別情報である
    請求項1に記載の画像処理装置。
  3. 各参照ブロックは、前記カレントブロックの画像と異なる視点の符号化済みの画像の、前記カレントブロックと同じ位置のコロケーテッドブロックから、互いに異なる向きに離れた位置のブロックである
    請求項1に記載の画像処理装置。
  4. 前記伝送部は、前記カレントブロックの画像と異なる視点の符号化済みの画像の前記参照ブロックの位置を示す視点予測情報を伝送する
    請求項1に記載の画像処理装置。
  5. 前記視点予測情報は、前記参照ブロックの、前記カレントブロックと同じ位置のコロケーテッドブロックからの相対位置を示す情報である
    請求項1に記載の画像処理装置。
  6. 前記視点予測情報は、前記参照ブロックの前記コロケーテッドブロックからの距離を示す情報を含む
    請求項5に記載の画像処理装置。
  7. 前記視点予測情報は、互いに異なる参照ブロックの前記距離を示す複数の情報を含む
    請求項6に記載の画像処理装置。
  8. 前記視点予測情報は、各参照ブロックの前記コロケーテッドブロックからの方向を示す情報をさらに含む
    請求項6に記載の画像処理装置。
  9. 前記伝送部は、前記参照ブロックとして、前記カレントブロックの画像と異なる視点の符号化済みの画像のブロックを用いるか否かを示すフラグ情報を伝送する
    請求項1に記載の画像処理装置。
  10. 前記符号化部は、前記画像を多視点符号化する
    請求項1に記載の画像処理装置。
  11. 画像処理装置の画像処理方法において、
    前記画像処理装置が、
    動き情報を参照する参照ブロックとして、カレントブロックの画像と異なる視点の符号化済みの画像の互いに異なるブロックを示す複数の参照ブロック情報を生成し、
    生成された複数の前記参照ブロック情報のそれぞれが示すブロックの中から、前記動き情報の参照先とするブロックを選択し、
    選択されたブロックの動き情報を参照して生成された前記カレントブロックの予測画像と前記カレントブロックの画像との差分画像を符号化し、
    生成された符号化データと選択されたブロックを示す前記参照ブロック情報とを伝送する
    画像処理方法。
  12. カレントブロックの画像と異なる視点の復号済みの画像の複数のブロックの中から、動き情報の参照先として選択された参照ブロックを示す参照ブロック情報を受け取る受け取り部と、
    前記受け取り部により受け取られた前記参照ブロック情報により示される前記参照ブロックの動き情報を用いて、前記カレントブロックの動き情報を生成する生成部と、
    前記生成部により生成された前記動き情報を用いて、前記カレントブロックの符号化データを復号する復号部と
    を備える画像処理装置。
  13. 前記参照ブロック情報は、前記参照ブロックを識別する識別情報である
    請求項12に記載の画像処理装置。
  14. 前記カレントブロックの画像と異なる視点の復号済みの画像の複数のブロックは、前記カレントブロックと同じ位置のコロケーテッドブロックから、互いに異なる向きに離れた位置のブロックである
    請求項12に記載の画像処理装置。
  15. 前記参照ブロックを特定する特定部をさらに備え、
    前記受け取り部は、前記カレントブロックの画像と異なる視点の復号済みの画像の前記参照ブロックの位置を示す視点予測情報を受け取り、
    前記特定部は、前記受け取り部により受け取られた前記参照ブロック情報および前記視点予測情報を用いて前記参照ブロックを特定し、
    前記生成部は、前記特定部により特定された前記参照ブロックの動き情報を用いて、前記カレントブロックの動き情報を生成する
    請求項12に記載の画像処理装置。
  16. 前記視点予測情報は、前記参照ブロックの、前記カレントブロックと同じ位置のコロケーテッドブロックからの相対位置を示す情報である
    請求項15に記載の画像処理装置。
  17. 前記視点予測情報は、前記参照ブロックの前記コロケーテッドブロックからの距離を示す情報を含む
    請求項16に記載の画像処理装置。
  18. 前記視点予測情報は、互いに異なる参照ブロックの前記距離を示す複数の情報を含む
    請求項17に記載の画像処理装置。
  19. 前記視点予測情報は、各参照ブロックの前記コロケーテッドブロックからの方向を示す情報をさらに含む
    請求項17に記載の画像処理装置。
  20. 画像処理装置の画像処理方法において、
    前記画像処理装置が、
    カレントブロックの画像と異なる視点の復号済みの画像の複数のブロックの中から、動き情報の参照先として選択された参照ブロックを示す参照ブロック情報を受け取り、
    受け取られた前記参照ブロック情報により示される前記参照ブロックの動き情報を用いて、前記カレントブロックの動き情報を生成し、
    生成された前記動き情報を用いて、前記カレントブロックの符号化データを復号する
    画像処理方法。
JP2012077823A 2012-03-29 2012-03-29 画像処理装置および方法 Pending JP2013207755A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2012077823A JP2013207755A (ja) 2012-03-29 2012-03-29 画像処理装置および方法
US13/759,518 US20130259131A1 (en) 2012-03-29 2013-02-05 Image processing apparatus and method
CN2013100903193A CN103369316A (zh) 2012-03-29 2013-03-21 图像处理设备和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012077823A JP2013207755A (ja) 2012-03-29 2012-03-29 画像処理装置および方法

Publications (1)

Publication Number Publication Date
JP2013207755A true JP2013207755A (ja) 2013-10-07

Family

ID=49235009

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012077823A Pending JP2013207755A (ja) 2012-03-29 2012-03-29 画像処理装置および方法

Country Status (3)

Country Link
US (1) US20130259131A1 (ja)
JP (1) JP2013207755A (ja)
CN (1) CN103369316A (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012128242A1 (ja) * 2011-03-18 2012-09-27 ソニー株式会社 画像処理装置、画像処理方法、及び、プログラム
JP6191296B2 (ja) * 2013-07-16 2017-09-06 富士通株式会社 動画像処理装置、動画像処理方法及びプログラム
US9210417B2 (en) * 2013-07-17 2015-12-08 Microsoft Technology Licensing, Llc Real-time registration of a stereo depth camera array
WO2015093449A1 (ja) * 2013-12-19 2015-06-25 シャープ株式会社 マージ候補導出装置、画像復号装置及び画像符号化装置
CN110430433B (zh) * 2014-01-03 2022-12-20 庆熙大学校产学协力团 导出子预测单元的时间点之间的运动信息的方法和装置
WO2015135174A1 (en) * 2014-03-13 2015-09-17 Qualcomm Incorporated Simplified disparity derived depth coding in three-dimensional (3d) video coding
CN103974069B (zh) * 2014-05-22 2017-06-20 华为技术有限公司 可重用的视频编码方法和编码器
US10721467B2 (en) * 2015-05-05 2020-07-21 Lg Electronics Inc. Method and device for processing coding unit in image coding system
US10326979B2 (en) 2016-05-23 2019-06-18 Microsoft Technology Licensing, Llc Imaging system comprising real-time image registration
US10339662B2 (en) 2016-05-23 2019-07-02 Microsoft Technology Licensing, Llc Registering cameras with virtual fiducials
WO2019003953A1 (ja) * 2017-06-29 2019-01-03 ソニー株式会社 画像処理装置および画像処理方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6163337A (en) * 1996-04-05 2000-12-19 Matsushita Electric Industrial Co., Ltd. Multi-view point image transmission method and multi-view point image display method
WO2012102045A1 (ja) * 2011-01-28 2012-08-02 パナソニック株式会社 画像符号化方法および画像復号化方法
CN107105286B (zh) * 2011-03-14 2020-01-21 寰发股份有限公司 推导运动向量预测子的方法与装置
WO2012171442A1 (en) * 2011-06-15 2012-12-20 Mediatek Inc. Method and apparatus of motion and disparity vector prediction and compensation for 3d video coding
RU2583040C2 (ru) * 2011-08-30 2016-05-10 Нокиа Текнолоджиз Ой Устройство, способ и компьютерная программа для кодирования и декодирования видеосигналов
EP2727366B1 (en) * 2011-10-11 2018-10-03 MediaTek Inc. Method and apparatus of motion and disparity vector derivation for 3d video coding and hevc
US9503720B2 (en) * 2012-03-16 2016-11-22 Qualcomm Incorporated Motion vector coding and bi-prediction in HEVC and its extensions
US9357214B2 (en) * 2012-12-07 2016-05-31 Qualcomm Incorporated Advanced merge/skip mode and advanced motion vector prediction (AMVP) mode for 3D video

Also Published As

Publication number Publication date
CN103369316A (zh) 2013-10-23
US20130259131A1 (en) 2013-10-03

Similar Documents

Publication Publication Date Title
EP3047649B1 (en) Combined bi-predictive merging candidates for 3d video coding
JP6337104B2 (ja) テクスチャコーディングのためのより正確な高度残差予測(arp)
KR102094588B1 (ko) 공간적 및/또는 시간적 모션 정보를 사용하는 서브-예측 유닛 모션 벡터 예측
JP6336987B2 (ja) 3d映像に関するインタービュー動き予測
US20200252648A1 (en) Image processing device and method
JP6522629B2 (ja) 3dビデオコード化のためのブロックベースの高度残差予測
US9699450B2 (en) Inter-view predicted motion vector for 3D video
US9258562B2 (en) Derivation of depth map estimate
JP2013207755A (ja) 画像処理装置および方法
KR102264104B1 (ko) 백워드 뷰 합성 예측
US10194133B2 (en) Device and method for eliminating redundancy of view synthesis prediction candidate in motion merge mode
US9438926B2 (en) Constraints on neighboring block based disparity vector (NBDV) techniques for 3D video
TW201404179A (zh) 在三維視訊寫碼中用於進階運動向量預測之冗餘移除
EP2760204A1 (en) Image processing device and method
WO2013084775A1 (ja) 画像処理装置および方法
WO2015064401A1 (ja) 画像処理装置および方法