<第1実施の形態>
(符号化装置の第1実施の形態の構成例)
図1は、本技術を適用した符号化装置の第1実施の形態の構成例を示すブロック図である。
図1の符号化装置1は、符号化部2、設定部3、および伝送部4により構成され、パッキング画像等の画像をHEVC方式で符号化する。
具体的には、符号化装置1の符号化部2には、フレーム単位のパッキング画像等の画像が入力信号として入力される。符号化部2は、入力信号をHEVC方式で符号化し、その結果得られる符号化データを設定部3に供給する。
設定部3は、SPS、PPS(Picture Parameter Set)、符号化データに対応する画像の特性(ユーザビリティ)をシーケンスごとに示すVUI(Video Usability Information)、SEIなどを設定する。設定部3は、設定されたSPS,PPS,VUI、およびSEIと、符号化部2から供給される符号化データとから、符号化ストリームを生成する。設定部3は、符号化ストリームを伝送部4に供給する。
伝送部4は、設定部3から供給される符号化ストリームを、後述する復号装置に伝送する。
(符号化部の構成例)
図2は、図1の符号化部2の構成例を示すブロック図である。
図2の符号化部2は、A/D変換部11、画面並べ替えバッファ12、演算部13、直交変換部14、量子化部15、可逆符号化部16、蓄積バッファ17、逆量子化部18、逆直交変換部19、加算部20、デブロックフィルタ21、フレームメモリ22、スイッチ23、イントラ予測部24、動き予測・補償部25、予測画像選択部26、およびレート制御部27により構成される。
具体的には、符号化部2のA/D変換部11は、入力信号として入力されたフレーム単位の画像をA/D変換し、画面並べ替えバッファ12に出力して記憶させる。画面並べ替えバッファ12は、記憶した表示の順番のフレーム単位の画像を、GOP(Group of Picture)構造に応じて、符号化のための順番に並べ替え、演算部13、イントラ予測部24、および動き予測・補償部25に出力する。
演算部13は、予測画像選択部26から供給される予測画像と、画面並べ替えバッファ12から出力された符号化対象の画像の差分を演算することにより符号化を行う。具体的には、演算部13は、画面並べ替えバッファ12から出力された符号化対象の画像から、予測画像選択部26から供給される予測画像を減算することにより符号化を行う。演算部13は、その結果得られる画像を、残差情報として直交変換部14に出力する。なお、予測画像選択部26から予測画像が供給されない場合、演算部13は、画面並べ替えバッファ12から読み出された画像をそのまま残差情報として直交変換部14に出力する。
直交変換部14は、演算部13からの残差情報に対して直交変換を施し、直交変換の結果得られる係数を量子化部15に供給する。
量子化部15は、直交変換部14から供給される係数を量子化する。量子化された係数は、可逆符号化部16に入力される。
可逆符号化部16は、最適イントラ予測モードを示す情報(以下、イントラ予測モード情報という)をイントラ予測部24から取得する。また、最適インター予測モードを示す情報(以下、インター予測モード情報という)、動きベクトル、参照画像を特定するための情報などを動き予測・補償部25から取得する。
可逆符号化部16は、量子化部15から供給される量子化された係数に対して、可変長符号化(例えば、CAVLC(Context-Adaptive Variable Length Coding)など)、算術符号化(例えば、CABAC(Context-Adaptive Binary Arithmetic Coding)など)などの可逆符号化を行う。
また、可逆符号化部16は、イントラ予測モード情報、または、インター予測モード情報、動きベクトル、参照画像を特定する情報などを、符号化に関する符号化情報として可逆符号化する。可逆符号化部16は、可逆符号化された符号化情報と係数を、符号化データとして蓄積バッファ17に供給し、蓄積させる。なお、可逆符号化された符号化情報は、可逆符号化された係数のヘッダ情報とされてもよい。
蓄積バッファ17は、可逆符号化部16から供給される符号化データを、一時的に記憶する。また、蓄積バッファ17は、記憶している符号化データを、図1の設定部3に供給する。
また、量子化部15より出力された、量子化された係数は、逆量子化部18にも入力され、逆量子化された後、逆直交変換部19に供給される。
逆直交変換部19は、逆量子化部18から供給される係数に対して逆直交変換を施し、その結果得られる残差情報を加算部20に供給する。
加算部20は、逆直交変換部19から供給される復号対象の画像としての残差情報と、予測画像選択部26から供給される予測画像を加算して、局部的に復号された画像を得る。なお、予測画像選択部26から予測画像が供給されない場合、加算部20は、逆直交変換部19から供給される残差情報を局部的に復号された画像とする。加算部20は、局部的に復号された画像をデブロックフィルタ21に供給するとともに、フレームメモリ22に供給して蓄積させる。
デブロックフィルタ21は、加算部20から供給される局部的に復号された画像をフィルタリングすることにより、ブロック歪を除去する。デブロックフィルタ21は、その結果得られる画像をフレームメモリ22に供給し、蓄積させる。フレームメモリ22に蓄積された画像は、参照画像としてスイッチ23を介してイントラ予測部24または動き予測・補償部25に出力される。
イントラ予測部24は、フレームメモリ22からスイッチ23を介して読み出されたデブロックフィルタ21でフィルタリングされていない参照画像を用いて、タイルおよびスライス単位で、候補となる全てのイントラ予測モードのイントラ予測処理を行う。
また、イントラ予測部24は、画面並べ替えバッファ12から読み出された画像と、イントラ予測処理の結果生成される予測画像とに基づいて、候補となる全てのイントラ予測モードに対してコスト関数値(詳細は後述する)を算出する。そして、イントラ予測部24は、コスト関数値が最小となるイントラ予測モードを、最適イントラ予測モードに決定する。
イントラ予測部24は、最適イントラ予測モードで生成された予測画像、および、対応するコスト関数値を、予測画像選択部26に供給する。イントラ予測部24は、予測画像選択部26から最適イントラ予測モードで生成された予測画像の選択が通知された場合、イントラ予測モード情報を可逆符号化部16に供給する。
なお、コスト関数値は、RD(Rate Distortion)コストともいい、例えば、H.264/AVC方式における参照ソフトウエアであるJM(Joint Model)で定められているような、High Complexity モードか、Low Complexity モードのいずれかの手法に基づいて算出される。
具体的には、コスト関数値の算出手法としてHigh Complexity モードが採用される場合、候補となる全ての予測モードに対して、仮に可逆符号化までが行われ、次の式(1)で表わされるコスト関数値が各予測モードに対して算出される。
Dは、原画像と復号画像の差分(歪)、Rは、直交変換の係数まで含んだ発生符号量、λは、量子化パラメータQPの関数として与えられるラグランジュ乗数である。
一方、コスト関数値の算出手法としてLow Complexity モードが採用される場合、候補となる全ての予測モードに対して、復号画像の生成、および、予測モードを示す情報などのヘッダビットの算出が行われ、次の式(2)で表わされるコスト関数が各予測モードに対して算出される。
Dは、原画像と復号画像の差分(歪)、Header_Bitは、予測モードに対するヘッダビット、QPtoQuantは、量子化パラメータQPの関数として与えられる関数である。
Low Complexity モードにおいては、全ての予測モードに対して、復号画像を生成するだけでよく、可逆符号化を行う必要がないため、演算量が少なくて済む。
動き予測・補償部25は、タイルおよびスライス単位で、候補となる全てのインター予測モードの動き予測・補償処理を行う。具体的には、動き予測・補償部25は、タイルおよびスライス単位で、画面並べ替えバッファ12から供給される画像と、フレームメモリ22からスイッチ23を介して読み出されるフィルタリングされた参照画像に基づいて、候補となる全てのインター予測モードの動きベクトルを検出する。そして、動き予測・補償部25は、タイルおよびスライス単位で、その動きベクトルに基づいて参照画像に補償処理を施し、予測画像を生成する。
このとき、動き予測・補償部25は、画面並べ替えバッファ12から供給される画像と予測画像とに基づいて、候補となる全てのインター予測モードに対してコスト関数値を算出し、コスト関数値が最小となるインター予測モードを最適インター測モードに決定する。そして、動き予測・補償部25は、最適インター予測モードのコスト関数値と、対応する予測画像を予測画像選択部26に供給する。また、動き予測・補償部25は、予測画像選択部26から最適インター予測モードで生成された予測画像の選択が通知された場合、インター予測モード情報、対応する動きベクトル、参照画像を特定する情報などを可逆符号化部16に出力する。
予測画像選択部26は、イントラ予測部24および動き予測・補償部25から供給されるコスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードのうちの、対応するコスト関数値が小さい方を、最適予測モードに決定する。そして、予測画像選択部26は、最適予測モードの予測画像を、演算部13および加算部20に供給する。また、予測画像選択部26は、最適予測モードの予測画像の選択をイントラ予測部24または動き予測・補償部25に通知する。
レート制御部27は、蓄積バッファ17に蓄積された符号化データに基づいて、オーバーフローあるいはアンダーフローが発生しないように、量子化部15の量子化動作のレートを制御する。
(VUIのシンタックスの例)
図3は、図1の設定部3により設定されるVUIのシンタックスの例を示す図である。
図3の第6行目に示すように、VUIには、パッキングに関するパッキング情報のSEIであるフレームパッキングSEIの有無を示す有無情報としてのフレームパッキングフラグ(frame_packing_arrangement_flag)が含まれている。フレームパッキングフラグは、フレームパッキングSEIが有ることを示す場合1とされ、フレームパッキングSEIが無いことを示す場合0とされる。
(フレームパッキングSEIのシンタックスの例)
図4は、図1の設定部3により設定されるフレームパッキングSEIのシンタックスの例を示す図である。
図4の第2行目に示すように、フレームパッキングSEI(frame_packing_arrangement)には、パッキング画像を表示する際にフレームパッキングSEIを優先的に用いるかを示す優先情報としてのクロッピング無視フラグ(frame_cropping_override_flag)が含まれる。クロッピング無視フラグは、パッキング画像の表示時にフレームパッキングSEIを優先的に用いることを示す場合1とされ、パッキング画像の表示時にフレームパッキングSEIを優先的に用いないことを示す場合0とされる。
なお、第1実施の形態では、クロッピング無視フラグは、常に1とされる。従って、フレームパッキングフラグ自体が、パッキング画像の表示時にフレームパッキングSEIを優先的に用いるかを示す情報(パッキング優先情報)であるともいえる。
また、図4の第3行目に示すように、フレームパッキングSEIには、パッキング画像のパッキングのモードを示すモード情報(frame_packing_arrangement_id)が含まれる。モード情報の詳細は、後述する図5を参照して説明する。
さらに、図4の第6行目に示すように、フレームパッキングSEIには、パッキング画像を構成する画像の特性を示すタイプ情報(content_interpretation_type)が含まれる。タイプ情報の詳細は、後述する図6を参照して説明する。
また、図4の第7行目に示すように、フレームパッキングSEIには、パッキング画像を構成する画像の数を示す画像数情報(num_of_picture_minus1)が含まれる。さらに、図4の第8行目乃至第14行目に示すように、フレームパッキングSEIには、パッキング画像を構成する各画像のパッキング画像における位置を示す位置情報が含まれる。
図4の例では、位置情報は、パッキング画像を構成する画像ごとに記述される、その画像の左端の位置を示す左端情報(picture_left_offset)、右端の位置を示す右端情報(picture_right_offset)、上端の位置を示す上端情報(picture_top_offset)、下端の位置を示す下端情報(picture_bottom_offset)、およびピクチャIDである。
左端情報、右端情報、上端情報、および下端情報の詳細は、後述する図7を参照して説明する。ピクチャIDは、パッキング画像を構成する各画像に固有のIDである。
(モード情報の説明)
図5は、図4のモード情報を説明する図である。
図5に示すように、モード情報(frame_packing_arrangement_id)は、例えば、パッキングのモードが、サイドバイサイド方式でパッキングするサイドバイサイドモードである場合0とされる。また、モード情報は、パッキングのモードが、2つの画像の一方を上半分に配置し、他方を下半分に配置することによりパッキングするトップアンドボトム方式でパッキングするトップアンドボトムモードである場合1とされる。さらに、モード情報は、パッキングのモードがサイドバイサイドモードとトップアンドボトムモードのどちらでもない場合2とされる。
ここでは、パッキングのモードが、サイドバイサイドモード、トップアンドボトムモード、および、その他のモードであるものとするが、パッキングのモードは、これに限定されない。例えば、パッキングのモードとして、3つ以上の画像をパッキングするモードがあってもよい。また、モード情報は、フレームパッキングSEIではなく、他のSEIに含まれるようにしてもよいし、VUIなどの他のNAL(Network Abstraction Layer)ユニットに含まれるようにしてもよい。
(タイプ情報の説明)
図6は、図4のタイプ情報を説明する図である。
図6に示すように、タイプ情報(content_interpretation_type)は、例えば、パッキング画像を構成する各画像の特性として、各画像に特別な関係がないことを示す場合0とされる。また、タイプ情報は、パッキング画像を構成する各画像の特性として、ピクチャIDが0である画像は3D画像のうちの左目用の画像であり、ピクチャIDが1である画像は右目用の画像であることを示す場合1とされる。
さらに、タイプ情報は、パッキング画像を構成する各画像の特性として、ピクチャIDが0である画像は3D画像のうちの右目用の画像であり、ピクチャIDが1である画像は左目用の画像であることを示す場合1とされる。
(位置情報の説明)
図7は、図4の位置情報を説明する図である。
左端情報(picture_left_offset)は、例えば、パッキング画像を構成する画像の左端の位置を、その左端からパッキング画像の左端までの画素数で表す情報である。右端情報(picture_right_offset)、上端情報(picture_top_offset)、および下端情報(picture_bottom_offset)についても、左端情報と同様である。
図7に示すように、サイドバイサイド方式でパッキングされたパッキング画像の左半分の画像のピクチャIDが0であり、右半分の画像のピクチャIDが1である場合、パッキング画像の左上の画素単位の位置を(0,0)とすると、ピクチャIDが0である画像の左上の画素単位の位置は(0,0)である。また、パッキング画像の水平方向の画素数をwidthとし、垂直方向の画素数をheightとすると、ピクチャIDが0である画像の右上、左下、および右下の画素単位の位置は、それぞれ、(width/2,0),(0,height),(width/2,height)である。
よって、ピクチャIDとして0を含む位置情報の左端情報、右端情報、上端情報、および下端情報は、それぞれ、0(=0-0),width/2(=width-2/width),0(=0-0),0(=height-height)である。
一方、ピクチャIDが1である画像の左上、右上、左下、および右下の画素単位の位置は、それぞれ、(width/2,0),(width,0),(width/2,height),(width,height)である。従って、ピクチャIDとして1を含む位置情報の左端情報、右端情報、上端情報、および下端情報は、それぞれ、width/2(=width/2-0),0(=width-width),0(=0-0),0(=height-height)である。
なお、輝度成分と色差成分の画素数が異なる場合、左端情報、右端情報、上端情報、および下端情報が表す画素数は、画像数の小さい方の成分の画素数である。従って、例えば、パッキング画像がYUV420またはYUV422である場合、左端情報、右端情報、上端情報、および下端情報が表す画素数は、色差成分の画素数である。また、パッキング画像がYUV444である場合、左端情報、右端情報、上端情報、および下端情報が表す画素数は、色差成分と輝度成分において同一の画素数である。さらに、パッキング画像がYUV400である場合、左端情報、右端情報、上端情報、および下端情報が表す画素数は、輝度成分の画素数である。
よって、後述する復号装置において、左端情報、右端情報、上端情報、および下端情報に基づいてパッキング画像を構成する所望の画像がクロッピングされる場合、クロッピング領域の位置は、図8に示すようになる。
即ち、パッキング画像の左上の画素単位の位置を(0,0)とすると、図8に示すように、クロッピング領域の左上のパッキング画像上の画素単位の位置は、(CropUnitX*picture_left_offset,CropUnitY*picture_top_offset)であり、右下のパッキング画像上の画素単位の位置は、(Width-CropUnitX*picture_right_offset+1,CropUnitY*picture_bottom_offset+1)である。
ここで、CropUnitXとCropUnitYは、SPSに含まれる符号化対象の画像のフォーマット情報が表すYUV400,YUV420,YUV422,YUV444等に基づいて決定される値である。具体的には、フォーマット情報がYUV400またはYUV444を表している場合、CropUnitXとCropUnitYは、両方とも1であり、フォーマット情報がYUV420を表している場合、CropUnitXとCropUnitYは、両方とも2である。また、フォーマット情報がYUV422を表している場合、CropUnitXは2であり、CropUnitYは1である。
(位置情報の他の例)
図9は、図4のフレームパッキングSEIに含まれる位置情報のシンタックスの他の例を示す図である。
図9の例では、位置情報は、パッキング画像を構成する各画像のパッキング画像上の位置を、HEVC規格における並列符号化処理単位であるタイル単位で示す情報である。具体的には、図9の位置情報は、行ごとに、行方向(水平方向)に並ぶタイルに対応する画像のピクチャIDを示す情報である。
例えば、図10に示すように、パッキング画像が、水平方向と垂直方向に2つずつタイルが並ぶように、4つのタイルに分割され、パッキング画像がサイドバイサイド方式でパッキングされた画像である場合、位置情報は、以下に示すようになる。
即ち、SPSやPPSに設定されるタイルに固有のIDであるタイルIDは、各タイルに対してラスタスキャン順に付与されるため、タイルIDとして0が付与されたタイルは左上のタイルである。従って、タイルIDが0であるタイルに対応する画像のピクチャIDは、パッキング画像の左半分の画像のピクチャID(図10の例では0)となる。また、タイルIDとして1が付与されたタイルは右上のタイルであるため、タイルIDが1であるタイルに対応する画像のピクチャIDは、パッキング画像の右半分の画像のピクチャID(図10の例では1)となる。
さらに、タイルIDとして2が付与されたタイルは左下のタイルであるため、タイルIDが2であるタイルに対応する画像のピクチャIDは、パッキング画像の左半分の画像のピクチャID(図10の例では0)となる。また、タイルIDとして3が付与されたタイルは右下のタイルであるため、タイルIDが3であるタイルに対応する画像のピクチャIDは、パッキング画像の右半分の画像のピクチャID(図10の例では1)となる。
従って、位置情報は、タイルIDが0と2であるタイルに対応する画像のピクチャIDとして、パッキング画像の左半分の画像のピクチャIDを示し、タイルIDが1と3であるタイルに対応する画像のピクチャIDとして、パッキング画像の右半分の画像のピクチャIDを示す情報になる。
(位置情報のさらに他の例)
図11は、図4のフレームパッキングSEIに含まれる位置情報のシンタックスのさらに他の例を示す図である。
図11の例では、位置情報は、パッキング画像を構成する各画像のパッキング画像上の位置を、スライス単位で示す情報である。具体的には、図11の位置情報は、スライスごとに、そのスライスの画像のピクチャIDを示す情報である。
例えば、図12に示すように、パッキング画像が4つのスライスに分割され、パッキング画像がトップアンドボトム方式でパッキングされた画像である場合、位置情報は、以下に示すようになる。
即ち、上から1番目および2番目のスライスの画像のピクチャIDは、パッキング画像の上半分の画像のピクチャID(図12の例では0)となる。また、上から3番目および4番目のスライスの画像のピクチャIDは、パッキング画像の下半分の画像のピクチャID(図12の例では1)となる。
従って、位置情報は、上から1番目および2番目のスライスの画像のピクチャIDとして、パッキング画像の上半分の画像のピクチャIDを示し、上から3番目および4番目のスライスの画像のピクチャIDとして、パッキング画像の下半分の画像のピクチャIDを示す情報になる。
(フレームパッキングSEIのシンタックスの他の例)
図13は、図1の設定部3により設定されるフレームパッキングSEIのシンタックスの他の例を示す図である。
図13の例では、フレームパッキングSEIは、AVC規格のフレームパッキングSEI(frame_packing_arrangement)に、第2行目のクロッピング無視フラグ(frame_cropping_override_flag)が追加されたものとなっている。
(SPSのシンタックスの例)
図14は、図1の設定部3により設定されるSPSのシンタックスの一部の例を示す図である。
図14の第13行目乃至第18行目に示すように、SPSには、対応する画像の表示時にクロッピングされるクロッピング領域を示すクロッピング情報を含むことができる。クロッピング情報は、クロッピング領域の左端の位置を示すクロッピング左端情報(pic_crop_left_offset)、右端の位置を示すクロッピング右端情報(pic_crop_right_offset)、上端の位置を示すクロッピング上端情報(pic_crop_top_offset)、および下端の位置を示すクロッピング下端情報(pic_crop_bottom_offset)である。
(符号化装置の処理の説明)
図15は、図1の符号化装置1の生成処理を説明するフローチャートである。
図15のステップS1において、符号化装置1の符号化部2は、外部から入力信号として入力されるフレーム単位のパッキング画像等の画像をHEVC方式で符号化する符号化処理を行う。この符号化処理の詳細は、後述する図16および図17を参照して説明する。
ステップS2において、設定部3は、クロッピング情報を含むSPSを設定する。ステップS3において、設定部3は、PPSを設定する。ステップS4において、設定部3は、ユーザによる図示せぬ入力部の操作等に基づいて、符号化対象の画像がパッキング画像であるかどうかを判定する。
ステップS4で符号化対象の画像がパッキング画像であると判定された場合、ステップS5において、設定部3は、フレームパッキングフラグとして1を含むVUIを設定する。ステップS6において、設定部3は、フレームパッキングSEIなどのSEIを設定し、処理をステップS8に進める。
一方、ステップS4で符号化対象の画像がパッキング画像ではないと判定された場合、ステップS7において、設定部3は、フレームパッキングフラグとして0を含むVUIを設定する。また、設定部3は、必要に応じて、フレームパッキングSEI以外のSEIを設定し、処理をステップS8に進める。
ステップS8において、設定部3は、設定されたSPS,PPS,VUI、およびSEIと、符号化部2から供給される符号化データとから、符号化ストリームを生成する。設定部3は、符号化ストリームを伝送部4に供給する。
ステップS9において、伝送部4は、設定部3から供給される符号化ストリームを、後述する復号装置に伝送し、処理を終了する。
図16および図17は、図15のステップS1の符号化処理の詳細を説明するフローチャートである。
図16のステップS11において、符号化部2のA/D変換部11は、入力信号として入力されたフレーム単位の画像をA/D変換し、画面並べ替えバッファ12に出力して記憶させる。
ステップS12において、画面並べ替えバッファ12は、記憶した表示の順番のフレームの画像を、GOP構造に応じて、符号化のための順番に並べ替える。画面並べ替えバッファ12は、並べ替え後のフレーム単位の画像を、演算部13、イントラ予測部24、および動き予測・補償部25に供給する。なお、以下のステップS13乃至S28の処理は、例えばCU(Coding Unit)単位で行われる。
ステップS13において、イントラ予測部24は、候補となる全てのイントラ予測モードのイントラ予測処理を行う。また、イントラ予測部24は、画面並べ替えバッファ12から読み出された画像と、イントラ予測処理の結果生成される予測画像とに基づいて、候補となる全てのイントラ予測モードに対してコスト関数値を算出する。そして、イントラ予測部24は、コスト関数値が最小となるイントラ予測モードを、最適イントラ予測モードに決定する。イントラ予測部24は、最適イントラ予測モードで生成された予測画像、および、対応するコスト関数値を、予測画像選択部26に供給する。
また、動き予測・補償部25は、候補となる全てのインター予測モードの動き予測・補償処理を行う。また、動き予測・補償部25は、画面並べ替えバッファ12から供給される画像と予測画像とに基づいて、候補となる全てのインター予測モードに対してコスト関数値を算出し、コスト関数値が最小となるインター予測モードを最適インター測モードに決定する。そして、動き予測・補償部25は、最適インター予測モードのコスト関数値と、対応する予測画像を予測画像選択部26に供給する。
ステップS14において、予測画像選択部26は、ステップS13の処理によりイントラ予測部24および動き予測・補償部25から供給されるコスト関数値に基づいて、最適イントラ予測モードと最適インター予測モードのうちのコスト関数値が最小となる方を、最適予測モードに決定する。そして、予測画像選択部26は、最適予測モードの予測画像を、演算部13および加算部20に供給する。
ステップS15において、予測画像選択部26は、最適予測モードが最適インター予測モードであるかどうかを判定する。ステップS15で最適予測モードが最適インター予測モードであると判定された場合、予測画像選択部26は、最適インター予測モードで生成された予測画像の選択を動き予測・補償部25に通知する。これにより、動き予測・補償部25は、インター予測モード情報、対応する動きベクトル、および参照画像を特定するための情報を可逆符号化部16に出力する。
そして、ステップS16において、可逆符号化部16は、動き予測・補償部25から供給されるインター予測モード情報、動きベクトル、および参照画像を特定するための情報を、符号化情報として可逆符号化する。そして、処理はステップS18に進む。
一方、ステップS15で最適予測モードが最適インター予測モードではないと判定された場合、即ち最適予測モードが最適イントラ予測モードである場合、予測画像選択部26は、最適イントラ予測モードで生成された予測画像の選択をイントラ予測部24に通知する。これにより、イントラ予測部24は、イントラ予測モード情報を可逆符号化部16に供給する。
そして、ステップS17において、可逆符号化部16は、イントラ予測部24から供給されるイントラ予測モード情報を符号化情報として可逆符号化する。そして、処理はステップS18に進む。
ステップS18において、演算部13は、画面並べ替えバッファ12から供給される画像から、予測画像選択部26から供給される予測画像を減算することにより符号化を行う。演算部13は、その結果得られる画像を、残差情報として直交変換部14に出力する。
ステップS19において、直交変換部14は、演算部13からの残差情報に対して直交変換を施し、その結果得られる係数を量子化部15に供給する。
ステップS20において、量子化部15は、直交変換部14から供給される係数を量子化する。量子化された係数は、可逆符号化部16と逆量子化部18に入力される。
ステップS21において、可逆符号化部16は、量子化部15から供給される量子化された係数を可逆符号化する。そして、可逆符号化部16は、ステップS16またはS17の処理で可逆符号化された符号化情報と可逆符号化された係数から、符号化データを生成する。
図17のステップS22において、可逆符号化部16は、符号化データを蓄積バッファ17に供給し、蓄積させる。
ステップS23において、蓄積バッファ17は、蓄積されている符号化データを、図1の設定部3に出力する。
ステップS24において、逆量子化部18は、量子化部15から供給される量子化された係数を逆量子化する。
ステップS25において、逆直交変換部19は、逆量子化部18から供給される係数に対して逆直交変換を施し、その結果得られる残差情報を加算部20に供給する。
ステップS26において、加算部20は、逆直交変換部19から供給される残差情報と、予測画像選択部26から供給される予測画像を加算し、局部的に復号された画像を得る。加算部20は、得られた画像をデブロックフィルタ21に供給するとともに、フレームメモリ22に供給する。
ステップS27において、デブロックフィルタ21は、加算部20から供給される局部的に復号された画像に対してフィルタリングを行うことにより、ブロック歪を除去し、フレームメモリ22に供給する。
ステップS28において、フレームメモリ22は、フィルタリング前後の画像を蓄積する。具体的には、フレームメモリ22は、加算部20から供給される画像とデブロックフィルタ21から供給される画像を蓄積する。フレームメモリ22に蓄積された画像は、参照画像としてスイッチ23を介してイントラ予測部24または動き予測・補償部25に出力される。そして、処理は図15のステップS1に戻り、ステップS2に進む。
なお、図16および図17の符号化処理では、説明を簡単化するため、常に、イントラ予測処理と動き予測・補償処理が行われるようにしたが、実際には、ピクチャタイプ等によっていずれか一方のみが行われる場合もある。
以上のように、符号化装置1は、フレームパッキングSEIとフレームパッキングフラグを設定し、パッキング画像を符号化した符号化データとともに伝送する。従って、パッキング画像の符号化ストリームを復号して表示させる復号装置は、フレームパッキングフラグが1である場合、即ちクロッピング無視フラグが1である場合、フレームパッキングSEIを優先的に用いて、パッキング画像を構成する所望の画像を確実に表示させることができる。よって、符号化装置1は、パッキング画像の符号化ストリームを復号して表示させる場合に、パッキング画像を構成する所望の画像を確実に表示させることができるように、パッキング画像の符号化ストリームを生成することができるといえる。
(復号装置の第1実施の形態の構成例)
図18は、図1の符号化装置1から伝送される符号化ストリームを復号する、本技術を適用した復号装置の第1実施の形態の構成例を示すブロック図である。
図18の復号装置50は、受け取り部51、抽出部52、復号部53、制御部54、表示制御部55、および表示部56により構成される。
復号装置50の受け取り部51は、図1の符号化装置1から伝送されてくる符号化ストリームを受け取り、抽出部52に供給する。抽出部52は、受け取り部51から供給される符号化ストリームから、SPS,PPS,VUI,SEI、符号化データ等を抽出する。抽出部52は、符号化データを復号部53に供給する。また、抽出部52は、SPS,PPS,VUI,SEI等も、必要に応じて復号部53と制御部54に供給する。
復号部53は、必要に応じて抽出部52から供給されるSPS,PPS,VUI,SEI等を参照し、抽出部52から供給される符号化データをHEVC方式で復号する。復号部53は、復号の結果得られるパッキング画像等の画像を、出力信号として制御部54に供給する。
制御部54は、必要に応じて抽出部52から供給されるSPS,PPS,VUI,SEI等に基づいて、復号部53から出力信号として供給されるパッキング画像を構成する各画像を特定する。そして、制御部54は、出力信号としてのパッキング画像と、パッキング画像を構成する各画像を特定する情報を表示制御部55に供給する。また、制御部54は、出力信号としてのパッキング画像ではない画像とSPSに含まれるクロッピング情報とを表示制御部55に供給する。
表示制御部55は、制御部54から供給されるパッキング画像を構成する各画像を特定する情報と、表示部56から通知される表示方法とに基づいて、制御部54から出力信号として供給されるパッキング画像に対してクロッピング、拡大や縮小等を行い、表示画像を生成する。また、表示制御部55は、制御部54から供給されるクロッピング情報に基づいて、制御部54から出力信号として供給されるパッキングされていない画像に対してクロッピング、拡大や縮小等を行い、表示画像を生成する。表示制御部55は、生成された表示画像を表示部56に供給することにより、表示させる。
表示部56は、表示制御部55から供給される表示画像を表示する。また、表示部56は、予め設定された表示方法、または、予めされた表示方法のうちのユーザにより指定された表示方法を表示制御部55に通知する。
(復号部の構成例)
図19は、図18の復号部53の構成例を示すブロック図である。
図19の復号部53は、蓄積バッファ101、可逆復号部102、逆量子化部103、逆直交変換部104、加算部105、デブロックフィルタ106、画面並べ替えバッファ107、D/A変換部108、フレームメモリ109、スイッチ110、イントラ予測部111、動き補償部112、およびスイッチ113により構成される。
復号部53の蓄積バッファ101は、図18の抽出部52から符号化データを受け取り、蓄積する。蓄積バッファ101は、蓄積されている符号化データを可逆復号部102に供給する。
可逆復号部102は、蓄積バッファ101からの符号化データに対して、可変長復号や、算術復号等の可逆復号を施すことで、量子化された係数と符号化情報を得る。可逆復号部102は、量子化された係数を逆量子化部103に供給する。また、可逆復号部102は、符号化情報としてのイントラ予測モード情報などをイントラ予測部111に供給し、動きベクトル、参照画像を特定するための情報、インター予測モード情報などを動き補償部112に供給する。さらに、可逆復号部102は、符号化情報としてのイントラ予測モード情報またはインター予測モード情報をスイッチ113に供給する。
逆量子化部103、逆直交変換部104、加算部105、デブロックフィルタ106、フレームメモリ109、スイッチ110、イントラ予測部111、および、動き補償部112は、図2の逆量子化部18、逆直交変換部19、加算部20、デブロックフィルタ21、フレームメモリ22、スイッチ23、イントラ予測部24、および、動き予測・補償部25とそれぞれ同様の処理を行い、これにより、画像が復号される。
具体的には、逆量子化部103は、可逆復号部102からの量子化された係数を逆量子化し、その結果得られる係数を逆直交変換部104に供給する。
逆直交変換部104は、逆量子化部103からの係数に対して逆直交変換を施し、その結果得られる残差情報を加算部105に供給する。
加算部105は、逆直交変換部104から供給される復号対象の画像としての残差情報と、スイッチ113から供給される予測画像を加算することにより、復号を行う。加算部105は、復号の結果得られる画像をデブロックフィルタ106に供給するとともに、フレームメモリ109に供給する。なお、スイッチ113から予測画像が供給されない場合、加算部105は、逆直交変換部104から供給される残差情報である画像を復号の結果得られる画像として、デブロックフィルタ106に供給するとともに、フレームメモリ109に供給して蓄積させる。
デブロックフィルタ106は、加算部105から供給される画像をフィルタリングすることにより、ブロック歪を除去する。デブロックフィルタ106は、その結果得られる画像をフレームメモリ109に供給し、蓄積させるとともに、画面並べ替えバッファ107に供給する。フレームメモリ109に蓄積された画像は、参照画像としてスイッチ110を介して読み出され、動き補償部112またはイントラ予測部111に供給される。
画面並べ替えバッファ107は、デブロックフィルタ106から供給される画像をフレーム単位で記憶する。画面並べ替えバッファ107は、記憶した符号化のための順番のフレーム単位の画像を、元の表示の順番に並び替え、D/A変換部108に供給する。
D/A変換部108は、画面並べ替えバッファ107から供給されるフレーム単位の画像をD/A変換し、出力信号として図18の制御部54に出力する。
イントラ予測部111は、タイルおよびスライス単位で、フレームメモリ109からスイッチ110を介して読み出されたデブロックフィルタ106でフィルタリングされていない参照画像を用いて、可逆復号部102から供給されるイントラ予測モード情報が示すイントラ予測モードのイントラ予測処理を行う。イントラ予測部111は、その結果生成される予測画像をスイッチ113に供給する。
動き補償部112は、タイルおよびスライス単位で、可逆復号部102から供給される参照画像を特定するための情報に基づいて、フレームメモリ109からスイッチ110を介して、デブロックフィルタ106でフィルタリングされた参照画像を読み出す。動き補償部112は、動きベクトルと参照画像を用いて、インター予測モード情報が示す最適インター予測モードの動き補償処理を行う。動き補償部112は、その結果生成される予測画像をスイッチ113に供給する。
スイッチ113は、可逆復号部102からイントラ予測モード情報が供給された場合、イントラ予測部111から供給される予測画像を加算部105に供給する。一方、可逆復号部102からインター予測モード情報が供給された場合、スイッチ113は、動き補償部112から供給される予測画像を加算部105に供給する。
(復号装置の処理の説明)
図20は、図18の復号装置50による表示処理を説明するフローチャートである。
図20のステップS50において、復号装置50の受け取り部51は、図1の符号化装置1から伝送されてくる符号化ストリームを受け取り、抽出部52に供給する。
ステップS51において、抽出部52は、受け取り部51から供給される符号化ストリームから、SPS,PPS,VUI,SEI、符号化データ等を抽出する。抽出部52は、符号化データを復号部53に供給する。また、抽出部52は、SPS,PPS,VUI,SEI等も、必要に応じて復号部53と制御部54に供給する。
ステップS52において、復号部53は、必要に応じて抽出部52から供給されるSPS,PPS,VUI,SEI等を参照し、抽出部52から供給される符号化データをHEVC方式で復号する復号処理を行う。この復号処理の詳細は、後述する図21を参照して説明する。
ステップS53において、制御部54は、抽出部52から供給されるVUIに含まれるフレームパッキングフラグが1であるかどうかを判定する。ステップS53でフレームパッキングフラグが1であると判定された場合、制御部54は、復号部53から供給される出力信号がパッキング画像であると判定する。
そして、ステップS54において、制御部54は、抽出部52から供給されるフレームパッキングSEIに含まれるクロッピング無視フラグが1であるかどうかを判定する。ステップS54でクロッピング無視フラグが1であると判定された場合、ステップS55において、制御部54は、フレームパッキングSEIに含まれるタイプ情報と位置情報などに基づいて、パッキング画像を構成する各画像を特定する。そして、制御部54は、パッキング画像を構成する各画像を特定する情報と出力信号を表示制御部55に供給する。
ステップS56において、表示制御部55は、表示部56から通知される表示方法を取得する。ステップS57において、表示制御部55は、表示方法とパッキング画像を構成する各画像を特定する情報とに基づいて、パッキング画像を構成する画像のうちの所望の画像をクロッピングし、必要に応じて拡大や縮小等を行い、表示画像とする。
例えば、出力信号が3D表示用のパッキング画像である場合、制御部54は、フレームパッキングSEIに含まれるタイプ情報と位置情報などに基づいて、パッキング画像を構成する左目用の画像と右目用の画像を特定する。そして、表示方法が2D表示である場合、表示制御部55は、パッキング画像から、例えば左目用の画像をクロッピングし、表示画像とする。一方、表示方法が3D表示である場合、表示制御部55は、パッキング画像から左目用の画像と右目用の画像をクロッピングし、表示画像とする。そして、処理はステップS59に進む。
一方、ステップS53でフレームパッキングフラグが1ではないと判定された場合、または、ステップS54でクロッピング無視フラグが1ではないと判定された場合、制御部54は、出力信号がパッキング画像ではないと判定する。そして、制御部54は、出力信号とSPSに含まれるクロッピング情報を表示制御部55に供給し、ステップS58において、表示制御部55は、そのクロッピング情報に基づいて、出力信号としての画像をクロッピングし、必要に応じて拡大や縮小等を行い、表示画像とする。そして、処理はステップS59に進む。
ステップS59において、表示制御部55は、生成された表示画像を表示部56に供給することにより、表示部56に表示画像を表示させ、処理を終了する。
図21は、図20のステップS52の復号処理の詳細を説明するフローチャートである。
図21のステップS101において、復号部53の蓄積バッファ101は、図18の抽出部52からフレーム単位の符号化データを受け取り、蓄積する。蓄積バッファ101は、蓄積されている符号化データを可逆復号部102に供給する。なお、以下のステップS102乃至S110の処理は、例えばCU単位で行われる。
ステップS102において、可逆復号部102は、蓄積バッファ101からの符号化データを可逆復号し、量子化された係数と符号化情報を得る。可逆復号部102は、量子化された係数を逆量子化部103に供給する。また、可逆復号部102は、符号化情報としてのイントラ予測モード情報などをイントラ予測部111に供給し、動きベクトル、インター予測モード情報、参照画像を特定するための情報などを動き補償部112に供給する。さらに、可逆復号部102は、符号化情報としてのイントラ予測モード情報またはインター予測モード情報をスイッチ113に供給する。
ステップS103において、逆量子化部103は、可逆復号部102からの量子化された係数を逆量子化し、その結果得られる係数を逆直交変換部104に供給する。
ステップS104において、動き補償部112は、可逆復号部102からインター予測モード情報が供給されたかどうかを判定する。ステップS104でインター予測モード情報が供給されたと判定された場合、処理はステップS105に進む。
ステップS105において、動き補償部112は、可逆復号部102から供給される動きベクトル、インター予測モード情報、および参照画像を特定するための情報に基づいて、デブロックフィルタ106でフィルタリングされた参照画像を読み出し、動き補償処理を行う。動き補償部112は、その結果生成される予測画像を、スイッチ113を介して加算部105に供給し、処理をステップS107に進める。
一方、ステップS104でインター予測モード情報が供給されていないと判定された場合、即ちイントラ予測モード情報がイントラ予測部111に供給された場合、処理はステップS106に進む。
ステップS106において、イントラ予測部111は、フレームメモリ109からスイッチ110を介して読み出された、デブロックフィルタ106でフィルタリングされていない参照画像を用いて、イントラ予測モード情報が示すイントラ予測モードのイントラ予測処理を行う。イントラ予測部111は、イントラ予測処理の結果生成される予測画像を、スイッチ113を介して加算部105に供給し、処理をステップS107に進める。
ステップS107において、逆直交変換部104は、逆量子化部103からの係数に対して逆直交変換を施し、その結果得られる残差情報を加算部105に供給する。
ステップS108において、加算部105は、逆直交変換部104から供給される残差情報と、スイッチ113から供給される予測画像を加算する。加算部105は、その結果得られる画像をデブロックフィルタ106に供給するとともに、フレームメモリ109に供給する。
ステップS109において、デブロックフィルタ106は、加算部105から供給される画像に対してフィルタリングを行い、ブロック歪を除去する。デブロックフィルタ106は、フィルタリング後の画像をフレームメモリ109に供給する。
ステップS110において、フレームメモリ109は、加算部105から供給されるフィルタリング前の画像と、デブロックフィルタ106から供給されるフィルタリング後の画像を蓄積する。フレームメモリ109に蓄積された画像は、参照画像としてスイッチ110を介して動き補償部112またはイントラ予測部111に供給される。
ステップS111において、画面並べ替えバッファ107は、デブロックフィルタ106から供給される画像をフレーム単位で記憶し、記憶した符号化のための順番のフレーム単位の画像を、元の表示の順番に並び替え、D/A変換部108に供給する。
ステップS112において、D/A変換部108は、画面並べ替えバッファ107から供給されるフレーム単位の画像をD/A変換し、出力信号として図18の制御部54に供給する。そして、処理は、図20のステップS52に戻り、ステップS53に進む。
以上のように、復号装置50は、符号化データを復号してパッキング画像を生成し、フレームパッキングフラグが1である場合、即ちクロッピング無視フラグが1である場合、フレームパッキングSEIに基づいてパッキング画像を構成する各画像を特定する。従って、復号装置50は、パッキング画像の符号化ストリームを復号して表示させる場合に、パッキング画像を構成する所望の画像を確実に表示させることができる。
また、復号装置50が、パッキング画像を構成する各画像を特定することができるので、復号装置50側で、表示方法などにしたがって、表示する所望の画像を決定することができる。
なお、フレームパッキングSEIにクロッピング無視フラグが含まれないようにしてもよい。この場合、復号装置は、フレームパッキングフラグが1である場合、クロッピング情報を無視し、フレームパッキングSEIに基づいてパッキング画像を構成する各画像を特定する。
また、SEIを利用しない復号装置は、フレームパッキングフラグが1である場合であっても、クロッピング情報に基づいてクロッピングを行う。なお、SEIを利用しない復号装置は、フレームパッキングフラグが1である場合、フレームパッキングSEIを参照するようにしてもよい。この場合、SPSにクロッピング情報を含める必要がない。
フレームパッキングフラグは、VUIではなく、SPS等の他のNALユニットに含まれるようにしてもよい。また、パッキング画像を構成する画像の数は、3以上であってもよい。例えば、パッキング画像は、テレビ会議システムにおける会議の各参加者の画像がパッキングされた画像などであってもよい。
さらに、フレームパッキングSEIに含まれる位置情報が、図9や図11に示した位置情報である場合、画像数情報は設定されなくてもよい。
<第2実施の形態>
(符号化装置の第2実施の形態の構成例)
図22は、本技術を適用した符号化装置の第2実施の形態の構成例を示すブロック図である。
図22に示す構成のうち、図1の構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
図22の符号化装置120の構成は、符号化部2の代わりに符号化部121が設けられ、設定部3の代わりに設定部122が設けられる点が図1の構成と異なる。符号化装置120は、パッキング画像の符号化ストリームが2D画像の符号化ストリームとの互換性を有するためのフレームパッキングSEIである2D互換フレームパッキングSEIを含めるように、パッキング画像の符号化ストリームを生成する。
この2D互換フレームパッキングSEIは、復号装置において、パッキング画像を表示する際にクロッピング情報の前に適用されるSEIであり、クロッピング情報を無視することを示すSEIである。即ち、2D互換フレームパッキングSEIは、パッキング画像を表示する際にクロッピング情報に比べて優先的に用いられるSEIである。
符号化装置120の符号化部121には、フレーム単位のパッキング画像等の画像が入力信号として入力される。符号化部121は、入力信号をHEVC方式で符号化し、その結果得られる符号化データを設定部122に供給する。なお、詳細は後述するが、符号化部2と符号化部121は、局部的に復号された画像に対して行われるフィルタリングの種類が異なっている。
設定部122は、図14に示したSPS、PPS、2D互換フレームパッキングSEI等のSEIなどを設定する。設定部122は、設定されたSPS,PPS,SEIなどと、符号化部121から供給される符号化データとから、符号化ストリームを生成する。設定部122は、符号化ストリームを伝送部4に供給する。
(符号化部の構成例)
図23は、図22の符号化部121の構成例を示すブロック図である。
図23に示す構成のうち、図2の構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
図23の符号化部121の構成は、適応オフセットフィルタ141と適応ループフィルタ142が新たに設けられる点、および可逆符号化部16の代わりに可逆符号化部143が設けられる点が図2の構成と異なる。
符号化部121は、局部的に復号された画像に対して、デブロックフィルタ21によるフィルタリング(以下、適応デブロックフィルタ処理という)だけでなく、適応オフセットフィルタ141と適応ループフィルタ142によるフィルタリングを行う。
具体的には、適応オフセットフィルタ141は、デブロックフィルタ21による適応デブロックフィルタ処理後の画像に対して、主にリンギングを除去する適応オフセットフィルタ(SAO: Sample adaptive offset)処理を行う。
より詳細には、適応オフセットフィルタ141は、最大の符号化単位であるLCU(Largest Coding Unit)ごとに適応オフセットフィルタ処理の種類を決定し、その適応オフセットフィルタ処理で用いられるオフセットを求める。適応オフセットフィルタ141は、求められたオフセットを用いて、適応デブロックフィルタ処理後の画像に対して、決定された種類の適応オフセットフィルタ処理を行う。そして、適応オフセットフィルタ141は、適応オフセットフィルタ処理後の画像を適応ループフィルタ142に供給する。
また、適応オフセットフィルタ141は、オフセットを格納するバッファを有している。適応オフセットフィルタ141は、LCUごとに、適応デブロックフィルタ処理に用いられたオフセットが既にバッファに格納されているかどうかを判定する。
適応オフセットフィルタ141は、適応デブロックフィルタ処理に用いられたオフセットが既にバッファに格納されていると判定した場合、オフセットがバッファに格納されているかを示す格納フラグを、オフセットがバッファに格納されていることを示す値(ここでは1)に設定する。
そして、適応オフセットフィルタ141は、LCUごとに、1に設定された格納フラグ、バッファにおけるオフセットの格納位置を示すインデックス、および、行われた適応オフセットフィルタ処理の種類を示す種類情報を可逆符号化部143に供給する。
一方、適応オフセットフィルタ141は、適応デブロックフィルタ処理に用いられたオフセットがまだバッファに格納されていない場合、そのオフセットを順にバッファに格納する。また、適応オフセットフィルタ141は、格納フラグを、オフセットがバッファに格納されていないことを示す値(ここでは0)に設定する。そして、適応オフセットフィルタ141は、LCUごとに、0に設定された格納フラグ、オフセット、および種類情報を可逆符号化部143に供給する。
適応ループフィルタ142は、適応オフセットフィルタ141から供給される適応オフセットフィルタ処理後の画像に対して、例えば、LCUごとに、適応ループフィルタ(ALF:Adaptive Loop Filter)処理を行う。適応ループフィルタ処理としては、例えば、2次元のウィナーフィルタ(Wiener Filter)による処理が用いられる。もちろん、ウィナーフィルタ以外のフィルタが用いられてもよい。
具体的には、適応ループフィルタ142は、LCUごとに、画面並べ替えバッファ12から出力される画像である原画像と適応ループフィルタ処理後の画像の残差が最小となるように、適応ループフィルタ処理で用いられるフィルタ係数を算出する。そして、適応ループフィルタ142は、適応オフセットフィルタ処理後の画像に対して、算出されたフィルタ係数を用いて、LCUごとに適応ループフィルタ処理を行う。
適応ループフィルタ142は、適応ループフィルタ処理後の画像をフレームメモリ22に供給する。また、適応ループフィルタ142は、フィルタ係数を可逆符号化部143に供給する。
なお、ここでは、適応ループフィルタ処理は、LCUごとに行われるものとするが、適応ループフィルタ処理の処理単位は、LCUに限定されない。但し、適応オフセットフィルタ141と適応ループフィルタ142の処理単位を合わせることにより、処理を効率的に行うことができる。
可逆符号化部143は、図2の可逆符号化部16と同様に、イントラ予測モード情報をイントラ予測部24から取得し、インター予測モード情報、動きベクトル、参照画像を特定するための情報などを動き予測・補償部25から取得する。また、可逆符号化部143は、適応オフセットフィルタ141から格納フラグ、インデックスまたはオフセット、および種類情報をオフセットフィルタ情報として取得し、適応ループフィルタ142からフィルタ係数を取得する。
可逆符号化部143は、可逆符号化部16と同様に、量子化部15から供給される量子化された係数に対して、可逆符号化を行う。また、可逆符号化部143は、イントラ予測モード情報、または、インター予測モード情報、動きベクトル、参照画像を特定する情報など、オフセットフィルタ情報、およびフィルタ係数を、符号化情報として可逆符号化する。可逆符号化部143は、可逆符号化された符号化情報と係数を、符号化データとして蓄積バッファ17に供給し、蓄積させる。なお、可逆符号化された符号化情報は、可逆符号化された係数のヘッダ情報とされてもよい。
(2D互換フレームパッキングSEIのシンタックスの例)
図24は、図22の設定部122により設定される2D互換フレームパッキングSEIのシンタックスの例を示す図である。
図24の第2行目乃至第4行目の記述は、AVC規格のフレームパッキングSEI、即ち、図13のフレームパッキングSEIにおいて第2行目の記述がないもの、における図13の第3行目乃至第5行目の記述に対応するものである。
また、図24の第5行目の2Dcomp_FPA_typeは、AVC規格のフレームパッキングSEIにおけるframe_packing_arrangement_type(図13の第6行目)に対応するものであり、モード情報である。但し、後述するように、2Dcomp_FPA_typeとして記述可能なモード情報は、frame_packing_arrangement_typeとして記述可能なモード情報の一部である。
図24の第6行目乃至第11行目の記述は、AVC規格のフレームパッキングSEIにおける図13の第8、第9、第13乃至第20行目の記述に対応するものである。図24の第12行目乃至第15行目には、位置情報が記述される。
図24の例では、位置情報は、パッキング画像を構成する画像ごとに記述される、その画像の上端情報(top_position_frame)、左端情報(left_position_frame)、下端情報(bottom_position_frame)、および右端情報(right_position_frame)により構成される。
図24の第17行目乃至第21行目の記述は、図13の第21行目乃至第25行目に対応するものである。
以上のように、図24の2D互換フレームパッキングSEIは、frame_packing_arrangement_typeが2Dcomp_FPA_typeに代わる点と、quincunx_sampling_flag(図13の第7行目),field_pictures_flag(field_view_flag)(図13の第11行目)、およびcurrent_frame_is_frame0_flag(図13の第12行目)が記述されない点とが、AVC方式におけるフレームパッキングSEIと異なっている。
(2D互換フレームパッキングSEIの変更の理由の説明)
図25は、AVC方式におけるフレームパッキングSEIに対する2D互換フレームパッキングSEIの変更の理由を説明する図である。
なお、図25において、バツ印が付された正方形は左目用の画像の画素を表し、丸印が付された正方形は右目用の画像の画素を表す。また、図25の例では、パッキング画像および表示画像は、12×8画素からなるものとする。
ここで、AVC方式におけるモード情報としては、サイドバイサイドモード、トップアンドボトムモードの他に、チェッカーボートモード、インターリーブモード、フレームシーケンシャルモードなどがある。
チェッカーボードモードとは、左目用の画素と右目用の画素を行方向および列方向に交互に配置することによりパッキングするチェッカーボード方式でパッキングするモードである。インターリーブモードとは、左目用の画素と右目用の画素を1行おき、または、1列おきに配置することによりパッキングするインターリーブ方式でパッキングするモードである。フレームシーケンシャルモードとは、左目用の画像と右目用の画像を時分割で交互にパッキングするフレームシーケンシャル方式でパッキングするモードである。
図25のAに示すように、パッキングのモードがサイドバイサイドモードである場合、復号装置において、パッキング画像のうちの左半分に位置する左目用の画像をクロッピングし、高解像度化(拡大)することにより、左目用の画像を2Dの表示画像として表示することができる。
また、図示は省略するが、パッキングのモードがトップアンドボトムモードである場合も、サイドバイサイドモードである場合と同様に、クロッピングと高解像度化により2Dの表示画像を表示することができる。
しかしながら、図25のBに示すように、パッキングのモードがチェッカーボードモードである場合、復号装置は、クロッピングと高解像度化により2Dの表示画像を表示することができない。また、図示は省略するが、パッキングのモードが、インターリーブモードやフレームシーケンシャルモードである場合も、チェッカーボードモードと同様に、クロッピングと高解像度化により2Dの表示画像を表示することができない。
従って、符号化装置120は、トップアンドボトムモードまたはサイドバイサイドモードでパッキングされたパッキング画像のみを扱い、復号装置は、クロッピングと高解像度化により2Dの表示画像を表示する。よって、モード情報は、サイドバイサイドモードまたはトップアンドボトムモードを示す情報である。
また、パッキングのモードがトップアンドボトムモードまたはサイドバイサイドモードであるので、チェッカーボードモード用の記述であるquincunx_sampling_flagは、2D互換フレームパッキングSEIに含まれない。同様に、インターリーブモード用の記述であるfield_pictures_flag(field_view_flag)、フレームシーケンシャル用の記述であるcurrent_frame_is_frame0_flagも2D互換フレームパッキングSEIに含まれない。
(位置情報の説明)
図26は、図24の位置情報を説明する図である。
図26の例では、パッキング画像150が、サイドバイサイド方式でパッキングされている。パッキング画像150の左半分の画像151のピクチャIDが0であり、右半分の画像152のピクチャIDが1であるものとする。
この場合、図26に示すように、画像151の上端情報(top_position_frame[0])、左端情報(left_position_frame[0])、下端情報(bottom_position_frame[0])、および右端情報(right_position_frame[0])が位置情報として記述される。
また、画像152の上端情報(top_position_frame[1])、左端情報(left_position_frame[1])、下端情報(bottom_position_frame[1])、および右端情報(right_position_frame[1])が位置情報として記述される。
ここで、上端情報(top_position_frame)は、例えば、パッキング画像150を構成する画像151(152)の上端の位置を、その上端からパッキング画像150の上端までの画素数で表す情報である。左端情報(left_position_frame)、下端情報(bottom_position_frame)、および右端情報(right_position_frame)についても、上端情報と同様である。
なお、第1実施の形態と同様に、輝度成分と色差成分の画素数が異なる場合、左端情報、右端情報、上端情報、および下端情報が表す画素数は、例えば、画像数の小さい方の成分の画素数である。
このような位置情報に基づいて、パッキング画像150のうちの、画像151と画像152を特定することができる。パッキング画像150のサイズは、LCUの整数倍のサイズとなっているが、パッキング画像150を構成する画像151(152)のサイズは、必ずしもLCUの整数倍のサイズとならない。従って、図26に示すように、パッキング画像150内には、パッキング画像150を構成する画像151と画像152以外の余白領域153が存在することがある。
なお、位置情報は、各画像151(152)のパッキング画像150上の位置を、図9の場合と同様にタイル単位で示す情報であってもよいし、図11の場合と同様にスライス単位で示す情報であってもよい。
また、ここでは、位置情報が、各画像151(152)の上端情報、左端情報、下端情報、および右端情報により構成されるものとするが、位置情報は、各画像151(152)のパッキング画像150上の位置を示す情報であれば、これに限定されない。
例えば、各画像151(152)の水平方向の画素数と垂直方向の画素数が同一である場合、位置情報は、各画像151(152)の上端情報および左端情報、並びに、各画像151(152)に共通の水平方向の画素数および垂直方向の画素数により構成することができる。
この場合、位置情報を構成する情報の数は6になり、情報の数が少なくて済む。これに対して、位置情報が各画像151(152)の上端情報、左端情報、下端情報、および右端情報により構成される場合、位置情報を構成する情報の数は8になる。
また、2D互換フレームパッキングSEIには、パッキング画像150を構成する全ての画像151と画像152の位置情報が含まれなくてもよい。例えば、画像151と画像152のうちの、SPSに含まれるクロッピング情報で示すクロッピング領域に対応する画像151(152)以外の画像152(151)の上端情報、左端情報、下端情報、および右端情報が、位置情報として含まれるようにしてもよい。この場合、復号装置は、位置情報に対応する画像152(151)以外の画像151(152)をクロッピング情報に基づいて特定する。また、この場合、位置情報を構成する情報の数は4になり、情報の数が少なくて済む。
また、各画像151(152)の水平方向の画素数と垂直方向の画素数が同一である場合、画像151と画像152のうちの、クロッピング情報で示すクロッピング領域に対応する画像151(152)以外の画像152(151)の上端情報および左端情報が、位置情報として含まれるようにしてもよい。この場合、復号装置は、位置情報に対応する画像152(151)以外の画像151(152)をクロッピング情報に基づいて特定する。そして、復号装置は、その画像151(152)の水平方向の画素数および垂直方向の画素数、並びに、上端情報および左端情報に基づいて、位置情報に対応する画像152(151)を特定する。この場合、位置情報を構成する情報の数は2になり、情報の数が少なくて済む。
(符号化装置の処理の説明)
図27は、図22の符号化装置120の生成処理を説明するフローチャートである。
図27のステップS131において、符号化装置120の符号化部121は、外部から入力信号として入力されるフレーム単位のパッキング画像等の画像をHEVC方式で符号化する符号化処理を行う。この符号化処理の詳細は、後述する図28および図29を参照して説明する。
ステップS132において、設定部122は、クロッピング情報を含むSPS(図14)を設定する。ステップS133において、設定部122は、PPSを設定する。ステップS134において、設定部122は、ユーザによる図示せぬ入力部の操作等に基づいて、符号化対象の画像がパッキング画像であるかどうかを判定する。
ステップS134で符号化対象の画像がパッキング画像であると判定された場合、ステップS135において、設定部122は、図24の2D互換フレームパッキングSEIなどのSEIを設定し、処理をステップS136に進める。
一方、ステップS134で符号化対象の画像がパッキング画像ではないと判定された場合、設定部122は、必要に応じて、2D互換フレームパッキングSEI以外のSEIを設定し、処理をステップS136に進める。
ステップS136において、設定部122は、設定されたSPS,PPS、およびSEIと、符号化部121から供給される符号化データとから、符号化ストリームを生成する。設定部122は、符号化ストリームを伝送部4に供給する。
ステップS137において、伝送部4は、設定部122から供給される符号化ストリームを、後述する復号装置に伝送し、処理を終了する。
図28および図29は、図27のステップS131の符号化処理の詳細を説明するフローチャートである。
図28のステップS151乃至S155の処理は、図16のステップS11乃至S15の処理と同様であるので説明は省略する。
ステップS155で最適予測モードが最適インター予測モードであると判定された場合、予測画像選択部26は、最適インター予測モードで生成された予測画像の選択を動き予測・補償部25に通知する。
そして、ステップS156において、動き予測・補償部25は、インター予測モード情報、対応する動きベクトル、および参照画像を特定するための情報を可逆符号化部143に供給する。そして、処理はステップS158に進む。
一方、ステップS155で最適予測モードが最適インター予測モードではないと判定された場合、即ち最適予測モードが最適イントラ予測モードである場合、予測画像選択部26は、最適イントラ予測モードで生成された予測画像の選択をイントラ予測部24に通知する。
そして、ステップS157において、イントラ予測部24は、イントラ予測モード情報を可逆符号化部143に供給する。そして、処理はステップS158に進む。
ステップS158乃至S163の処理は、図16のステップS18乃至S20および図17のステップS24乃至S26の処理と同様であるので、説明は省略する。
ステップS164において、デブロックフィルタ21は、加算部20から供給される局部的に復号された画像に対して、デブロッキングフィルタ処理を行う。デブロックフィルタ21は、その結果得られる画像を適応オフセットフィルタ141に供給する。
ステップS165において、適応オフセットフィルタ141は、デブロックフィルタ21から供給される画像に対して、LCUごとに適応オフセットフィルタ処理を行う。適応オフセットフィルタ141は、その結果得られる画像を適応ループフィルタ142に供給する。また、適応オフセットフィルタ141は、LCUごとに、格納フラグ、インデックスまたはオフセット、および種類情報を、オフセットフィルタ情報として可逆符号化部143に供給する。
ステップS166において、適応ループフィルタ142は、適応オフセットフィルタ141から供給される画像に対して、LCUごとに適応ループフィルタ処理を行う。適応ループフィルタ142は、その結果得られる画像をフレームメモリ22に供給する。また、適応ループフィルタ142は、適応ループフィルタ処理で用いられたフィルタ係数を可逆符号化部143に供給する。
ステップS167において、フレームメモリ22は、フィルタリング前後の画像を蓄積する。具体的には、フレームメモリ22は、加算部20から供給される画像と適応ループフィルタ142から供給される画像を蓄積する。フレームメモリ22に蓄積された画像は、参照画像としてスイッチ23を介してイントラ予測部24または動き予測・補償部25に出力される。
ステップS168において、可逆符号化部143は、イントラ予測モード情報、または、インター予測モード情報、動きベクトル、参照画像を特定する情報など、オフセットフィルタ情報、およびフィルタ係数を、符号化情報として可逆符号化する。
ステップS169において、可逆符号化部143は、量子化部15から供給される量子化された係数を可逆符号化する。そして、可逆符号化部143は、ステップS168の処理で可逆符号化された符号化情報と可逆符号化された係数から、符号化データを生成する。
ステップS170およびS171の処理は、図17のステップS22およびS23の処理と同様であるので、説明は省略する。ステップS171の処理後、処理は図27のステップS131に戻り、ステップS132に進む。
以上のように、符号化装置120は、クロッピング情報の前に適用し、クロッピング情報を無視することを示す2D互換フレームパッキングSEIを設定し、パッキング画像を符号化した符号化データとともに伝送する。
従って、パッキング画像の符号化ストリームを復号して表示させる復号装置は、符号化ストリームに2D互換フレームパッキングSEIが含まれる場合、2D互換フレームパッキングSEIを優先的に用いて、パッキング画像を構成する各画像を特定することができる。従って、復号装置は、パッキング画像を構成する所望の画像を確実に表示させることができる。
よって、符号化装置120は、パッキング画像の符号化ストリームを復号して表示させる場合に、パッキング画像を構成する所望の画像を確実に表示させることができるように、パッキング画像の符号化ストリームを生成することができるといえる。
(復号装置の第2実施の形態の構成例)
図30は、図22の符号化装置120から伝送される符号化ストリームを復号する、本技術を適用した復号装置の第2実施の形態の構成例を示すブロック図である。
図30に示す構成のうち、図18の構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
図30の復号装置160の構成は、復号部53、制御部54、表示制御部163の代わりに復号部161、制御部162、表示制御部163が設けられる点が図18の構成と異なる。復号装置160は、符号化ストリームが2D互換フレームパッキングSEIを含む場合、2D互換フレームパッキングSEIを優先的に用いて表示画像を生成する。
具体的には、復号装置160の復号部161は、必要に応じて抽出部52から供給されるSPS,PPS,SEI等を参照し、抽出部52から供給される符号化データをHEVC方式で復号する。復号部161は、復号の結果得られるパッキング画像等の画像を、出力信号として制御部162に供給する。なお、詳細は後述するが、復号部53と復号部161は、局部的に復号された画像に対して行われるフィルタリングの種類が異なっている。
制御部162は、抽出部52から2D互換フレームパッキングSEIが供給される場合、即ち出力信号がパッキング画像である場合、2D互換フレームパッキングSEIに含まれる位置情報に基づいて、そのパッキング画像を構成する各画像を特定する。そして、制御部162は、クロッピング情報を無視し、出力信号としてのパッキング画像と、パッキング画像を構成する各画像を特定する情報とを表示制御部163に供給する。
一方、制御部162は、抽出部52から2D互換フレームパッキングSEIが供給されない場合、即ち出力信号がパッキング画像ではない画像である場合、制御部162は、出力信号としてのパッキング画像ではない画像と、SPSに含まれるクロッピング情報とを表示制御部163に供給する。
表示制御部163は、制御部162から供給されるパッキング画像を構成する各画像を特定する情報と、表示部56から通知される表示方法とに基づいて、制御部162から出力信号として供給されるパッキング画像に対してクロッピング、高解像度化(拡大)等を行い、表示画像を生成する。また、表示制御部163は、制御部162から供給されるクロッピング情報に基づいて、制御部162から出力信号として供給されるパッキングされていない画像に対してクロッピング、高解像度化(拡大)等を行い、表示画像を生成する。表示制御部163は、生成された表示画像を表示部56に供給することにより、表示させる。
(復号部の構成例)
図31は、図30の復号部161の構成例を示すブロック図である。
図31に示す構成のうち、図19の構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
図31の復号部161の構成は、可逆復号部102の代わりに可逆復号部181が設けられる点、および、適応オフセットフィルタ182と適応ループフィルタ183が新たに設けられる点が図19の構成と異なる。復号部161は、局部的に復号された画像に対して、適応デブロックフィルタ処理だけでなく、適応オフセットフィルタ182と適応ループフィルタ183によるフィルタリングを行う。
具体的には、可逆復号部181は、図19の可逆復号部102と同様に、蓄積バッファ101からの符号化データに対して、可変長復号や、算術復号等の可逆復号を施すことで、量子化された係数と符号化情報を得る。可逆復号部181は、可逆復号部102と同様に、量子化された係数を逆量子化部103に供給する。
また、可逆復号部181は、可逆復号部102と同様に、符号化情報としてのイントラ予測モード情報などをイントラ予測部111に供給する。可逆復号部181は、可逆復号部102と同様に、符号化情報としての動きベクトル、参照画像を特定するための情報、インター予測モード情報などを動き補償部112に供給する。
さらに、可逆復号部181は、可逆復号部102と同様に、符号化情報としてのイントラ予測モード情報またはインター予測モード情報をスイッチ113に供給する。可逆復号部181は、符号化情報としてのオフセットフィルタ情報を適応オフセットフィルタ182に供給し、フィルタ係数を適応ループフィルタ183に供給する。
適応オフセットフィルタ182は、可逆復号部181から供給されるオフセットを順に格納するバッファを有する。また、適応オフセットフィルタ182は、LCUごとに、可逆復号部181から供給されるオフセットフィルタ情報に基づいて、デブロックフィルタ106による適応デブロックフィルタ処理後の画像に対して、適応オフセットフィルタ処理を行う。
具体的には、オフセットフィルタ情報に含まれる格納フラグが0である場合、適応オフセットフィルタ182は、LCU単位のデブロックフィルタ処理後の画像に対して、そのオフセットフィルタ情報に含まれるオフセットを用いて、種類情報が示す種類の適応オフセットフィルタ処理を行う。
一方、オフセットフィルタ情報に含まれる格納フラグが1である場合、適応オフセットフィルタ182は、LCU単位のデブロックフィルタ処理後の画像に対して、そのオフセットフィルタ情報に含まれるインデックスが示す位置に格納されるオフセットを読み出す。そして、適応オフセットフィルタ182は、読み出されたオフセットを用いて、種類情報が示す種類の適応オフセットフィルタ処理を行う。適応オフセットフィルタ182は、適応オフセットフィルタ処理後の画像を、適応ループフィルタ183に供給する。
適応ループフィルタ183は、適応オフセットフィルタ182から供給される画像に対して、可逆復号部181から供給されるフィルタ係数を用いて、LCUごとに適応ループフィルタ処理を行う。適応ループフィルタ183は、その結果得られる画像をフレームメモリ109および画面並べ替えバッファ107に供給する。
(2D互換フレームパッキングSEIの適用時期の説明)
図32は、2D互換フレームパッキングSEIの適用時期を説明する図である。
図32に示すように、復号装置160は、最初に、受信された符号化ストリームに、2D互換フレームパッキングSEIが含まれているかどうかを判定する。そして、2D互換フレームパッキングSEIが含まれている場合、復号装置160は、2D互換フレームパッキングSEIを適用し、クロッピング情報は無視する。
このように、2D互換フレームパッキングSEIは、クロッピング情報の前に適用され、クロッピング情報を無視することを示すため、2D互換フレームパッキングSEIが符号化ストリームに含まれる場合、復号装置160は、2D互換フレームパッキングSEIのみを適用する。
一方、符号化ストリームに2D互換フレームパッキングSEIが含まれない場合、復号装置160は、SPSに含まれるクロッピング情報を適用する。
これに対して、従来のAVC方式におけるフレームパッキングSEIは、クロッピング情報の後に適用され、クロッピング情報を無視することを示すSEIではない。従って、符号化ストリームに従来のAVC方式におけるフレームパッキングSEIが含まれる場合、クロッピング情報が適用された後、フレームパッキングSEIが適用される。
従って、クロッピング情報が、左目用の画像と右目用の画像のいずれか一方の画像の領域をクロッピング領域として示す場合、SEIを利用する3D表示用の復号装置は、他方の画像を表示することができない。
また、従来のAVC方式におけるフレームパッキングSEIが符号化ストリームに含まれる場合、SEIを利用する3D表示用の復号装置が、クロッピング情報を無視することにより、フレームパッキングSEIに基づいて3D画像を表示させることもできる。しかしながら、従来のAVC方式におけるフレームパッキングSEIは、クロッピング情報を無視することを示すSEIではないため、規格上mandatoryな情報であるSPSに含まれるクロッピング情報を無視することは、規格違反である。
(2D互換フレームパッキングSEIに記述可能な情報の説明)
図33は、2D互換フレームパッキングSEIに記述可能な情報を説明する図である。
図33の例では、パッキング画像が、サイドバイサイド方式でパッキングされ、パッキング画像の左半分の画像が、3D画像を構成する左目用の画像(Left view)であり、右半分の画像が、右目用の画像(Right view)である。
この場合、2D互換フレームパッキングSEIは、クロッピング情報の前に適用されるので、パッキング画像を構成する左目用の画像と右目用の画像について記述することができる。
これに対して、従来のAVC方式におけるフレームパッキングSEIは、クロッピング情報の後に適用されるので、クロッピング情報が、左目用の画像と右目用の画像のいずれか一方(図33の例では、左目用の画像)の領域を示す場合、その一方の画像(図33の例では、左目用の画像)についてしか記述することができない。
(復号装置の処理の説明)
図34は、図30の復号装置160による表示処理を説明するフローチャートである。
図34のステップS190およびS191の処理は、図20のステップS50およびS51の処理と同様であるので、説明は省略する。
ステップS192において、復号部161は、必要に応じて抽出部52から供給されるSPS,PPS,SEI等を参照し、抽出部52から供給される符号化データをHEVC方式で復号する復号処理を行う。この復号処理の詳細は、後述する図35を参照して説明する。
ステップS193において、制御部162は、符号化ストリームに2D互換フレームパッキングSEIが含まれているかどうか、即ち抽出部52から2D互換フレームパッキングSEIが供給されたかどうかを判定する。ステップS193で、2D互換フレームパッキングSEIが含まれていると判定された場合、制御部162は、復号部161から供給される出力信号がパッキング画像であると判定する。
そして、ステップS194において、制御部162は、2D互換フレームパッキングSEIに含まれる位置情報などに基づいて、パッキング画像を構成する各画像を特定する。そして、制御部162は、パッキング画像を構成する各画像を特定する情報と出力信号を表示制御部163に供給する。
ステップS195において、表示制御部163は、表示部56から通知される表示方法を取得する。ステップS196において、表示制御部163は、表示方法とパッキング画像を構成する各画像を特定する情報とに基づいて、パッキング画像を構成する画像のうちの所望の画像をクロッピングする。
例えば、出力信号が3D表示用のパッキング画像である場合、制御部162は、2D互換フレームパッキングSEIに含まれる位置情報などに基づいて、パッキング画像を構成する左目用の画像と右目用の画像を特定する。そして、表示方法が2D表示である場合、表示制御部163は、パッキング画像から、例えば左目用の画像をクロッピングする。一方、表示方法が3D表示である場合、表示制御部163は、パッキング画像から左目用の画像と右目用の画像をクロッピングする。そして、処理はステップS198に進む。
一方、ステップS193で2D互換フレームパッキングSEIが含まれていないと判定された場合、制御部162は、出力信号がパッキング画像ではないと判定する。そして、制御部162は、出力信号と、抽出部52から供給されるSPSに含まれるクロッピング情報とを表示制御部163に供給する。
そして、ステップS197において、表示制御部163は、制御部162から供給されるクロッピング情報に基づいて、出力信号としての画像をクロッピングし、処理をステップS198に進む。
ステップS198において、表示制御部163は、ステップS196またはステップS197でクロッピングされた画像を高解像度化(拡大)し、表示画像とする。ステップS199において、表示制御部163は、表示画像を表示部56に供給することにより、表示部56に表示画像を表示させ、処理を終了する。
図35は、図34のステップS192の復号処理の詳細を説明するフローチャートである。
図35のステップS211乃至S218の処理は、図21のステップS101乃至S108の処理と同様である。
ステップS219において、デブロックフィルタ106は、加算部105から供給される画像に対してデブロッキングフィルタ処理を行い、ブロック歪を除去する。デブロックフィルタ106は、その結果得られる画像を適応オフセットフィルタ182に供給する。
ステップS220において、適応オフセットフィルタ182は、可逆復号部181から供給されるオフセットフィルタ情報に基づいて、デブロックフィルタ106によるデブロックフィルタ処理後の画像に対して、LCUごとに適応オフセットフィルタ処理を行う。適応オフセットフィルタ182は、適応オフセットフィルタ処理後の画像を、適応ループフィルタ183に供給する。
ステップS221において、適応ループフィルタ183は、適応オフセットフィルタ182から供給される画像に対して、可逆復号部181から供給されるフィルタ係数を用いて、LCUごとに適応ループフィルタ処理を行う。適応ループフィルタ183は、その結果得られる画像をフレームメモリ109および画面並べ替えバッファ107に供給する。
ステップS222乃至S224の処理は、図21のステップS110乃至S112の処理と同様であるので、説明は省略する。
以上のように、復号装置160は、符号化データを復号してパッキング画像を生成し、符号化ストリームに2D互換フレームパッキングSEIが含まれる場合、2D互換フレームパッキングSEIを適用し、クロッピング情報を無視する。具体的には、復号装置160は、2D互換フレームパッキングSEIに基づいてパッキング画像を構成する各画像を特定する。従って、復号装置160は、パッキング画像の符号化ストリームを復号して表示させる場合に、パッキング画像を構成する所望の画像を確実に表示させることができる。
また、復号装置160が、パッキング画像を構成する各画像を特定することができるので、復号装置160側で、表示方法などにしたがって、表示する所望の画像を決定することができる。
なお、SEIを利用しない復号装置は、クロッピング情報に基づいてクロッピングを行う。これにより、クロッピング情報が、パッキング画像を構成する左目用の画像と右目用の画像のうちのいずれか一方の画像の領域をクロッピング領域として示す場合、SEIを利用しない復号装置は、その一方の画像を2D画像として表示することができる。
また、第2実施の形態では、2D互換フレームパッキングSEIを新しく設定したが、従来のAVC方式におけるフレームパッキングSEIを、2D互換フレームパッキングSEIの機能を有するように拡張してもよい。
この場合、例えば、従来のAVC方式におけるフレームパッキングSEIのframe_packing_arrangement_extension_flagを、クロッピング情報を適用するかしないかを示すフラグとして用いる。そして、拡張後のフレームパッキングSEIには、frame_packing_arrangement_extension_flagが、クロッピング情報を適用しないことを示す場合、quincunx_sampling_flag,field_pictures_flag(field_view_flag)、およびcurrent_frame_is_frame0_flagをdisableに設定するための情報と、位置情報とが記述される。
そして、SEIを利用する復号装置は、クロッピング情報を適用する前に拡張後のフレームパッキングSEIを読み出す。frame_packing_arrangement_extension_flagがクロッピング情報を適用しないことを示す場合、SEIを利用する復号装置は、拡張後のフレームパッキングSEIの位置情報に基づいて画像を特定し、クロッピング情報を無視する。一方、frame_packing_arrangement_extension_flagがクロッピング情報を適用することを示す場合、SEIを利用する復号装置は、クロッピング情報に基づいてクロッピングを行う。
このように、SEIを利用する復号装置は、frame_packing_arrangement_extension_flagに基づいて、クロッピング情報に比べて拡張後のフレームパッキングSEIを優先的に用いて画像を特定したり、拡張後のフレームパッキングSEIを優先的に用いずにクロッピング情報に基づいてクロッピングを行ったりする。従って、frame_packing_arrangement_extension_flagは、パッキング画像の表示時に拡張後のフレームパッキングSEIを優先的に用いるかを示す情報(パッキング優先情報)であるといえる。
<第3実施の形態>
(本技術を適用したコンピュータの説明)
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
図36は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
コンピュータにおいて、CPU(Central Processing Unit)201,ROM(Read Only Memory)202,RAM(Random Access Memory)203は、バス204により相互に接続されている。
バス204には、さらに、入出力インタフェース205が接続されている。入出力インタフェース205には、入力部206、出力部207、記憶部208、通信部209、及びドライブ210が接続されている。
入力部206は、キーボード、マウス、マイクロホンなどよりなる。出力部207は、ディスプレイ、スピーカなどよりなる。記憶部208は、ハードディスクや不揮発性のメモリなどよりなる。通信部209は、ネットワークインタフェースなどよりなる。ドライブ210は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア211を駆動する。
以上のように構成されるコンピュータでは、CPU201が、例えば、記憶部208に記憶されているプログラムを、入出力インタフェース205及びバス204を介して、RAM203にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ(CPU201)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア211に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
コンピュータでは、プログラムは、リムーバブルメディア211をドライブ210に装着することにより、入出力インタフェース205を介して、記憶部208にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部209で受信し、記憶部208にインストールすることができる。その他、プログラムは、ROM202や記憶部208に、あらかじめインストールしておくことができる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
<第4実施の形態>
(テレビジョン装置の構成例)
図37は、本技術を適用したテレビジョン装置の概略構成を例示している。テレビジョン装置900は、アンテナ901、チューナ902、デマルチプレクサ903、デコーダ904、映像信号処理部905、表示部906、音声信号処理部907、スピーカ908、外部インタフェース部909を有している。さらに、テレビジョン装置900は、制御部910、ユーザインタフェース部911等を有している。
チューナ902は、アンテナ901で受信された放送波信号から所望のチャンネルを選局して復調を行い、得られた符号化ビットストリームをデマルチプレクサ903に出力する。
デマルチプレクサ903は、符号化ビットストリームから視聴対象である番組の映像や音声のパケットを抽出して、抽出したパケットのデータをデコーダ904に出力する。また、デマルチプレクサ903は、EPG(Electronic Program Guide)等のデータのパケットを制御部910に供給する。なお、スクランブルが行われている場合、デマルチプレクサ等でスクランブルの解除を行う。
デコーダ904は、パケットの復号化処理を行い、復号処理化によって生成された映像データを映像信号処理部905、音声データを音声信号処理部907に出力する。
映像信号処理部905は、映像データに対して、ノイズ除去やユーザ設定に応じた映像処理等を行う。映像信号処理部905は、表示部906に表示させる番組の映像データや、ネットワークを介して供給されるアプリケーションに基づく処理による画像データなどを生成する。また、映像信号処理部905は、項目の選択などのメニュー画面等を表示するための映像データを生成し、それを番組の映像データに重畳する。映像信号処理部905は、このようにして生成した映像データに基づいて駆動信号を生成して表示部906を駆動する。
表示部906は、映像信号処理部905からの駆動信号に基づき表示デバイス(例えば液晶表示素子等)を駆動して、番組の映像などを表示させる。
音声信号処理部907は、音声データに対してノイズ除去などの所定の処理を施し、処理後の音声データのD/A変換処理や増幅処理を行いスピーカ908に供給することで音声出力を行う。
外部インタフェース部909は、外部機器やネットワークと接続するためのインタフェースであり、映像データや音声データ等のデータ送受信を行う。
制御部910にはユーザインタフェース部911が接続されている。ユーザインタフェース部911は、操作スイッチやリモートコントロール信号受信部等で構成されており、ユーザ操作に応じた操作信号を制御部910に供給する。
制御部910は、CPU(Central Processing Unit)やメモリ等を用いて構成されている。メモリは、CPUにより実行されるプログラムやCPUが処理を行う上で必要な各種のデータ、EPGデータ、ネットワークを介して取得されたデータ等を記憶する。メモリに記憶されているプログラムは、テレビジョン装置900の起動時などの所定タイミングでCPUにより読み出されて実行される。CPUは、プログラムを実行することで、テレビジョン装置900がユーザ操作に応じた動作となるように各部を制御する。
なお、テレビジョン装置900では、チューナ902、デマルチプレクサ903、映像信号処理部905、音声信号処理部907、外部インタフェース部909等と制御部910を接続するためバス912が設けられている。
このように構成されたテレビジョン装置では、デコーダ904に本願の復号装置(復号方法)の機能が設けられる。このため、パッキング画像の符号化ストリームを復号して表示させる場合に、パッキング画像を構成する所望の画像を確実に表示させることができる。
<第5実施の形態>
(携帯電話機の構成例)
図38は、本技術を適用した携帯電話機の概略構成を例示している。携帯電話機920は、通信部922、音声コーデック923、カメラ部926、画像処理部927、多重分離部928、記録再生部929、表示部930、制御部931を有している。これらは、バス933を介して互いに接続されている。
また、通信部922にはアンテナ921が接続されており、音声コーデック923には、スピーカ924とマイクロホン925が接続されている。さらに制御部931には、操作部932が接続されている。
携帯電話機920は、音声通話モードやデータ通信モード等の各種モードで、音声信号の送受信、電子メールや画像データの送受信、画像撮影、またはデータ記録等の各種動作を行う。
音声通話モードにおいて、マイクロホン925で生成された音声信号は、音声コーデック923で音声データへの変換やデータ圧縮が行われて通信部922に供給される。通信部922は、音声データの変調処理や周波数変換処理等を行い、送信信号を生成する。また、通信部922は、送信信号をアンテナ921に供給して図示しない基地局へ送信する。また、通信部922は、アンテナ921で受信した受信信号の増幅や周波数変換処理および復調処理等を行い、得られた音声データを音声コーデック923に供給する。音声コーデック923は、音声データのデータ伸張やアナログ音声信号への変換を行いスピーカ924に出力する。
また、データ通信モードにおいて、メール送信を行う場合、制御部931は、操作部932の操作によって入力された文字データを受け付けて、入力された文字を表示部930に表示する。また、制御部931は、操作部932におけるユーザ指示等に基づいてメールデータを生成して通信部922に供給する。通信部922は、メールデータの変調処理や周波数変換処理等を行い、得られた送信信号をアンテナ921から送信する。また、通信部922は、アンテナ921で受信した受信信号の増幅や周波数変換処理および復調処理等を行い、メールデータを復元する。このメールデータを、表示部930に供給して、メール内容の表示を行う。
なお、携帯電話機920は、受信したメールデータを、記録再生部929で記憶媒体に記憶させることも可能である。記憶媒体は、書き換え可能な任意の記憶媒体である。例えば、記憶媒体は、RAMや内蔵型フラッシュメモリ等の半導体メモリ、ハードディスク、磁気ディスク、光磁気ディスク、光ディスク、USBメモリ、またはメモリカード等のリムーバブルメディアである。
データ通信モードにおいて画像データを送信する場合、カメラ部926で生成された画像データを、画像処理部927に供給する。画像処理部927は、画像データの符号化処理を行い、符号化データを生成する。
多重分離部928は、画像処理部927で生成された符号化データと、音声コーデック923から供給された音声データを所定の方式で多重化して通信部922に供給する。通信部922は、多重化データの変調処理や周波数変換処理等を行い、得られた送信信号をアンテナ921から送信する。また、通信部922は、アンテナ921で受信した受信信号の増幅や周波数変換処理および復調処理等を行い、多重化データを復元する。この多重化データを多重分離部928に供給する。多重分離部928は、多重化データの分離を行い、符号化データを画像処理部927、音声データを音声コーデック923に供給する。画像処理部927は、符号化データの復号化処理を行い、画像データを生成する。この画像データを表示部930に供給して、受信した画像の表示を行う。音声コーデック923は、音声データをアナログ音声信号に変換してスピーカ924に供給して、受信した音声を出力する。
このように構成された携帯電話装置では、画像処理部927に本願の符号化装置および復号装置(符号化方法および復号方法)の機能が設けられる。このため、パッキング画像の符号化ストリームを復号して表示させる場合に、パッキング画像を構成する所望の画像を確実に表示させることができるように、パッキング画像の符号化ストリームを生成することができる。また、パッキング画像の符号化ストリームを復号して表示させる場合に、パッキング画像を構成する所望の画像を確実に表示させることができる。
<第6実施の形態>
(記録再生装置の構成例)
図39は、本技術を適用した記録再生装置の概略構成を例示している。記録再生装置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に出力する。
外部インタフェース部942は、IEEE1394インタフェース、ネットワークインタフェース部、USBインタフェース、フラッシュメモリインタフェース等の少なくともいずれかで構成されている。外部インタフェース部942は、外部機器やネットワーク、メモリカード等と接続するためのインタフェースであり、記録する映像データや音声データ等のデータ受信を行う。
エンコーダ943は、外部インタフェース部942から供給された映像データや音声データが符号化されていないとき所定の方式で符号化を行い、符号化ビットストリームをセレクタ946に出力する。
HDD部944は、映像や音声等のコンテンツデータ、各種プログラムやその他のデータ等を内蔵のハードディスクに記録し、また再生時等にそれらを当該ハードディスクから読み出す。
ディスクドライブ945は、装着されている光ディスクに対する信号の記録および再生を行う。光ディスク、例えばDVDディスク(DVD−Video、DVD−RAM、DVD−R、DVD−RW、DVD+R、DVD+RW等)やBlu−ray(登録商標)ディスク等である。
セレクタ946は、映像や音声の記録時には、チューナ941またはエンコーダ943からのいずれかの符号化ビットストリームを選択して、HDD部944やディスクドライブ945のいずれかに供給する。また、セレクタ946は、映像や音声の再生時に、HDD部944またはディスクドライブ945から出力された符号化ビットストリームをデコーダ947に供給する。
デコーダ947は、符号化ビットストリームの復号化処理を行う。デコーダ947は、復号処理化を行うことにより生成された映像データをOSD部948に供給する。また、デコーダ947は、復号処理化を行うことにより生成された音声データを出力する。
OSD部948は、項目の選択などのメニュー画面等を表示するための映像データを生成し、それをデコーダ947から出力された映像データに重畳して出力する。
制御部949には、ユーザインタフェース部950が接続されている。ユーザインタフェース部950は、操作スイッチやリモートコントロール信号受信部等で構成されており、ユーザ操作に応じた操作信号を制御部949に供給する。
制御部949は、CPUやメモリ等を用いて構成されている。メモリは、CPUにより実行されるプログラムやCPUが処理を行う上で必要な各種のデータを記憶する。メモリに記憶されているプログラムは、記録再生装置940の起動時などの所定タイミングでCPUにより読み出されて実行される。CPUは、プログラムを実行することで、記録再生装置940がユーザ操作に応じた動作となるように各部を制御する。
このように構成された記録再生装置では、デコーダ947に本願の復号装置(復号方法)の機能が設けられる。このため、パッキング画像の符号化ストリームを復号して表示させる場合に、パッキング画像を構成する所望の画像を確実に表示させることができる。
<第7実施の形態>
(撮像装置の構成例)
図40は、本技術を適用した撮像装置の概略構成を例示している。撮像装置960は、被写体を撮像し、被写体の画像を表示部に表示させたり、それを画像データとして、記録媒体に記録する。
撮像装置960は、光学ブロック961、撮像部962、カメラ信号処理部963、画像データ処理部964、表示部965、外部インタフェース部966、メモリ部967、メディアドライブ968、OSD部969、制御部970を有している。また、制御部970には、ユーザインタフェース部971が接続されている。さらに、画像データ処理部964や外部インタフェース部966、メモリ部967、メディアドライブ968、OSD部969、制御部970等は、バス972を介して接続されている。
光学ブロック961は、フォーカスレンズや絞り機構等を用いて構成されている。光学ブロック961は、被写体の光学像を撮像部962の撮像面に結像させる。撮像部962は、CCDまたはCMOSイメージセンサを用いて構成されており、光電変換によって光学像に応じた電気信号を生成してカメラ信号処理部963に供給する。
カメラ信号処理部963は、撮像部962から供給された電気信号に対してニー補正やガンマ補正、色補正等の種々のカメラ信号処理を行う。カメラ信号処理部963は、カメラ信号処理後の画像データを画像データ処理部964に供給する。
画像データ処理部964は、カメラ信号処理部963から供給された画像データの符号化処理を行う。画像データ処理部964は、符号化処理を行うことにより生成された符号化データを外部インタフェース部966やメディアドライブ968に供給する。また、画像データ処理部964は、外部インタフェース部966やメディアドライブ968から供給された符号化データの復号化処理を行う。画像データ処理部964は、復号化処理を行うことにより生成された画像データを表示部965に供給する。また、画像データ処理部964は、カメラ信号処理部963から供給された画像データを表示部965に供給する処理や、OSD部969から取得した表示用データを、画像データに重畳させて表示部965に供給する。
OSD部969は、記号、文字、または図形からなるメニュー画面やアイコンなどの表示用データを生成して画像データ処理部964に出力する。
外部インタフェース部966は、例えば、USB入出力端子などで構成され、画像の印刷を行う場合に、プリンタと接続される。また、外部インタフェース部966には、必要に応じてドライブが接続され、磁気ディスク、光ディスク等のリムーバブルメディアが適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて、インストールされる。さらに、外部インタフェース部966は、LANやインターネット等の所定のネットワークに接続されるネットワークインタフェースを有する。制御部970は、例えば、ユーザインタフェース部971からの指示にしたがって、メモリ部967から符号化データを読み出し、それを外部インタフェース部966から、ネットワークを介して接続される他の装置に供給させることができる。また、制御部970は、ネットワークを介して他の装置から供給される符号化データや画像データを、外部インタフェース部966を介して取得し、それを画像データ処理部964に供給したりすることができる。
メディアドライブ968で駆動される記録メディアとしては、例えば、磁気ディスク、光磁気ディスク、光ディスク、または半導体メモリ等の、読み書き可能な任意のリムーバブルメディアが用いられる。また、記録メディアは、リムーバブルメディアとしての種類も任意であり、テープデバイスであってもよいし、ディスクであってもよいし、メモリカードであってもよい。もちろん、非接触ICカード等であってもよい。
また、メディアドライブ968と記録メディアを一体化し、例えば、内蔵型ハードディスクドライブやSSD(Solid State Drive)等のように、非可搬性の記憶媒体により構成されるようにしてもよい。
制御部970は、CPUやメモリ等を用いて構成されている。メモリは、CPUにより実行されるプログラムやCPUが処理を行う上で必要な各種のデータ等を記憶する。メモリに記憶されているプログラムは、撮像装置960の起動時などの所定タイミングでCPUにより読み出されて実行される。CPUは、プログラムを実行することで、撮像装置960がユーザ操作に応じた動作となるように各部を制御する。
このように構成された撮像装置では、画像データ処理部964に本願の符号化装置および復号装置(符号化方法および復号方法)の機能が設けられる。このため、パッキング画像の符号化ストリームを復号して表示させる場合に、パッキング画像を構成する所望の画像を確実に表示させることができるように、パッキング画像の符号化ストリームを生成することができる。また、パッキング画像の符号化ストリームを復号して表示させる場合に、パッキング画像を構成する所望の画像を確実に表示させることができる。
なお、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、図18の表示制御部55と表示部56は、復号装置50の外部に設けられるようにしてもよい。
また、例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
また、本技術は、以下のような構成もとることができる。
(1)
複数の画像がパッキングされたパッキング画像を符号化した符号化データを復号し、前記パッキング画像を生成する復号部と、
前記パッキング画像を表示する際に優先的に用いられる、前記パッキングに関するパッキング情報に基づいて、前記復号部により生成された前記パッキング画像を構成する各画像を特定する制御部と
を備える復号装置。
(2)
前記パッキング情報をSEI(Supplemental Enhancement Information)として受け取る受け取り部
をさらに備える
前記(1)に記載の復号装置。
(3)
前記パッキングされた一部の画像に関する画像情報を受け取る受け取り部
をさらに備える
前記(1)に記載の復号装置。
(4)
前記画像情報は、前記パッキングされた一部の画像の位置を示す位置情報を含む
前記(3)に記載の復号装置。
(5)
前記パッキング情報は、前記パッキング画像を表示する際に前記画像情報より優先的に用いられる
前記(4)に記載の復号装置。
(6)
前記パッキング情報は、前記パッキング画像を構成する各画像の前記パッキング画像における位置を示す位置情報を含む
前記(1)乃至(5)のいずれかに記載の復号装置。
(7)
前記パッキング情報は、前記パッキングのモードを含む
前記(1)乃至(6)のいずれかに記載の復号装置。
(8)
前記制御部は、特定した前記画像を、画像を表示する表示部に表示させる
前記(1)乃至(7)のいずれかに記載の復号装置。
(9)
前記復号部は、CU(Coding Unit)単位で、前記符号化データを復号する
前記(1)乃至(8)のいずれかに記載の復号装置。
(10)
復号装置が、
複数の画像がパッキングされたパッキング画像を符号化した符号化データを復号し、前記パッキング画像を生成する復号ステップと、
前記パッキング画像を表示する際に優先的に用いられる、前記パッキングに関するパッキング情報に基づいて、前記復号ステップの処理により生成された前記パッキング画像を構成する各画像を特定する制御ステップと
を含む復号方法。
(11)
複数の画像がパッキングされたパッキング画像を符号化し、符号化データを生成する符号化部と、
前記パッキング画像を表示する際に優先的に用いられる、前記パッキングに関するパッキング情報を設定する設定部と、
前記符号化部により生成された前記符号化データと、前記設定部により設定された前記パッキング情報とを伝送する伝送部と
を備える符号化装置。
(12)
前記伝送部は、前記パッキング情報をSEI(Supplemental Enhancement Information)として伝送する
前記(11)に記載の符号化装置。
(13)
前記伝送部は、前記パッキングされた一部の画像に関する画像情報を伝送する
前記(11)または(12)に記載の符号化装置。
(14)
前記画像情報は、前記パッキングされた一部の画像の位置を示す位置情報を含む
前記(13)に記載の符号化装置。
(15)
前記パッキング情報は、前記パッキング画像を表示する際に前記画像情報より優先的に用いられる
前記(14)に記載の符号化装置。
(16)
前記パッキング情報は、前記パッキング画像を構成する各画像の前記パッキング画像における位置を示す位置情報を含む
前記(11)乃至(15)のいずれかに記載の符号化装置。
(17)
前記パッキング情報は、前記パッキングのモードを含む
前記(11)乃至(16)のいずれかに記載の符号化装置。
(18)
前記符号化部は、CU(Coding Unit)単位で、前記パッキング画像を符号化する
前記(11)乃至(17)のいずれかに記載の符号化装置。
(19)
符号化装置が、
複数の画像がパッキングされたパッキング画像を符号化し、符号化データを生成する符号化ステップと、
前記パッキング画像を表示する際に優先的に用いられる、前記パッキングに関するパッキング情報を設定する設定ステップと、
前記符号化ステップの処理により生成された前記符号化データと、前記設定ステップの処理により設定された前記パッキング情報とを伝送する伝送ステップと
を含む符号化方法。