以下、本開示を実施するための形態(以下実施の形態とする)について説明する。なお、説明は以下の順序で行う。
1.第1の実施の形態(画像符号化装置・画像復号装置)
2.第2の実施の形態(画像符号化装置・画像復号装置)
3.第3の実施の形態(コンピュータ)
4.第4の実施の形態(応用例)
<1.第1の実施の形態>
(画像符号化装置の構成例)
図1は、本開示を適用した画像処理装置としての画像符号化装置の第1実施の形態の構成例を示すブロック図である。
図1の画像符号化装置1000は、符号化部1001、設定部1002、および伝送部1003により構成される。画像符号化装置1000は、複数の視点(ビュー)の画像からなる多視点画像に対して動き予測または視差予測によるインター符号化を行う。
具体的には、画像符号化装置1000の符号化部1001は、外部から入力される多視点画像に対して、イントラ符号化、または、動き予測または視差予測によるインター符号化を行う。インター符号化時、符号化部1001は、設定部1002から供給される制限識別情報(restricted_ref_pic_lists_flag)を参照する。
制限識別情報とは、ピクチャ内の全てのスライスの、参照画像を特定する参照画像特定情報のリストである参照リストが、同一の参照リストに制限されることを識別する情報である。即ち、制限識別情報は、参照リストがピクチャ内で共通に用いられることを識別する情報である。制限識別情報は、ピクチャ内の全てのスライスの参照リストが同一の参照リストに制限されることを表す場合1であり、制限されないことを表す場合0である。
符号化部1001は、制限識別情報が1である場合、マージモード時に、非特許文献2に記載されている方法でマージのTMVPを行う。符号化部1001は、多視点画像の符号化データを設定部1002に供給する。
設定部1002は、ユーザ入力等に基づいて制限識別情報を設定し、符号化部1001に供給する。設定部1002は、制限識別情報を含むSPS,PPS(Picture Parameter Set)等のパラメータセットを設定する。設定部1002は、符号化部1001から供給される符号化データにパラメータセットを付加して符号化ストリームを生成し、伝送部1003に供給する。
伝送部1003は、設定部1002から供給される符号化ストリームを後述する復号装置に伝送する。
(符号化部の構成例)
図2は、図1の符号化部1001の構成例を示すブロック図である。
図2の符号化部1001は、例えばAVCやHEVC等の符号化方式のように、予測処理を用いて、多視点画像を視点ごとに符号化する。
図2の符号化部1001は、A/D変換部1011、画面並べ替えバッファ1012、演算部1013、直交変換部1014、量子化部1015、可逆符号化部1016、および蓄積バッファ1017を有する。また、符号化部1001は、逆量子化部1018、逆直交変換部1019、演算部1020、ループフィルタ1021、デコードピクチャバッファ1022、選択部1023、イントラ予測部1024、動き視差予測・補償部1025、予測画像選択部1026、および多視点デコードピクチャバッファ1027を有する。
A/D変換部1011は、入力された1視点の画像をA/D変換し、画面並べ替えバッファ1012に出力して記憶させる。画面並べ替えバッファ1012は、記憶した表示の順番のフレーム単位の画像を、GOP(Group Of Picture)構造に応じて、符号化のための順番に並べ替える。画面並べ替えバッファ1012は、並び替えた画像を、その画像のビューIDおよびPOC(Picture Order Count)とともに、演算部1013、イントラ予測部1024、および動き視差予測・補償部1025に供給する。なお、ビューIDは、視点を識別するための情報であり、POCは、時刻を識別するための情報である。
演算部1013は、画面並べ替えバッファ1012から読み出された画像から、予測画像選択部1026を介してイントラ予測部1024または動き視差予測・補償部1025から供給される予測画像を減算し、その差分情報を直交変換部1014に出力する。
直交変換部1014は、演算部1013から供給される差分情報に対して、離散コサイン変換やカルーネン・レーベ変換等の直交変換を施す。なお、この直交変換の方法は任意である。直交変換部1014は、その直交変換係数を量子化部1015に供給する。
量子化部1015は、直交変換部1014から供給される直交変換係数を量子化する。量子化部1015は、符号量の目標値に関する情報に基づいて量子化パラメータを設定し、その量子化を行う。なお、この量子化の方法は任意である。量子化部1015は、量子化された直交変換係数を可逆符号化部1016に供給する。
可逆符号化部1016は、量子化部1015において量子化された直交変換係数を、任意の符号化方式で可逆符号化し、符号化画像を生成する。また、可逆符号化部1016は、最適なイントラ予測モードを示す情報等を含むイントラ予測情報をイントラ予測部1024から取得する。可逆符号化部1016は、最適なインター予測モードを示す情報や、動きベクトルまたは視差ベクトルを表す動き視差ベクトル情報などを含むインター予測情報を、動き視差予測・補償部1025から取得する。さらに、可逆符号化部1016は、ループフィルタ1021において使用されたフィルタ係数等を取得する。
可逆符号化部1016は、これらの各種情報を任意の符号化方式で符号化し、符号化画像のヘッダ情報の一部とする。可逆符号化部1016は、符号化して得られた符号化画像とヘッダ情報からなる符号化データを、蓄積バッファ1017に供給して蓄積させる。
可逆符号化部1016の符号化方式としては、例えば、可変長符号化または算術符号化等が挙げられる。可変長符号化としては、例えば、H.264/AVC方式で定められているCAVLC(Context-Adaptive Variable Length Coding)などが挙げられる。算術符号化としては、例えば、CABAC(Context-Adaptive Binary Arithmetic Coding)などが挙げられる。
蓄積バッファ1017は、可逆符号化部1016から供給された符号化データを、一時的に保持する。蓄積バッファ1017は、所定のタイミングにおいて、保持している符号化データを、図1の設定部1002に供給する。
また、量子化部1015において量子化された直交変換係数は、逆量子化部1018にも供給される。逆量子化部1018は、その量子化された直交変換係数を、量子化部1015による量子化に対応する方法で逆量子化する。この逆量子化の方法は、量子化部1015による量子化に対応する方法であればどのような方法であってもよい。逆量子化部1018は、得られた直交変換係数を、逆直交変換部1019に供給する。
逆直交変換部1019は、逆量子化部1018から供給された直交変換係数を、直交変換部1014による直交変換に対応する方法で逆直交変換し、局所的に復元された差分情報を得る。この逆直交変換の方法は、直交変換部1014による直交変換に対応する方法であればどのようなものであってもよい。差分情報は、演算部1020に供給される。
演算部1020は、逆直交変換部1019から供給された局所的に復元された差分情報に、予測画像選択部1026を介してイントラ予測部1024または動き視差予測・補償部1025から供給される予測画像を加算する。これにより、局所的に再構成(復号)された画像(以下、再構成画像と称する)が生成される。その再構成画像は、ループフィルタ1021またはデコードピクチャバッファ1022に供給される。
ループフィルタ1021は、デブロックフィルタ、適応オフセットフィルタ(SAO(Sample adaptive offset))、適応ループフィルタ(ALF(Adaptive Loop Filter))等を含み、演算部1020から供給される再構成画像に対して適宜フィルタ処理を行う。
例えば、ループフィルタ1021は、再構成画像に対してデブロックフィルタ処理を行うことにより再構成画像のブロック歪を除去する。また、例えば、ループフィルタ1021は、そのデブロックフィルタ処理結果に対して、ウィナーフィルタ(Wiener Filter)を用いて適応ループフィルタ処理を行うことにより画質改善を行う。
なお、ループフィルタ1021が、再構成画像に対して任意のフィルタ処理を行うようにしてもよい。また、ループフィルタ1021は、フィルタ処理に用いたフィルタ係数等を可逆符号化部1016に供給する。
ループフィルタ1021は、フィルタ処理結果(以下、復号画像と称する)をデコードピクチャバッファ1022に供給する。
デコードピクチャバッファ1022は、演算部1020から供給される再構成画像と、ループフィルタ1021から供給される復号画像とをそれぞれ記憶する。また、デコードピクチャバッファ1022は、その画像のビューIDおよびPOCを記憶する。
デコードピクチャバッファ1022は、所定のタイミングにおいて、若しくは、イントラ予測部1024等の外部からの要求に基づいて、記憶している再構成画像並びに、その画像のビューIDおよびPOCを、選択部1023を介して、イントラ予測部1024に供給する。また、デコードピクチャバッファ1022は、所定のタイミングにおいて、若しくは、動き視差予測・補償部1025等の外部からの要求に基づいて、記憶している復号画像、並びに、その画像のビューIDおよびPOCを、選択部1023を介して、動き視差予測・補償部1025に供給する。
選択部1023は、デコードピクチャバッファ1022から出力される画像の供給先を示す。例えば、イントラ予測の場合、選択部1023は、デコードピクチャバッファ1022からフィルタ処理されていない再構成画像を読み出し、予測処理対象領域の周辺に位置する周辺領域の画像である周辺画像として、イントラ予測部1024に供給する。
また、例えば、インター予測の場合、選択部1023は、デコードピクチャバッファ1022からフィルタ処理された復号画像を読み出し、参照画像として、それを動き視差予測・補償部1025に供給する。
イントラ予測部1024は、デコードピクチャバッファ1022から周辺画像を取得すると、その周辺画像の画素値を用いて、基本的にプレディクションユニット(PU)を処理単位として予測画像を生成するイントラ予測を行う。イントラ予測部1024は、このイントラ予測を予め用意された複数のイントラ予測モードで行う。
イントラ予測部1024は、各イントラ予測モードの予測画像と、画面並べ替えバッファ1012から供給される画像とを用いて、各予測画像のコスト関数値を評価し、最適なイントラ予測モードを選択する。イントラ予測部1024は、最適なイントラ予測モードを選択すると、その最適なイントラ予測モードで生成された予測画像とコスト関数値を、予測画像選択部1026に供給する。
また、イントラ予測部1024は、予測画像選択部1026によりイントラ予測部1024により生成された予測画像が選択された場合、最適なイントラ予測に関するイントラ予測情報を、可逆符号化部1016に供給する。
動き視差予測・補償部1025は、画面並べ替えバッファ1012からの画像と、デコードピクチャバッファ1022からの参照画像とを用いて、基本的にPUを処理単位として、動き予測または視差予測(インター予測)を行う。
具体的には、動き視差予測・補償部1025は、マージモードではない場合、画面並べ替えバッファ1012からの画像と参照画像とを用いて、動きベクトルまたは視差ベクトルを検出する。なお、以下では、動きベクトルと視差ベクトルを特に区別する必要がない場合、それらをまとめて動き視差ベクトルという。動き視差予測・補償部1025は、検出された動き視差ベクトルに基づいて参照画像に補償処理を施し、予測画像を生成する。
マージモードである場合、動き視差予測・補償部1025は、図1の設定部1002から供給される制限識別情報に基づいて、マージのTMVPを行い、予測画像を生成する。動き視差予測・補償部1025は、このようなインター予測を予め用意された複数のインター予測モードで行う。
動き視差予測・補償部1025は、各インター予測モードの予測画像と、画面並べ替えバッファ1012から供給される画像とを用いて、各予測画像のコスト関数値を評価し、最適なインター予測モードを選択する。動き視差予測・補償部1025は、最適なインター予測モードを選択すると、その最適なインター予測モードで生成された予測画像とコスト関数値を、予測画像選択部1026に供給する。
また、動き視差予測・補償部1025は、予測画像選択部1026により動き視差予測・補償部1025により生成された予測画像が選択された場合、最適なインター予測に関するインター予測情報を可逆符号化部1016に供給する。
予測画像選択部1026は、イントラ予測部1024と動き視差予測・補償部1025から供給されるコスト関数値に基づいて、演算部1013や演算部1020に供給する予測画像の供給元を選択する。
例えば、イントラ予測部1024からのコスト関数値が、動き視差予測・補償部1025からのコスト関数値より小さい場合、予測画像選択部1026は、予測画像の供給元としてイントラ予測部1024を選択する。そして、予測画像選択部1026は、イントラ予測部1024から供給される予測画像を演算部1013や演算部1020に供給する。
また、例えば、動き視差予測・補償部1025からのコスト関数値が、イントラ予測部1024からのコスト関数値より小さい場合、予測画像選択部1026は、予測画像の供給元として動き視差予測・補償部1025を選択する。そして、予測画像選択部1026は、動き視差予測・補償部1025から供給される予測画像を演算部1013や演算部1020に供給する。
デコードピクチャバッファ1022は、処理対象の視点の画像、並びに、その画像のビューIDおよびPOCのみを記憶するが、多視点デコードピクチャバッファ1027は、各視点の画像、並びに、その画像のビューIDおよびPOCを記憶する。つまり、多視点デコードピクチャバッファ1027は、デコードピクチャバッファ1022に供給された復号画像、並びに、その復号画像のビューIDおよびPOCを取得し、デコードピクチャバッファ1022とともに記憶する。
デコードピクチャバッファ1022は、処理対象の視点が変わると、前の処理対象の視点の復号画像を消去するが、多視点デコードピクチャバッファ1027は、そのまま保持する。そして、デコードピクチャバッファ1022などの要求に従って、記憶している復号画像、並びに、その画像のビューIDおよびPOCを、「処理対象ではない視点の復号画像、並びに、その復号画像のビューIDおよびPOC」として、デコードピクチャバッファ1022に供給する。デコードピクチャバッファ1022は、多視点デコードピクチャバッファ1027から読み出した「処理対象ではない視点の復号画像、並びに、その復号画像のビューIDおよびPOC」を、選択部1023を介して動き視差予測・補償部1025に供給する。
(マージインター予測部の構成例)
図3は、図2の動き視差予測・補償部1025のうちの、マージモードでインター予測を行うマージインター予測部1030の構成例を示すブロック図である。
図3のマージインター予測部1030は、参照リスト生成部1031、選択部1032、マージ候補リスト生成部1033、予測画像生成部1034、算出部1035、および最適モード決定部1036により構成される。
マージインター予測部1030の参照リスト生成部1031は、図1の設定部1002から供給される制限識別情報に基づいて、参照リストを生成する。
具体的には、参照リスト生成部1031は、符号化対象の画像より表示順で前または後の画像を用いてインター予測を行う場合、即ち一方向予測を行う場合、その画像、および、符号化対象の画像と同一の時刻で視点の異なる画像を参照画像として特定する参照画像特定情報を登録する参照リストL0を生成する。
一方、符号化対象の画像より表示順で前および後の画像を用いてインター予測を行う場合、即ち双方向予測を行う場合、参照リスト生成部1031は、符号化対象の画像より表示順で前の画像を参照画像として特定する参照画像特定情報を登録する参照リストL0を生成する。また、この場合、参照リスト生成部1031は、符号化対象の画像より表示順で後の画像を参照画像として特定する参照画像特定情報を登録する参照リストL1も生成する。なお、この参照リストL0と参照リストL1には、符号化対象の画像と同一の時刻で視点の異なる画像を参照画像として特定する参照画像特定情報も登録される。
このような参照リストは、参照画像特定情報が1である場合ピクチャ単位で生成され、参照画像特定情報が0である場合スライス単位で生成される。
参照リストの各エントリには、そのエントリを識別する情報として参照インデックスが付与されている。参照インデックス「0」のエントリには、符号化対象の画像の現在の処理対象の予測ブロックであるカレントブロックの参照ピクチャタイプと同一の参照ピクチャタイプの参照画像の参照画像特定情報が含まれる。
参照画像特定情報は、例えば、参照画像が符号化対象の画像と同一の視点で異な時間の画像である場合参照画像のPOCを表す情報であり、参照画像が符号化対象の画像と同一の時間で異なる視点の画像である場合参照画像のビューIDである。
また、参照ピクチャタイプには、Short-term(短時間参照ピクチャ)とLong-term(長時間参照ピクチャ)の2つのタイプがある。Short-termは、符号化対象の画像と時間的に近い同一の視点の参照画像のタイプである。一方、Long-termは、符号化対象の画像と時間的に遠い同一の視点の参照画像、または、符号化対象の画像と視点の異なる同一の時刻の参照画像のタイプである。
参照リストは、参照リスト生成部1031に保持される。参照リストを生成するための情報は、例えば、図2の可逆符号化部1016により符号化され、ヘッダ情報の一部として符号化データに含まれる。
選択部1032は、設定部1002からの制限識別情報に基づいて、参照リスト生成部1031に保持されている参照リストから、参照インデックス「0」の参照ピクチャタイプとは異なる参照ピクチャタイプの参照インデックスの最小値を選択する。即ち、選択部1032は、参照リストに登録されている、カレントブロックの参照ピクチャタイプとは異なる参照ピクチャタイプの参照画像の参照画像特定情報を含むエントリに付与された参照インデックスを選択する。選択部1032は、選択された参照インデックスの参照画像特定情報と参照インデックス「0」の参照画像特定情報を予測画像生成部1034に供給する。
マージ候補リスト生成部1033は、設定部1002からの制限識別情報に基づいてマージ候補リストを生成する。マージ候補リストには、コロケーテッドブロック(詳細は後述する)の参照ピクチャタイプがエントリに登録されるとともに、そのコロケーテッドブロックの動き視差ベクトルが予測ベクトルの候補としてエントリに登録される。但し、参照ピクチャタイプがShort-termである場合、動き視差ベクトルは、参照画像と符号化対象の画像の時間的な距離または視点間距離に基づいてスケーリング処理され、予測ベクトルの候補とされる。
コロケーテッドブロックとは、カレントブロックと同一の位置の異なる時刻または視点の予測ブロックである。また、説明の簡単のため、ここでは、コロケーテッドブロックの動き視差ベクトルのみが予測ベクトルの候補とされるが、実際には、カレントブロックの周辺の予測ブロックの動き視差ベクトルも予測ベクトルの候補とされる。
マージ候補リストの各エントリには、そのエントリを識別するベクトルインデックスが付与される。マージ候補リスト生成部1033は、生成されたマージ候補リストを保持する。
予測画像生成部1034は、マージ候補リスト生成部1033からマージ候補リストを読み出す。予測画像生成部1034は、マージ候補リストのエントリごとに、コロケーテッドピクチャの動き視差ベクトルと、選択部1032から供給される、そのコロケーテッドピクチャと同一の参照ピクチャタイプの参照画像特定情報で特定される参照画像とに基づいて、予測画像を生成する。
具体的には、予測画像生成部1034は、エントリに含まれる参照ピクチャタイプがカレントブロックの参照ピクチャタイプと同一である場合、カレントブロックと同一の参照ピクチャタイプの参照画像特定情報である、参照インデックス「0」の参照画像特定情報を選択部1032から取得する。
一方、エントリに含まれる参照ピクチャタイプがカレントブロックの参照ピクチャタイプと異なる場合、予測画像生成部1034は、カレントブロックとは異なる参照ピクチャタイプの参照画像特定情報である、参照インデックス「0」以外の参照インデックスの参照画像特定情報を選択部1032から取得する。
予測画像生成部1034は、取得された参照画像特定情報で特定される参照画像を、選択部1023を介してデコードピクチャバッファ1022から取得する。そして、予測画像生成部1034は、エントリに含まれる動き視差ベクトルに基づいて、読み出された参照画像に補償処理を施し、予測画像を生成する。
以上のようにして予測画像を生成する処理は、予め用意された全てのインター予測モードで行われる。即ち、サイズの異なるカレントブロックの予測画像が生成される。予測画像生成部1034は、生成された予測画像を、対応するインター予測モードおよびベクトルインデックスとともに算出部1035に供給する。
算出部1035は、予測画像生成部1034から供給される予測画像、インター予測モード、およびベクトルインデックス、並びに、画面並べ替えバッファ1012から供給される画像に基づいて、予測画像ごとにコスト関数値を算出する。算出部1035は、予測画像、対応するコスト関数値、インター予測モード、およびベクトルインデックスを最適モード決定部1036に供給する。
最適モード決定部1036は、算出部1035から供給されるコスト関数値が最小となる予測画像のインター予測モードを最適なインター予測モードに決定する。最適モード決定部1036は、最適なインター予測モードの予測画像とコスト関数値を予測画像選択部1026に供給する。
また、最適モード決定部1036は、予測画像選択部1026によりマージインター予測部1030により生成された予測画像が選択された場合、最適なインター予測モードを示す情報と、動き視差ベクトル情報としてのベクトルインデックスとを含むインター予測情報を、可逆符号化部1016に供給する。
(画像符号化装置の処理の説明)
図4は、図1の画像符号化装置1000のストリーム生成処理を説明するフローチャートである。このストリーム生成処理は、多視点画像が入力されたとき、開始される。
ステップS11において、画像符号化装置1000の符号化部1001は、設定部1002から供給されるユーザ入力等に基づいて設定された制限識別情報に基づいて、各視点の画像を符号化する符号化処理を行う。この符号化処理の詳細は、後述する図5を参照して説明する。
ステップS12において、設定部1002は、制限識別情報を含むSPS,PPS等のパラメータセットを設定する。ステップS13において、設定部1002は、符号化部1001から供給される符号化データにパラメータセットを付加して符号化ストリームを生成し、伝送部1003に供給する。
ステップS14において、伝送部1003は、設定部1002から供給される符号化ストリームを後述する復号装置に伝送する。
図5は、図4のステップS11の符号化処理の詳細を説明するフローチャートである。この符号化処理は、多視点画像に対して視点ごとに行われる。
ステップS101において、A/D変換部1011は入力された画像をA/D変換する。ステップS102において、画面並べ替えバッファ1012は、A/D変換された画像を記憶し、各ピクチャの表示する順番から符号化する順番への並べ替えを行う。
ステップS103において、イントラ予測部1024は、予め用意された複数のイントラ予測モードのイントラ予測処理を行い、予測画像を生成する。また、イントラ予測部1024は、イントラ予測モードごとに、予測画像と画面並べ替えバッファ1012から供給される画像とに基づいてコスト関数値を算出する。そして、イントラ予測部1024は、コスト関数値が最小となるイントラ予測モードを最適なイントラ予測モードとして選択する。イントラ予測部1024は、その最適なイントラ予測モードで生成された予測画像とコスト関数値を、予測画像選択部1026に供給する。
ステップS104において、動き視差予測・補償部1025は、設定部1002から供給される制限識別情報に基づいて、予め用意された複数のインター予測モードのインター予測処理を行い、予測画像を生成する。また、動き視差予測・補償部1025は、インター予測モードごとに予測画像と画面並べ替えバッファ1012から供給される画像とに基づいてコスト関数値を算出する。そして、動き視差予測・補償部1025は、コスト関数値が最小となるインター予測モードを最適なインター予測モードとして選択する。動き視差予測・補償部1025は、その最適なインター予測モードで生成された予測画像とコスト関数値を、予測画像選択部1026に供給する。
ステップS105において、予測画像選択部1026は、イントラ予測部1024から供給される予測画像と、動き視差予測・補償部1025から供給される予測画像のうち、コスト関数値の小さい方を選択する。イントラ予測部1024から供給される予測画像が選択された場合、イントラ予測部1024は、イントラ予測情報を可逆符号化部1016に供給する。一方、動き視差予測・補償部1025から供給される予測画像が選択された場合、動き視差予測・補償部1025は、インター予測情報を可逆符号化部1016に供給する。
ステップS106において、演算部1013は、ステップS102の処理により並び替えられた画像と、ステップS105の処理により選択された予測画像との差分を演算する。生成された差分情報は元の画像に較べてデータ量が低減される。したがって、画像をそのまま符号化する場合に比べて、データ量を圧縮することができる。
ステップS107において、直交変換部1014は、ステップS106の処理により生成された差分情報を直交変換する。具体的には、離散コサイン変換、カルーネン・レーベ変換等の直交変換が行われ、直交変換係数が出力される。ステップS108において、量子化部1015は、ステップS107の処理により得られた直交変換係数を量子化する。
ステップS108の処理により量子化された差分情報は、次のようにして局部的に復号される。すなわち、ステップS109において、逆量子化部1018は、ステップS108の処理により生成された量子化された直交変換係数を量子化部1015の特性に対応する特性で逆量子化する。ステップS110において、逆直交変換部1019は、ステップS109の処理により得られた直交変換係数を、直交変換部1014の特性に対応する特性で逆直交変換する。これにより差分情報が復元される。
ステップS111において、演算部1020は、ステップS105において選択された予測画像を、ステップS110において生成された差分情報に加算し、再構成画像を生成する。
ステップS112において、ループフィルタ1021は、ステップS111の処理により得られた再構成画像に対して、デブロックフィルタ処理や適応ループフィルタ処理等を含むフィルタ処理を適宜行い、復号画像を生成する。ループフィルタ1021は、フィルタ処理に用いられたフィルタ係数等を可逆符号化部1016に供給する。
ステップS113において、デコードピクチャバッファ1022は、ステップS112の処理により生成された復号画像等、および、ステップS111の処理により生成された再構成画像等を記憶する。多視点デコードピクチャバッファ1027は、ステップS112の処理により生成された復号画像等を記憶する。
ステップS114において、可逆符号化部1016は、ステップS108の処理により量子化された直交変換係数を可逆符号化し、符号化画像を生成する。また、可逆符号化部1016は、イントラ予測情報またはインター予測情報、フィルタ係数等を符号化し、ヘッダ情報を生成する。そして、可逆符号化部1016は、符号化画像とヘッダ情報から符号化データを生成する。
ステップS115において、蓄積バッファ1017は、ステップS114の処理により得られた符号化データを蓄積する。蓄積バッファ1017に蓄積された符号化データは、適宜読み出され、図1の設定部1002に供給される。
ステップS116において、量子化部1015は、ステップS115の処理により蓄積バッファ1017に蓄積された符号化データの符号量(発生符号量)に基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化動作のレートを制御する。
ステップS116の処理が終了すると、処理は図4のステップS11に戻り、ステップS12の処理が行われる。
図6は、図5のステップS104のインター予測処理のうちのマージモードのインター予測処理であるマージインター予測処理を説明するフローチャートである。このマージインター予測処理は、マージモードで多視点画像を符号化するときにピクチャ単位で行われる。
ステップS1201において、マージインター予測部1030の参照リスト生成部1031(図3)は、設定部1002から供給される制限識別情報(restricted_ref_pic_lists_flag)が1であるかどうかを判定する。ステップS1201で制限識別情報が1であると判定された場合、処理はステップS1202に進む。
ステップS1202において、参照リスト生成部1031は、ピクチャ単位の参照リストを生成し、保持する。この参照リストを生成するための情報は、例えば、図2の可逆符号化部1016により符号化され、ヘッダ情報の一部として符号化データに含まれる。
ステップS1203において、選択部1032は、参照リスト生成部1031により生成された参照リストL0の中で、参照インデックス「0」の参照ピクチャタイプと異なる参照ピクチャタイプの参照インデックスの最小値を探索する。
具体的には、選択部1032は、参照リストL0に対して、1以上の参照インデックスを昇順に探索し、参照インデックス「0」の参照ピクチャタイプと異なる参照ピクチャタイプの参照画像の参照画像特定情報が見つかるまで、探し続ける。
例えば、参照インデックス「0」の参照ピクチャタイプがShort-termであるとき、選択部1032は、参照ピクチャタイプがLong-termである参照画像の参照画像特定情報をエントリに含む参照インデックスが見つかるまで、1以上の参照インデックスを昇順に探し続ける。
一方、参照インデックス「0」に対応する参照ピクチャタイプがLong-termであるとき、選択部1032は、参照ピクチャタイプがShort-termである参照画像の参照画像特定情報をエントリに含む参照インデックスが見つかるまで、1以上の参照インデックスを昇順に探し続ける。選択部1032は、探索された参照インデックスのエントリに含まれる参照画像特定情報を予測画像生成部1034に供給する。
ステップS1204において、選択部1032は、参照リスト生成部1031により参照リストL1が生成された場合、参照リストL0の場合と同様に、参照リストL1の中で、参照インデックス「0」の参照ピクチャタイプと異なる参照ピクチャタイプの参照インデックスの最小値を探索する。選択部1032は、探索された参照インデックスのエントリに含まれる参照画像特定情報を予測画像生成部1034に供給する。また、選択部1032は、参照インデックス「0」のエントリに含まれる参照画像特定情報を予測画像生成部1034に供給する。
以降のステップS1205,S1206、およびS1209乃至S1212の処理は、各インター予測モードの予測ブロックごとに行われる。
ステップS1205において、マージ候補リスト生成部1033は、全てのコロケーテッドブロックの参照ピクチャタイプとともに、対応する動き視差ベクトルを予測ベクトルの候補としてエントリに登録するマージ候補リストを生成し、保持する。
ステップS1206において、予測画像生成部1034は、マージ候補リストのエントリごとに、カレントブロックの参照ピクチャタイプと、そのエントリに含まれるコロケーテッドブロックの参照ピクチャタイプとが、一致するかどうかを判定する。そして、予測画像生成部1034は、参照ピクチャタイプが異なる場合、選択部1032から供給される参照画像特定情報のうちの0以外の参照インデックスの参照画像特定情報を、カレントブロックの参照画像特定情報として選択する。
一方、参照ピクチャタイプが同一である場合、予測画像生成部1034は、選択部1032から供給される参照画像特定情報のうちの参照インデックス「0」の参照画像特定情報を、カレントブロックの参照画像特定情報として選択する。そして、処理は、ステップS1210に進む。
一方、ステップS1201で、制限識別情報が1ではないと判定された場合、即ち、制限識別情報が0である場合、ステップS1207において、参照リスト生成部1031は、スライス単位の参照リストを生成し、保持する。この参照リストを生成するための情報は、例えば、可逆符号化部1016により符号化され、ヘッダ情報の一部として符号化データに含まれる。
ステップS1208において、選択部1032は、生成された参照リストの参照インデックス「0」の参照画像特定情報を予測画像生成部1034に供給する。予測画像生成部1034は、その参照画像特定情報をカレントブロックの参照画像特定情報とする。
ステップS1209において、マージ候補リスト生成部1033は、カレントブロックの参照ピクチャタイプと各コロケーテッドブロックの参照ピクチャタイプが一致するかどうかを判定する。そして、マージ候補リスト生成部1033は、コロケーテッドブロックの参照ピクチャタイプがカレントブロックの参照ピクチャタイプと異なるときに、そのコロケーテッドブロックの動き視差ベクトルを、予測ベクトルの候補から除外して、マージ候補リストを生成し、保持する。そして、処理はステップS1210に進む。
ステップS1210において、予測画像生成部1034は、カレントブロックの参照画像特定情報で特定される参照画像と、マージ候補リストの各エントリに含まれる予測ベクトルとに基づいて、予測画像を生成する。予測画像生成部1034は、生成された予測画像を、対応するインター予測モードおよびベクトルインデックスとともに算出部1035に供給する。
ステップS1211において、算出部1035は、予測画像生成部1034からの予測画像、インター予測モード、およびベクトルインデックス、並びに、画面並べ替えバッファ1012から供給される画像に基づいて、予測画像ごとにコスト関数値を算出する。算出部1035は、予測画像、対応するコスト関数値、インター予測モード、およびベクトルインデックスを最適モード決定部1036に供給する。
ステップS1212において、最適モード決定部1036は、算出部1035から供給されるコスト関数値が最小となる予測画像のインター予測モードを最適なインター予測モードとして選択する。最適モード決定部1036は、最適なインター予測モードの予測画像とコスト関数値を予測画像選択部1026に供給する。そして、処理は終了する。
(画像復号装置の構成例)
図7は、図1の画像符号化装置1000から伝送されてくる符号化ストリームを復号する、本開示を適用した画像処理装置としての画像復号装置の第1実施の形態の構成例を示すブロック図である。
図7の画像復号装置1100は、受け取り部1101、抽出部1102、および復号部1103により構成される。
画像復号装置1100の受け取り部1101は、画像符号化装置1000から伝送されてくる符号化ストリームを受け取り、抽出部1102に供給する。
抽出部1102は、受け取り部1101から供給される符号化ストリームから、制限識別情報を含むSPS,PPS等のパラメータセットと多視点画像の符号化データを抽出し、復号部1103に供給する。
復号部1103は、抽出部1102から供給される符号化データに対して、画像符号化装置1000に対応する方式で、イントラ復号、または、動き予測または視差予測によるインター復号を行う。具体的には、復号部1103は、抽出部1102から供給されるSPSに含まれる制限識別情報が1である場合、マージモード時に、非特許文献2に記載されている方法でマージのTMVPを行う。復号部1103は、復号の結果得られる多視点画像を出力する。
(復号部の構成例)
図8は、図7の復号部1103の構成例を示すブロック図である。
図8の復号部1103は、図2の符号化部1001に対応する方式で、多視点画像を視点ごとに復号する。
復号部1103は、蓄積バッファ1121、可逆復号部1122、逆量子化部1123、逆直交変換部1124、演算部1125、ループフィルタ1126、画面並べ替えバッファ1127、およびD/A変換部1128を有する。また、復号部1103は、デコードピクチャバッファ1129、選択部1130、イントラ予測部1131、動き視差補償部1132、選択部1133、および多視点デコードピクチャバッファ1134を有する。
蓄積バッファ1121は、図7の抽出部1102から供給される符号化データを蓄積し、所定のタイミングにおいてその符号化データを可逆復号部1122に供給する。可逆復号部1122は、蓄積バッファ1121より供給された符号化データを、可逆符号化部1016の符号化方式に対応する方式で復号する。可逆復号部1122は、復号して得られた量子化された直交変換係数を、逆量子化部1123に供給する。
また、可逆復号部1122は、符号化データを復号して得られたイントラ予測情報をイントラ予測部1131に供給し、インター予測情報等を動き視差補償部1132に供給する。可逆復号部1122は、符号化データを復号して得られたフィルタ係数等をループフィルタ1126に供給する。
逆量子化部1123は、可逆復号部1122から供給される量子化された直交変換係数を、図2の量子化部1015の量子化方式に対応する方式で逆量子化し、得られた直交変換係数を逆直交変換部1124に供給する。逆直交変換部1124は、図2の直交変換部1014の直交変換方式に対応する方式で逆量子化部1123から供給される直交変換係数を逆直交変換する。
逆直交変換されて得られた差分情報は、演算部1125に供給される。また、演算部1125には、選択部1133を介して、イントラ予測部1131または動き視差補償部1132から予測画像が供給される。
演算部1125は、差分情報と予測画像とを加算し再構成画像を得る。演算部1125は、その再構成画像をループフィルタ1126とデコードピクチャバッファ1129に供給する。
ループフィルタ1126は、可逆復号部1122から供給されるフィルタ係数等を用いて、演算部1125からの再構成画像に対して、図2のループフィルタ1021と同様にフィルタ処理を施し、復号画像を生成する。
ループフィルタ1126は、復号画像を画面並べ替えバッファ1127およびデコードピクチャバッファ1129に供給する。
画面並べ替えバッファ1127は、供給された復号画像の並べ替えを行う。すなわち、図2の画面並べ替えバッファ1012により符号化の順番に並べ替えられたフレームの順番が、元の表示の順番に並べ替えられる。D/A変換部1128は、画面並べ替えバッファ1127から供給された復号画像をD/A変換し、図示せぬディスプレイに出力し、表示させる。
デコードピクチャバッファ1129は、供給される再構成画像、並びに、その画像のビューIDおよびPOCと、復号画像、並びに、その画像のビューIDおよびPOCとを記憶する。また、デコードピクチャバッファ1129は、所定のタイミングにおいて、若しくは、イントラ予測部1131等の外部の要求に基づいて、記憶している再構成画像、並びに、その画像のビューIDおよびPOCを、選択部1130を介してイントラ予測部1131に供給する。
また、デコードピクチャバッファ1129は、所定のタイミングにおいて、若しくは、動き視差補償部1132等の外部の要求に基づいて、記憶している復号画像、並びに、その画像のビューIDおよびPOCを、選択部1130を介して動き視差補償部1132に供給する。
イントラ予測部1131は、可逆復号部1122から供給されるイントラ予測モード情報が示すイントラ予測情報に基づいて、デコードピクチャバッファ1129から選択部1130を介して再構成画像を周辺画像として取得し、予測画像とする。イントラ予測部1131は、予測画像を、選択部1133を介して演算部1125に供給する。
動き視差補償部1132は、可逆復号部1122から供給されるインター予測情報と抽出部1102から供給される制限識別情報とに基づいて、復号画像を参照画像として読み出し、補償処理を施す。動き視差補償部1132は、その結果生成される予測画像を、選択部1133を介して演算部1125に供給する。
選択部1133は、イントラ予測部1131から供給される予測画像、または、動き視差補償部1132から供給される予測画像を演算部1125に供給する。
デコードピクチャバッファ1129は、処理対象の視点の画像、並びに、その画像のビューIDおよびPOCのみを記憶するが、多視点デコードピクチャバッファ1134は、各視点の画像、並びに、その画像のビューIDおよびPOCを記憶する。つまり、多視点デコードピクチャバッファ1134は、デコードピクチャバッファ1129に供給された復号画像、並びに、その復号画像のビューIDおよびPOCを取得し、デコードピクチャバッファ1129とともに記憶する。
デコードピクチャバッファ1129は、処理対象の視点が変わると、その復号画像を消去するが、多視点デコードピクチャバッファ1134は、そのまま保持する。そして、デコードピクチャバッファ1129などの要求に従って、記憶している復号画像、並びに、その復号画像のビューIDおよびPOCを、「処理対象ではない視点の復号画像」として、デコードピクチャバッファ1129に供給する。デコードピクチャバッファ1129は、多視点デコードピクチャバッファ1134から読み出した「処理対象ではない視点の復号画像、並びに、その復号画像のビューIDおよびPOC」を、選択部1130を介して動き視差補償部1132に供給する。
(マージインター予測部の構成例)
図9は、図8の動き視差補償部1132のうちの、マージモードでインター予測を行うマージインター予測部1150の構成例を示すブロック図である。
図9のマージインター予測部1150は、参照リスト生成部1151、選択部1152、マージ候補リスト生成部1153、および予測画像生成部1154により構成される。
マージインター予測部1150の参照リスト生成部1151は、可逆復号部1122から供給される参照リストを生成するための情報と制限識別情報とに基づいて、図3の参照リスト生成部1031で生成される参照リストと同一の参照リストを生成する。参照リストは、参照リスト生成部1151に保持される。
選択部1152は、抽出部1102からの制限識別情報に基づいて、図3の選択部1032と同様に、参照リストから参照インデックス「0」の参照ピクチャタイプとは異なる参照ピクチャタイプの参照インデックスの最小値を選択する。選択部1152は、選択された参照インデックスの参照画像特定情報と参照インデックス「0」の参照画像特定情報を予測画像生成部1154に供給する。
マージ候補リスト生成部1153は、図8の可逆復号部1122からのインター予測情報が示すインター予測モードの予測ブロックについて、図3のマージ候補リスト生成部1033と同様に、制限識別情報に基づいてマージ候補リストを生成する。マージ候補リスト生成部1153は、生成されたマージ候補リストを保持する。
予測画像生成部1154は、インター予測情報に含まれるベクトルインデックスのエントリを、マージ候補リストから読み出す。予測画像生成部1154は、読み出されたエントリに含まれる参照ピクチャタイプがカレントブロックの参照ピクチャタイプと同一である場合、選択部1152から参照インデックス「0」の参照画像特定情報を取得する。
一方、エントリに含まれる参照ピクチャタイプがカレントブロックの参照ピクチャタイプと異なる場合、予測画像生成部1154は、選択部1152から参照インデックス「0」以外の参照インデックスの参照画像特定情報を取得する。予測画像生成部1154は、取得された参照画像特定情報で特定される参照画像を、選択部1130を介してデコードピクチャバッファ1022から取得する。
予測画像生成部1154は、エントリに含まれる動き視差ベクトルに基づいて、読み出された参照画像に補償処理を施し、予測画像を生成する。予測画像生成部1154は、生成された予測画像を選択部1133に供給する。
(画像復号装置の処理の説明)
図10は、図7の画像復号装置1100の画像生成処理を説明するフローチャートである。この画像生成処理は、例えば、画像符号化装置1000から符号化ストリームが送信されてきたとき、開始される。
ステップS1221において、画像復号装置1100の受け取り部1101は、画像符号化装置1000から伝送されてくる符号化ストリームを受け取り、抽出部1102に供給する。
ステップS1222において、抽出部1102は、受け取り部1101から供給される符号化ストリームから、制限識別情報を含むSPS,PPS等のパラメータセットと符号化データを抽出し、復号部1103に供給する。
ステップS1223において、復号部1103は、抽出部1102から供給される符号化データに対して、視点ごとに画像符号化装置1000に対応する方式で復号処理を行う。この復号処理の詳細は、後述する図11を参照して説明する。ステップS1223の処理後、処理は終了する。
図11は、図10のステップS1223の復号処理の詳細を説明するフローチャートである。この復号処理は、多視点画像の符号化データに対して視点ごとに行われる。
ステップS1241において、蓄積バッファ1121は、抽出部1102から供給される符号化データを蓄積する。ステップS1242において、可逆復号部1122は、蓄積バッファ1121から供給される符号化データを可逆復号する。可逆復号部1122は、復号して得られた量子化された直交変換係数を、逆量子化部1123に供給する。
また、可逆復号部1122は、符号化データを復号して得られたイントラ予測情報をイントラ予測部1131に供給し、インター予測情報等を動き視差補償部1132に供給する。可逆復号部1122は、符号化データを復号して得られたフィルタ係数等をループフィルタ1126に供給する。
ステップS1243において、逆量子化部1123は、可逆復号部1122から供給される量子化された直交変換係数を、図2の量子化部1015の量子化方式に対応する方式で逆量子化し、得られた直交変換係数を逆直交変換部1124に供給する。
ステップS1244において、逆直交変換部1124は、図2の直交変換部1014の直交変換方式に対応する方式で逆量子化部1123から供給される直交変換係数を逆直交変換する。逆直交変換部1124は、この逆直交変換により差分情報を得て、演算部1125に供給する。
ステップS1245において、イントラ予測部1131は、可逆復号部1122からイントラ予測情報が供給されたとき、イントラ予測情報に基づいてイントラ予測処理を行う。また、動き視差補償部1132は、可逆復号部1122からインター予測情報が供給されたとき、インター予測情報と抽出部1102からの制限識別情報に基づいてインター予測処理を行う。イントラ予測処理またはインター予測処理の結果得られる予測画像は、選択部1133を介して演算部1125に供給される。
ステップS1246において、演算部1125は、差分情報を予測画像と加算し、再構成画像を生成する。
ステップS1247において、ループフィルタ1126は、可逆復号部1122から供給されるフィルタ係数等を用いて、演算部1125により生成された再構成画像に対してフィルタ処理を行う。これにより、復号画像が生成される。
ステップS1248において、画面並べ替えバッファ1127は、ループフィルタ1126により生成された復号画像の並べ替えを行う。すなわち符号化部1001の画面並べ替えバッファ1012により符号化のために並べ替えられたフレームの順序が、元の表示の順序に並べ替えられる。
ステップS1249において、D/A変換部1128は、画面並べ替えバッファ1127により並べ替えられた復号画像をD/A変換する。この復号画像が図示せぬディスプレイに出力され、表示される。
ステップS1250において、デコードピクチャバッファ1129と多視点デコードピクチャバッファ1134は、ループフィルタ1126により生成された復号画像等を記憶する。この復号画像は、インター予測処理において参照画像として利用される。また、デコードピクチャバッファ1129は、演算部1125により生成された再構成画像等を記憶する。この再構成画像は、イントラ予測処理において周辺画像として利用される。
ステップS1250の処理が終了すると、処理は図10のステップS1223に戻り、処理は終了する。
図12は、図11のステップS1245の予測処理のうちのマージモードのインター予測処理であるマージインター予測処理を説明するフローチャートである。このマージインター予測処理は、マージモードで多視点画像を復号するときにピクチャ単位で行われる。
図12のステップS1301において、マージインター予測部1150の参照リスト生成部1151(図9)は、抽出部1102から供給される制限識別情報(restricted_ref_pic_lists_flag)が1であるかどうかを判定する。ステップS1301で制限識別情報が1であると判定された場合、処理はステップS1302に進む。
ステップS1302において、参照リスト生成部1151は、可逆復号部1122から供給される参照リストを生成するための情報に基づいて、ピクチャ単位の参照リストを生成し、保持する。
ステップS1303において、選択部1152は、参照リスト生成部1151により生成された参照リストL0の中で、参照インデックス「0」の参照ピクチャタイプと異なる参照ピクチャタイプの参照インデックスの最小値を探索する。
ステップS1304において、選択部1152は、参照リスト生成部1031により参照リストL1が生成された場合、参照リストL0の場合と同様に、参照リストL1の中で、参照インデックス「0」の参照ピクチャタイプと異なる参照ピクチャタイプの参照インデックスの最小値を探索する。
以降のステップS1305,S1306,S1309、およびS1310の処理は、インター予測情報が示す最適なインター予測モードの予測ブロック単位で行われる。
ステップS1305において、マージ候補リスト生成部1153は、全てのコロケーテッドブロックの参照ピクチャタイプとともに、対応する動き視差ベクトルを予測ベクトルの候補としてエントリに登録するマージ候補リストを生成し、保持する。
ステップS1306において、予測画像生成部1154は、カレントブロックの参照ピクチャタイプと、インター予測情報に含まれるベクトルインデックスのマージ候補リストのエントリに含まれるコロケーテッドブロックの参照ピクチャタイプとが、一致するかどうかを判定する。そして、予測画像生成部1034は、参照ピクチャタイプが異なる場合、選択部1152から供給される参照画像特定情報のうちの0以外の参照インデックスの参照画像特定情報を、カレントブロックの参照画像特定情報として選択する。
一方、参照ピクチャタイプが同一である場合、予測画像生成部1154は、選択部1152から供給される参照画像特定情報のうちの、参照インデックス「0」の参照画像特定情報を、カレントブロックの参照画像特定情報として選択する。
そして、処理は、ステップS1310に進む。
一方、ステップS1301で、制限識別情報が1ではないと判定された場合、即ち、制限識別情報が0である場合、ステップS1307において、参照リスト生成部1151は、可逆復号部1122から供給される参照リストを生成するための情報に基づいて、スライス単位の参照リストを生成し、保持する。
ステップS1308において、選択部1152は、生成された参照リストの参照インデックス「0」の参照画像特定情報を予測画像生成部1154に供給する。予測画像生成部1154は、その参照画像特定情報をカレントブロックの参照画像特定情報とする。
ステップS1309において、マージ候補リスト生成部1153は、カレントブロックの参照ピクチャタイプと、各コロケーテッドブロックの参照ピクチャタイプが一致するかどうかを判定する。そして、マージ候補リスト生成部1153は、コロケーテッドブロックの参照ピクチャタイプがカレントブロックの参照ピクチャタイプと異なるときに、そのコロケーテッドブロックの動き視差ベクトルを、予測ベクトルの候補から除外して、マージ候補リストを生成し、保持する。そして、処理はステップS1310に進む。
ステップS1310において、予測画像生成部1154は、カレントブロックの参照画像特定情報で特定される参照画像と、インター予測情報に含まれるベクトルインデックスのマージ候補リストのエントリに含まれる予測ベクトルとに基づいて、予測画像を生成する。そして、処理を終了する。
非特許文献2の発明では、スライス単位で、参照インデックス「0」の参照ピクチャタイプと異なる参照ピクチャタイプの最小の参照インデックスの探索が行われる。HEVC規格では、スライスは最大で600スライスまで分割できる。また、参照インデックスの数は、各リストで最大で16枚指定することができる。従って、非特許文献2の探索処理における探索回数は、Worst caseで、600(スライス枚数)x [15(L0の参照インデックス16枚-1(インデックス1から探索するため))+15((L1の参照インデックス16枚-1(インデックス1から探索するため)))]=18,000回となる。
これに対して、第1の実施の形態では、制限識別情報が1である場合にのみ、ピクチャ単位で、参照インデックス「0」の参照ピクチャタイプと異なる参照ピクチャタイプの最小の参照インデックスの探索を行う。これにより、ワーストケースの探索回数が、1/600倍の30回に削減できる。
<2.第2の実施の形態>
(画像符号化装置の構成例)
図13は、本開示を適用した画像処理装置としての画像符号化装置の第2実施の形態の構成例を示すブロック図である。
図13の画像符号化装置1300は、符号化部1301、設定部1302、および伝送部1303により構成される。画像符号化装置1300は、参照リストが変更されることを識別する変更識別情報(lists_modification_present_flag)に基づいて、参照インデックス「0」の参照ピクチャタイプと異なる参照ピクチャタイプの最小の参照インデックスの探索を行う。
具体的には、画像符号化装置1300の符号化部1301は、外部から入力される多視点画像に対して、イントラ符号化、または、動き予測または視差予測によるインター符号化を行う。インター符号化時、符号化部1301は、設定部1302から供給される変更識別情報を参照する。
より詳細には、変更識別情報が、参照リストが変更されることを表す1である場合、符号化部1301は、マージモード時に、非特許文献2に記載されている方法でマージのTMVPを行う。即ち、符号化部1301は、参照インデックス「0」の参照ピクチャタイプと異なる参照ピクチャタイプの参照インデックスの最小値の探索を行う。
一方、変更識別情報が、参照リストが変更されないことを表す0である場合、符号化部1301は、マージモード時に、参照インデックスの最小値の探索を行わず、所定の参照インデックスを、参照インデックス「0」の参照ピクチャタイプと異なる参照ピクチャタイプの参照インデックスとする。符号化部1301は、符号化の結果得られる符号化データを設定部1302に供給する。
設定部1302は、ユーザ入力等に基づいて、変更識別情報、Short-termピクチャの数を含むRPS(Reference Picture Set)、Long-termピクチャの数、参照画像の数等を設定し、符号化部1301に供給する。Short-termピクチャとは、参照ピクチャタイプがShort-termである参照画像であり、Long-termピクチャとは、参照ピクチャタイプがLong-termである参照画像である。
設定部1302は、Long-termピクチャの数、参照画像の数等を含むSPS、変更識別情報を含むPPS等を設定する。設定部1302は、符号化部1301から供給される符号化データに、SPS,PPS,RPS等のパラメータセットを付加して符号化ストリームを生成し、伝送部1303に供給する。
伝送部1303は、設定部1302から供給される符号化ストリームを後述する復号装置に伝送する。
(符号化部の構成例)
図13の符号化部1301の構成は、動き視差予測・補償部1025のマージインター予測部を除いて、図2の符号化部1001の構成と同一である。従って、ここでは、符号化部1301のマージインター予測部の構成についてのみ説明する。
(マージインター予測部の構成例)
図14は、図13の符号化部1301のマージインター予測部1320の構成を示すブロック図である。
図14に示す構成のうち、図3の構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
図14のマージインター予測部1320の構成は、参照リスト生成部1031、選択部1032、マージ候補リスト生成部1033の代わりに、参照リスト生成部1321、選択部1322、マージ候補リスト生成部1323が設けられる点が、図3のマージインター予測部1030の構成と異なる。
マージインター予測部1320の参照リスト生成部1321は、スライス単位で参照リストを生成し、保持する。参照リストの生成方法としては、参照リスト生成部1031と同様の方法を用いることができる。
選択部1322は、参照リスト生成部1321に保持されている参照リストから、参照インデックス「0」の参照画像特定情報を検出し、予測画像生成部1034に供給する。また、選択部1322は、設定部1302からの変更識別情報が1である場合、参照リストから、参照インデックス「0」の参照ピクチャタイプとは異なる参照ピクチャタイプの参照インデックスの最小値を選択する。選択部1032は、その参照インデックスの参照画像特定情報を予測画像生成部1034に供給する。
一方、変更識別情報が0である場合、選択部1322は、設定部1302からのRPS、Long-termピクチャの数、参照画像の数等に基づいて、参照インデックス「0」と異なる参照ピクチャタイプに対応する参照インデックスの最小値を決定する。選択部1032は、その参照インデックスの参照画像特定情報を参照リストから検出し、予測画像生成部1034に供給する。
マージ候補リスト生成部1323は、全てのコロケーテッドブロックの参照ピクチャタイプとともに、対応する動き視差ベクトルを予測ベクトルの候補としてエントリに登録するマージ候補リストを生成する。マージ候補リスト生成部1033は、生成されたマージ候補リストを保持する。
(画像符号化装置の処理の説明)
図15は、図13の画像符号化装置1300のストリーム生成処理を説明するフローチャートである。このストリーム生成処理は、多視点画像が入力されたとき、開始される。
ステップS1321において、画像符号化装置1300の符号化部1301は、設定部1302から供給される変更識別情報に基づいて各視点の画像を符号化する符号化処理を行う。この符号化処理の詳細は後述する。
ステップS1322において、設定部1302は、ユーザ入力等に基づいて、変更識別情報を設定して符号化部1301に供給するとともに、変更識別情報を含むPPSを設定する。また、設定部1302は、Long-termピクチャの数、参照画像の数を設定して符号化部1301に供給するとともに、Long-termピクチャの数、参照画像の数等を含むSPSを設定する。さらに、設定部1302は、Short-termピクチャの数を含むRPSを設定し、符号化部1301に供給する。
ステップS1323において、設定部1302は、符号化部1301から供給される符号化データに、SPS,PPS,RPS等のパラメータセットを付加して符号化ストリームを生成し、伝送部1303に供給する。
ステップS1324において、伝送部1303は、設定部1302から供給される符号化ストリームを後述する復号装置に伝送し、処理を終了する。
図15のステップS1321の符号化処理は、マージインター予測処理を除いて図5の符号化処理と同様である。従って、以下では、マージインター予測処理についてのみ説明する。
図16は、画像符号化装置1300のマージインター予測部1320(図14)により実行されるマージインター予測処理を説明するフローチャートである。このマージインター予測処理は、マージモードで多視点画像を符号化するときにスライス単位で行われる。
図16のステップS1400において、マージインター予測部1320の参照リスト生成部1321は、参照リストを生成し、保持する。この参照リストを生成するための情報は、例えば、符号化され、ヘッダ情報の一部として符号化データに含まれる。
ステップS1401において、選択部1322は、設定部1302から供給される変更識別情報(lists_modification_present_flag)が、参照リストが変更されないことを表す0であるかどうかを判定する。
ステップS1401で変更識別情報が0であると判定された場合、処理はステップS1402に進む。ステップS1402において、選択部1322は、参照インデックス「0」の参照ピクチャタイプと異なる参照ピクチャタイプの参照インデックスの最小値を特定する参照インデックス特定処理を行う。この参照インデックス特定処理の詳細は、図17を参照して後述する。ステップS1402の処理後、処理は、ステップS1405に進む。
一方、ステップS1401で変更識別情報が0ではないと判定された場合、即ち変更識別情報が1である場合、処理はステップS1403に進む。ステップS1403乃至S1409の処理は、図6のS1203乃至S1206およびS1210乃至S1212の処理と同様であるので、説明は省略する。ステップS1409の処理後、処理は終了する。
図17は、図16のステップS1402の参照インデックス特定処理の詳細を説明するフローチャートである。
図17のステップS1451において、選択部1322は、設定部1302から供給されるRPSに含まれるShort-termピクチャの数を取得する。ステップS1452において、選択部1322は、設定部1302から供給されるSPSに含まれるLong-termピクチャの数を取得する。なお、Long-termピクチャの数は、スライスヘッダに含まれてもよい。
ステップS1453において、選択部1322は、設定部1302から供給されるPPSに含まれる参照画像の数を取得する。なお、参照画像の数は、スライスヘッダに含まれてもよい。また、以降のステップS1454乃至S1457の処理は、参照リストL0と参照リストL1のそれぞれについて行われる。
ステップS1454において、選択部1322は、参照画像の枚数が2枚以上であるかどうかを判定する。ステップS1454で参照画像の枚数が2枚以上であると判定された場合、ステップS1455において、選択部1322は、Long-termピクチャの枚数が1枚以上であるかどうかを判定する。
ステップS1455でLong-termピクチャの枚数が1枚以上であると判定された場合、ステップS1456において、選択部1322は、Short-termピクチャの数が1枚以上であるかどうかを判定する。
ステップS1456でShort-termピクチャの数が1枚以上であると判定された場合、ステップS1457において、選択部1322は、Short-termピクチャの総数が、参照画像の枚数より小さいかどうかを判定する。
ステップS1457でShort-termピクチャの総数が、参照画像の枚数より小さいと判定された場合、即ち、参照リストにShort-termピクチャとLong-termピクチャの両方の参照画像特定情報が登録されている場合、処理はステップS1458に進む。ステップS1458において、選択部1322は、最初のLong-termピクチャの参照インデックスを取得する。
ここで、変更識別情報が0である場合、図18に示すように、Short-term、Long-termの順で、小さな参照インデックスが割り当てられている。従って、参照インデックス0は必ずShort-termであるので、選択部1322は、最初のLong-termピクチャの参照インデックスを検索すればよい。RPSから参照リスト内のShort-termピクチャの数が分かるので、選択部1322は、その数を、一番小さな参照インデックスを持つ最初のLong-termピクチャの参照インデックスとして取得する。選択部1322は、その参照インデックスと参照インデックス「0」の参照画像特定情報を予測画像生成部1034に供給する。そして、処理は、図16のステップS1402に戻り、ステップS1405に進む。
一方、ステップS1454乃至S1457の処理でNoと判定された場合、処理は、ステップS1459に進む。
ステップS1459において、選択部1322は、生成された参照リストの参照インデックス「0」の参照画像特定情報を予測画像生成部1034に供給する。予測画像生成部1034は、その参照画像特定情報をカレントブロックの参照画像特定情報とする。
ステップS1460において、マージ候補リスト生成部1323は、参照インデックス「0」の参照ピクチャタイプと各コロケーテッドブロックの参照ピクチャタイプが一致するかどうかを判定する。そして、マージ候補リスト生成部1323は、コロケーテッドブロックの参照ピクチャタイプが参照インデックス「0」の参照ピクチャタイプと異なるときに、そのコロケーテッドブロックの動き視差ベクトルを、予測ベクトルの候補から除外して、マージ候補リストを生成する。そして、処理は図16のステップS1407に進み、以降の処理が行われる。
(復号装置の構成例)
図19は、図13の画像符号化装置1300から伝送されてくる符号化ストリームを復号する、本開示を適用した画像処理装置としての画像復号装置の第2実施の形態の構成例を示すブロック図である。
図19の画像復号装置1400は、受け取り部1401、抽出部1402、および復号部1403により構成される。
画像復号装置1400の受け取り部1401は、画像符号化装置1300から伝送されてくる符号化ストリームを受け取り、抽出部1402に供給する。
抽出部1402は、受け取り部1401から供給される符号化ストリームから、SPS,変更識別情報を含むPPS,RPS等のパラメータセットと符号化データを抽出し、復号部1403に供給する。
復号部1403は、抽出部1402から供給される符号化データに対して、画像符号化装置1300に対応する方式で、イントラ復号、または、動き予測または視差予測によるインター復号を行う。具体的には、復号部1103は、抽出部1102から供給されるPPSに含まれる変更識別情報が1である場合、マージモード時に、参照インデックス「0」の参照ピクチャタイプと異なる参照ピクチャタイプの参照インデックスの探索を行う。
一方、変更識別情報が0である場合、符号化部1301は、マージモード時に、参照インデックスの探索を行わず、所定の参照インデックスを、参照インデックス「0」の参照ピクチャタイプと異なる参照ピクチャタイプの参照インデックスとする。復号部1403は、復号の結果得られる多視点画像を出力する。
(復号部の構成例)
図19の復号部1403の構成は、動き視差補償部1132のマージインター予測部を除いて、図8の復号部1103の構成と同一である。従って、ここでは、復号部1403のマージインター予測部の構成についてのみ説明する。
(マージインター予測部の構成例)
図20は、図19の復号部1403のマージインター予測部1420の構成を示すブロック図である。
図20に示す構成のうち、図9の構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
図20のマージインター予測部1420の構成は、参照リスト生成部1151、選択部1152、マージ候補リスト生成部1153の代わりに、参照リスト生成部1421、選択部1422、マージ候補リスト生成部1423が設けられる点が、図9のマージインター予測部1150の構成と異なる。
マージインター予測部1420の参照リスト生成部1421は、可逆復号部1122から供給される参照リストを生成するための情報に基づいて、図14の参照リスト生成部1321で生成される参照リストと同一の参照リストをスライス単位で生成する。参照リストは、参照リスト生成部1421に保持される。
選択部1422は、抽出部1102からの変更識別情報に基づいて、図14の選択部1322と同様に、参照リストから参照インデックス「0」の参照ピクチャタイプとは異なる参照ピクチャタイプの参照インデックスの最小値を選択する。選択部1422は、選択された参照インデックスの参照画像特定情報と参照インデックス「0」の参照画像特定情報を予測画像生成部1154に供給する。
マージ候補リスト生成部1423は、可逆復号部1122からのインター予測情報が示すインター予測モードの予測ブロックについて、図14のマージ候補リスト生成部1323と同様にマージ候補リストを生成する。マージ候補リスト生成部1423は、生成されたマージ候補リストを保持する。
(画像復号装置の処理の説明)
図21は、図19の画像復号装置1400の画像生成処理を説明するフローチャートである。この画像生成処理は、例えば、画像符号化装置1300から符号化ストリームが送信されてきたとき、開始される。
ステップS1471において、画像復号装置1400の受け取り部1401は、画像符号化装置1300から伝送されてくる符号化ストリームを受け取り、抽出部1402に供給する。
ステップS1472において、抽出部1402は、受け取り部1401から供給される符号化ストリームから、SPS,変更識別情報を含むPPS,RPS等のパラメータセットと符号化データを抽出し、復号部1403に供給する。
ステップS1473において、復号部1403は、抽出部1402から供給される符号化データに対して、視点ごとに画像符号化装置1300に対応する方式で復号処理を行う。この復号処理の詳細は後述する。ステップS1473の処理後、処理は終了する。
図21のステップS1473の復号処理は、マージインター予測処理を除いて図11の復号処理と同様である。従って、以下では、マージインター予測処理についてのみ説明する。
図22は、図20のマージインター予測部1420により実行されるマージインター予測処理を説明するフローチャートである。このマージインター予測処理は、マージモードで多視点画像を復号するときにスライス単位で行われる。
図22のステップS1500において、マージインター予測部1420の参照リスト生成部1421は、可逆復号部1122から供給される参照リストを生成するための情報に基づいて参照リストを生成し、保持する。
ステップS1401において、選択部1422は、抽出部1402から供給される変更識別情報(lists_modification_present_flag)が0であるかどうかを判定する。ステップS1501で変更識別情報が0であると判定された場合、処理はステップS1502に進む。
ステップS1502において、選択部1422は、図17の参照インデックス特定処理を行う。但し、ステップS1460の処理は、インター予測情報が示す最適なインター予測モードの予測ブロック単位で行われる。ステップS1502の処理後、処理はステップS1505に進む。
ステップS1501で変更識別情報が1であると判定された場合、処理はステップS1503に進む。ステップS1503乃至S1507の処理は、図12のステップS1303乃至S1306およびS1310の処理と同様であるので、説明は省略する。ステップS1507の処理後、処理は終了する。
以上のように、第2実施の形態では、変更識別情報が0である場合、参照インデックスを探索せずに、参照インデックス特定処理により参照インデックスを特定するので、処理量を削減することができる。
なお、第1実施の形態と第2実施の形態を組み合わせることもできる。この場合、制限識別情報と変更識別情報に基づいてマージインター予測処理が行われる。また、第2実施の形態において、参照リストはピクチャ単位で生成されるようにしてもよい。
また、上述した一連の処理は、階層画像符号化(空間スケーラビリティ)・階層画像復号(マルチレイヤのエンコーダ・デコーダ)にも適用することができる。つまり、階層画像符号化・階層画像復号を行う場合においても、処理量を削減することができる。
また、本技術は、例えば、MPEG、H.26x等の様に、離散コサイン変換等の直交変換と動き補償によって圧縮された画像情報(ビットストリーム)を、衛星放送、ケーブルテレビジョン、インターネット、または携帯電話機などのネットワークメディアを介して受信する際に用いられる画像符号化装置および画像復号装置に適用することができる。また、本技術は、光、磁気ディスク、およびフラッシュメモリのような記憶メディア上で処理する際に用いられる画像符号化装置および画像復号装置に適用することができる。さらに、本技術は、それらの画像符号化装置および画像復号装置などに含まれる動き予測補償装置にも適用することができる。
<3.第3の実施の形態>
(コンピュータの構成例)
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な汎用のパーソナルコンピュータなどが含まれる。
図23において、パーソナルコンピュータ1700のCPU(Central Processing Unit)1701は、ROM(Read Only Memory)1702に記憶されているプログラム、または記憶部1713からRAM(Random Access Memory)1703にロードされたプログラムに従って各種の処理を実行する。RAM1703にはまた、CPU1701が各種の処理を実行する上において必要なデータなども適宜記憶される。
CPU1701、ROM1702、およびRAM1703は、バス1704を介して相互に接続されている。このバス1704にはまた、入出力インタフェース1710も接続されている。
入出力インタフェース1710には、キーボード、マウスなどよりなる入力部1711、CRT(Cathode Ray Tube)やLCD(Liquid Crystal Display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部1712、ハードディスクなどより構成される記憶部1713、モデムなどより構成される通信部1714が接続されている。通信部1714は、インターネットを含むネットワークを介しての通信処理を行う。
入出力インタフェース1710にはまた、必要に応じてドライブ1715が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア1721が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部1713にインストールされる。
上述した一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、ネットワークや記録媒体からインストールされる。
この記録媒体は、例えば、図23に示されるように、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc - Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini Disc)を含む)、若しくは半導体メモリなどよりなるリムーバブルメディア1721により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM1702や、記憶部1713に含まれるハードディスクなどで構成される。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
また、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数のデバイス(装置)により構成される装置全体を表すものである。
また、以上において、1つの装置(または処理部)として説明した構成を分割し、複数の装置(または処理部)として構成するようにしてもよい。逆に、以上において複数の装置(または処理部)として説明した構成をまとめて1つの装置(または処理部)として構成されるようにしてもよい。また、各装置(または各処理部)の構成に上述した以外の構成を付加するようにしてももちろんよい。さらに、システム全体としての構成や動作が実質的に同じであれば、ある装置(または処理部)の構成の一部を他の装置(または他の処理部)の構成に含めるようにしてもよい。つまり、本技術は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
<4.第4の実施の形態>
上述した実施形態に係る画像符号化装置及び画像復号装置は、衛星放送、ケーブルTVなどの有線放送、インターネット上での配信、及びセルラー通信による端末への配信などにおける送信機若しくは受信機、光ディスク、磁気ディスク及びフラッシュメモリなどの媒体に画像を記録する記録装置、又は、これら記憶媒体から画像を再生する再生装置などの様々な電子機器に応用され得る。以下、4つの応用例について説明する。
(第1の応用例:テレビジョン受像機)
図24は、上述した実施形態を適用したテレビジョン装置の概略的な構成の一例を示している。テレビジョン装置1900は、アンテナ1901、チューナ1902、デマルチプレクサ1903、デコーダ1904、映像信号処理部1905、表示部1906、音声信号処理部1907、スピーカ1908、外部インタフェース1909、制御部1910、ユーザインタフェース1911、及びバス1912を備える。
チューナ1902は、アンテナ1901を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ1902は、復調により得られた符号化ビットストリームをデマルチプレクサ1903へ出力する。即ち、チューナ1902は、画像が符号化されている符号化ストリームを受信する、テレビジョン装置1900における伝送部としての役割を有する。
デマルチプレクサ1903は、符号化ビットストリームから視聴対象の番組の映像ストリーム及び音声ストリームを分離し、分離した各ストリームをデコーダ1904へ出力する。また、デマルチプレクサ1903は、符号化ビットストリームからEPG(Electronic Program Guide)などの補助的なデータを抽出し、抽出したデータを制御部1910に供給する。なお、デマルチプレクサ1903は、符号化ビットストリームがスクランブルされている場合には、デスクランブルを行ってもよい。
デコーダ1904は、デマルチプレクサ1903から入力される映像ストリーム及び音声ストリームを復号する。そして、デコーダ1904は、復号処理により生成される映像データを映像信号処理部1905へ出力する。また、デコーダ1904は、復号処理により生成される音声データを音声信号処理部1907へ出力する。
映像信号処理部1905は、デコーダ1904から入力される映像データを再生し、表示部1906に映像を表示させる。また、映像信号処理部1905は、ネットワークを介して供給されるアプリケーション画面を表示部1906に表示させてもよい。また、映像信号処理部1905は、映像データについて、設定に応じて、例えばノイズ除去などの追加的な処理を行ってもよい。さらに、映像信号処理部1905は、例えばメニュー、ボタン又はカーソルなどのGUI(Graphical User Interface)の画像を生成し、生成した画像を出力画像に重畳してもよい。
表示部1906は、映像信号処理部1905から供給される駆動信号により駆動され、表示デバイス(例えば、液晶ディスプレイ、プラズマディスプレイ又はOELD(Organic ElectroLuminescence Display)(有機ELディスプレイ)など)の映像面上に映像又は画像を表示する。
音声信号処理部1907は、デコーダ1904から入力される音声データについてD/A変換及び増幅などの再生処理を行い、スピーカ1908から音声を出力させる。また、音声信号処理部1907は、音声データについてノイズ除去などの追加的な処理を行ってもよい。
外部インタフェース1909は、テレビジョン装置1900と外部機器又はネットワークとを接続するためのインタフェースである。例えば、外部インタフェース1909を介して受信される映像ストリーム又は音声ストリームが、デコーダ1904により復号されてもよい。即ち、外部インタフェース1909もまた、画像が符号化されている符号化ストリームを受信する、テレビジョン装置1900における伝送部としての役割を有する。
制御部1910は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、プログラムデータ、EPGデータ、及びネットワークを介して取得されるデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、テレビジョン装置1900の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース1911から入力される操作信号に応じて、テレビジョン装置1900の動作を制御する。
ユーザインタフェース1911は、制御部1910と接続される。ユーザインタフェース1911は、例えば、ユーザがテレビジョン装置1900を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース1911は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部1910へ出力する。
バス1912は、チューナ1902、デマルチプレクサ1903、デコーダ1904、映像信号処理部1905、音声信号処理部1907、外部インタフェース1909及び制御部1910を相互に接続する。
このように構成されたテレビジョン装置1900において、デコーダ1904は、上述した実施形態に係る画像復号装置の機能を有する。それにより、テレビジョン装置1900での画像の復号に際して、処理量を削減することができる。
(第2の応用例:携帯電話機)
図25は、上述した実施形態を適用した携帯電話機の概略的な構成の一例を示している。携帯電話機1920は、アンテナ1921、通信部1922、音声コーデック1923、スピーカ1924、マイクロホン1925、カメラ部1926、画像処理部1927、多重分離部1928、記録再生部1929、表示部1930、制御部1931、操作部1932、及びバス1933を備える。
アンテナ1921は、通信部1922に接続される。スピーカ1924及びマイクロホン1925は、音声コーデック1923に接続される。操作部1932は、制御部1931に接続される。バス1933は、通信部1922、音声コーデック1923、カメラ部1926、画像処理部1927、多重分離部1928、記録再生部1929、表示部1930、及び制御部1931を相互に接続する。
携帯電話機1920は、音声通話モード、データ通信モード、撮影モード及びテレビ電話モードを含む様々な動作モードで、音声信号の送受信、電子メール又は画像データの送受信、画像の撮像、及びデータの記録などの動作を行う。
音声通話モードにおいて、マイクロホン1925により生成されるアナログ音声信号は、音声コーデック1923に供給される。音声コーデック1923は、アナログ音声信号を音声データへ変換し、変換された音声データをA/D変換し圧縮する。そして、音声コーデック1923は、圧縮後の音声データを通信部1922へ出力する。通信部1922は、音声データを符号化及び変調し、送信信号を生成する。そして、通信部1922は、生成した送信信号を、アンテナ1921を介して基地局(図示せず)へ送信する。また、通信部1922は、アンテナ1921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部1922は、受信信号を復調及び復号して音声データを生成し、生成した音声データを音声コーデック1923へ出力する。音声コーデック1923は、音声データを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック1923は、生成した音声信号をスピーカ1924に供給して音声を出力させる。
また、データ通信モードにおいて、例えば、制御部1931は、操作部1932を介するユーザによる操作に応じて、電子メールを構成する文字データを生成する。また、制御部1931は、文字を表示部1930に表示させる。また、制御部1931は、操作部1932を介するユーザからの送信指示に応じて電子メールデータを生成し、生成した電子メールデータを通信部1922へ出力する。通信部1922は、電子メールデータを符号化及び変調し、送信信号を生成する。そして、通信部1922は、生成した送信信号を、アンテナ1921を介して基地局(図示せず)へ送信する。また、通信部1922は、アンテナ1921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。そして、通信部1922は、受信信号を復調及び復号して電子メールデータを復元し、復元した電子メールデータを制御部1931へ出力する。制御部1931は、表示部1930に電子メールの内容を表示させると共に、電子メールデータを記録再生部1929の記憶媒体に記憶させる。
記録再生部1929は、読み書き可能な任意の記憶媒体を有する。例えば、記憶媒体は、RAM又はフラッシュメモリなどの内蔵型の記憶媒体であってもよく、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USB(Unallocated Space Bitmap)メモリ、又はメモリカードなどの外部装着型の記憶媒体であってもよい。
また、撮影モードにおいて、例えば、カメラ部1926は、被写体を撮像して画像データを生成し、生成した画像データを画像処理部1927へ出力する。画像処理部1927は、カメラ部1926から入力される画像データを符号化し、符号化ストリームを記録再生部1929の記憶媒体に記憶させる。
また、テレビ電話モードにおいて、例えば、多重分離部1928は、画像処理部1927により符号化された映像ストリームと、音声コーデック1923から入力される音声ストリームとを多重化し、多重化したストリームを通信部1922へ出力する。通信部1922は、ストリームを符号化及び変調し、送信信号を生成する。そして、通信部1922は、生成した送信信号を、アンテナ1921を介して基地局(図示せず)へ送信する。また、通信部1922は、アンテナ1921を介して受信される無線信号を増幅し及び周波数変換し、受信信号を取得する。これら送信信号及び受信信号には、符号化ビットストリームが含まれ得る。そして、通信部1922は、受信信号を復調及び復号してストリームを復元し、復元したストリームを多重分離部1928へ出力する。多重分離部1928は、入力されるストリームから映像ストリーム及び音声ストリームを分離し、映像ストリームを画像処理部1927、音声ストリームを音声コーデック1923へ出力する。画像処理部1927は、映像ストリームを復号し、映像データを生成する。映像データは、表示部1930に供給され、表示部1930により一連の画像が表示される。音声コーデック1923は、音声ストリームを伸張し及びD/A変換し、アナログ音声信号を生成する。そして、音声コーデック1923は、生成した音声信号をスピーカ1924に供給して音声を出力させる。
このように構成された携帯電話機1920において、画像処理部1927は、上述した実施形態に係る画像符号化装置及び画像復号装置の機能を有する。それにより、携帯電話機1920での画像の符号化及び復号に際して、処理量を削減することができる。
(第3の応用例:記録再生装置)
図26は、上述した実施形態を適用した記録再生装置の概略的な構成の一例を示している。記録再生装置1940は、例えば、受信した放送番組の音声データ及び映像データを符号化して記録媒体に記録する。また、記録再生装置1940は、例えば、他の装置から取得される音声データ及び映像データを符号化して記録媒体に記録してもよい。また、記録再生装置1940は、例えば、ユーザの指示に応じて、記録媒体に記録されているデータをモニタ及びスピーカ上で再生する。このとき、記録再生装置1940は、音声データ及び映像データを復号する。
記録再生装置1940は、チューナ1941、外部インタフェース部1942、エンコーダ1943、HDD(Hard Disk Drive)1944、ディスクドライブ1945、セレクタ1946、デコーダ1947、OSD(On-Screen Display)部1948、制御部1949、及びユーザインタフェース部1950を備える。
チューナ1941は、アンテナ(図示せず)を介して受信される放送信号から所望のチャンネルの信号を抽出し、抽出した信号を復調する。そして、チューナ1941は、復調により得られた符号化ビットストリームをセレクタ1946へ出力する。即ち、チューナ1941は、記録再生装置1940における伝送部としての役割を有する。
外部インタフェース部1942は、記録再生装置1940と外部機器又はネットワークとを接続するためのインタフェースである。外部インタフェース部1942は、例えば、IEEE1394インタフェース、ネットワークインタフェース、USBインタフェース、又はフラッシュメモリインタフェースなどであってよい。例えば、外部インタフェース部1942を介して受信される映像データ及び音声データは、エンコーダ1943へ入力される。即ち、外部インタフェース部1942は、記録再生装置1940における伝送部としての役割を有する。
エンコーダ1943は、外部インタフェース部1942から入力される映像データ及び音声データが符号化されていない場合に、映像データ及び音声データを符号化する。そして、エンコーダ1943は、符号化ビットストリームをセレクタ1946へ出力する。
HDD1944は、映像及び音声などのコンテンツデータが圧縮された符号化ビットストリーム、各種プログラムおよびその他のデータを内部のハードディスクに記録する。また、HDD1944は、映像及び音声の再生時に、これらデータをハードディスクから読み出す。
ディスクドライブ1945は、装着されている記録媒体へのデータの記録及び読み出しを行う。ディスクドライブ1945に装着される記録媒体は、例えばDVDディスク(DVD-Video、DVD-RAM、DVD-R、DVD-RW、DVD+R、DVD+RW等)又はBlu-ray(登録商標)ディスクなどであってよい。
セレクタ1946は、映像及び音声の記録時には、チューナ1941又はエンコーダ1943から入力される符号化ビットストリームを選択し、選択した符号化ビットストリームをHDD1944又はディスクドライブ1945へ出力する。また、セレクタ1946は、映像及び音声の再生時には、HDD1944又はディスクドライブ1945から入力される符号化ビットストリームをデコーダ1947へ出力する。
デコーダ1947は、符号化ビットストリームを復号し、映像データ及び音声データを生成する。そして、デコーダ1947は、生成した映像データをOSD部1948へ出力する。また、デコーダ1904は、生成した音声データを外部のスピーカへ出力する。
OSD部1948は、デコーダ1947から入力される映像データを再生し、映像を表示する。また、OSD部1948は、表示する映像に、例えばメニュー、ボタン又はカーソルなどのGUIの画像を重畳してもよい。
制御部1949は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、記録再生装置1940の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース部1950から入力される操作信号に応じて、記録再生装置1940の動作を制御する。
ユーザインタフェース部1950は、制御部1949と接続される。ユーザインタフェース部1950は、例えば、ユーザが記録再生装置1940を操作するためのボタン及びスイッチ、並びに遠隔制御信号の受信部などを有する。ユーザインタフェース部1950は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部1949へ出力する。
このように構成された記録再生装置1940において、エンコーダ1943は、上述した実施形態に係る画像符号化装置の機能を有する。また、デコーダ1947は、上述した実施形態に係る画像復号装置の機能を有する。それにより、記録再生装置1940での画像の符号化及び復号に際して、処理量を削減することができる。
(第4の応用例:撮像装置)
図27は、上述した実施形態を適用した撮像装置の概略的な構成の一例を示している。撮像装置1960は、被写体を撮像して画像を生成し、画像データを符号化して記録媒体に記録する。
撮像装置1960は、光学ブロック1961、撮像部1962、信号処理部1963、画像処理部1964、表示部1965、外部インタフェース1966、メモリ1967、メディアドライブ1968、OSD1969、制御部1970、ユーザインタフェース1971、及びバス1972を備える。
光学ブロック1961は、撮像部1962に接続される。撮像部1962は、信号処理部1963に接続される。表示部1965は、画像処理部1964に接続される。ユーザインタフェース1971は、制御部1970に接続される。バス1972は、画像処理部1964、外部インタフェース1966、メモリ1967、メディアドライブ1968、OSD1969、及び制御部1970を相互に接続する。
光学ブロック1961は、フォーカスレンズ及び絞り機構などを有する。光学ブロック1961は、被写体の光学像を撮像部1962の撮像面に結像させる。撮像部1962は、CCD(Charge Coupled Device)又はCMOS(Complementary Metal Oxide Semiconductor)などのイメージセンサを有し、撮像面に結像した光学像を光電変換によって電気信号としての画像信号に変換する。そして、撮像部1962は、画像信号を信号処理部1963へ出力する。
信号処理部1963は、撮像部1962から入力される画像信号に対してニー補正、ガンマ補正、色補正などの種々のカメラ信号処理を行う。信号処理部1963は、カメラ信号処理後の画像データを画像処理部1964へ出力する。
画像処理部1964は、信号処理部1963から入力される画像データを符号化し、符号化データを生成する。そして、画像処理部1964は、生成した符号化データを外部インタフェース1966又はメディアドライブ1968へ出力する。また、画像処理部1964は、外部インタフェース1966又はメディアドライブ1968から入力される符号化データを復号し、画像データを生成する。そして、画像処理部1964は、生成した画像データを表示部1965へ出力する。また、画像処理部1964は、信号処理部1963から入力される画像データを表示部1965へ出力して画像を表示させてもよい。また、画像処理部1964は、OSD1969から取得される表示用データを、表示部1965へ出力する画像に重畳してもよい。
OSD1969は、例えばメニュー、ボタン又はカーソルなどのGUIの画像を生成して、生成した画像を画像処理部1964へ出力する。
外部インタフェース1966は、例えばUSB入出力端子として構成される。外部インタフェース1966は、例えば、画像の印刷時に、撮像装置1960とプリンタとを接続する。また、外部インタフェース1966には、必要に応じてドライブが接続される。ドライブには、例えば、磁気ディスク又は光ディスクなどのリムーバブルメディアが装着され、リムーバブルメディアから読み出されるプログラムが、撮像装置1960にインストールされ得る。さらに、外部インタフェース1966は、LAN又はインターネットなどのネットワークに接続されるネットワークインタフェースとして構成されてもよい。即ち、外部インタフェース1966は、撮像装置1960における伝送部としての役割を有する。
メディアドライブ1968に装着される記録媒体は、例えば、磁気ディスク、光磁気ディスク、光ディスク、又は半導体メモリなどの、読み書き可能な任意のリムーバブルメディアであってよい。また、メディアドライブ1968に記録媒体が固定的に装着され、例えば、内蔵型ハードディスクドライブ又はSSD(Solid State Drive)のような非可搬性の記憶部が構成されてもよい。
制御部1970は、CPUなどのプロセッサ、並びにRAM及びROMなどのメモリを有する。メモリは、CPUにより実行されるプログラム、及びプログラムデータなどを記憶する。メモリにより記憶されるプログラムは、例えば、撮像装置1960の起動時にCPUにより読み込まれ、実行される。CPUは、プログラムを実行することにより、例えばユーザインタフェース1971から入力される操作信号に応じて、撮像装置1960の動作を制御する。
ユーザインタフェース1971は、制御部1970と接続される。ユーザインタフェース1971は、例えば、ユーザが撮像装置1960を操作するためのボタン及びスイッチなどを有する。ユーザインタフェース1971は、これら構成要素を介してユーザによる操作を検出して操作信号を生成し、生成した操作信号を制御部1970へ出力する。
このように構成された撮像装置1960において、画像処理部1964は、上述した実施形態に係る画像符号化装置及び画像復号装置の機能を有する。それにより、撮像装置1960での画像の符号化及び復号に際して、処理量を削減することができる。
なお、本明細書では、制限識別情報や変更識別情報などの様々な情報が、符号化ストリームのヘッダに多重化されて、符号化側から復号側へ伝送される例について説明した。しかしながら、これら情報を伝送する手法はかかる例に限定されない。例えば、これら情報は、符号化ビットストリームに多重化されることなく、符号化ビットストリームと関連付けられた別個のデータとして伝送され又は記録されてもよい。ここで、「関連付ける」という用語は、ビットストリームに含まれる画像(スライス若しくはブロックなど、画像の一部であってもよい)と当該画像に対応する情報とを復号時にリンクさせ得るようにすることを意味する。即ち、情報は、画像(又はビットストリーム)とは別の伝送路上で伝送されてもよい。また、情報は、画像(又はビットストリーム)とは別の記録媒体(又は同一の記録媒体の別の記録エリア)に記録されてもよい。さらに、情報と画像(又はビットストリーム)とは、例えば、複数フレーム、1フレーム、又はフレーム内の一部分などの任意の単位で互いに関連付けられてよい。
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示はかかる例に限定されない。本開示の属する技術の分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
なお、本開示は、以下のような構成もとることができる。
(1)
カレントピクチャの参照ピクチャを特定する参照ピクチャ特定情報のリストである参照リストが前記カレントピクチャ内で共通に用いられることを識別する制限識別情報に基づいて、前記参照リストに含まれる前記参照ピクチャ特定情報が表す前記参照ピクチャから参照ピクチャタイプが異なる複数の参照ピクチャを選択する選択部と、
前記カレントピクチャと異なる時刻のコロケーテッドピクチャの動きベクトルと、前記選択部により選択された前記複数の参照ピクチャのうちの前記コロケーテッドピクチャの参照ピクチャタイプと同一の参照ピクチャタイプの参照ピクチャとに基づいて、前記カレントピクチャの予測画像を生成する予測画像生成部と
を備える画像処理装置。
(2)
前記選択部は、前記制限識別情報が、前記参照リストが前記カレントピクチャ内で共通に用いられることを表す場合、前記カレントピクチャの参照ピクチャタイプと同一の参照ピクチャタイプの参照ピクチャと、前記カレントピクチャの参照ピクチャタイプとは異なる参照ピクチャタイプの参照ピクチャとを選択する
前記(1)に記載の画像処理装置。
(3)
前記選択部は、前記参照リストのインデックスが0である参照ピクチャ特定情報が表す、前記カレントピクチャの参照ピクチャタイプと同一の参照ピクチャタイプの参照ピクチャと、前記参照リストのインデックスが0以外である参照ピクチャ特定情報が表す、前記カレントピクチャの参照ピクチャタイプとは異なる参照ピクチャタイプの参照ピクチャとを選択する
前記(2)に記載の画像処理装置。
(4)
前記選択部は、前記参照リストのインデックスが0以外である参照ピクチャ特定情報が表す、前記カレントピクチャの参照ピクチャタイプとは異なる参照ピクチャタイプの参照ピクチャのうちの、前記インデックスが最小となる参照ピクチャを選択する
前記(3)に記載の画像処理装置。
(5)
前記選択部は、前記参照リストが変更されることを識別する変更識別情報に基づいて、前記参照リストのインデックスが0である参照ピクチャ特定情報が表す、参照ピクチャタイプがShort-termである参照ピクチャと、前記参照リストに登録されている参照ピクチャタイプがShort-termである参照ピクチャの参照ピクチャ特定情報の数をインデックスとする参照ピクチャ特定情報が表す、参照ピクチャタイプがLong-termである参照ピクチャとを選択する
前記(4)に記載の画像処理装置。
(6)
前記変更識別情報は、lists_modification_present_flagである
前記(5)に記載の画像処理装置。
(7)
前記参照ピクチャタイプは、Long-termまたはShort-termである
前記(1)乃至(6)のいずれかに記載の画像処理装置。
(8)
前記制限識別情報は、restricted_ref_pic_lists_flagである
前記(1)乃至(7)のいずれかに記載の画像処理装置。
(9)
画像処理装置が、
カレントピクチャの参照ピクチャを特定する参照ピクチャ特定情報のリストである参照リストが前記カレントピクチャ内で共通に用いられることを識別する制限識別情報に基づいて、前記参照リストに含まれる前記参照ピクチャ特定情報が表す前記参照ピクチャから参照ピクチャタイプが異なる複数の参照ピクチャを選択する選択ステップと、
前記カレントピクチャと異なる時刻のコロケーテッドピクチャの動きベクトルと、前記選択ステップの処理により選択された前記複数の参照ピクチャのうちの前記コロケーテッドピクチャの参照ピクチャタイプと同一の参照ピクチャタイプの参照ピクチャとに基づいて、前記カレントピクチャの予測画像を生成する予測画像生成ステップと
画像処理方法。
(10)
カレントピクチャの参照ピクチャを特定する参照ピクチャ特定情報のリストである参照リストが変更されることを識別する変更識別情報に基づいて、前記参照リストに含まれる前記参照ピクチャ特定情報が表す前記参照ピクチャから参照ピクチャタイプが異なる複数の参照ピクチャを選択する選択部と、
前記カレントピクチャと異なる時刻のコロケーテッドピクチャの動きベクトルと、前記選択部により選択された前記複数の参照ピクチャのうちの前記コロケーテッドピクチャの参照ピクチャタイプと同一の参照ピクチャタイプの参照ピクチャとに基づいて、前記カレントピクチャの予測画像を生成する予測画像生成部と
を備える画像処理装置。
(11)
前記選択部は、前記変更識別情報が、前記参照リストが変更されないことを表す場合、前記参照リストのインデックスが0である参照ピクチャ特定情報が表す、参照ピクチャタイプがShort-termである参照ピクチャと、前記参照リストに登録されている参照ピクチャタイプがShort-termである参照ピクチャの参照ピクチャ特定情報の数をインデックスとする参照ピクチャ特定情報が表す、参照ピクチャタイプがLong-termである参照ピクチャとを選択する
前記(10)に記載の画像処理装置。
(12)
前記選択部は、前記参照リストに参照ピクチャタイプがLong-termである参照ピクチャの参照ピクチャ特定情報が登録されている場合、前記参照リストのインデックスが0である参照ピクチャ特定情報が表す、参照ピクチャタイプがShort-termである参照ピクチャと、前記参照リストに登録されている参照ピクチャタイプがShort-termである参照ピクチャの参照ピクチャ特定情報の数をインデックスとする参照ピクチャ特定情報が表す、参照ピクチャタイプがLong-termである参照ピクチャを選択する
前記(11)に記載の画像処理装置。
(13)
画像処理装置が、
カレントピクチャの参照ピクチャを特定する参照ピクチャ特定情報のリストである参照リストが変更されることを識別する変更識別情報に基づいて、前記参照リストに含まれる前記参照ピクチャ特定情報が表す前記参照ピクチャから参照ピクチャタイプが異なる複数の参照ピクチャを選択する選択ステップと、
前記カレントピクチャと異なる時刻のコロケーテッドピクチャの動きベクトルと、前記選択ステップの処理により選択された前記複数の参照ピクチャのうちの前記コロケーテッドピクチャの参照ピクチャタイプと同一の参照ピクチャタイプの参照ピクチャとに基づいて、前記カレントピクチャの予測画像を生成する予測画像生成ステップと
画像処理方法。