(本発明の基礎となった知見)
映像データを圧縮するための映像符号化規格には、H.26xで示されるITU−T(国際電気通信連合電気通信標準化部門)規格、および、MPEG−xで示されるISO/IEC規格がある。最新かつ最も進んだ映像符号化規格は、H.264/MPEG−4 AVCで示される規格である(非特許文献1)。そして、次世代画像符号化標準規格であるHEVC(High Efficiency Video Coding)規格が、次の規格として検討されている(非特許文献2)。
これらの規格において用いられる技術として、ピクチャ間の画素情報を参照して映像データを圧縮する面間予測符号化(インター予測符号化)、および、ピクチャ内の画素情報を参照して映像データを圧縮する面内予測符号化(イントラ予測符号化)がある。
面内予測符号化では、面内予測モード(IntraPredMode)に従って、周辺画素値から予測画素値を生成するための方向等が区別される。面内予測符号化が用いられる場合、面内予測モードは、複数の面内予測モードから選択される。
この複数の面内予測モードの数(intraPredModeNum)は、符号化対象のブロックのサイズに応じて決定される。例えば、面内予測モードの数は、ブロックのサイズを示すlog2TrafoSizeの値、および、予測ユニット(PU:Prediction Unit)の種別に応じて決定される。より具体的には、log2TrafoSizeの値が3以上5以下であるブロックには、intraPredModeNumの値が34に設定され、34個の面内予測モードが用意されることが検討されている。
面内予測モードの値(あるいはラベル)は、予測の方向を示す。例えば、0は垂直(方向)を示し、1は水平(方向)を示し、2はDCモード予測と呼ばれる無方向を示し、3以上(所定のサイズのブロックでは3以上33以下)は各々対応付けられた方向を示す。
輝度に対応する面内予測モードと、色差に対応する面内予測モードとが異なっていてもよい。以下、輝度に対応する面内予測モードを輝度予測モードと呼び、色差に対応する面内予測モードを色差予測モードと呼ぶ。
イントラ予測対象ブロックに対して複数の面内予測モードのうちどのモードを用いるかを特定するためのモード情報は、予測ユニットの情報として符号化される。現在、輝度予測モードのモード情報に、以下の3つの要素を含めることが検討されている。
第1の要素は、prev_intra_luma_pred_flag(先面内輝度予測フラグ)である。prev_intra_luma_pred_flagは、以前に符号化(復号)された隣接する予測ユニットの面内予測モードの値を使用するか否かを決定するためのフラグである。
第2の要素は、mpm_idx(最確モードインデックス)である。mpm_idxは、2以上の面内予測モードの候補(最確モード)がある場合にどの最確モードを選択するかを示すインデックスである。例えば、mpm_idxのデフォルト値は、0であり、1つ目の最確モードを選択することを示す。
第3の要素は、rem_intra_luma_pred_mode(残余面内輝度予測モード)である。rem_intra_luma_pred_modeは、輝度予測モードに対応付けられた符号(値)である。
一方、色差に対応する面内予測モードのモード情報に、intra_chroma_pred_mode(面内色差予測モード)を含めることが検討されている。intra_chroma_pred_modeは、色差予測モードに対応する符号(値)である。
復号過程において、符号列からこのモード情報が算術復号方法等の所定の可変長復号方式によって抽出される。そして、モード情報を用いて面内予測モードが導出される。あるいは、面内予測モードを導出するための情報が導出される。例えば、輝度予測モードは、0以上33以下の番号で表現され、34個のモードのいずれかである。また、例えば、色差予測モードは、0以上4以下の番号で表現され、5個のモードのいずれかである。
図1は、面内予測モードの符号化処理を示すフローチャートである。算術符号化時には、輝度予測モードは、binsとして二値化される(SB00)。そして、変数Nに1が代入される(SB01)。
そして、輝度予測モード用のコンテキストインデックスctxIdxに対応する確率値(より具体的には確率値を参照するためのインデックスpStateIdx)が取得される(SB02)。そして、取得された確率値に基づいて、N番目のビットの算術符号化が行われる(SB03)。符号化されたN番目のビットが0であるか1であるかに基づいて、ctxIdxに対応する確率値(pStateIdx)が更新される(SB04)。
全てのビットの符号化がまだ完了していなければ(SB06でNo)、Nに1が加算され(SB05)、次のビットが符号化される。
なお、輝度予測モード用のctxIdxは、予め定められたインデックスである。同種のNビットの信号の算術符号化には、同じctxIdxに対応する確率値(pStateIdx)が用いられる。より具体的には、1ビットを符号化する度に更新された確率値(pStateIdx)が、符号化に用いられる。全ての二値化ビットの符号化が終了した時点で(SB06でYes)、処理は終了する。
また、色差について、同様に、色差予測モードを示すintra_chroma_pred_modeが可変長のビットで取得される。intra_chroma_pred_modeの最初のビットは、上側および左側のブロックの状態によって導出されるctxIdxに対応する確率値(pStateIdx)に基づいて符号化される。以降のビットは、予め定められたctxIdxに対応する確率値(pStateIdx)に基づいて符号化される。また、最初のビットの符号化後、輝度と同様に、確率値が更新される。
次に、輝度予測モードおよび色差予測モードの可変長復号について、図2および図3を用いて説明する。
図2は、面内予測モード復号部の構成例を示すブロック図である。図3は、図2に示された面内予測モード復号部X00の動作を示すフローチャートである。
まず、輝度予測モード復号部X01は、ビットストリームBSを取得し、輝度予測モード用の確率値を取得する(SA01)。次に、輝度予測モード復号部X01は、取得された確率値を参照して、輝度予測モードのビットを復号する(SA02)。その後、輝度予測モード復号部X01は、復号されたビットが0であるか1であるかに基づいて確率値を更新する(SA03)。なお、算術復号の詳細については後述する。
復号されたビットが最後のビットでない、すなわち、復号されたビットがbin(バイナリ)の最後でない場合(SA04でNo)、輝度予測モード復号部X01は、再度、輝度予測モード用の確率値を取得する。一方、復号されたビットが最後のビットである場合、輝度予測モード復号部X01は、輝度予測モードの復号処理を終了し、色差予測モードの復号処理を開始する。なお、復号されたビットが最後のビットであるか否かは、予め定められたルール(非特許文献2に記載)によって判定される。
次に、色差予測モード復号部X02は、ビットストリームBSを取得し、色差予測モード用の確率値を取得する(SA05)。次に、色差予測モード復号部X02は、取得された確率値を参照して、色差予測モードを復号する(SA06)。その後、色差予測モード復号部X02は、復号されたビットが0であるか1であるかに基づいて、確率値を更新する(SA07)。
復号されたビットが最後のビットでない場合(SA08でNo)、色差予測モード復号部X02は、再度、色差予測モード用の確率値を取得する。一方、復号されたビットが最後のビットである場合、色差予測モード復号部X02は、色差予測モードの復号処理を終了する。なお、復号されたビットが最後のビットであるか否かは、輝度と同様に、予め定められたルール(非特許文献2に記載)によって判定される。
次に、輝度予測モードおよび色差予測モードの算術復号について説明する。H.264またはHEVCに係る技術の1つとして、コンテキスト適応算術符号化(CABAC:Context Adaptive Binary Arithmetic Coding)がある。輝度予測モードおよび色差予測モードの算術復号は、CABACに基づいて、実行される。このCABACについて、図4、図5および図6を用いて以下に説明する。
図4は、コンテキスト適応算術復号処理のフローを示す図である。なお、図4は、非特許文献1から抜粋された図であり、コンテキスト適応算術復号処理は、特に説明がない限り、非特許文献1に記載の通りである。
算術復号処理では、まず、信号種別に基づいて決められるコンテキストインデックスctxIdxが入力される。
次に、算術復号の状態を示す第1のパラメタcodIRangeからqCodIRangeIdxが導出される。そして、ctxIdxに対応した状態値であるpStateIdxが取得される。そして、qCodIRangeIdxおよびpStateIdxを用いてテーブルrangeTableLPSを参照することにより、codIRangeLPSが取得される。
なお、このcodIRangeLPSは、LPS(シンボル0および1のうち発生確率の低いシンボル)が発生した場合の算術復号の状態を示すcodIRangeに対応する値を示す。
また、codIRangeには、現在のcodIRangeから前述のcodIRangeLPSを引いた値が入れられる(SC01)。次に、算出したcodIRangeと、算術復号の状態を示す第2のパラメタcodIOffsetとが比較される(SC02)。
codIOffsetがcodIRangeに等しいかcodIRangeよりも大きい場合(SC02でYes)、LPSのシンボルが発生したと判定される。そして、復号出力値であるbinValに、valMPSとは異なる値がセットされる。すなわち、valMPS=1の場合、binValに0がセットされ、valMPS=0の場合、binValに1がセットされる。なお、valMPSは、シンボル0および1のうち発生確率の高いシンボルを示すMPSの具体的な値であり、0もしくは1である。
また、算術復号の状態を示す第2のパラメタcodIOffsetには、codIOffsetからcodIRangeを引いた値がセットされる。算術復号の状態を示す第1のパラメタcodIRangeには、算出されたcodIRangeLPSの値がセットされる(SC03)。
pStateIdxが0である場合(SC05でYes)、LPSの確率がMPSの確率を上回る。そのため、valMPSが入れ替えられる。つまり、valMPS=1の場合、valMPSに0が入れられ、valMPS=0の場合、valMPSに1が入れられる(SC06)。一方、pStateIdxが0でない場合(SC05でNo)、valMPSは維持される。そして、LPSが発生した場合に対応する変換テーブルtransIdxLPSに基づいて、pStateIdxが更新される(SC07)。
codIOffsetがcodIRangeよりも小さい場合(SC02でNo)、MPSのシンボルが発生したと判定される。そして、復号出力値であるbinValに、valMPSがセットされる。また、MPSが発生した場合に対応する変換テーブルtransIdxMPSに基づいて、pStateIdxが更新される(SC04)。
最後に、正規化処理(RenormD)が行われる(SC08)。そして、算術復号が終了する。
コンテキスト適応算術復号処理では、二値シンボルの発生確率であるシンボル発生確率に対応するコンテキストインデックスが、条件に応じて切替えられる。例えば、コンテキストインデックスは、隣接ブロックの値に応じて切替えられる。そのため、コンテキスト適応算術復号処理では、処理の順番が維持される。
図5は、バイパス算術復号処理(バイパス復号処理)のフローを示す図である。なお、図5は、非特許文献1から抜粋された図であり、バイパス算術復号処理は、特に説明がない限り、非特許文献1に記載の通りである。
まず、算術復号の状態を示す第2のパラメタcodIOffsetが左シフト(2倍)され、ビットストリームからビットが読出される。読出されたビットが1である場合、2倍されたcodIOffsetに1が加えられる。読出されたビットが0である場合、codIOffsetには、そのまま(2倍)の値がセットされる(SD01)。
次に、codIOffsetが、算術復号の状態を示す第1のパラメタcodIRangeに等しいかcodIRangeよりも大きい場合(SD02でYes)、復号出力値であるbinValに1がセットされる。そして、codIOffsetには、codIOffsetからcodIRangeを引いた値がセットされる(SD03)。一方、codIOffsetが、算術復号の状態を示す第1のパラメタcodIRangeよりも小さい場合(SD02でNo)、復号出力値であるbinValに0がセットされる(SD04)。
図6は、図4の正規化処理(RenormD、SC08)を詳しく説明するためのフローチャートである。図6は、非特許文献1から抜粋された図であり、正規化処理は、特に説明がない限り、非特許文献1に記載の通りである。
まず、算術復号の状態を示す第1のパラメタcodIRangeが16進における0x100(10進における256)よりも小さいか否かが判定される(SE01)。
そして、codIRangeが0x100よりも小さい場合(SE01でYes)、codIRangeが左シフト(2倍)される。また、算術復号の状態を示す第2のパラメタcodIOffsetが左シフト(2倍)される。そして、ビットストリームからビットが読出される。読出されたビットが1である場合、2倍されたcodIOffsetに1が加えられる。読出されたビットが0である場合、codIOffsetには、そのまま(2倍)の値がセットされる(SE02)。
上述の処理が繰り返され、最終的にcodIRangeが0x100以上になった段階で(SE01でNo)、正規化処理は終了する。
図4、図5および図6に示された処理を行うことにより、面内予測モードの算術復号が行われる。
しかしながら、面内予測モードの符号化および復号には、時間がかかる場合がある。例えば、34個の輝度予測モードおよび5個の色差予測モードから選択された輝度予測モードおよび色差予測モードを特定するための符号列は短くない。そのような符号列の復号には、比較的長い時間がかかる。そして、比較的長い時間がブロック毎に費やされることにより、全体として、遅延が顕著に発生する可能性がある。
そのため、面内予測モードの算術符号化および算術復号において、符号化効率を低下させず、処理の並列度を高めることができる画像符号化方法および画像復号方法は有益である。
そこで、本発明の一態様に係る画像符号化方法は、複数の面内予測モードを用いて画像を符号化する画像符号化方法であって、前記画像の符号化に用いられた第1の面内予測モードを示す第1の二値化データ、および、前記画像の符号化に用いられた第2の面内予測モードを示す第2の二値化データを符号化する符号化ステップを含み、前記符号化ステップでは、符号化済みデータに基づいて更新された変動確率を用いる算術符号化であるコンテキスト適応算術符号化によって、前記第1の二値化データの一部である第1のコンテキスト適応部分、および、前記第2の二値化データの一部である第2のコンテキスト適応部分を符号化し、予め定められた固定確率を用いる算術符号化であるバイパス符号化によって、前記第1の二値化データの他の一部である第1のバイパス部分、および、前記第2の二値化データの他の一部である第2のバイパス部分を符号化し、前記第1のコンテキスト適応部分および前記第2のコンテキスト適応部分を含み、前記第1のコンテキスト適応部分および前記第2のコンテキスト適応部分の後に前記第1のバイパス部分および前記第2のバイパス部分を含む符号化データを生成する。
これにより、バイパス復号が用いられる複数の部分が連続する符号化データが生成される。したがって、復号処理の並列度が上がる可能性がある。すなわち、面内予測モードが効率的に符号化される。
例えば、前記符号化ステップでは、前記画像の輝度の予測に用いられた前記第1の面内予測モードを示す前記第1の二値化データ、および、前記画像の色差の予測に用いられた前記第2の面内予測モードを示す前記第2の二値化データを符号化してもよい。
これにより、バイパス復号が用いられる複数の部分が輝度予測モードと色差予測モードとの組み合わせによって連続する符号化データが生成される。したがって、復号処理の並列度が上がる可能性がある。
また、例えば、前記符号化ステップでは、前記第1のコンテキスト適応部分、前記第2のコンテキスト適応部分、前記第2のバイパス部分および前記第1のバイパス部分の順で、前記第1のコンテキスト適応部分、前記第2のコンテキスト適応部分、前記第2のバイパス部分および前記第1のバイパス部分を含む前記符号化データを生成してもよい。
これにより、第2の面内予測モードを示す第2の二値化データが連続する符号化データが生成される。したがって、処理の複雑度が低減される。
また、例えば、前記符号化ステップでは、前記第2の二値化データが前記第2のバイパス部分を含まない場合、前記コンテキスト適応算術符号化によって、前記第2の二値化データの全てを前記第2のコンテキスト適応部分として符号化し、前記第2のバイパス部分を含まない前記符号化データを生成してもよい。
これにより、第2の面内予測モードを示す第2の二値化データに、バイパス符号化が用いられる部分が存在しない場合でも、第2の二値化データが適切に符号化される。
また、例えば、前記符号化ステップでは、前記画像に含まれる第1のブロックの輝度の予測に用いられた前記第1の面内予測モードを示す前記第1の二値化データ、および、前記画像に含まれる第2のブロックの輝度の予測に用いられた前記第2の面内予測モードを示す前記第2の二値化データを符号化してもよい。
これにより、バイパス復号が用いられる複数の部分が複数の輝度予測モードの組み合わせによって連続する符号化データが生成される。したがって、復号処理の並列度が上がる可能性がある。
また、例えば、前記符号化ステップでは、前記画像に含まれるブロックの色差の予測に用いられた前記第2の面内予測モードを示す前記第2の二値化データを符号化し、前記ブロックを構成する4つのサブブロックの輝度の予測に用いられた前記第1の面内予測モード、第3の面内予測モード、第4の面内予測モードおよび第5の面内予測モードをそれぞれ示す前記第1の二値化データ、第3の二値化データ、第4の二値化データおよび第5の二値化データを符号化し、前記第3の二値化データ、前記第4の二値化データおよび前記第5の二値化データを符号化する際、前記コンテキスト適応算術符号化によって、前記第3の二値化データの第3のコンテキスト適応部分、前記第4の二値化データの第4のコンテキスト適応部分、および、前記第5の二値化データの第5のコンテキスト適応部分を符号化し、前記バイパス符号化によって、前記第3の二値化データの第3のバイパス部分、前記第4の二値化データの第4のバイパス部分、および、前記第5の二値化データの第5のバイパス部分を符号化し、前記第1のコンテキスト適応部分、前記第3のコンテキスト適応部分、前記第4のコンテキスト適応部分、前記第5のコンテキスト適応部分、前記第2のコンテキスト適応部分、前記第2のバイパス部分、前記第1のバイパス部分、前記第3のバイパス部分、前記第4のバイパス部分および前記第5のバイパス部分の順で、前記第1のコンテキスト適応部分、前記第3のコンテキスト適応部分、前記第4のコンテキスト適応部分、前記第5のコンテキスト適応部分、前記第2のコンテキスト適応部分、前記第2のバイパス部分、前記第1のバイパス部分、前記第3のバイパス部分、前記第4のバイパス部分および前記第5のバイパス部分を含む前記符号化データを生成してもよい。
これにより、4つの輝度予測モードと1つの色差予測モードとがブロックの予測に用いられる場合でも、バイパス復号が用いられる複数の部分が連続する符号化データが生成される。したがって、復号処理の並列度が上がる可能性がある。
また、例えば、前記符号化ステップでは、前記第1のバイパス部分および前記第2のバイパス部分を並行して符号化してもよい。
これにより、バイパス符号化が用いられる複数の部分が並行して符号化される。したがって、複数の面内予測モードが効率的に符号化される。
また、例えば、前記符号化ステップでは、第1の規格に準拠する第1の符号化処理、または、第2の規格に準拠する第2の符号化処理に、符号化処理を切替え、切替えられた前記符号化処理が準拠する前記第1の規格または前記第2の規格を示す識別情報を含むビットストリームを生成し、前記符号化処理が前記第1の符号化処理に切替えられた場合、前記第1のコンテキスト適応部分および前記第2のコンテキスト適応部分の後に前記第1のバイパス部分および前記第2のバイパス部分を含む前記符号化データを生成し、前記識別情報と前記符号化データとを含む前記ビットストリームを生成してもよい。
これにより、符号化処理の形式が復号側に通知される。したがって、復号側で復号処理の適切な切替えが可能である。
また、本発明の一態様に係る画像復号方法は、複数の面内予測モードを用いて画像を復号する画像復号方法であって、前記画像の復号に用いられる第1の面内予測モードを示す第1の二値化データ、および、前記画像の復号に用いられる第2の面内予測モードを示す第2の二値化データを復号する復号ステップを含み、前記復号ステップでは、前記第1の二値化データの一部である第1のコンテキスト適応部分、および、前記第2の二値化データの一部である第2のコンテキスト適応部分を含み、前記第1のコンテキスト適応部分および前記第2のコンテキスト適応部分の後に、前記第1の二値化データの他の一部である第1のバイパス部分、および、前記第2の二値化データの他の一部である第2のバイパス部分を含む符号化データを取得し、復号済みデータに基づいて更新された変動確率を用いる算術復号であるコンテキスト適応算術復号によって、前記第1のコンテキスト適応部分および前記第2のコンテキスト適応部分を復号し、予め定められた固定確率を用いる算術復号であるバイパス復号によって、前記第1のバイパス部分および前記第2のバイパス部分を復号する画像復号方法でもよい。
これにより、バイパス復号が用いられる複数の部分が連続する符号化データが取得される。したがって、復号処理の並列度が上がる可能性がある。すなわち、面内予測モードが効率的に復号される。
例えば、前記復号ステップでは、前記画像の輝度の予測に用いられる前記第1の面内予測モードを示す前記第1の二値化データ、および、前記画像の色差の予測に用いられる前記第2の面内予測モードを示す前記第2の二値化データを復号してもよい。
これにより、バイパス復号が用いられる複数の部分が輝度の面内予測モードと色差の面内予測モードとの組み合わせによって連続する符号化データが取得される。したがって、復号処理の並列度が上がる可能性がある。
また、例えば、前記復号ステップでは、前記第1のコンテキスト適応部分、前記第2のコンテキスト適応部分、前記第2のバイパス部分および前記第1のバイパス部分の順で、前記第1のコンテキスト適応部分、前記第2のコンテキスト適応部分、前記第2のバイパス部分および前記第1のバイパス部分を含む前記符号化データを取得してもよい。
これにより、第2の面内予測モードを示す第2の二値化データが連続する符号化データが取得される。したがって、処理の複雑度が低減される。
また、例えば、前記復号ステップでは、取得された前記符号化データが前記第2のバイパス部分を含まない場合、前記コンテキスト適応算術復号によって、前記第2のコンテキスト適応部分を復号することにより、前記第2の二値化データの全てを復号してもよい。
これにより、第2の面内予測モードを示す第2の二値化データに、バイパス復号が用いられる部分が存在しない場合でも、第2の二値化データが適切に復号される。
また、例えば、前記復号ステップでは、前記画像に含まれる第1のブロックの輝度の予測に用いられる前記第1の面内予測モードを示す前記第1の二値化データ、および、前記画像に含まれる第2のブロックの輝度の予測に用いられる前記第2の面内予測モードを示す前記第2の二値化データを復号してもよい。
これにより、バイパス復号が用いられる複数の部分が複数の輝度予測モードの組み合わせによって連続する符号化データが取得される。したがって、復号処理の並列度が上がる可能性がある。
また、例えば、前記復号ステップでは、前記画像に含まれるブロックの色差の予測に用いられる前記第2の面内予測モードを示す前記第2の二値化データを復号し、前記ブロックを構成する4つのサブブロックの輝度の予測に用いられる前記第1の面内予測モード、第3の面内予測モード、第4の面内予測モードおよび第5の面内予測モードをそれぞれ示す前記第1の二値化データ、第3の二値化データ、第4の二値化データおよび第5の二値化データを復号し、前記第3の二値化データ、前記第4の二値化データおよび前記第5の二値化データを復号する際、前記コンテキスト適応算術復号によって、前記第3の二値化データの第3のコンテキスト適応部分、前記第4の二値化データの第4のコンテキスト適応部分、および、前記第5の二値化データの第5のコンテキスト適応部分を復号し、前記バイパス復号によって、前記第3の二値化データの第3のバイパス部分、前記第4の二値化データの第4のバイパス部分、および、前記第5の二値化データの第5のバイパス部分を復号し、前記符号化データを取得する際、前記第1のコンテキスト適応部分、前記第3のコンテキスト適応部分、前記第4のコンテキスト適応部分、前記第5のコンテキスト適応部分、前記第2のコンテキスト適応部分、前記第2のバイパス部分、前記第1のバイパス部分、前記第3のバイパス部分、前記第4のバイパス部分および前記第5のバイパス部分の順で、前記第1のコンテキスト適応部分、前記第3のコンテキスト適応部分、前記第4のコンテキスト適応部分、前記第5のコンテキスト適応部分、前記第2のコンテキスト適応部分、前記第2のバイパス部分、前記第1のバイパス部分、前記第3のバイパス部分、前記第4のバイパス部分および前記第5のバイパス部分を含む前記符号化データを取得してもよい。
これにより、4つの輝度予測モードと1つの色差予測モードとがブロックの予測に用いられる場合でも、バイパス復号が用いられる複数の部分が連続する符号化データが取得される。したがって、復号処理の並列度が上がる可能性がある。
また、例えば、前記復号ステップでは、前記第1のバイパス部分および前記第2のバイパス部分を並行して復号してもよい。
これにより、バイパス復号が用いられる複数の部分が並行して復号される。したがって、複数の面内予測モードが効率的に復号される。
また、例えば、前記復号ステップでは、第1の規格または第2の規格を示す識別情報を含むビットストリームを取得し、前記識別情報に基づいて、前記第1の規格に準拠する第1の復号処理、または、前記第2の規格に準拠する第2の復号処理に、復号処理を切替え、前記復号処理が前記第1の復号処理に切替えられた場合、前記ビットストリームから、前記第1のコンテキスト適応部分および前記第2のコンテキスト適応部分の後に前記第1のバイパス部分および前記第2のバイパス部分を含む前記符号化データを取得してもよい。
これにより、符号化側での符号化処理の形式に基づいて、復号処理の適切な切替えが可能である。
さらに、これらの全般的または具体的な態様は、装置、システム、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD−ROMなどの非一時的な記録媒体で実現されてもよく、装置、システム、方法、集積回路、コンピュータプログラムまたは記録媒体の任意の組み合わせで実現されてもよい。
以下、本発明の一態様に係る画像符号化方法および画像復号方法について、図面を参照しながら具体的に説明する。なお、以下で説明する実施の形態は、いずれも本発明の一具体例を示す。つまり、以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置および接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する趣旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
(実施の形態1)
図7は、実施の形態1に係る輝度および色差に対応する面内予測モードである輝度予測モードおよび色差予測モードの可変長復号を行う面内予測モード復号部の構成を示すブロック図である。
本実施の形態に係る面内予測モード復号部100は、輝度予測モードプリフィックス復号部101、輝度予測モードサフィックス復号部102、色差予測モードプリフィックス復号部103、色差予測モードサフィックス復号部104、輝度予測モード復元部105および色差予測モード復元部106で構成される。面内予測モード復号部100は、ビットストリームBSから、輝度予測モードLUMAおよび色差予測モードCRMを復元する。
本実施の形態の面内予測モード復号部100の動作について、図8を用いて詳しく説明する。図8は、面内予測モード復号部100の動作を示すフローチャートである。
面内予測モード復号部100は、ビットストリームBSを取得する。そして、輝度予測モードプリフィックス復号部101は、輝度予測モードのプリフィックス用の確率値を取得する(S201)。この確率値は、輝度予測モードのプリフィックス用に予め定められたコンテキストインデックスctxIdxで特定される。
次に、輝度予測モードプリフィックス復号部101は、取得された確率値を参照しながら輝度予測モードのプリフィックスのビットを復号する(S202)。その後、輝度予測モードプリフィックス復号部101は、復号されたビットが0であるか1であるかに基づいて確率値を更新する(S203)。なお、算術復号は、上述の方式でもよいし、効率向上のために改変された方式でもよい。
復号されたビットが最後のビットでない場合、すなわち、復号されたビットがbin(バイナリ)の最後でない場合(S204でNo)、輝度予測モードプリフィックス復号部101は、再度、輝度予測モードのプリフィックス用の確率値を取得する。一方、復号されたビットが最後のビットである場合、面内予測モード復号部100は、輝度予測モードのプリフィックスの復号処理を終了し、色差予測モードのプリフィックスの復号処理を開始する。
なお、復号されたビットが最後のビットであるか否かは、予め定められたルールによって判定される。例えば、復号されたビットが最後のビットであるか否かが、binの長さによって判定されてもよいし、binの値(0または1が復号されること等)によって判定されてもよい。binの長さが1である場合、処理が簡便化され、高速処理が期待される。判定にbinの値が用いられる場合、binの長さの効率的な制御が可能であるため、符号化効率の向上が期待される。
次に、色差予測モードプリフィックス復号部103は、ビットストリームBSを取得し、色差予測モードのプリフィックス用の確率値を取得する(S205)。この確率値は、色差予測モードのプリフィックス用に予め定められたコンテキストインデックスctxIdxで特定される。
次に、色差予測モードプリフィックス復号部103は、取得された確率値を参照しながら色差予測モードのプリフィックスのビットを復号する(S206)。その後、色差予測モードプリフィックス復号部103は、復号されたビットが0であるか1であるかに基づいて確率値を更新する(S207)。
復号されたビットが最後のビットでない場合、すなわち、復号されたビットがbin(バイナリ)の最後でない場合(S208でNo)、色差予測モードプリフィックス復号部103は、再度、色差予測モードのプリフィックス用の確率値を取得する。一方、復号されたビットが最後のビットである場合、面内予測モード復号部100は、色差予測モードのプリフィックスの復号処理を終了する。なお、復号されたビットが最後のビットであるか否かは、輝度の場合と同様に、予め定められたルールによって判定される。
次に、輝度予測モードサフィックス復号部102は、輝度予測モードのサフィックスの復号処理を行う(S209)。輝度予測モードのサフィックスの復号処理は、算術復号のバイパス処理に対応する。輝度予測モードのプリフィックスの復号処理では、確率が更新されるが、輝度予測モードのサフィックスの復号処理では、確率が更新されない。したがって、輝度予測モードのサフィックスに対して、高速処理および並列処理が可能である。
次に、色差予測モードサフィックス復号部104は、色差予測モードのサフィックスの復号処理を行う(S210)。色差予測モードのサフィックスの復号処理は、同様に、算術復号のバイパス処理に対応する。色差予測モードのプリフィックスの復号処理では、確率が更新されるが、色差予測モードのサフィックスの復号処理では、確率が更新されない。したがって、色差予測モードのサフィックスに対して、高速処理および並列処理が可能である。
最後に、輝度予測モード復元部105は、輝度予測モードのプリフィックス、および、輝度予測モードのサフィックスから、輝度予測モードLUMAを復元する。また、色差予測モード復元部106は、色差予測モードのプリフィックス、および、色差予測モードのサフィックスから、色差予測モードCRMを復元する。
なお、プリフィックスは、シンボルの発生頻度の偏りが大きい部分に対応する。そのため、コンテキスト適応算術符号化によってプリフィックスを符号化することで、符号化効率が向上する。そして、復号時には、コンテキスト適応算術復号(図4)が実行される。
一方、サフィックスは、大きいインデックス値に対応する部分として設計される。そのため、サフィックスの示す値の範囲は大きい。そして、サフィックスに対応する二値化符号列において、シンボルの発生頻度の偏りは小さい。そのため、シンボル発生確率は50%とみなされる。そして、バイパス符号化によって、処理量が削減される。そして、サフィックスの復号時には、バイパス復号(図5)が実行される。
また、図6に示すフローに従って、正規化処理は実行される。次に、図8で示した復号処理の動作例について図9を用いて説明する。
図9は、実施の形態1に係る動作を説明するための図である。図9の(a)は、複数の処理が順次実行される場合の例を示す。輝度予測モードのプリフィックスの復号処理(LUMA_PREFIX)、色差予測モードのプリフィックスの復号処理(CRM_PREFIX)、輝度予測モードのサフィックスの復号処理(LUMA_SUFFIX)、および、色差予測モードのサフィックスの復号処理(CRM_SUFFIX)の順で、これらの処理が行われる。
しかし、利用される画像解像度の拡大、および、高速度のリアルタイム通信が広まる中、高速化のため、処理が並列化される。しかし、プリフィックスの復号処理には、コンテキスト適応算術復号処理が用いられる。よって、シンボル発生確率の読み込み処理および更新処理が逐次的に行われる。したがって、プリフィックスの復号処理は、並列化されない。一方、サフィックスの復号処理の並列化は、図9の(b)に示すように、ビット単位で可能である。
図9の(c)および(d)は、輝度予測モードの次に色差予測モードが符号化されたビットストリームについて、各プリフィックスおよび各サフィックスを復号する場合の例を示す。図9の(c)は、図9の(a)に対応し、図9の(d)は、図9の(b)に対応する。
この場合も、同様に、プリフィックスは逐次的に処理される。また、図9の(b)のように、ビット単位でサフィックスの並列処理が可能である。しかし、輝度予測モードのサフィックスと色差予測モードのサフィックスとがまとめられていない。そのため、並列化可能な部分が途切れる。よって、並列度が、比較的低い。
図9の(c)および(d)における順序では、面内予測モードのプリフィックスを一時的に保存しなくても、面内予測モードの復元が可能であるという利点がある。しかし、図9の(a)および(b)における順序の方が、図9の(c)および(d)における順序よりも高速処理には向いている。
なお、実施の形態1に係る面内予測モード復号部100は、符号化画像データを復号する画像復号装置に備えられる。図10は、実施の形態1に係る画像復号装置の構成の一例を示すブロック図である。
図10に示された画像復号装置400は、符号化画像データを復号する。例えば、画像復号装置400には、符号化画像データがブロック毎に復号対象信号として入力される。画像復号装置400は、入力された復号対象信号に、可変長復号、逆量子化および逆変換を行うことで、画像データを復元する。
図10に示すように、画像復号装置400は、エントロピー復号部410と、逆量子化逆変換部420と、加算器425と、デブロッキングフィルタ430と、メモリ440と、イントラ予測部450と、動き補償部460と、イントラ/インター切替えスイッチ470とを備える。
エントロピー復号部410は、入力信号(入力ストリーム)を可変長復号することで、量子化係数を復元する。なお、ここで、入力信号(入力ストリーム)は、復号対象信号であり、符号化画像データのブロック毎のデータに相当する。また、エントロピー復号部410は、入力信号から動きデータを取得し、取得した動きデータを動き補償部460に出力する。
逆量子化逆変換部420は、エントロピー復号部410によって復元された量子化係数を逆量子化することで、変換係数を復元する。そして、逆量子化逆変換部420は、復元した変換係数を逆変換することで、予測誤差を復元する。
加算器425は、復元された予測誤差と予測信号とを加算することで、復号画像を生成する。
デブロッキングフィルタ430は、生成された復号画像にデブロッキングフィルタ処理を行う。デブロッキングフィルタ処理が施された復号画像は、復号信号として出力される。
メモリ440は、動き補償に用いられる参照画像を格納するためのメモリである。具体的には、メモリ440には、デブロッキングフィルタ処理が施された復号画像が格納される。
イントラ予測部450は、面内予測モードに従って、イントラ予測を行うことで、予測信号(イントラ予測信号)を生成する。具体的には、イントラ予測部450は、加算器425によって生成された復号画像における、復号対象ブロック(入力信号)の周囲の画像を参照してイントラ予測を行うことで、イントラ予測信号を生成する。
動き補償部460は、エントロピー復号部410から出力された動きデータに基づいて動き補償を行うことで、予測信号(インター予測信号)を生成する。
イントラ/インター切替えスイッチ470は、イントラ予測信号およびインター予測信号のいずれかを選択し、選択した信号を予測信号として加算器425に出力する。
以上の構成により、実施の形態1に係る画像復号装置400は、符号化画像データを復号する。
なお、画像復号装置400において、実施の形態1に係る面内予測モード復号部100は、エントロピー復号部410に含まれる。
以上のように、実施の形態1に係る画像復号装置および画像復号方法によれば、面内予測モードを高速に復元する。具体的には、実施の形態1に示したように、輝度予測モードのコンテキスト適応部分と色差予測モードのコンテキスト適応部分とが組み合わされ、輝度予測モードのバイパス部分と色差予測モードのバイパス部分とが組み合わされる。これにより、並列処理の可能な複数の部分が連続する。したがって、並列処理、すなわち、高速な復号が可能である。
なお、上記の説明では、主に輝度予測モードと色差予測モードとについてサフィックスの復号処理が示されているがこれに限らない。例えば、単純に、複数の輝度予測モードが、プリフィックスの復号処理とサフィックスの復号処理とに分けられ、複数の色差予測モードが、プリフィックスの復号処理とサフィックスの復号処理とに分けられてもよい。これによっても、一定の処理量削減の効果が見込まれる。
この場合、内部メモリを小さくすることが可能である。また、この場合も、バイパス処理が行われる複数の部分が連続して発生するため、高速処理の効果が期待される。
なお、面内予測モードの二値化列として、面内予測モードの発生頻度に基づいてハフマン符号(二値化列)が導出されてもよい。そして、面内予測モードとハフマン符号とを対応づけるテーブルが生成されてもよい。そして、ハフマン符号においてシンボルの発生確率が偏る部分が、プリフィックスとして選択されてもよい。このように二値化列およびプリフィックスを決めることで、並列度が上がり、復号処理がさらに高速化される。
また、本実施の形態では、輝度予測モードと色差予測モードとが組み合わされているが、輝度予測モードのrem_intra_luma_pred_modeと、色差予測モードのintra_chroma_pred_modeとが組み合わされてもよい。
(実施の形態1の変形例)
実施の形態1では、コンテキスト適応算術復号処理に対応するプリフィックスと、バイパス復号処理に対応するサフィックスとが、輝度予測モードおよび色差予測モードによらず分割される。これにより、処理が高速化される。また、実施の形態1は、次のように変形されてもよい。実施の形態1の変形例について、図11、図12、図13および図14を用いて詳しく説明する。
図11は、実施の形態1の変形例に係る面内予測モード復号部の構成の一例を示すブロック図である。図12は、実施の形態1の変形例に係る輝度予測モードおよび色差予測モードの組み合わせのインデックスJOINT_IDXと、そのインデックスに対応する二値化列との例を示す図である。図13は、図11に示された面内予測モード復号部500の処理を示すフローチャートである。
実施の形態1では、輝度予測モードおよび色差予測モードについて、別々の二値化列が用いられる。しかし、実施の形態1の変形例では、輝度予測モードおよび色差予測モードの組み合わせに対応するインデックスおよび二値化列により、さらに符号化効率が向上し、復号処理が高速化する。
例えば、図12に示すように、輝度予測モードおよび色差予測モードの組み合わせに対応するインデックスJOINT_IDXに対して、二値の符号(0または1)が割り当てられる。以下、輝度予測モードおよび色差予測モードの組み合わせをミックスモードとも呼ぶ。
組み合わせの発生頻度が高い場合に小さい値を示すインデックスJOINT_IDXが割り当てられ、組み合わせの発生頻度が低い場合に大きい値を示すインデックスJOINT_IDXが割り当てられる。
例えば、1番目のビット(bin0)のみがプリフィックスとして予め定められてもよい。または、1番目のビット(bin0)から6番目までのビット(bin5)までがプリフィックスとして予め定められてもよい。
実施の形態1では、輝度予測モードと色差予測モードとが別々の発生頻度に基づいて独立して処理されている。実施の形態1の変形例では、輝度予測モードと色差予測モードとの組み合わせにより符号化効率が向上し、バイパス部分が分割されないため、高速処理が可能である。
ミックスモードプリフィックス復号部501は、ミックスモードのプリフィックス用の確率値を取得する(S601)。この確率値は、ミックスモードのプリフィックス用に予め定められたコンテキストインデックスctxIdxで特定される。次に、取得された確率値を参照しながらミックスモードのプリフィックスのビットを復号する(S602)。その後、ミックスモードプリフィックス復号部501は、復号されたビットが0であるか1であるかに基づいて確率値を更新する(S603)。なお、算術復号は、上述の方式でもよいし、効率向上のために改変された方式でもよい。
復号されたビットが最後のビットでない場合、すなわち、復号されたビットがbin(バイナリ)の最後でない場合(S604でNo)、ミックスモードプリフィックス復号部501は、再度、ミックスモードのプリフィックス用の確率値を取得する。一方、復号されたビットが最後のビットである場合、面内予測モード復号部500は、ミックスモードのプリフィックスの復号処理を終了し、ミックスモードのサフィックスの復号処理を開始する。
なお、復号されたビットが最後のビットであるか否かは、図12に示されたbinの長さに基づいて判定されてよい。この場合、性能に対応する制御が可能であるため、符号化効率の向上が期待される。なお、プリフィックスの制御の一例として、プリフィックスが、予測ユニットの大きさ(ブロックの大きさ)によって変更されてもよい。例えば、大きいブロックの場合、処理時間に余裕があるため、プリフィックスが長くてよい。また、小さいブロックの場合、面内予測モードの数が少ないため、プリフィックスが短くてよい。
次に、ミックスモードサフィックス復号部502は、ビットストリームBSを取得し、ミックスモードのサフィックスの復号処理を行う。なお、ミックスモードのサフィックスの復号処理は、算術復号のバイパス処理に対応する。ミックスモードのプリフィックスの復号処理では、確率が更新されるが、ミックスモードのサフィックスの復号処理では、確率が更新されない。したがって、ミックスモードのサフィックスに対して、高速処理および並列処理が可能である。
具体的には、ミックスモードサフィックス復号部502は、ミックスモードのサフィックスのビットを復号する(S605)。ミックスモードサフィックス復号部502は、最後のビットまで、この処理を繰り返す(S606)。また、ミックスモードサフィックス復号部502は、ミックスモードのサフィックスの複数のビットを並列に復号してもよい。
その後、プリフィックスとサフィックスとで構成されるミックスモードに基づいて、輝度予測モード復元部503が輝度予測モードを復元し、色差予測モード復元部504が色差予測モードを復元する(S607)。
なお、図12に示す対応表は一例である。この例では、発生頻度が線形に増えることが想定されている。なお、これに限らず、例えば、Exp−Golombにより得られる二値化列が用いられてもよい。対応表は、発生頻度に基づいて定められてもよい。これにより、さらに、符号化効率が向上する。この変形例でも、高速処理が実現され、符号化効率が向上する。
また、図14は、データ構造の例を示す図面である。例えば、図14の順序でデータが構成されてもよい。なお、図14では、輝度予測モードのrem_intra_luma_pred_modeと、色差予測モードのintra_chroma_pred_modeとが組み合わされている。そして、図14では、ミックスモードが、Intra_combo_pred_modeとして含まれている。
(実施の形態2)
本実施の形態の算術符号化方法の概要について説明する。本実施の形態の算術符号化方法は、輝度予測モードと色差予測モードとを別々に符号化せずに、コンテキスト適応算術符号化に対応するプリフィックスと、バイパス符号化に対応するサフィックスとを別々に符号化することを特徴とする。これにより、並列度が上がり、処理が全体として高速化される。
以上が、本実施の形態の算術符号化方法の概要についての説明である。特に説明されていない構成および処理には、非特許文献1および非特許文献2に記載の構成および処理が用いられてもよい。次に、本実施の形態の面内予測モード符号化の処理の流れについて説明する。
図15は、実施の形態2に係る面内予測モード符号化部の処理を示すフローチャートである。面内予測モード符号化部は、まず、輝度予測モードを取得し、輝度予測モードを示す二値化データのプリフィックス用の確率値を取得する(S701)。なお、この確率値は、実施の形態1で説明された確率値と同様に、コンテキストインデックスに基づいて定められる。
次に、面内予測モード符号化部は、確率値を参照しながら輝度予測モードのプリフィックスのビットを算術符号化によって符号化する(S702)。次に、面内予測モード符号化部は、輝度予測モードのプリフィックス用の確率値を更新する(S703)。なお、算術符号化方法および確率更新方法は、非特許文献1または非特許文献2に記載の方法でもよい。符号(シンボル)の確率に基づいて符号(シンボル)を符号化するいずれの方法でも、効果が得られる。
符号化されたビットが最後のビットでない場合、すなわち、符号化されたビットがbinの最後でない場合(S704でNo)、面内予測モード符号化部は、次のビットを処理する。
符号化されたビットが最後のビットである場合(S704でYes)、面内予測モード符号化部は、色差予測モードのプリフィックス用の確率値を取得する(S705)。そして、面内予測モード符号化部は、色差予測モードのプリフィックスのビットを算術符号化によって符号化する(S706)。そして、面内予測モード符号化部は、色差予測モードのプリフィックス用の確率値を更新する(S707)。
符号化されたビットが最後のビットでない場合(S708でNo)、面内予測モード符号化部は、次のビットを処理する。
符号化されたビットが最後のビットである場合(S708でYes)、面内予測モード符号化部は、輝度予測モードのサフィックスのバイパス符号化(S709)、および、色差予測モードのサフィックスのバイパス符号化(S710)を実行する。
このバイパス符号化に、非特許文献1または非特許文献2に記載のバイパス符号化が用いられてもよい。なお、バイパス符号化は、確率を更新しない符号化である。本実施の形態に係るバイパス符号化は、非特許文献1または非特許文献2に記載のバイパス符号化とは異なる方法でもよい。そのような場合も、効果は損なわれない。
なお、符号化においても、実施の形態1で説明した図9の(a)〜(d)のように、処理の並列化が可能である。したがって、符号化処理の高速化が可能である。
また、実施の形態1の変形例に対応する符号化方法として、面内予測モード符号化部は、図12で示されたJOINT_IDXの二値化列を生成し、二値化列のプリフィックスおよびサフィックスを順に処理してもよい。この場合、面内予測モード符号化部は、コンテキスト適応算術符号化で、プリフィックスを符号化する。これにより、符号化効率が向上し、符号化処理が高速化する。
図16は、本実施の形態に係る画像符号化装置の構成を示すブロック図である。図16に示された画像符号化装置200は、減算器205と、変換量子化部210と、エントロピー符号化部220と、逆量子化逆変換部230と、加算器235と、デブロッキングフィルタ240と、メモリ250と、イントラ予測部260と、動き検出部270と、動き補償部280と、イントラ/インター切替えスイッチ290とを備える。
減算器205は、入力信号と予測信号との差分、すなわち、予測誤差を算出する。変換量子化部210は、空間領域の予測誤差を変換することで、周波数領域の変換係数を生成する。例えば、変換量子化部210は、予測誤差にDCT(Discrete Cosine Transform)変換を行うことで、変換係数を生成する。さらに、変換量子化部210は、変換係数を量子化することで、量子化係数を生成する。
エントロピー符号化部220は、量子化係数を可変長符号化することで、符号化信号を生成する。また、エントロピー符号化部220は、動き検出部270によって検出された動きデータ(例えば、動きベクトル)を符号化し、符号化信号に含めて出力する。
逆量子化逆変換部230は、量子化係数を逆量子化することで、変換係数を復元する。さらに、逆量子化逆変換部230は、復元した変換係数を逆変換することで、予測誤差を復元する。なお、復元された予測誤差は、量子化により情報が失われているので、減算器205が生成する予測誤差とは一致しない。すなわち、復元された予測誤差は、量子化誤差を含んでいる。
加算器235は、復元された予測誤差と予測信号とを加算することで、ローカル復号画像を生成する。デブロッキングフィルタ240は、生成されたローカル復号画像にデブロッキングフィルタ処理を行う。
メモリ250は、動き補償に用いられる参照画像を格納するためのメモリである。具体的には、メモリ250は、デブロッキングフィルタ処理が施されたローカル復号画像を格納する。
イントラ予測部260は、面内予測モードに従って、イントラ予測を行うことで、予測信号(イントラ予測信号)を生成する。具体的には、イントラ予測部260は、加算器235によって生成されたローカル復号画像における、符号化対象ブロック(入力信号)の周囲の画像を参照してイントラ予測を行うことで、イントラ予測信号を生成する。
動き検出部270は、入力信号と、メモリ250に格納された参照画像との間の動きデータ(例えば、動きベクトル)を検出する。動き補償部280は、検出された動きデータに基づいて動き補償を行うことで、予測信号(インター予測信号)を生成する。
イントラ/インター切替えスイッチ290は、イントラ予測信号およびインター予測信号のいずれかを選択し、選択した信号を予測信号として減算器205および加算器235に出力する。
以上の構成により、実施の形態2に係る画像符号化装置200は、画像データを符号化する。なお、画像符号化装置200において、実施の形態2に係る面内予測モード符号化部は、例えば、エントロピー符号化部220に含まれる。
(実施の形態3)
本実施の形態では、実施の形態1、実施の形態1の変形例または実施の形態2に含まれる特徴的な構成および手順が確認的に示される。本実施の形態に係る構成および手順は、実施の形態1、実施の形態1の変形例または実施の形態2で示された構成および手順に対応する。すなわち、実施の形態1、実施の形態1の変形例および実施の形態2で示された概念は、本実施の形態に係る構成および手順を含む。
図17は、実施の形態3に係る画像符号化装置の構成の一例を示すブロック図である。図17に示された画像符号化装置800は、複数の面内予測モードを用いて画像を符号化する。また、画像符号化装置800は、符号化部801を含む。
図18は、図17に示された画像符号化装置800の処理を示すフローチャートである。符号化部801は、画像の符号化に用いられた第1の面内予測モードを示す第1の二値化データ、および、画像の符号化に用いられた第2の面内予測モードを示す第2の二値化データを符号化する(S801)。
この時、符号化部801は、コンテキスト適応算術符号化によって、第1のコンテキスト適応部分および第2のコンテキスト適応部分を符号化する。また、符号化部801は、バイパス符号化によって、第1のバイパス部分および第2のバイパス部分を符号化する。そして、符号化部801は、第1のコンテキスト適応部分、第2のコンテキスト適応部分、第1のバイパス部分および第2のバイパス部分を含む符号化データを生成する。
コンテキスト適応算術符号化は、符号化済みデータに基づいて更新された変動確率を用いる算術符号化である。バイパス符号化は、予め定められた固定確率を用いる算術符号化である。第1のコンテキスト適応部分は、第1の二値化データの一部である。第2のコンテキスト適応部分は、第2の二値化データの一部である。第1のバイパス部分は、第1の二値化データの他の一部である。第2のバイパス部分は、第2の二値化データの他の一部である。
符号化データは、第1のコンテキスト適応部分および第2のコンテキスト適応部分の後に第1のバイパス部分および第2のバイパス部分を含む。
これにより、バイパス復号が用いられる複数の部分が連続する符号化データが生成される。したがって、復号処理の並列度が上がる可能性がある。すなわち、面内予測モードが効率的に符号化される。
上述の構成において、例えば、第1の面内予測モードは、画像の輝度の予測に用いられた面内予測モードでもよい。また、第2の面内予測モードは、画像の色差の予測に用いられた面内予測モードでもよい。
また、例えば、符号化データは、第1のコンテキスト適応部分、第2のコンテキスト適応部分、第2のバイパス部分および第1のバイパス部分の順で、第1のコンテキスト適応部分、第2のコンテキスト適応部分、第2のバイパス部分および第1のバイパス部分を含んでもよい。
また、例えば、第2の二値化データが第2のバイパス部分を含まない場合、符号化部801は、コンテキスト適応算術符号化によって、第2の二値化データの全てを第2のコンテキスト適応部分として符号化してもよい。そして、符号化部801は、第2のバイパス部分を含まない符号化データを生成してもよい。
また、例えば、第1の面内予測モードは、画像に含まれる第1のブロックの輝度の予測に用いられた面内予測モードでもよい。第2の面内予測モードは、画像に含まれる第2のブロックの輝度の予測に用いられた面内予測モードでもよい。
また、例えば、符号化部801は、第1、第2、第3、第4および第5の面内予測モードをそれぞれ示す第1、第2、第3、第4および第5の二値化データを符号化してもよい。第2の面内予測モードは、画像に含まれるブロックの色差の予測に用いられた面内予測モードでもよい。第1、第3、第4および第5の面内予測モードは、ブロックを構成する4つのサブブロックの輝度の予測に用いられた4つの面内予測モードでもよい。
そして、符号化部801は、コンテキスト適応算術符号化によって、第1、第2、第3、第4および第5のコンテキスト適応部分を符号化してもよい。また、符号化部801は、バイパス符号化によって、第1、第2、第3、第4および第5のバイパス部分を符号化してもよい。
第1、第2、第3、第4および第5のコンテキスト適応部分は、それぞれ、第1、第2、第3、第4および第5の二値化データの一部である。第1、第2、第3、第4および第5のバイパス部分は、それぞれ、第1、第2、第3、第4および第5の二値化データの他の一部である。
この場合、生成される符号化データは、第1のコンテキスト適応部分、第3のコンテキスト適応部分、第4のコンテキスト適応部分、第5のコンテキスト適応部分、第2のコンテキスト適応部分、第2のバイパス部分、第1のバイパス部分、第3のバイパス部分、第4のバイパス部分および第5のバイパス部分の順で、第1のコンテキスト適応部分、第3のコンテキスト適応部分、第4のコンテキスト適応部分、第5のコンテキスト適応部分、第2のコンテキスト適応部分、第2のバイパス部分、第1のバイパス部分、第3のバイパス部分、第4のバイパス部分および第5のバイパス部分を含んでもよい。
また、例えば、符号化部801は、第1のバイパス部分および第2のバイパス部分を並行して符号化してもよい。
また、例えば、符号化部801は、第1の規格に準拠する第1の符号化処理、または、第2の規格に準拠する第2の符号化処理に、符号化処理を切替えてもよい。そして、符号化部801は、切替えられた符号化処理が準拠する第1の規格または第2の規格を示す識別情報を含むビットストリームを生成してもよい。
そして、符号化処理が第1の符号化処理に切替えられた場合、符号化部801は、第1のコンテキスト適応部分および第2のコンテキスト適応部分の後に第1のバイパス部分および第2のバイパス部分を含む符号化データを生成してもよい。また、この場合、符号化部801は、識別情報と符号化データとを含むビットストリームを生成してもよい。
図19は、実施の形態3に係る画像復号装置の構成の一例を示すブロック図である。図19に示された画像復号装置900は、複数の面内予測モードを用いて画像を復号する。また、画像復号装置900は、復号部901を含む。
図20は、図19に示された画像復号装置900の処理を示すフローチャートである。復号部901は、画像の復号に用いられる第1の面内予測モードを示す第1の二値化データ、および、画像の復号に用いられる第2の面内予測モードを示す第2の二値化データを復号する(S901)。
この時、復号部901は、第1のコンテキスト適応部分、第2のコンテキスト適応部分、第1のバイパス部分および第2のバイパス部分を含む符号化データを取得する。そして、復号部901は、コンテキスト適応算術復号によって、第1のコンテキスト適応部分および第2のコンテキスト適応部分を復号する。また、バイパス復号によって、第1のバイパス部分および第2のバイパス部分を復号する。
コンテキスト適応算術復号は、復号済みデータに基づいて更新された変動確率を用いる算術復号である。バイパス復号は、予め定められた固定確率を用いる算術復号である。第1のコンテキスト適応部分は、第1の二値化データの一部である。第2のコンテキスト適応部分は、第2の二値化データの一部である。第1のバイパス部分は、第1の二値化データの他の一部である。第2のバイパス部分は、第2の二値化データの他の一部である。
符号化データは、第1のコンテキスト適応部分および第2のコンテキスト適応部分の後に、第1のバイパス部分および第2のバイパス部分を含む。
これにより、バイパス復号が用いられる複数の部分が連続する符号化データが取得される。したがって、復号処理の並列度が上がる可能性がある。すなわち、面内予測モードが効率的に復号される。
上述の構成において、例えば、第1の面内予測モードは、画像の輝度の予測に用いられる面内予測モードでもよい。また、第2の面内予測モードは、画像の色差の予測に用いられる面内予測モードでもよい。
また、例えば、符号化データは、第1のコンテキスト適応部分、第2のコンテキスト適応部分、第2のバイパス部分および第1のバイパス部分の順で、第1のコンテキスト適応部分、第2のコンテキスト適応部分、第2のバイパス部分および第1のバイパス部分を含んでもよい。
また、例えば、取得された符号化データが第2のバイパス部分を含まない場合、復号部901は、コンテキスト適応算術復号によって、第2のコンテキスト適応部分を復号することにより、第2の二値化データの全てを復号してもよい。
また、例えば、第1の面内予測モードは、画像に含まれる第1のブロックの輝度の予測に用いられる面内予測モードでもよい。第2の面内予測モードは、画像に含まれる第2のブロックの輝度の予測に用いられる面内予測モードでもよい。
また、例えば、復号部901は、第1、第2、第3、第4および第5の面内予測モードをそれぞれ示す第1、第2、第3、第4および第5の二値化データを復号してもよい。第2の面内予測モードは、画像に含まれるブロックの色差の予測に用いられる面内予測モードでもよい。第1、第3、第4および第5の面内予測モードは、ブロックを構成する4つのサブブロックの輝度の予測に用いられる4つの面内予測モードでもよい。
そして、復号部901は、コンテキスト適応算術復号によって、第1、第2、第3、第4および第5のコンテキスト適応部分を復号してもよい。また、復号部901は、バイパス復号によって、第1、第2、第3、第4および第5のバイパス部分を復号してもよい。
第1、第2、第3、第4および第5のコンテキスト適応部分は、それぞれ、第1、第2、第3、第4および第5の二値化データの一部である。第1、第2、第3、第4および第5のバイパス部分は、それぞれ、第1、第2、第3、第4および第5の二値化データの他の一部である。
この場合、取得される符号化データは、第1のコンテキスト適応部分、第3のコンテキスト適応部分、第4のコンテキスト適応部分、第5のコンテキスト適応部分、第2のコンテキスト適応部分、第2のバイパス部分、第1のバイパス部分、第3のバイパス部分、第4のバイパス部分および第5のバイパス部分の順で、第1のコンテキスト適応部分、第3のコンテキスト適応部分、第4のコンテキスト適応部分、第5のコンテキスト適応部分、第2のコンテキスト適応部分、第2のバイパス部分、第1のバイパス部分、第3のバイパス部分、第4のバイパス部分および第5のバイパス部分を含んでもよい。
また、例えば、復号部901は、第1のバイパス部分および第2のバイパス部分を並行して復号してもよい。
また、例えば、復号部901は、第1の規格または第2の規格を示す識別情報を含むビットストリームを取得してもよい。そして、復号部901は、識別情報に基づいて、第1の規格に準拠する第1の復号処理、または、第2の規格に準拠する第2の復号処理に、復号処理を切替えてもよい。
そして、復号処理が第1の復号処理に切替えられた場合、復号部901は、ビットストリームから、第1のコンテキスト適応部分および第2のコンテキスト適応部分の後に第1のバイパス部分および第2のバイパス部分を含む符号列を取得してもよい。
また、例えば、画像符号化復号装置は、画像符号化装置800および画像復号装置900を備えてもよい。
本実施の形態の画像符号化装置800および画像復号装置900は、以下に示される例にも適用可能である。
図21は、実施の形態3に係るシンタックスの一例を示す図である。図21に示されたprev_intra_luma_pred_flag、mpm_idxおよびrem_intra_luma_pred_modeは、輝度予測モードを示す要素である。intra_chroma_pred_modeは、色差予測モードを示す要素である。
prev_intra_luma_pred_flagには、コンテキスト適応算術符号化が用いられる。mpm_idxおよびrem_intra_luma_pred_modeには、バイパス符号化が用いられる。intra_chroma_pred_modeには、コンテキスト適応算術符号化およびバイパス符号化が用いられる。
なお、符号化側でコンテキスト適応算術符号化が用いられるコンテキスト適応部分には、復号側でコンテキスト適応算術復号が用いられる。同様に、符号化側でバイパス符号化が用いられるバイパス部分には、復号側でバイパス復号が用いられる。
図22は、実施の形態3に係る輝度の算術符号化を示す図である。輝度予測モードの特定には、mpm_idxおよびrem_intra_luma_pred_modeのいずれかが用いられる。mpm_idxおよびrem_intra_luma_pred_modeのいずれを用いるかは、prev_intra_luma_pred_flagによって特定される。mpm_idxおよびrem_intra_luma_pred_modeは、輝度予測モードを特定するための番号、および、その二値化値に対応する。
図23は、実施の形態3に係る色差の算術符号化を示す図である。色差予測モードの特定には、intra_chroma_pred_modeが用いられる。intra_chroma_pred_modeは、色差予測モードを特定するための番号、および、その二値化値に対応する。二値化値の1番目のビットには、コンテキスト適応算術符号化が用いられる。二値化値の2番目以降のビットには、バイパス符号化が用いられる。2番目以降のビットが存在しない場合、バイパス符号化は用いられない。
図24は、実施の形態3に係る画像のブロックを示す図である。画像のブロックには、符号化ユニット(CU:Coding Unit)、予測ユニット(PU:Prediction Unit)および変換ユニット(TU:Transform Unit)と呼ばれるデータ領域単位がある。符号化ユニットは、64x64画素、32x32画素、16x16画素または8x8画素である。最小の符号化ユニットのサイズは、現在、8x8画素である。すなわち、最小の符号化ユニットのサイズを示すlog2MinCUsizeは3である。
面内予測の場合、予測ユニットのサイズは、基本的に、符号化ユニットのサイズに一致する。最小のサイズ(8x8画素)よりも大きい符号化ユニットを4つの予測ユニットに分割することは認められていない。最小のサイズの符号化ユニットを4つの予測ユニットに分割することは認められている。すなわち、8x8画素の符号化ユニットにおいて、4つの予測ユニットが含まれる場合がある。
符号化ユニットのサイズに一致する予測ユニットの種別(PU_TYPE)は、2Nx2Nと呼ばれる。4分割により得られる予測ユニットの種別は、NxNと呼ばれる。
図24は、符号化ユニット1000に、予測ユニット1001、予測ユニット1002、予測ユニット1003および予測ユニット1004が含まれている例を示す。この場合、符号化ユニット1000に対して、色差の面内予測が実行される。そして、予測ユニット1001、予測ユニット1002、予測ユニット1003および予測ユニット1004のそれぞれに対して、輝度の面内予測が実行される。したがって、符号化ユニット1000に対して、1つの色差予測モードと、4つの輝度予測モードとが用いられる。
図25は、実施の形態3に係るシンタックスの第1の変形例を示す図である。図24の場合、図21に示されたシンタックスは、図25のように変形される。図25の場合、コンテキスト適応算術符号化と、バイパス符号化とが、交互に実行される。したがって、並列度を上げることは難しい。
図26は、実施の形態3に係るシンタックスの第2の変形例を示す図である。並列度を上げるため、図25に示されたシンタックスは、図26のように変形される。図26では、prev_intra_luma_pred_flagが4回繰り返された後に、mpm_idxまたはrem_intra_pred_modeが4回繰り返される。
これにより、コンテキスト適応算術符号化が実行される複数のコンテキスト適応部分と、バイパス符号化が実行される複数のバイパス部分とが、それぞれ分けてまとめられる。したがって、並列度が上がる。
図27は、実施の形態3に係るシンタックスの第3の変形例を示す図である。図27では、intra_chroma_pred_modeがprev_intra_luma_pred_flagの次に配置される。これにより、輝度予測モードおよび色差予測モードの全体において、コンテキスト適応算術符号化が実行される複数のコンテキスト適応部分と、バイパス符号化が実行される複数のバイパス部分とが、それぞれ分けてまとめられる。したがって、並列度が改善される。
また、intra_chroma_pred_modeのコンテキスト適応部分と、intra_chroma_pred_modeのバイパス部分とが連続するため、複雑度の増加が抑制される。
なお、図27において、prev_intra_luma_pred_flagは、4回繰り返されてもよいし、繰り返されなくてもよい。同様に、mpm_idxまたはrem_intra_pred_modeは、4回繰り返されてもよいし、繰り返されなくてもよい。すなわち、図27の例は、符号化ユニットが4つの予測ユニットに分割される場合にも分割されない場合にも、適用可能である。いずれにしても、複数のバイパス部分がまとめられるため、並列度が改善される。
また、符号化ユニットが4つの予測ユニットに分割される場合、図25、図26および図27に示される各要素は、左上の予測ユニット1001の要素として、符号化データに含まれてもよい。
上記各実施の形態に示された画像符号化方法および画像復号方法では、複数の面内予測モードが組み合わされることにより、並列度が改善される。したがって、画像が、効率的に符号化され、効率的に復号される。
上記各実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。ここで、上記各実施の形態の画像符号化装置および画像復号方法などを実現するソフトウェアは、次のようなプログラムである。
すなわち、このプログラムは、コンピュータに、複数の面内予測モードを用いて画像を符号化する画像符号化方法であって、前記画像の符号化に用いられた第1の面内予測モードを示す第1の二値化データ、および、前記画像の符号化に用いられた第2の面内予測モードを示す第2の二値化データを符号化する符号化ステップを含み、前記符号化ステップでは、符号化済みデータに基づいて更新された変動確率を用いる算術符号化であるコンテキスト適応算術符号化によって、前記第1の二値化データの一部である第1のコンテキスト適応部分、および、前記第2の二値化データの一部である第2のコンテキスト適応部分を符号化し、予め定められた固定確率を用いる算術符号化であるバイパス符号化によって、前記第1の二値化データの他の一部である第1のバイパス部分、および、前記第2の二値化データの他の一部である第2のバイパス部分を符号化し、前記第1のコンテキスト適応部分および前記第2のコンテキスト適応部分を含み、前記第1のコンテキスト適応部分および前記第2のコンテキスト適応部分の後に前記第1のバイパス部分および前記第2のバイパス部分を含む符号化データを生成する画像符号化方法を実行させる。
また、このプログラムは、コンピュータに、複数の面内予測モードを用いて画像を復号する画像復号方法であって、前記画像の復号に用いられる第1の面内予測モードを示す第1の二値化データ、および、前記画像の復号に用いられる第2の面内予測モードを示す第2の二値化データを復号する復号ステップを含み、前記復号ステップでは、前記第1の二値化データの一部である第1のコンテキスト適応部分、および、前記第2の二値化データの一部である第2のコンテキスト適応部分を含み、前記第1のコンテキスト適応部分および前記第2のコンテキスト適応部分の後に、前記第1の二値化データの他の一部である第1のバイパス部分、および、前記第2の二値化データの他の一部である第2のバイパス部分を含む符号化データを取得し、復号済みデータに基づいて更新された変動確率を用いる算術復号であるコンテキスト適応算術復号によって、前記第1のコンテキスト適応部分および前記第2のコンテキスト適応部分を復号し、予め定められた固定確率を用いる算術復号であるバイパス復号によって、前記第1のバイパス部分および前記第2のバイパス部分を復号する画像復号方法を実行させてもよい。
以上、本発明の一つまたは複数の態様に係る画像符号化方法および画像復号方法について、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の1つまたは複数の態様の範囲内に含まれてもよい。
(実施の形態4)
上記各実施の形態で示した動画像符号化方法(画像符号化方法)または動画像復号化方法(画像復号方法)の構成を実現するためのプログラムを記憶メディアに記録することにより、上記各実施の形態で示した処理を独立したコンピュータシステムにおいて簡単に実施することが可能となる。記憶メディアは、磁気ディスク、光ディスク、光磁気ディスク、ICカード、半導体メモリ等、プログラムを記録できるものであればよい。
さらにここで、上記各実施の形態で示した動画像符号化方法(画像符号化方法)や動画像復号化方法(画像復号方法)の応用例とそれを用いたシステムを説明する。当該システムは、画像符号化方法を用いた画像符号化装置、及び画像復号方法を用いた画像復号装置からなる画像符号化復号装置を有することを特徴とする。システムにおける他の構成について、場合に応じて適切に変更することができる。
図28は、コンテンツ配信サービスを実現するコンテンツ供給システムex100の全体構成を示す図である。通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex106、ex107、ex108、ex109、ex110が設置されている。
このコンテンツ供給システムex100は、インターネットex101にインターネットサービスプロバイダex102および電話網ex104、および基地局ex106からex110を介して、コンピュータex111、PDA(Personal Digital Assistant)ex112、カメラex113、携帯電話ex114、ゲーム機ex115などの各機器が接続される。
しかし、コンテンツ供給システムex100は図28のような構成に限定されず、いずれかの要素を組合せて接続するようにしてもよい。また、固定無線局である基地局ex106からex110を介さずに、各機器が電話網ex104に直接接続されてもよい。また、各機器が近距離無線等を介して直接相互に接続されていてもよい。
カメラex113はデジタルビデオカメラ等の動画撮影が可能な機器であり、カメラex116はデジタルカメラ等の静止画撮影、動画撮影が可能な機器である。また、携帯電話ex114は、GSM(登録商標)(Global System for Mobile Communications)方式、CDMA(Code Division Multiple Access)方式、W−CDMA(Wideband-Code Division Multiple Access)方式、若しくはLTE(Long Term Evolution)方式、HSPA(High Speed Packet Access)の携帯電話機、またはPHS(Personal Handyphone System)等であり、いずれでも構わない。
コンテンツ供給システムex100では、カメラex113等が基地局ex109、電話網ex104を通じてストリーミングサーバex103に接続されることで、ライブ配信等が可能になる。ライブ配信では、ユーザがカメラex113を用いて撮影するコンテンツ(例えば、音楽ライブの映像等)に対して上記各実施の形態で説明したように符号化処理を行い(即ち、本発明の一態様に係る画像符号化装置として機能する)、ストリーミングサーバex103に送信する。一方、ストリーミングサーバex103は要求のあったクライアントに対して送信されたコンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号化することが可能な、コンピュータex111、PDAex112、カメラex113、携帯電話ex114、ゲーム機ex115等がある。配信されたデータを受信した各機器では、受信したデータを復号化処理して再生する(即ち、本発明の一態様に係る画像復号装置として機能する)。
なお、撮影したデータの符号化処理はカメラex113で行っても、データの送信処理をするストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。同様に配信されたデータの復号化処理はクライアントで行っても、ストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。また、カメラex113に限らず、カメラex116で撮影した静止画像および/または動画像データを、コンピュータex111を介してストリーミングサーバex103に送信してもよい。この場合の符号化処理はカメラex116、コンピュータex111、ストリーミングサーバex103のいずれで行ってもよいし、互いに分担して行ってもよい。
また、これら符号化・復号化処理は、一般的にコンピュータex111や各機器が有するLSIex500において処理する。LSIex500は、ワンチップであっても複数チップからなる構成であってもよい。なお、動画像符号化・復号化用のソフトウェアをコンピュータex111等で読み取り可能な何らかの記録メディア(CD−ROM、フレキシブルディスク、ハードディスクなど)に組み込み、そのソフトウェアを用いて符号化・復号化処理を行ってもよい。さらに、携帯電話ex114がカメラ付きである場合には、そのカメラで取得した動画データを送信してもよい。このときの動画データは携帯電話ex114が有するLSIex500で符号化処理されたデータである。
また、ストリーミングサーバex103は複数のサーバや複数のコンピュータであって、データを分散して処理したり記録したり配信するものであってもよい。
以上のようにして、コンテンツ供給システムex100では、符号化されたデータをクライアントが受信して再生することができる。このようにコンテンツ供給システムex100では、ユーザが送信した情報をリアルタイムでクライアントが受信して復号化し、再生することができ、特別な権利や設備を有さないユーザでも個人放送を実現できる。
なお、コンテンツ供給システムex100の例に限らず、図29に示すように、デジタル放送用システムex200にも、上記各実施の形態の少なくとも動画像符号化装置(画像符号化装置)または動画像復号化装置(画像復号装置)のいずれかを組み込むことができる。具体的には、放送局ex201では映像データに音楽データなどが多重化された多重化データが電波を介して通信または衛星ex202に伝送される。この映像データは上記各実施の形態で説明した動画像符号化方法により符号化されたデータである(即ち、本発明の一態様に係る画像符号化装置によって符号化されたデータである)。これを受けた放送衛星ex202は、放送用の電波を発信し、この電波を衛星放送の受信が可能な家庭のアンテナex204が受信する。受信した多重化データを、テレビ(受信機)ex300またはセットトップボックス(STB)ex217等の装置が復号化して再生する(即ち、本発明の一態様に係る画像復号装置として機能する)。
また、DVD、BD等の記録メディアex215に記録した多重化データを読み取り復号化する、または記録メディアex215に映像信号を符号化し、さらに場合によっては音楽信号と多重化して書き込むリーダ/レコーダex218にも上記各実施の形態で示した動画像復号化装置または動画像符号化装置を実装することが可能である。この場合、再生された映像信号はモニタex219に表示され、多重化データが記録された記録メディアex215により他の装置やシステムにおいて映像信号を再生することができる。また、ケーブルテレビ用のケーブルex203または衛星/地上波放送のアンテナex204に接続されたセットトップボックスex217内に動画像復号化装置を実装し、これをテレビのモニタex219で表示してもよい。このときセットトップボックスではなく、テレビ内に動画像復号化装置を組み込んでもよい。
図30は、上記各実施の形態で説明した動画像復号化方法および動画像符号化方法を用いたテレビ(受信機)ex300を示す図である。テレビex300は、上記放送を受信するアンテナex204またはケーブルex203等を介して映像データに音声データが多重化された多重化データを取得、または出力するチューナex301と、受信した多重化データを復調する、または外部に送信する多重化データに変調する変調/復調部ex302と、復調した多重化データを映像データと、音声データとに分離する、または信号処理部ex306で符号化された映像データ、音声データを多重化する多重/分離部ex303を備える。
また、テレビex300は、音声データ、映像データそれぞれを復号化する、またはそれぞれの情報を符号化する音声信号処理部ex304、映像信号処理部ex305(本発明の一態様に係る画像符号化装置または画像復号装置として機能する)を有する信号処理部ex306と、復号化した音声信号を出力するスピーカex307、復号化した映像信号を表示するディスプレイ等の表示部ex308を有する出力部ex309とを有する。さらに、テレビex300は、ユーザ操作の入力を受け付ける操作入力部ex312等を有するインタフェース部ex317を有する。さらに、テレビex300は、各部を統括的に制御する制御部ex310、各部に電力を供給する電源回路部ex311を有する。インタフェース部ex317は、操作入力部ex312以外に、リーダ/レコーダex218等の外部機器と接続されるブリッジex313、SDカード等の記録メディアex216を装着可能とするためのスロット部ex314、ハードディスク等の外部記録メディアと接続するためのドライバex315、電話網と接続するモデムex316等を有していてもよい。なお記録メディアex216は、格納する不揮発性/揮発性の半導体メモリ素子により電気的に情報の記録を可能としたものである。テレビex300の各部は同期バスを介して互いに接続されている。
まず、テレビex300がアンテナex204等により外部から取得した多重化データを復号化し、再生する構成について説明する。テレビex300は、リモートコントローラex220等からのユーザ操作を受け、CPU等を有する制御部ex310の制御に基づいて、変調/復調部ex302で復調した多重化データを多重/分離部ex303で分離する。さらにテレビex300は、分離した音声データを音声信号処理部ex304で復号化し、分離した映像データを映像信号処理部ex305で上記各実施の形態で説明した復号化方法を用いて復号化する。復号化した音声信号、映像信号は、それぞれ出力部ex309から外部に向けて出力される。出力する際には、音声信号と映像信号が同期して再生するよう、バッファex318、ex319等に一旦これらの信号を蓄積するとよい。また、テレビex300は、放送等からではなく、磁気/光ディスク、SDカード等の記録メディアex215、ex216から多重化データを読み出してもよい。次に、テレビex300が音声信号や映像信号を符号化し、外部に送信または記録メディア等に書き込む構成について説明する。テレビex300は、リモートコントローラex220等からのユーザ操作を受け、制御部ex310の制御に基づいて、音声信号処理部ex304で音声信号を符号化し、映像信号処理部ex305で映像信号を上記各実施の形態で説明した符号化方法を用いて符号化する。符号化した音声信号、映像信号は多重/分離部ex303で多重化され外部に出力される。多重化する際には、音声信号と映像信号が同期するように、バッファex320、ex321等に一旦これらの信号を蓄積するとよい。なお、バッファex318、ex319、ex320、ex321は図示しているように複数備えていてもよいし、1つ以上のバッファを共有する構成であってもよい。さらに、図示している以外に、例えば変調/復調部ex302や多重/分離部ex303の間等でもシステムのオーバフロー、アンダーフローを避ける緩衝材としてバッファにデータを蓄積することとしてもよい。
また、テレビex300は、放送等や記録メディア等から音声データ、映像データを取得する以外に、マイクやカメラのAV入力を受け付ける構成を備え、それらから取得したデータに対して符号化処理を行ってもよい。なお、ここではテレビex300は上記の符号化処理、多重化、および外部出力ができる構成として説明したが、これらの処理を行うことはできず、上記受信、復号化処理、外部出力のみが可能な構成であってもよい。
また、リーダ/レコーダex218で記録メディアから多重化データを読み出す、または書き込む場合には、上記復号化処理または符号化処理はテレビex300、リーダ/レコーダex218のいずれで行ってもよいし、テレビex300とリーダ/レコーダex218が互いに分担して行ってもよい。
一例として、光ディスクからデータの読み込みまたは書き込みをする場合の情報再生/記録部ex400の構成を図31に示す。情報再生/記録部ex400は、以下に説明する要素ex401、ex402、ex403、ex404、ex405、ex406、ex407を備える。光ヘッドex401は、光ディスクである記録メディアex215の記録面にレーザスポットを照射して情報を書き込み、記録メディアex215の記録面からの反射光を検出して情報を読み込む。変調記録部ex402は、光ヘッドex401に内蔵された半導体レーザを電気的に駆動し記録データに応じてレーザ光の変調を行う。再生復調部ex403は、光ヘッドex401に内蔵されたフォトディテクタにより記録面からの反射光を電気的に検出した再生信号を増幅し、記録メディアex215に記録された信号成分を分離して復調し、必要な情報を再生する。バッファex404は、記録メディアex215に記録するための情報および記録メディアex215から再生した情報を一時的に保持する。ディスクモータex405は記録メディアex215を回転させる。サーボ制御部ex406は、ディスクモータex405の回転駆動を制御しながら光ヘッドex401を所定の情報トラックに移動させ、レーザスポットの追従処理を行う。システム制御部ex407は、情報再生/記録部ex400全体の制御を行う。上記の読み出しや書き込みの処理はシステム制御部ex407が、バッファex404に保持された各種情報を利用し、また必要に応じて新たな情報の生成・追加を行うと共に、変調記録部ex402、再生復調部ex403、サーボ制御部ex406を協調動作させながら、光ヘッドex401を通して、情報の記録再生を行うことにより実現される。システム制御部ex407は例えばマイクロプロセッサで構成され、読み出し書き込みのプログラムを実行することでそれらの処理を実行する。
以上では、光ヘッドex401はレーザスポットを照射するとして説明したが、近接場光を用いてより高密度な記録を行う構成であってもよい。
図32に光ディスクである記録メディアex215の模式図を示す。記録メディアex215の記録面には案内溝(グルーブ)がスパイラル状に形成され、情報トラックex230には、予めグルーブの形状の変化によってディスク上の絶対位置を示す番地情報が記録されている。この番地情報はデータを記録する単位である記録ブロックex231の位置を特定するための情報を含み、記録や再生を行う装置において情報トラックex230を再生し番地情報を読み取ることで記録ブロックを特定することができる。また、記録メディアex215は、データ記録領域ex233、内周領域ex232、外周領域ex234を含んでいる。ユーザデータを記録するために用いる領域がデータ記録領域ex233であり、データ記録領域ex233より内周または外周に配置されている内周領域ex232と外周領域ex234は、ユーザデータの記録以外の特定用途に用いられる。情報再生/記録部ex400は、このような記録メディアex215のデータ記録領域ex233に対して、符号化された音声データ、映像データまたはそれらのデータを多重化した多重化データの読み書きを行う。
以上では、1層のDVD、BD等の光ディスクを例に挙げ説明したが、これらに限ったものではなく、多層構造であって表面以外にも記録可能な光ディスクであってもよい。また、ディスクの同じ場所にさまざまな異なる波長の色の光を用いて情報を記録したり、さまざまな角度から異なる情報の層を記録したりなど、多次元的な記録/再生を行う構造の光ディスクであってもよい。
また、デジタル放送用システムex200において、アンテナex205を有する車ex210で衛星ex202等からデータを受信し、車ex210が有するカーナビゲーションex211等の表示装置に動画を再生することも可能である。なお、カーナビゲーションex211の構成は例えば図30に示す構成のうち、GPS受信部を加えた構成が考えられ、同様なことがコンピュータex111や携帯電話ex114等でも考えられる。
図33Aは、上記実施の形態で説明した動画像復号化方法および動画像符号化方法を用いた携帯電話ex114を示す図である。携帯電話ex114は、基地局ex110との間で電波を送受信するためのアンテナex350、映像、静止画を撮ることが可能なカメラ部ex365、カメラ部ex365で撮像した映像、アンテナex350で受信した映像等が復号化されたデータを表示する液晶ディスプレイ等の表示部ex358を備える。携帯電話ex114は、さらに、操作キー部ex366を有する本体部、音声を出力するためのスピーカ等である音声出力部ex357、音声を入力するためのマイク等である音声入力部ex356、撮影した映像、静止画、録音した音声、または受信した映像、静止画、メール等の符号化されたデータもしくは復号化されたデータを保存するメモリ部ex367、又は同様にデータを保存する記録メディアとのインタフェース部であるスロット部ex364を備える。
さらに、携帯電話ex114の構成例について、図33Bを用いて説明する。携帯電話ex114は、表示部ex358及び操作キー部ex366を備えた本体部の各部を統括的に制御する主制御部ex360に対して、電源回路部ex361、操作入力制御部ex362、映像信号処理部ex355、カメラインタフェース部ex363、LCD(Liquid Crystal Display)制御部ex359、変調/復調部ex352、多重/分離部ex353、音声信号処理部ex354、スロット部ex364、メモリ部ex367がバスex370を介して互いに接続されている。
電源回路部ex361は、ユーザの操作により終話及び電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することにより携帯電話ex114を動作可能な状態に起動する。
携帯電話ex114は、CPU、ROM、RAM等を有する主制御部ex360の制御に基づいて、音声通話モード時に音声入力部ex356で収音した音声信号を音声信号処理部ex354でデジタル音声信号に変換し、これを変調/復調部ex352でスペクトラム拡散処理し、送信/受信部ex351でデジタルアナログ変換処理および周波数変換処理を施した後にアンテナex350を介して送信する。また携帯電話ex114は、音声通話モード時にアンテナex350を介して受信した受信データを増幅して周波数変換処理およびアナログデジタル変換処理を施し、変調/復調部ex352でスペクトラム逆拡散処理し、音声信号処理部ex354でアナログ音声信号に変換した後、これを音声出力部ex357から出力する。
さらにデータ通信モード時に電子メールを送信する場合、本体部の操作キー部ex366等の操作によって入力された電子メールのテキストデータは操作入力制御部ex362を介して主制御部ex360に送出される。主制御部ex360は、テキストデータを変調/復調部ex352でスペクトラム拡散処理をし、送信/受信部ex351でデジタルアナログ変換処理および周波数変換処理を施した後にアンテナex350を介して基地局ex110へ送信する。電子メールを受信する場合は、受信したデータに対してこのほぼ逆の処理が行われ、表示部ex358に出力される。
データ通信モード時に映像、静止画、または映像と音声を送信する場合、映像信号処理部ex355は、カメラ部ex365から供給された映像信号を上記各実施の形態で示した動画像符号化方法によって圧縮符号化し(即ち、本発明の一態様に係る画像符号化装置として機能する)、符号化された映像データを多重/分離部ex353に送出する。また、音声信号処理部ex354は、映像、静止画等をカメラ部ex365で撮像中に音声入力部ex356で収音した音声信号を符号化し、符号化された音声データを多重/分離部ex353に送出する。
多重/分離部ex353は、映像信号処理部ex355から供給された符号化された映像データと音声信号処理部ex354から供給された符号化された音声データを所定の方式で多重化し、その結果得られる多重化データを変調/復調部(変調/復調回路部)ex352でスペクトラム拡散処理をし、送信/受信部ex351でデジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex350を介して送信する。
データ通信モード時にホームページ等にリンクされた動画像ファイルのデータを受信する場合、または映像およびもしくは音声が添付された電子メールを受信する場合、アンテナex350を介して受信された多重化データを復号化するために、多重/分離部ex353は、多重化データを分離することにより映像データのビットストリームと音声データのビットストリームとに分け、同期バスex370を介して符号化された映像データを映像信号処理部ex355に供給するとともに、符号化された音声データを音声信号処理部ex354に供給する。映像信号処理部ex355は、上記各実施の形態で示した動画像符号化方法に対応した動画像復号化方法によって復号化することにより映像信号を復号し(即ち、本発明の一態様に係る画像復号装置として機能する)、LCD制御部ex359を介して表示部ex358から、例えばホームページにリンクされた動画像ファイルに含まれる映像、静止画が表示される。また音声信号処理部ex354は、音声信号を復号し、音声出力部ex357から音声が出力される。
また、上記携帯電話ex114等の端末は、テレビex300と同様に、符号化器・復号化器を両方持つ送受信型端末の他に、符号化器のみの送信端末、復号化器のみの受信端末という3通りの実装形式が考えられる。さらに、デジタル放送用システムex200において、映像データに音楽データなどが多重化された多重化データを受信、送信するとして説明したが、音声データ以外に映像に関連する文字データなどが多重化されたデータであってもよいし、多重化データではなく映像データ自体であってもよい。
このように、上記各実施の形態で示した動画像符号化方法あるいは動画像復号化方法を上述したいずれの機器・システムに用いることは可能であり、そうすることで、上記各実施の形態で説明した効果を得ることができる。
また、本発明はかかる上記実施の形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
(実施の形態5)
上記各実施の形態で示した動画像符号化方法または装置と、MPEG−2、MPEG4−AVC、VC−1など異なる規格に準拠した動画像符号化方法または装置とを、必要に応じて適宜切替えることにより、映像データを生成することも可能である。
ここで、それぞれ異なる規格に準拠する複数の映像データを生成した場合、復号する際に、それぞれの規格に対応した復号方法を選択する必要がある。しかしながら、復号する映像データが、どの規格に準拠するものであるか識別できないため、適切な復号方法を選択することができないという課題を生じる。
この課題を解決するために、映像データに音声データなどを多重化した多重化データは、映像データがどの規格に準拠するものであるかを示す識別情報を含む構成とする。上記各実施の形態で示す動画像符号化方法または装置によって生成された映像データを含む多重化データの具体的な構成を以下説明する。多重化データは、MPEG−2トランスポートストリーム形式のデジタルストリームである。
図34は、多重化データの構成を示す図である。図34に示すように多重化データは、ビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム(PG)、インタラクティブグラフィックスストリームのうち、1つ以上を多重化することで得られる。ビデオストリームは映画の主映像および副映像を、オーディオストリーム(IG)は映画の主音声部分とその主音声とミキシングする副音声を、プレゼンテーショングラフィックスストリームは、映画の字幕をそれぞれ示している。ここで主映像とは画面に表示される通常の映像を示し、副映像とは主映像の中に小さな画面で表示する映像のことである。また、インタラクティブグラフィックスストリームは、画面上にGUI部品を配置することにより作成される対話画面を示している。ビデオストリームは、上記各実施の形態で示した動画像符号化方法または装置、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠した動画像符号化方法または装置によって符号化されている。オーディオストリームは、ドルビーAC−3、Dolby Digital Plus、MLP、DTS、DTS−HD、または、リニアPCMのなどの方式で符号化されている。
多重化データに含まれる各ストリームはPIDによって識別される。例えば、映画の映像に利用するビデオストリームには0x1011が、オーディオストリームには0x1100から0x111Fまでが、プレゼンテーショングラフィックスには0x1200から0x121Fまでが、インタラクティブグラフィックスストリームには0x1400から0x141Fまでが、映画の副映像に利用するビデオストリームには0x1B00から0x1B1Fまで、主音声とミキシングする副音声に利用するオーディオストリームには0x1A00から0x1A1Fが、それぞれ割り当てられている。
図35は、多重化データがどのように多重化されるかを模式的に示す図である。まず、複数のビデオフレームからなるビデオストリームex235、複数のオーディオフレームからなるオーディオストリームex238を、それぞれPESパケット列ex236およびex239に変換し、TSパケットex237およびex240に変換する。同じくプレゼンテーショングラフィックスストリームex241およびインタラクティブグラフィックスex244のデータをそれぞれPESパケット列ex242およびex245に変換し、さらにTSパケットex243およびex246に変換する。多重化データex247はこれらのTSパケットを1本のストリームに多重化することで構成される。
図36は、PESパケット列に、ビデオストリームがどのように格納されるかをさらに詳しく示している。図36における第1段目はビデオストリームのビデオフレーム列を示す。第2段目は、PESパケット列を示す。図36の矢印yy1,yy2,yy3,yy4に示すように、ビデオストリームにおける複数のVideo Presentation UnitであるIピクチャ、Bピクチャ、Pピクチャは、ピクチャ毎に分割され、PESパケットのペイロードに格納される。各PESパケットはPESヘッダを持ち、PESヘッダには、ピクチャの表示時刻であるPTS(Presentation Time−Stamp)やピクチャの復号時刻であるDTS(Decoding Time−Stamp)が格納される。
図37は、多重化データに最終的に書き込まれるTSパケットの形式を示している。TSパケットは、ストリームを識別するPIDなどの情報を持つ4ByteのTSヘッダとデータを格納する184ByteのTSペイロードから構成される188Byte固定長のパケットであり、上記PESパケットは分割されTSペイロードに格納される。BD−ROMの場合、TSパケットには、4ByteのTP_Extra_Headerが付与され、192Byteのソースパケットを構成し、多重化データに書き込まれる。TP_Extra_HeaderにはATS(Arrival_Time_Stamp)などの情報が記載される。ATSは当該TSパケットのデコーダのPIDフィルタへの転送開始時刻を示す。多重化データには図37下段に示すようにソースパケットが並ぶこととなり、多重化データの先頭からインクリメントする番号はSPN(ソースパケットナンバー)と呼ばれる。
また、多重化データに含まれるTSパケットには、映像・音声・字幕などの各ストリーム以外にもPAT(Program Association Table)、PMT(Program Map Table)、PCR(Program Clock Reference)などがある。PATは多重化データ中に利用されるPMTのPIDが何であるかを示し、PAT自身のPIDは0で登録される。PMTは、多重化データ中に含まれる映像・音声・字幕などの各ストリームのPIDと各PIDに対応するストリームの属性情報を持ち、また多重化データに関する各種ディスクリプタを持つ。ディスクリプタには多重化データのコピーを許可・不許可を指示するコピーコントロール情報などがある。PCRは、ATSの時間軸であるATC(Arrival Time Clock)とPTS・DTSの時間軸であるSTC(System Time Clock)の同期を取るために、そのPCRパケットがデコーダに転送されるATSに対応するSTC時間の情報を持つ。
図38はPMTのデータ構造を詳しく説明する図である。PMTの先頭には、そのPMTに含まれるデータの長さなどを記したPMTヘッダが配置される。その後ろには、多重化データに関するディスクリプタが複数配置される。上記コピーコントロール情報などが、ディスクリプタとして記載される。ディスクリプタの後には、多重化データに含まれる各ストリームに関するストリーム情報が複数配置される。ストリーム情報は、ストリームの圧縮コーデックなどを識別するためストリームタイプ、ストリームのPID、ストリームの属性情報(フレームレート、アスペクト比など)が記載されたストリームディスクリプタから構成される。ストリームディスクリプタは多重化データに存在するストリームの数だけ存在する。
記録媒体などに記録する場合には、上記多重化データは、多重化データ情報ファイルと共に記録される。
多重化データ情報ファイルは、図39に示すように多重化データの管理情報であり、多重化データと1対1に対応し、多重化データ情報、ストリーム属性情報とエントリマップから構成される。
多重化データ情報は図39に示すようにシステムレート、再生開始時刻、再生終了時刻から構成されている。システムレートは多重化データの、後述するシステムターゲットデコーダのPIDフィルタへの最大転送レートを示す。多重化データ中に含まれるATSの間隔はシステムレート以下になるように設定されている。再生開始時刻は多重化データの先頭のビデオフレームのPTSであり、再生終了時刻は多重化データの終端のビデオフレームのPTSに1フレーム分の再生間隔を足したものが設定される。
ストリーム属性情報は図40に示すように、多重化データに含まれる各ストリームについての属性情報が、PID毎に登録される。属性情報はビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム、インタラクティブグラフィックスストリーム毎に異なる情報を持つ。ビデオストリーム属性情報は、そのビデオストリームがどのような圧縮コーデックで圧縮されたか、ビデオストリームを構成する個々のピクチャデータの解像度がどれだけであるか、アスペクト比はどれだけであるか、フレームレートはどれだけであるかなどの情報を持つ。オーディオストリーム属性情報は、そのオーディオストリームがどのような圧縮コーデックで圧縮されたか、そのオーディオストリームに含まれるチャンネル数は何であるか、何の言語に対応するか、サンプリング周波数がどれだけであるかなどの情報を持つ。これらの情報は、プレーヤが再生する前のデコーダの初期化などに利用される。
本実施の形態においては、上記多重化データのうち、PMTに含まれるストリームタイプを利用する。また、記録媒体に多重化データが記録されている場合には、多重化データ情報に含まれる、ビデオストリーム属性情報を利用する。具体的には、上記各実施の形態で示した動画像符号化方法または装置において、PMTに含まれるストリームタイプ、または、ビデオストリーム属性情報に対し、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示す固有の情報を設定するステップまたは手段を設ける。この構成により、上記各実施の形態で示した動画像符号化方法または装置によって生成した映像データと、他の規格に準拠する映像データとを識別することが可能になる。
また、本実施の形態における動画像復号化方法のステップを図41に示す。ステップexS100において、多重化データからPMTに含まれるストリームタイプ、または、多重化データ情報に含まれるビデオストリーム属性情報を取得する。次に、ステップexS101において、ストリームタイプ、または、ビデオストリーム属性情報が上記各実施の形態で示した動画像符号化方法または装置によって生成された多重化データであることを示しているか否かを判断する。そして、ストリームタイプ、または、ビデオストリーム属性情報が上記各実施の形態で示した動画像符号化方法または装置によって生成されたものであると判断された場合には、ステップexS102において、上記各実施の形態で示した動画像復号方法により復号を行う。また、ストリームタイプ、または、ビデオストリーム属性情報が、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠するものであることを示している場合には、ステップexS103において、従来の規格に準拠した動画像復号方法により復号を行う。
このように、ストリームタイプ、または、ビデオストリーム属性情報に新たな固有値を設定することにより、復号する際に、上記各実施の形態で示した動画像復号化方法または装置で復号可能であるかを判断することができる。従って、異なる規格に準拠する多重化データが入力された場合であっても、適切な復号化方法または装置を選択することができるため、エラーを生じることなく復号することが可能となる。また、本実施の形態で示した動画像符号化方法または装置、または、動画像復号方法または装置を、上述したいずれの機器・システムに用いることも可能である。
(実施の形態6)
上記各実施の形態で示した動画像符号化方法および装置、動画像復号化方法および装置は、典型的には集積回路であるLSIで実現される。一例として、図42に1チップ化されたLSIex500の構成を示す。LSIex500は、以下に説明する要素ex501、ex502、ex503、ex504、ex505、ex506、ex507、ex508、ex509を備え、各要素はバスex510を介して接続している。電源回路部ex505は電源がオン状態の場合に各部に対して電力を供給することで動作可能な状態に起動する。
例えば符号化処理を行う場合には、LSIex500は、CPUex502、メモリコントローラex503、ストリームコントローラex504、駆動周波数制御部ex512等を有する制御部ex501の制御に基づいて、AV I/Oex509によりマイクex117やカメラex113等からAV信号を入力する。入力されたAV信号は、一旦SDRAM等の外部のメモリex511に蓄積される。制御部ex501の制御に基づいて、蓄積したデータは処理量や処理速度に応じて適宜複数回に分けるなどされ信号処理部ex507に送られ、信号処理部ex507において音声信号の符号化および/または映像信号の符号化が行われる。ここで映像信号の符号化処理は上記各実施の形態で説明した符号化処理である。信号処理部ex507ではさらに、場合により符号化された音声データと符号化された映像データを多重化するなどの処理を行い、ストリームI/Oex506から外部に出力する。この出力された多重化データは、基地局ex107に向けて送信されたり、または記録メディアex215に書き込まれたりする。なお、多重化する際には同期するよう、一旦バッファex508にデータを蓄積するとよい。
なお、上記では、メモリex511がLSIex500の外部の構成として説明したが、LSIex500の内部に含まれる構成であってもよい。バッファex508も1つに限ったものではなく、複数のバッファを備えていてもよい。また、LSIex500は1チップ化されてもよいし、複数チップ化されてもよい。
また、上記では、制御部ex501が、CPUex502、メモリコントローラex503、ストリームコントローラex504、駆動周波数制御部ex512等を有するとしているが、制御部ex501の構成は、この構成に限らない。例えば、信号処理部ex507がさらにCPUを備える構成であってもよい。信号処理部ex507の内部にもCPUを設けることにより、処理速度をより向上させることが可能になる。また、他の例として、CPUex502が信号処理部ex507、または信号処理部ex507の一部である例えば音声信号処理部を備える構成であってもよい。このような場合には、制御部ex501は、信号処理部ex507、またはその一部を有するCPUex502を備える構成となる。
なお、ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
(実施の形態7)
上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データを復号する場合、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データを復号する場合に比べ、処理量が増加することが考えられる。そのため、LSIex500において、従来の規格に準拠する映像データを復号する際のCPUex502の駆動周波数よりも高い駆動周波数に設定する必要がある。しかし、駆動周波数を高くすると、消費電力が高くなるという課題が生じる。
この課題を解決するために、テレビex300、LSIex500などの動画像復号化装置は、映像データがどの規格に準拠するものであるかを識別し、規格に応じて駆動周波数を切替える構成とする。図43は、本実施の形態における構成ex800を示している。駆動周波数切替え部ex803は、映像データが、上記各実施の形態で示した動画像符号化方法または装置によって生成されたものである場合には、駆動周波数を高く設定する。そして、上記各実施の形態で示した動画像復号化方法を実行する復号処理部ex801に対し、映像データを復号するよう指示する。一方、映像データが、従来の規格に準拠する映像データである場合には、映像データが、上記各実施の形態で示した動画像符号化方法または装置によって生成されたものである場合に比べ、駆動周波数を低く設定する。そして、従来の規格に準拠する復号処理部ex802に対し、映像データを復号するよう指示する。
より具体的には、駆動周波数切替え部ex803は、図42のCPUex502と駆動周波数制御部ex512から構成される。また、上記各実施の形態で示した動画像復号化方法を実行する復号処理部ex801、および、従来の規格に準拠する復号処理部ex802は、図42の信号処理部ex507に該当する。CPUex502は、映像データがどの規格に準拠するものであるかを識別する。そして、CPUex502からの信号に基づいて、駆動周波数制御部ex512は、駆動周波数を設定する。また、CPUex502からの信号に基づいて、信号処理部ex507は、映像データの復号を行う。ここで、映像データの識別には、例えば、実施の形態5で記載した識別情報を利用することが考えられる。識別情報に関しては、実施の形態5で記載したものに限られず、映像データがどの規格に準拠するか識別できる情報であればよい。例えば、映像データがテレビに利用されるものであるか、ディスクに利用されるものであるかなどを識別する外部信号に基づいて、映像データがどの規格に準拠するものであるか識別可能である場合には、このような外部信号に基づいて識別してもよい。また、CPUex502における駆動周波数の選択は、例えば、図45のような映像データの規格と、駆動周波数とを対応付けたルックアップテーブルに基づいて行うことが考えられる。ルックアップテーブルを、バッファex508や、LSIの内部メモリに格納しておき、CPUex502がこのルックアップテーブルを参照することにより、駆動周波数を選択することが可能である。
図44は、本実施の形態の方法を実施するステップを示している。まず、ステップexS200では、信号処理部ex507において、多重化データから識別情報を取得する。次に、ステップexS201では、CPUex502において、識別情報に基づいて映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものであるか否かを識別する。映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものである場合には、ステップexS202において、駆動周波数を高く設定する信号を、CPUex502が駆動周波数制御部ex512に送る。そして、駆動周波数制御部ex512において、高い駆動周波数に設定される。一方、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合には、ステップexS203において、駆動周波数を低く設定する信号を、CPUex502が駆動周波数制御部ex512に送る。そして、駆動周波数制御部ex512において、映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものである場合に比べ、低い駆動周波数に設定される。
さらに、駆動周波数の切替えに連動して、LSIex500またはLSIex500を含む装置に与える電圧を変更することにより、省電力効果をより高めることが可能である。例えば、駆動周波数を低く設定する場合には、これに伴い、駆動周波数を高く設定している場合に比べ、LSIex500またはLSIex500を含む装置に与える電圧を低く設定することが考えられる。
また、駆動周波数の設定方法は、復号する際の処理量が大きい場合に、駆動周波数を高く設定し、復号する際の処理量が小さい場合に、駆動周波数を低く設定すればよく、上述した設定方法に限らない。例えば、MPEG4−AVC規格に準拠する映像データを復号する処理量の方が、上記各実施の形態で示した動画像符号化方法または装置により生成された映像データを復号する処理量よりも大きい場合には、駆動周波数の設定を上述した場合の逆にすることが考えられる。
さらに、駆動周波数の設定方法は、駆動周波数を低くする構成に限らない。例えば、識別情報が、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示している場合には、LSIex500またはLSIex500を含む装置に与える電圧を高く設定し、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合には、LSIex500またはLSIex500を含む装置に与える電圧を低く設定することも考えられる。また、他の例としては、識別情報が、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示している場合には、CPUex502の駆動を停止させることなく、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合には、処理に余裕があるため、CPUex502の駆動を一時停止させることも考えられる。識別情報が、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示している場合であっても、処理に余裕があれば、CPUex502の駆動を一時停止させることも考えられる。この場合は、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合に比べて、停止時間を短く設定することが考えられる。
このように、映像データが準拠する規格に応じて、駆動周波数を切替えることにより、省電力化を図ることが可能になる。また、電池を用いてLSIex500またはLSIex500を含む装置を駆動している場合には、省電力化に伴い、電池の寿命を長くすることが可能である。
(実施の形態8)
テレビや、携帯電話など、上述した機器・システムには、異なる規格に準拠する複数の映像データが入力される場合がある。このように、異なる規格に準拠する複数の映像データが入力された場合にも復号できるようにするために、LSIex500の信号処理部ex507が複数の規格に対応している必要がある。しかし、それぞれの規格に対応する信号処理部ex507を個別に用いると、LSIex500の回路規模が大きくなり、また、コストが増加するという課題が生じる。
この課題を解決するために、上記各実施の形態で示した動画像復号方法を実行するための復号処理部と、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する復号処理部とを一部共有化する構成とする。この構成例を図46Aのex900に示す。例えば、上記各実施の形態で示した動画像復号方法と、MPEG4−AVC規格に準拠する動画像復号方法とは、エントロピー符号化、逆量子化、デブロッキング・フィルタ、動き補償などの処理において処理内容が一部共通する。共通する処理内容については、MPEG4−AVC規格に対応する復号処理部ex902を共有し、MPEG4−AVC規格に対応しない、本発明の一態様に特有の他の処理内容については、専用の復号処理部ex901を用いるという構成が考えられる。特に、本発明の一態様は、エントロピー復号に特徴を有していることから、例えば、エントロピー復号については専用の復号処理部ex901を用い、それ以外の逆量子化、デブロッキング・フィルタ、動き補償のいずれか、または、全ての処理については、復号処理部を共有することが考えられる。復号処理部の共有化に関しては、共通する処理内容については、上記各実施の形態で示した動画像復号化方法を実行するための復号処理部を共有し、MPEG4−AVC規格に特有の処理内容については、専用の復号処理部を用いる構成であってもよい。
また、処理を一部共有化する他の例を図46Bのex1000に示す。この例では、本発明の一態様に特有の処理内容に対応した専用の復号処理部ex1001と、他の従来規格に特有の処理内容に対応した専用の復号処理部ex1002と、本発明の一態様に係る動画像復号方法と他の従来規格の動画像復号方法とに共通する処理内容に対応した共用の復号処理部ex1003とを用いる構成としている。ここで、専用の復号処理部ex1001、ex1002は、必ずしも本発明の一態様、または、他の従来規格に特有の処理内容に特化したものではなく、他の汎用処理を実行できるものであってもよい。また、本実施の形態の構成を、LSIex500で実装することも可能である。
このように、本発明の一態様に係る動画像復号方法と、従来の規格の動画像復号方法とで共通する処理内容について、復号処理部を共有することにより、LSIの回路規模を小さくし、かつ、コストを低減することが可能である。