【文献】
Viktor Wahadaniah, Chong Soon Lim,AHG14/AHG15/non-CE9: Loss robustness issue in TMVP disabling,Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 8th Meeting: San Jose, CA, USA, 1-10 February, 2012,2012年 1月27日,[JCTVC-H0570],URL,http://phenix.int-evry.fr/jct/
【文献】
Bin Li, et al.,High-level Syntax: Temporal Information Decoding Refresh,Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 6th Meeting: Torino, IT, 14-22 July, 2011,2011年 7月17日,[JCTVC-F201],URL,http://phenix.int-evry.fr/jct/
【文献】
Chong Soon Lim, et al.,High-level Syntax: Proposed fix on signaling of TMVP disabling flag,Joint Collaborative Team on Video Coding (JCT-VC)of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 9th Meeting: Geneva, CH, 27 April - 7 May 2012,2012年 4月28日,[JCTVC-I0420],URL,http://phenix.int-evry.fr/jct/
【文献】
Yue Yu, et al.,Modifications on signaling collocated picture,Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 9th Meeting: Geneva, CH, 27 April - 7 May 2012,2012年 5月 7日,[JCTVC-I0266],URL,http://phenix.it-sudparis.eu/jct/doc_end_user/documents/9_Geneva/wg11/JCTVC-I0266-v1.zip
(58)【調査した分野】(Int.Cl.,DB名)
符号化ビットストリームから、時間動きベクトル予測が用いられるか否かを示す時間動きベクトル予測フラグであって、第1ピクチャに時間動きベクトル予測が用いられないことを示す第1時間動きベクトル予測フラグを取得する取得ステップと、
前記第1ピクチャを時間動きベクトル予測を用いずに復号する第1復号ステップと、
前記第1ピクチャにより復号順が後の第2ピクチャを、前記第1ピクチャより復号順が前のピクチャの動きベクトルを参照することを禁止して復号する第2復号ステップとを含む
画像復号方法。
符号化ビットストリームから、時間動きベクトル予測が用いられるか否かを示す時間動きベクトル予測フラグであって、第1ピクチャに時間動きベクトル予測が用いられないことを示す第1時間動きベクトル予測フラグを取得する取得部と、
前記第1ピクチャを時間動きベクトル予測を用いずに復号し、前記第1ピクチャにより復号順が後の第2ピクチャを、前記第1ピクチャより復号順が前のピクチャの動きベクトルを参照することを禁止して復号する復号部とを備える
画像復号装置。
【発明を実施するための形態】
【0010】
(本発明の基礎となった知見)
本発明者は、従来の技術に関し、以下の問題が生じることを見出した。
【0011】
画像復号装置は、予測単位(M×Nのサンプルブロックなど)に対するインター予測処理に用いられた参照ピクチャを、参照インデックスを用いて特定する。参照インデックスとは、参照ピクチャリストに含まれる1以上の参照ピクチャに付けられるインデックスである。また、参照ピクチャリストは、1以上の参照ピクチャを示す順序付きリストである。また、参照インデックスは、復号ピクチャバッファ(DPB)内の参照ピクチャと一意的に関連付けられる。
【0012】
最先端の画像符号化方式では、動きベクトルの時間予測が行われる。対象サンプルブロックの動きベクトルは、コーロケーテッド(colocated)参照ピクチャに含まれる、以前に符号化された1以上のサンプルブロックの動きベクトルから予測される。このコーロケーテッド参照ピクチャは、所定の方式を用いて、利用可能な参照ピクチャの中から選択される。例えば、所定の参照ピクチャリスト(参照ピクチャリスト0など)に含まれる参照ピクチャのうち、1番目の参照ピクチャがコーロケーテッド参照ピクチャとして選択される。
【0013】
不可逆圧縮を用いた画像の伝送が必要なアプリケーションにおいて、コーロケーテッド参照ピクチャが失われたり、エラーを含んだりする場合、時間動きベクトル予測は、動きベクトルの誤った予測の影響を受けやすい。従来のHEVC画像符号化方式では、マーキングフラグをピクチャパラメータセット(PPS)に配置することで、復号ピクチャバッファ(DPB)に含まれる全ピクチャを「時間動きベクトル予測に不使用」としてマークする。このマーキング処理は、マーキングフラグが「TRUE」であるPPSをスライスが参照する際に行われる。
【0014】
この方式には、マーキング処理が行われるスライスが失われたりエラーを含んだりする場合に、意図したマーキング処理と、それに続くエンコーダとデコーダとの間の同期とをビデオデコーダが実行できないという課題があることを本発明者は見出した。そのため、時間動きベクトル予測を無効にする上記方式はロバスト性が低い。
【0015】
本実施の形態では、時間動きベクトル予測を無効にする画像符号化方法及び画像復号方法において、エラーロバスト性を向上させる方法を説明する。本実施の形態に係る画像符号化方法及び画像復号方法は、参照ピクチャを「時間動きベクトル予測に不使用」としてマークする処理を削除することができ、上記方式におけるエラーに対する脆弱性を取り除くことができる。本実施の形態の効果は、時間動きベクトル予測処理のエラーロバスト性が向上されることである。
【0016】
本実施の形態の一態様に係る画像符号化方法は、複数のピクチャから第1ピクチャを選択する選択ステップと、時間動きベクトル予測が用いられるか否かを示す時間動きベクトル予測フラグであって、前記第1ピクチャに対応付けられた第1時間動きベクトル予測フラグを時間動きベクトル予測が用いられないに設定し、当該第1時間動きベクトル予測フラグを符号化する第1設定ステップと、前記第1ピクチャを時間動きベクトル予測を用いずに符号化する第1符号化ステップと、前記第1ピクチャにより符号化順が後の第2ピクチャを、前記第1ピクチャより符号化順が前のピクチャの動きベクトルを参照することを禁止して符号化する第2符号化ステップとを含む。
【0017】
これによれば、第1ピクチャより後の第2ピクチャが、第1ピクチャより前のピクチャの動きベクトルを参照することが禁止される。これにより、当該画像符号化方法は、第1ピクチャを跨いでエラーが伝播することを防止できるので、ロバスト性を向上できる。
【0018】
例えば、複数のピクチャには時間レベルが設定されており、前記選択ステップでは、前記複数のピクチャのうち、最大の前記時間レベルを有するピクチャを前記第1ピクチャとして選択してもよい。
【0019】
これによれば、優先度の高いピクチャが第1ピクチャに設定される。これにより、エラーの伝播をより適切に防止できる。
【0020】
例えば、前記第2符号化ステップは、前記第2ピクチャが、前記第1ピクチャより符号化順序が前のコーロケーテッド参照ピクチャを有するか否かを判定する判定ステップと、前記第2ピクチャが、前記第1ピクチャより符号化順序が前のコーロケーテッド参照ピクチャを有する場合、(1)前記第2ピクチャに対応付けられた前記時間動きベクトル予測フラグである第2時間動きベクトル予測フラグを前記時間動きベクトル予測が用いられないに設定し、(2)当該第2時間動きベクトル予測フラグを符号化し、(3)当該第2ピクチャを時間動きベクトル予測を用いずに符号化する第2設定ステップと、前記第2ピクチャが、前記第1ピクチャより符号化順序が前のコーロケーテッド参照ピクチャを有さない場合、(1)前記第2時間動きベクトル予測フラグを、前記時間動きベクトル予測が用いられない、又は、前記時間動きベクトル予測が用いられるに設定し、(2)当該第2時間動きベクトル予測フラグを符号化し、(3)当該第2ピクチャを時間動きベクトル予測を用いて、又は用いずに符号化する第3設定ステップとを含んでもよい。
【0021】
例えば、前記第2符号化ステップは、前記第2ピクチャの表示順が前記第1ピクチャより前であるか否かを判定する第1判定ステップと、前記第2ピクチャが、前記第1ピクチャより符号化順序又は表示順が前のコーロケーテッド参照ピクチャを有するか否かを判定する第2判定ステップと、前記第2ピクチャの表示順が前記第1ピクチャより後であり、かつ、前記第2ピクチャが、前記第1ピクチャより符号化順序又は表示順が前のコーロケーテッド参照ピクチャを有する場合、(1)前記第2ピクチャに対応付けられた前記時間動きベクトル予測フラグである第2時間動きベクトル予測フラグを前記時間動きベクトル予測が用いられないに設定し、(2)当該第2時間動きベクトル予測フラグを符号化し、(3)当該第2ピクチャを時間動きベクトル予測を用いずに符号化する第2設定ステップと、(1)前記第2ピクチャの表示順が前記第1ピクチャより前である場合、又は、(2)前記第2ピクチャの表示順が前記第1ピクチャより後であり、かつ、前記第2ピクチャが、前記第1ピクチャより符号化順序又は表示順が前のコーロケーテッド参照ピクチャを有さない場合、(1)前記第2ピクチャに対応付けられた前記時間動きベクトル予測フラグである第2時間動きベクトル予測フラグを前記時間動きベクトル予測が用いられないに設定し、(2)当該第2時間動きベクトル予測フラグを符号化し、(3)当該第2ピクチャを時間動きベクトル予測を用いずに符号化する第3設定ステップとを含んでもよい。
【0022】
例えば、前記第1設定ステップでは、時間動きベクトル予測が用いられないことを示す前記第1時間動きベクトル予測フラグを、前記第1ピクチャに含まれる全てのスライスのヘッダに書き込んでもよい。
【0023】
これによれば、スライスごとに時間動きベクトル予測を用いるか否かを示すフラグを用いて、第1ピクチャを設定できる。これにより、符号化ビットストリームのデータ量の増加を抑制しつつ、ロバスト性の向上を実現できる。
【0024】
例えば、前記画像符号化方法は、さらに、前記時間動きベクトル予測フラグが時間動きベクトル予測が用いられると示す場合、コーロケーテッド参照ピクチャの動きベクトルから導出される時間動きベクトルの予測値を含む複数の動きベクトルの予測値を示す第1リストを作成する第1リスト生成ステップと、前記時間動きベクトル予測フラグで、時間動きベクトル予測が用いられないと示されている場合、前記時間動きベクトルの予測値を含まない複数の動きベクトルの予測値を示す第2リストを作成する第2リスト生成ステップとを含んでもよい。
【0025】
これによれば、時間動きベクトル予測が用いられない場合のデータ量を削減できる。
【0026】
また、本実施の形態の一態様に係る画像復号方法は、符号化ビットストリームから、時間動きベクトル予測が用いられるか否かを示す時間動きベクトル予測フラグであって、第1ピクチャに時間動きベクトル予測が用いられないことを示す第1時間動きベクトル予測フラグを取得する取得ステップと、前記第1ピクチャを時間動きベクトル予測を用いずに復号する第1復号ステップと、前記第1ピクチャにより復号順が後の第2ピクチャを、前記第1ピクチャより復号順が前のピクチャの動きベクトルを参照することを禁止して復号する第2復号ステップとを含む。
【0027】
これによれば、第1ピクチャより後の第2ピクチャが、第1ピクチャより前のピクチャの動きベクトルを参照することが禁止される。これにより、当該画像復号方法は、第1ピクチャを跨いでエラーが伝播することを防止できるので、ロバスト性を向上できる。
【0028】
例えば、複数のピクチャには時間レベルが設定されており、前記第1ピクチャは、前記複数のピクチャのうち、最大の前記時間レベルを有するピクチャであってもよい。
【0029】
これによれば、優先度の高いピクチャが第1ピクチャに設定される。これにより、エラーの伝播をより適切に防止できる。
【0030】
例えば、前記取得ステップでは、時間動きベクトル予測が用いられないことを示す前記第1時間動きベクトル予測フラグを、前記第1ピクチャに含まれる全てのスライスのヘッダから取得してもよい。
【0031】
これによれば、スライスごとに時間動きベクトル予測を用いるか否かを示すフラグを用いて、第1ピクチャを設定できる。これにより、符号化ビットストリームのデータ量の増加を抑制しつつ、ロバスト性の向上を実現できる。
【0032】
例えば、前記画像復号方法は、さらに、前記時間動きベクトル予測フラグで、時間動きベクトル予測が用いられると示されている場合、コーロケーテッド参照ピクチャの動きベクトルから導出される時間動きベクトルの予測値を含む複数の動きベクトルの予測値を示す第1リストを作成する第1リスト生成ステップと、前記時間動きベクトル予測フラグで、時間動きベクトル予測が用いられないと示されている場合、前記時間動きベクトルの予測値を含まない複数の動きベクトルの予測値を示す第2リストを作成する第2リスト生成ステップとを含んでもよい。
【0033】
これによれば、時間動きベクトル予測が用いられない場合のデータ量を削減できる。
【0034】
また、本実施の形態の一態様に係る画像符号化装置は、複数のピクチャから第1ピクチャを選択し、時間動きベクトル予測が用いられるか否かを示す時間動きベクトル予測フラグであって、前記第1ピクチャに対応付けられた第1時間動きベクトル予測フラグを時間動きベクトル予測が用いられないに設定する設定部と、前記第1時間動きベクトル予測フラグを符号化し、前記第1ピクチャを時間動きベクトル予測を用いずに符号化し、前記第1ピクチャにより符号化順が後の第2ピクチャを、前記第1ピクチャより符号化順が前のピクチャの動きベクトルを参照することを禁止して符号化する符号化部とを備える。
【0035】
この構成によれば、第1ピクチャより後の第2ピクチャが、第1ピクチャより前のピクチャの動きベクトルを参照することが禁止される。これにより、当該画像符号化装置は、第1ピクチャを跨いでエラーが伝播することを防止できるので、ロバスト性を向上できる。
【0036】
また、本実施の形態の一態様に係る画像復号装置は、符号化ビットストリームから、時間動きベクトル予測が用いられるか否かを示す時間動きベクトル予測フラグであって、第1ピクチャに時間動きベクトル予測が用いられないことを示す第1時間動きベクトル予測フラグを取得する取得部と、前記第1ピクチャを時間動きベクトル予測を用いずに復号し、前記第1ピクチャにより復号順が後の第2ピクチャを、前記第1ピクチャより復号順が前のピクチャの動きベクトルを参照することを禁止して復号する復号部とを備える。
【0037】
この構成によれば、第1ピクチャより後の第2ピクチャが、第1ピクチャより前のピクチャの動きベクトルを参照することが禁止される。これにより、当該画像復号装置は、第1ピクチャを跨いでエラーが伝播することを防止できるので、ロバスト性を向上できる。
【0038】
また、本実施の形態の一態様に係る画像符号化復号装置は、前記画像符号化装置と、前記画像復号装置とを備える。
【0039】
なお、これらの包括的または具体的な態様は、システム、方法、集積回路、コンピュータプログラムまたはコンピュータ読み取り可能なCD−ROMなどの記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
【0040】
以下、実施の形態について、図面を参照しながら説明する。
【0041】
なお、以下で説明する実施の形態は、いずれも包括的または具体的な例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。
【0042】
(実施の形態1)
[符号化装置]
まず、本実施の形態に係る画像符号化装置の構成を説明する。
図1は、本実施の形態に係る画像符号化装置100の構造を示すブロック図である。
【0043】
図1に示す画像符号化装置100は、入力画像120(入力画像ビットストリーム)をブロック単位で符号化することにより符号化ビットストリーム132を生成する。この画像符号化装置100は、減算器101と、直交変換部102と、量子化部103と、逆量子化部104と、逆直交変換部105と、加算器106と、ブロックメモリ107と、フレームメモリ108(ピクチャメモリ)と、イントラ予測部109と、インター予測部110と、切替部111と、可変長符号化部112(エントロピー符号化部)と、制御部113とを備える。
【0044】
減算器101は、入力画像120から予測画像131を減算することにより残差信号121を生成する。直交変換部102は、残差信号121を周波数係数に変換することにより変換係数122を生成する。量子化部103は、変換係数122を量子化することにより量子化係数123を生成する。可変長符号化部112は、量子化係数123を可変長符号化(エントロピー符号化)することにより符号化ビットストリーム132を生成する。
【0045】
逆量子化部104は、量子化係数123を逆量子化することにより変換係数124を生成する。逆直交変換部105は、変換係数124を逆周波数変換することにより残差信号125を生成する。加算器106は、残差信号125と予測画像131とを加算することにより復号画像126を生成する。この復号画像126は、ブロックメモリ107に画像信号127として格納されるとともに、フレームメモリ108に画像信号128として格納される。これらの画像信号127及び128は、今後の予測処理に用いられる。
【0046】
イントラ予測部109は、ブロックメモリ107に格納された画像信号127を用いてイントラ予測処理を行うことで予測画像129を生成する。例えば、イントラ予測部109は、処理対象の画像に含まれる処理済の画像領域から、処理対象の画像領域に最も類似する画像領域を検出する。インター予測部110は、フレームメモリ108に格納された画像信号128を用いて、インター予測処理を行うことで予測画像130を生成する。例えば、インター予測部110は、処理済の他の画像に含まれる、処理対象の画像領域に最も類似する画像領域を検出する。切替部111は、予測画像129及び130の一方を選択し、選択した予測画像を予測画像131として出力する。
【0047】
制御部113は、処理対象のスライスのインター予測に時間動きベクトル予測を用いるか否かを判定し、その判定結果を示す信号である時間動きベクトル予測フラグ133をインター予測部110及び可変長符号化部112に出力する。この判定結果に基づき、インター予測部110は、時間動きベクトルの予測値を用いたり用いなかったりしてインター予測を行う。また、可変長符号化部112は、時間動きベクトル予測フラグ133を含む符号化ビットストリーム132を生成する。また、時間動きベクトル予測とは、他のピクチャに含まれる動きベクトルを動きベクトルの予測値として用いて動きベクトル予測を行う処理である。
【0048】
[符号化処理]
次に、上述した画像符号化装置100の動作を説明する。
【0049】
図2は、本実施の形態に係る画像符号化処理のフローチャートである。
【0050】
まず、画像符号化装置100は、複数の参照ピクチャリスト順序パラメータをスライスヘッダに書き込み、当該スライスのインター予測に用いられる1以上の参照ピクチャリストに含まれる複数の参照ピクチャの順序を特定する(S101)。ここで、ある参照ピクチャリスト(参照ピクチャリスト0など)に含まれる所定の位置の参照ピクチャ(1番目のピクチャなど)はコーロケーテッド参照ピクチャを示す。
【0051】
次に、画像符号化装置100は、スライスのインター予測で時間動きベクトル予測を用いるか否かを示す時間動きベクトル予測フラグをスライスヘッダに書き込む(S102)。次に、画像符号化装置100は、時間動きベクトル予測フラグが、時間動きベクトル予測を用いると示しているのか、用いないと示しているのかを判定する(S103)。このフラグの値は、例えば、時間動きベクトル予測を用いない場合は「0」であり、用いる場合は「1」である。
【0052】
時間動きベクトル予測を用いるとフラグが示している場合(S104でYes)、画像符号化装置100は、コーロケーテッド参照ピクチャの動きベクトルから導出される少なくとも一つの時間動きベクトルの予測値を含む動きベクトル予測値の第1リストを作成する(S105)。次に、画像符号化装置100は、スライスに含まれる処理対象のサンプルブロックに対する動きベクトルの予測値を第1リストから選択する(S106)。次に、画像符号化装置100は、選択された動きベクトルの予測値を示す第1パラメータ(動きベクトル予測値選択パラメータ)を符号化ビットストリーム132に書き込む(S107)。
【0053】
一方、時間動きベクトル予測を用いないとフラグが示している場合(S104でNo)、画像符号化装置100は、時間動きベクトルの予測値を含まない動きベクトル予測値の第2リストを作成する(S108)。次に、画像符号化装置100は、スライスに含まれる処理対象のサンプルブロックに対する動きベクトルの予測値を第2リストから選択する(S109)。次に、画像符号化装置100は、選択された動きベクトルの予測値を示す第2パラメータ(動きベクトル予測値選択パラメータ)を符号化ビットストリーム132に書き込む(S110)。
【0054】
ステップS107又はS110の後、画像符号化装置100は、ステップS106又はステップS109で選択された動きベクトルの予測値を用いて動き補償インター予測を行うことで、予測サンプルブロック(予測画像131)を生成する(S111)。次に、画像符号化装置100は、元のサンプルブロック(入力画像120)から予測サンプルブロック(予測画像131)を減算することで残差サンプルブロック(残差信号121)を生成する(S112)。そして、画像符号化装置100は、対象ブロックに対応する残差サンプルブロックを符号化することで符号化ビットストリーム132を生成する(S113)。
【0055】
ここで、時間動きベクトル予測フラグにより、1つのスライスは、他のスライスとは独立して制御される。また、画像符号化装置100は、DPB内の参照ピクチャにはマーキング処理を行わない。また、本実施の形態では、時間動きベクトル予測フラグの値は、同一ピクチャ内の複数のスライスで異なってもよい。
【0056】
また、本実施の形態では、動きベクトル予測値の第1リストと第2リストとでは動きベクトルの予測値の数が異なり、第2リストのほうが第1リストよりも予測値の数が1つ少ない。また、どちらのリストも、時間動きベクトルの予測値以外の動きベクトルの予測値は同じである。符号化ビットストリーム132において、選択された動きベクトル予測値を表す第1パラメータと第2パラメータとに、異なるビット表現が用いられてもよい。例えば、算術符号化の2値化又は可変長符号化において最大値が異なる端数処理が用いられてもよい。
【0057】
なお、第1リストと第2リストとの動きベクトル予測値の数は同じであってもよい。この場合、時間動きベクトル予測の予測値の代わりに、第2リストは、第1リストには存在しない非時間的な動きベクトルの予測値を含む。この非時間的な動きベクトルの予測値は、時間的に独立して、つまり、参照ピクチャからの動きベクトルを用いずに導出される。この非時間的な動きベクトルの予測値は、例えば、対象ブロックと同一ピクチャ内の隣接ブロックを1以上用いて導出された空間動きベクトル予測値がある。なお、この非時間的な動きベクトルの予測値は、水平動きベクトル成分と垂直動きベクトルとがゼロに等しいゼロ動きベクトル予測値であってもよい。
【0058】
以下、本実施の形態に係る符号化処理の別の例を説明する。
図3は、本実施の形態に係る、複数のピクチャを符号化する符号化処理のフローチャートである。
【0059】
まず、画像符号化装置100は、符号化対象の複数のピクチャから、時間動きベクトル予測リフレッシュ用の開始ピクチャを選択する(S121)。時間動きベクトル予測のリフレッシュとは、動きベクトル予測の依存状態が伝播するのを開始ピクチャで終了させることである。
【0060】
ここで、画像符号化装置100は、符号化順序が開始ピクチャより後の全ピクチャの符号化において、当該開始ピクチャより前にあるピクチャを時間動きベクトル予測に利用しない。この時間動きベクトル予測のリフレッシュにより、時間動きベクトル予測のミスマッチにより生じる再構成エラーを訂正することができるリカバリーポイントが符号化ビットストリーム132内に配置される。これにより、エラーロバスト性が向上する。
【0061】
次に、画像符号化装置100は、開始ピクチャに含まれる全てのスライスを符号化する。また、画像符号化装置100は、開始ピクチャに含まれる全てのスライスの時間動きベクトル予測フラグを「時間動きベクトル予測を用いない」(例えば、フラグ値「0」)に設定する(S122)。すなわち、開始ピクチャに含まれる全てのスライスに対して、時間動きベクトル予測が利用されない。
【0062】
次に、画像符号化装置100は、符号化順序が開始ピクチャより後である後続ピクチャに含まれるスライスが、符号化順序が開始ピクチャより前のコーロケーテッド参照ピクチャを有するか否かを判定する(S123)。
【0063】
当該後続ピクチャに含まれるスライスのコーロケーテッド参照ピクチャが開始ピクチャより前にある場合(S124でYes)、画像符号化装置100は、当該後続ピクチャに含まれるスライスを符号化する。このとき画像符号化装置100は、当該後続ピクチャのスライスの時間動きベクトル予測フラグを「時間動きベクトル予測を用いない」(例えば、フラグ値「0」)に設定する(S125)。すなわち、符号化順序が開始ピクチャを越える時間動きベクトル予測は無効になる。
【0064】
一方、当該後続ピクチャのスライスのコーロケーテッド参照ピクチャが開始ピクチャより前にない(つまり、開始ピクチャ又は符号化順序が後のピクチャがコーロケーテッド参照ピクチャである)場合(S124でNo)、画像符号化装置100は、当該後続ピクチャのスライスを符号化する。このとき、画像符号化装置100は、当該後続ピクチャのスライスの時間動きベクトル予測フラグを「時間動きベクトル予測を用いる」(例えば、フラグ値「1」)に設定するか、「時間動きベクトル予測を用いない」(例えば、フラグ値「0」)に設定する(S126)。すなわち、コーロケーテッド参照ピクチャの符号化順序が開始ピクチャより前でなければ、対象スライスには、時間動きベクトル予測を用いるか否かの選択肢がある。また、本実施の形態において、時間動きベクトル予測を用いるか否かの選択は、符号化効率が最大になるか否かに基づいて決定される。
【0065】
以上のように、画像符号化装置100は、
図4Aに示すように、複数のピクチャから第1ピクチャ(開始ピクチャ)を選択する(S141)。
【0066】
次に、画像符号化装置100は、第1ピクチャに対応付けられた第1時間動きベクトル予測フラグを時間動きベクトル予測が用いられないに設定し、当該第1時間動きベクトル予測フラグを符号化する(S142)。具体的には、画像符号化装置100は時間動きベクトル予測が用いられないことを示す第1時間動きベクトル予測フラグを、第1ピクチャに含まれる全てのスライスのヘッダに書き込む。
【0067】
また、画像符号化装置100は、第1ピクチャを時間動きベクトル予測を用いずに符号化する(S143)。次に、画像符号化装置100は、第1ピクチャにより符号化順が後の第2ピクチャを、第1ピクチャより符号化順が前のピクチャの動きベクトルを参照することを禁止して符号化する(S144)。
【0068】
これにより、画像符号化装置100は、第1ピクチャの後続の第2ピクチャが、第1ピクチャより前のピクチャの動きベクトルを参照することを禁止できるので、第1ピクチャを跨いでエラーが伝播することを防止できる。よって、当該画像符号化装置100は、ロバスト性を向上できる。
【0069】
なお、ステップS142とステップS143の順序は入れ替わってもよい。
【0070】
例えば、
図4Bに示すように、ピクチャ4の符号化時には、開始ピクチャ2より前あるピクチャ0及びピクチャ1の動きベクトルが参照されることが禁止される。また、
図4Cに示すように、符号化順と表示順(出力順)とが異なる場合にも同様である。
図4Cに示す例では、ピクチャ4の符号化時には、開始ピクチャ1より前あるピクチャ0の動きベクトルが参照されることが禁止される。なお、
図4B及び
図4Cにおいて、ピクチャの番号(ピクチャ0、ピクチャ1・・・)は符号化順を示す。
【0071】
ここで、上記ステップS141及びS142の一部は、画像符号化装置100に含まれる設定部により実行される。また、上記ステップS142の一部、S143及びS144は、画像符号化装置100に含まれる符号化部により実行される。例えば、設定部は、
図1に示す制御部113に含まれる。また、符号化部の主な機能は、
図1に示すインター予測部110、可変長符号化部112及び制御部113により実現される。
【0072】
また、ここでは、開始ピクチャより後の後続ピクチャが、開始ピクチャより前のピクチャの動きベクトルを参照することを禁止する方法として、後続ピクチャに時間動きベクトル予測を用いない方法を示したが、これ以外の方法を用いてもよい。
【0073】
例えば、画像符号化装置100は、後続ピクチャのコーロケーテッド参照ピクチャが開始ピクチャの前である場合に、当該コーロケーテッド参照ピクチャを、開始ピクチャ又は開始ピクチャより後のピクチャに変更してもよい。
【0074】
または、画像符号化装置100は、後続ピクチャのコーロケーテッド参照ピクチャが開始ピクチャの前である場合に、時間動きベクトル予測フラグを「時間動きベクトル予測を用いない」に設定するのではなく、時間動きベクトルの予測値を含まない動きベクトル予測値のリスト(上記第2リスト)を作成してもよい。また、画像符号化装置100は、時間動きベクトルの予測値を含む動きベクトル予測値のリストを作成する場合でも、時間動きベクトルの予測値を選択しないように、例えば、時間動きベクトルの予測値に割り当てられるインデックスを選択しないようにして符号化処理を行ってもよい。
【0075】
以下、本実施の形態に係る符号化処理の変形例を説明する。
図5は、本実施の形態の変形例に係る、複数のピクチャを符号化する符号化処理のフローチャートである。
【0076】
画像符号化装置100は、複数のピクチャから、時間動きベクトル予測リフレッシュ用の開始ピクチャを選択する(S161)。そして、画像符号化装置100は、開始ピクチャに含まれる全てのスライスを符号化する。また、画像符号化装置100は、開始ピクチャに含まれる全てのスライスの時間動きベクトル予測フラグを「時間動きベクトル予測を用いない」に設定する(S162)。
【0077】
次に、画像符号化装置100は、符号化順序が開始ピクチャより後である後続ピクチャが、出力順序(一般に表示順序とも呼ばれる)が開始ピクチャより前であるか否かを判定する(S163)。
【0078】
当該後続ピクチャの出力順序が開始ピクチャより前である場合(S164でYes)、画像符号化装置100は、当該後続ピクチャのスライスを符号化する。このとき、画像符号化装置100は、当該後続ピクチャのスライスの時間動きベクトル予測フラグを「時間動きベクトル予測を用いる」(例えば、フラグ値「1」)に設定するか、「時間動きベクトル予測を用いない」(例えば、フラグ値「0」)に設定する(S165)。すなわち、後続ピクチャの出力順序が開始ピクチャより前である場合、後続ピクチャのスライスには、時間動きベクトル予測を用いるか否かの選択肢がある。本実施の形態において、時間動きベクトル予測を用いるか否かの選択は、符号化効率が最大になるか否かに基づいて決定される。
【0079】
一方、後続ピクチャの出力順序が開始ピクチャより前でない(出力順序が開始ピクチャの後ろである)場合(S164でNo)、画像符号化装置100は、後続ピクチャに含まれるスライスが、符号化順序か出力順序かのどちらかで開始ピクチャより前であるコーロケーテッド参照ピクチャを有するか否かを判定する(S166)。
【0080】
当該後続ピクチャに含まれるスライスのコーロケーテッド参照ピクチャが符号化順序か出力順序かのどちらかで開始ピクチャより前である場合(S167でYes)、画像符号化装置100は、当該後続ピクチャに含まれるスライスを符号化する。このとき、画像符号化装置100は、当該スライスの時間動きベクトル予測フラグを「時間動きベクトル予測を用いない」(例えば、フラグ値「0」)に設定する(S168)。すなわち、符号化順序か出力順序かのどちらかで開始ピクチャを越える時間動きベクトル予測は無効になる。
【0081】
一方、当該後続ピクチャに含まれるスライスのコーロケーテッド参照ピクチャが符号化順序か出力順序かのどちらかで開始ピクチャより前でない場合(S167でNo)、画像符号化装置100は、当該後続ピクチャに含まれるスライスを符号化する。このとき、画像符号化装置100は、当該スライスの時間動きベクトル予測フラグを「時間動きベクトル予測を用いる」(例えば、フラグ値「1」)、又は、「時間動きベクトル予測を用いない」(例えば、フラグ値「0」)に設定する(S169)。すなわち、コーロケーテッド参照ピクチャの符号化順序と出力順序とが開始ピクチャより後ろであれば、対象スライスには、時間動きベクトル予測を用いるか否かの選択肢がある。本実施の形態において、時間動きベクトル予測を用いるか否かの選択は、符号化効率が最大になるか否かに基づいて決定される。
【0082】
また、上記画像符号化処理の例では、基準制限を以下のように設けている。
【0083】
開始ピクチャの時間レベルは優先順位が最も高いものとする。優先順位が最も高い時間レベルの一例が、HEVC画像符号化方式の時間レベルが0、つまり、スライスのNAL (Network Abstraction Layer:ネットワーク抽象化層)ユニットのヘッダ内にあるtemporal_idが0に等しいことである(
図4Cを参照)。
【0084】
ここで、時間レベル(時間階層)とは、ある時間レベルのピクチャ(スライス)は、同じ時間レベル、又は、自分の時間レベルより高い時間レベルのピクチャの情報を参照可能であることを示す。例えば、最も高い時間レベル(temporal_id=0)のピクチャは、最も高い時間レベルのピクチャのみを用いて符号化される。言い換えると、最も高い時間レベル(temporal_id=0)のピクチャは、最も高い時間レベルのピクチャのみを用いて復号できる。
【0085】
開始ピクチャに含まれる全てのスライスは、時間動きベクトル予測を使用しないものとする(例えば、フラグ値を「0」に設定)。したがって、開始ピクチャは、優先順位が最も高い時間レベルのピクチャとして特定され(例えば、temporal_idが0)、時間動きベクトル予測フラグは「使用しない」(フラグ値が「0」)を示す。
【0086】
開始ピクチャより後のピクチャはいずれも、
図3(符号化順序条件を利用)又は
図5(符号化順序及び出力順序条件を利用)で説明したような、当該開始ピクチャを越える時間動きベクトル予測を使用しないものとする。
【0087】
また、符号化ビットストリーム132は、上記基準制限に従うものとする。
【0088】
本実施の形態に係る画像復号装置は、(上記基準制限に対する)ビットストリームの不適合を検出することができ、このような不適合を検出した場合には任意でエラー処理を行う。例えば、画像復号装置は、不適合ブロック(又はスライス)を、復号対象ピクチャより前であり、かつ復号対象ピクチャに最も近い先行再構成ピクチャに含まれるコーロケーテッドブロック(又はスライス)で置き換えることにより、当該不適合ブロック(又はスライス)を隠してもよい。
【0089】
[シンタックス]
図6は、本実施の形態に係る時間動きベクトル予測フラグの位置を示すシンタックス図である。
【0090】
図6に示すように、1以上の参照ピクチャリストに含まれる複数の参照ピクチャの順序を特定する参照ピクチャリスト順序パラメータは、スライスヘッダに含まれる。このパラメータにより、画像符号化装置及び画像復号装置は、スライスヘッダに対応するスライスのインター予測に用いる参照ピクチャリストの有効又は最終的な順序を決定する。また、このパラメータにより、1以上の初期参照ピクチャリストに行われる並べ替え処理が規定されてもよいし、初期参照ピクチャリストを並び替えずに用いると規定されてもよい。ここで初期参照ピクチャリストは、予め定められた順序付け方式を用いて作成された参照ピクチャリストである。
【0091】
また、時間動きベクトル予測フラグは、参照ピクチャリスト順序パラメータと同様にスライスヘッダに含まれる。時間動きベクトル予測フラグは、当該スライスヘッダに対応するスライスで時間動きベクトル予測を用いるか否かを示す。
【0092】
動きベクトル予測値選択パラメータは、予測単位ごとに設けられている。この動きベクトル予測値選択パラメータは、予測単位のインター予測に利用可能な複数の動きベクトル予測値の中から、当該予測単位のインター予測で選択された1つの動きベクトル予測値を示す。
【0093】
時間レベルパラメータは、スライスヘッダに含まれる。上述したように、画像符号化装置100は、この時間レベルパラメータを用いて、複数のピクチャから、時間動きベクトル予測リフレッシュ用の開始ピクチャを選択する。具体的には、画像符号化装置100は、複数のピクチャのうち、最大の時間レベルを有するピクチャを開始ピクチャとして選択する。
【0094】
なお、参照ピクチャリスト順序パラメータ及び時間動きベクトル予測フラグは、同じピクチャに含まれる複数のスライスで共有されるヘッダに含まれてもよい。このようなヘッダとは、例えば、適応パラメータセット(APS)のヘッダである。
【0095】
スライス分割は、1つのピクチャを複数のサブピクチャ区分に分割する方法のうちの1つである。よって、タイル、エントロピースライス、又は波面分割単位など他のサブピクチャ分割方法を用いた場合に本実施の形態を適用してもよい。つまり、スライスヘッダに含まれるこれらのパラメータがサブピクチャ単位のヘッダに含まれてもよい。
【0096】
[符号化処理の効果]
以上より、本実施の形態に係る画像符号化装置100は、時間動きベクトル予測値を用いたインター予測のエラーロバスト性を向上できる。また、画像符号化装置100は、同じピクチャに含まれる複数のスライスにおいて独立して時間動きベクトル予測値を有効及び無効に設定できるので、インター予測の符号化効率及び柔軟性を向上できる。
【0097】
[復号装置]
次に、本実施の形態に係る画像復号装置200について説明する。この画像復号装置200は、上述した画像符号化装置100により生成された符号化ビットストリーム132を復号する。
【0098】
図7は、本実施の形態に係る画像復号装置200の構造を示すブロック図である。
【0099】
この画像復号装置200は、符号化ビットストリーム232をブロック単位で復号することで復号画像226を生成する。ここで、符号化ビットストリーム232は、例えば、上述した画像符号化装置100により生成された符号化ビットストリーム132である。
【0100】
図7に示すように、画像復号装置200は、可変長復号部212(エントロピー復号部)と、逆量子化部204と、逆直交変換部205と、加算器206と、ブロックメモリ207と、フレームメモリ208(ピクチャメモリ)と、イントラ予測部209と、インター予測部210と、切替部211とを備える。
【0101】
可変長復号部212は、符号化ビットストリーム232を復号することで量子化係数223を生成する。逆量子化部204は、量子化係数223を逆量子化することで変換係数224を生成する。逆直交変換部205は、変換係数224を逆周波数変換することで残差信号225を生成する。加算器206は、残差信号225と予測画像231とを加算することで復号画像226を生成する。この復号画像226は、例えば、表示部に出力される。また、この復号画像226は、今後の予測処理のためにブロックメモリ207及びフレームメモリ208に、それぞれ画像信号227及び228として格納される。
【0102】
イントラ予測部209は、ブロックメモリ207に格納された画像信号227を用いてイントラ予測処理を行うことで予測画像229を生成する。例えば、イントラ予測部209は、処理対象の画像に含まれる処理済の画像領域から、処理対象の画像領域に最も類似する画像領域を検出する。インター予測部210は、フレームメモリ208に格納された画像信号228を用いて、インター予測処理を行うことで予測画像230を生成する。例えば、インター予測部210は、処理済の他の画像に含まれる、処理対象の画像領域に最も類似する画像領域を検出する。切替部211は、予測画像229及び230の一方を選択し、選択した予測画像を予測画像231として出力する。
【0103】
また、可変長復号部212は、復号対象スライスのインター予測に時間動きベクトル予測を用いるか否かを示す時間動きベクトル予測フラグ233を符号化ビットストリーム232から取得する。このフラグに基づき、インター予測部210は、時間動きベクトル予測値を用いて、又は、用いずにインター予測を行う。
【0104】
[復号処理]
次に、上述した画像復号装置200の動作を説明する。
図8は、本実施の形態に係る画像復号処理のフローチャートである。
【0105】
まず、画像復号装置200は、参照ピクチャリスト順序パラメータをスライスヘッダから取得する(S201)。また、画像復号装置200は、参照ピクチャリスト順序パラメータに従い、当該スライスのインター予測に用いられる、1以上の参照ピクチャリストに含まれる複数の参照ピクチャの順序を特定する。ここで、ある参照ピクチャリストに含まれる、特定の位置の参照ピクチャは、コーロケーテッド参照ピクチャを示す。
【0106】
次に、画像復号装置200は、時間動きベクトル予測フラグをスライスヘッダから取得する(S202)。次に、画像復号装置200は、このフラグが、時間動きベクトル予測を用いると示しているのか、用いないと示しているのかを判定する(S203)。
【0107】
時間動きベクトル予測を用いるとフラグが示している場合(S204でYes)、画像復号装置200は、コーロケーテッド参照ピクチャの動きベクトルから導出される少なくとも一つの時間動きベクトルの予測値を含む動きベクトル予測値の第1リストを作成する(S205)。次に、画像復号装置200は、符号化ビットストリーム232から第1パラメータ(動きベクトル予測値選択パラメータ)を取得する(S206)。この第1パラメータは、スライスに含まれる復号対象サンプルブロックに対して、第1リスト中から選択された動きベクトル予測値を示す。
【0108】
一方、時間動きベクトル予測を用いないとフラグが示している場合(S204でNo)、画像復号装置200は、時間動きベクトルの予測値を含まない動きベクトル予測値の第2リストを作成する(S207)。次に、画像復号装置200は、符号化ビットストリーム232から第2パラメータ(動きベクトル予測値選択パラメータ)を取得する(S208)。ここで、第2パラメータは、スライスに含まれる復号対象サンプルブロックに対して、第2リストの中から選択された動きベクトルの予測値を示す。
【0109】
ステップS206又はS208の後、画像復号装置200は、第1パラメータ又は第2パラメータで示される動きベクトルの予測値を用いて動き補償インター予測を行うことで、予測サンプルブロック(予測画像231)を生成する(S209)。次に、画像復号装置200は、符号化ビットストリーム232から残差サンプルブロック(残差信号225)を復号する(S210)。最後に、画像復号装置200は、予測サンプルブロック(予測画像231)と残差サンプルブロック(残差信号225)とを加算することで、復号対象ブロックに対応する再構成サンプルブロック(復号画像226)を生成する(S211)。
【0110】
また、本実施の形態に係る画像復号装置200は、
図9に示すように、符号化ビットストリーム232から、第1ピクチャ(開始ピクチャ)に時間動きベクトル予測が用いられないことを示す第1時間動きベクトル予測フラグを取得する(S241)。具体的には、画像復号装置200は、時間動きベクトル予測が用いられないことを示す第1時間動きベクトル予測フラグを、第1ピクチャに含まれる全てのスライスのヘッダから取得する。
【0111】
次に、画像復号装置200は、第1ピクチャを時間動きベクトル予測を用いずに復号する(S242)。次に、画像復号装置200は、第1ピクチャにより復号順が後の第2ピクチャを、第1ピクチャより復号順が前のピクチャの動きベクトルを参照することを禁止して復号する(S243)。なお、これらの処理の詳細は、上述した画像符号化装置100の処理に対応する。
【0112】
ここで、上記ステップS241は、画像復号装置200に含まれる取得部により実行される。また、上記ステップS242及びS243は、画像復号装置200に含まれる復号部により実行される。例えば、取得部は、
図7に示す可変長復号部212に含まれる。また、復号部の主な機能は、
図7に示すインター予測部210により実現される。
【0113】
[復号発明の効果]
以上より、本実施の形態に係る画像復号装置200は、時間動きベクトル予測値を用いたインター予測のエラーロバスト性、柔軟性、及び、符号化効率を向上させて符号化された符号化ビットストリームを復号できる。
【0114】
以上、実施の形態に係る画像符号化装置に及び画像復号装置ついて説明したが、本発明は、この実施の形態に限定されるものではない。
【0115】
また、上記実施の形態に係る画像符号化装置及び画像復号装置に含まれる各処理部は典型的には集積回路であるLSIとして実現される。これらは個別に1チップ化されてもよいし、一部又は全てを含むように1チップ化されてもよい。
【0116】
また、集積回路化はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、又はLSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
【0117】
上記各実施の形態において、各構成要素は、専用のハードウェアで構成されるか、各構成要素に適したソフトウェアプログラムを実行することによって実現されてもよい。各構成要素は、CPUまたはプロセッサなどのプログラム実行部が、ハードディスクまたは半導体メモリなどの記録媒体に記録されたソフトウェアプログラムを読み出して実行することによって実現されてもよい。
【0118】
さらに、本発明は上記ソフトウェアプログラムであってもよいし、上記プログラムが記録された非一時的なコンピュータ読み取り可能な記録媒体であってもよい。また、上記プログラムは、インターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
【0119】
また、上記で用いた数字は、全て本発明を具体的に説明するために例示するものであり、本発明は例示された数字に制限されない。
【0120】
また、ブロック図における機能ブロックの分割は一例であり、複数の機能ブロックを一つの機能ブロックとして実現したり、一つの機能ブロックを複数に分割したり、一部の機能を他の機能ブロックに移してもよい。また、類似する機能を有する複数の機能ブロックの機能を単一のハードウェア又はソフトウェアが並列又は時分割に処理してもよい。
【0121】
また、上記の画像符号化方法又は画像復号方法に含まれるステップが実行される順序は、本発明を具体的に説明するために例示するためのものであり、上記以外の順序であってもよい。また、上記ステップの一部が、他のステップと同時(並列)に実行されてもよい。
【0122】
以上、本発明の一つまたは複数の態様に係る画像符号化装置及び画像復号装置について、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の一つまたは複数の態様の範囲内に含まれてもよい。
【0123】
(実施の形態2)
上記各実施の形態で示した動画像符号化方法(画像符号化方法)または動画像復号化方法(画像復号方法)の構成を実現するためのプログラムを記憶メディアに記録することにより、上記各実施の形態で示した処理を独立したコンピュータシステムにおいて簡単に実施することが可能となる。記憶メディアは、磁気ディスク、光ディスク、光磁気ディスク、ICカード、半導体メモリ等、プログラムを記録できるものであればよい。
【0124】
さらにここで、上記各実施の形態で示した動画像符号化方法(画像符号化方法)や動画像復号化方法(画像復号方法)の応用例とそれを用いたシステムを説明する。当該システムは、画像符号化方法を用いた画像符号化装置、及び画像復号方法を用いた画像復号装置からなる画像符号化復号装置を有することを特徴とする。システムにおける他の構成について、場合に応じて適切に変更することができる。
【0125】
図10は、コンテンツ配信サービスを実現するコンテンツ供給システムex100の全体構成を示す図である。通信サービスの提供エリアを所望の大きさに分割し、各セル内にそれぞれ固定無線局である基地局ex106、ex107、ex108、ex109、ex110が設置されている。
【0126】
このコンテンツ供給システムex100は、インターネットex101にインターネットサービスプロバイダex102および電話網ex104、および基地局ex106からex110を介して、コンピュータex111、PDA(Personal Digital Assistant)ex112、カメラex113、携帯電話ex114、ゲーム機ex115などの各機器が接続される。
【0127】
しかし、コンテンツ供給システムex100は
図10のような構成に限定されず、いずれかの要素を組合せて接続するようにしてもよい。また、固定無線局である基地局ex106からex110を介さずに、各機器が電話網ex104に直接接続されてもよい。また、各機器が近距離無線等を介して直接相互に接続されていてもよい。
【0128】
カメラ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)等であり、いずれでも構わない。
【0129】
コンテンツ供給システムex100では、カメラex113等が基地局ex109、電話網ex104を通じてストリーミングサーバex103に接続されることで、ライブ配信等が可能になる。ライブ配信では、ユーザがカメラex113を用いて撮影するコンテンツ(例えば、音楽ライブの映像等)に対して上記各実施の形態で説明したように符号化処理を行い(即ち、本発明の一態様に係る画像符号化装置として機能する)、ストリーミングサーバex103に送信する。一方、ストリーミングサーバex103は要求のあったクライアントに対して送信されたコンテンツデータをストリーム配信する。クライアントとしては、上記符号化処理されたデータを復号化することが可能な、コンピュータex111、PDAex112、カメラex113、携帯電話ex114、ゲーム機ex115等がある。配信されたデータを受信した各機器では、受信したデータを復号化処理して再生する(即ち、本発明の一態様に係る画像復号装置として機能する)。
【0130】
なお、撮影したデータの符号化処理はカメラex113で行っても、データの送信処理をするストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。同様に配信されたデータの復号化処理はクライアントで行っても、ストリーミングサーバex103で行ってもよいし、互いに分担して行ってもよい。また、カメラex113に限らず、カメラex116で撮影した静止画像および/または動画像データを、コンピュータex111を介してストリーミングサーバex103に送信してもよい。この場合の符号化処理はカメラex116、コンピュータex111、ストリーミングサーバex103のいずれで行ってもよいし、互いに分担して行ってもよい。
【0131】
また、これら符号化・復号化処理は、一般的にコンピュータex111や各機器が有するLSIex500において処理する。LSIex500は、ワンチップであっても複数チップからなる構成であってもよい。なお、動画像符号化・復号化用のソフトウェアをコンピュータex111等で読み取り可能な何らかの記録メディア(CD−ROM、フレキシブルディスク、ハードディスクなど)に組み込み、そのソフトウェアを用いて符号化・復号化処理を行ってもよい。さらに、携帯電話ex114がカメラ付きである場合には、そのカメラで取得した動画データを送信してもよい。このときの動画データは携帯電話ex114が有するLSIex500で符号化処理されたデータである。
【0132】
また、ストリーミングサーバex103は複数のサーバや複数のコンピュータであって、データを分散して処理したり記録したり配信するものであってもよい。
【0133】
以上のようにして、コンテンツ供給システムex100では、符号化されたデータをクライアントが受信して再生することができる。このようにコンテンツ供給システムex100では、ユーザが送信した情報をリアルタイムでクライアントが受信して復号化し、再生することができ、特別な権利や設備を有さないユーザでも個人放送を実現できる。
【0134】
なお、コンテンツ供給システムex100の例に限らず、
図11に示すように、デジタル放送用システムex200にも、上記各実施の形態の少なくとも動画像符号化装置(画像符号化装置)または動画像復号化装置(画像復号装置)のいずれかを組み込むことができる。具体的には、放送局ex201では映像データに音楽データなどが多重化された多重化データが電波を介して通信または衛星ex202に伝送される。この映像データは上記各実施の形態で説明した動画像符号化方法により符号化されたデータである(即ち、本発明の一態様に係る画像符号化装置によって符号化されたデータである)。これを受けた放送衛星ex202は、放送用の電波を発信し、この電波を衛星放送の受信が可能な家庭のアンテナex204が受信する。受信した多重化データを、テレビ(受信機)ex300またはセットトップボックス(STB)ex217等の装置が復号化して再生する(即ち、本発明の一態様に係る画像復号装置として機能する)。
【0135】
また、DVD、BD等の記録メディアex215に記録した多重化データを読み取り復号化する、または記録メディアex215に映像信号を符号化し、さらに場合によっては音楽信号と多重化して書き込むリーダ/レコーダex218にも上記各実施の形態で示した動画像復号化装置または動画像符号化装置を実装することが可能である。この場合、再生された映像信号はモニタex219に表示され、多重化データが記録された記録メディアex215により他の装置やシステムにおいて映像信号を再生することができる。また、ケーブルテレビ用のケーブルex203または衛星/地上波放送のアンテナex204に接続されたセットトップボックスex217内に動画像復号化装置を実装し、これをテレビのモニタex219で表示してもよい。このときセットトップボックスではなく、テレビ内に動画像復号化装置を組み込んでもよい。
【0136】
図12は、上記各実施の形態で説明した動画像復号化方法および動画像符号化方法を用いたテレビ(受信機)ex300を示す図である。テレビex300は、上記放送を受信するアンテナex204またはケーブルex203等を介して映像データに音声データが多重化された多重化データを取得、または出力するチューナex301と、受信した多重化データを復調する、または外部に送信する多重化データに変調する変調/復調部ex302と、復調した多重化データを映像データと、音声データとに分離する、または信号処理部ex306で符号化された映像データ、音声データを多重化する多重/分離部ex303を備える。
【0137】
また、テレビex300は、音声データ、映像データそれぞれを復号化する、またはそれぞれの情報を符号化する音声信号処理部ex304、映像信号処理部ex305(本発明の一態様に係る画像符号化装置または画像復号装置として機能する)を有する信号処理部ex306と、復号化した音声信号を出力するスピーカex307、復号化した映像信号を表示するディスプレイ等の表示部ex308を有する出力部ex309とを有する。さらに、テレビex300は、ユーザ操作の入力を受け付ける操作入力部ex312等を有するインタフェース部ex317を有する。さらに、テレビex300は、各部を統括的に制御する制御部ex310、各部に電力を供給する電源回路部ex311を有する。インタフェース部ex317は、操作入力部ex312以外に、リーダ/レコーダex218等の外部機器と接続されるブリッジex313、SDカード等の記録メディアex216を装着可能とするためのスロット部ex314、ハードディスク等の外部記録メディアと接続するためのドライバex315、電話網と接続するモデムex316等を有していてもよい。なお記録メディアex216は、格納する不揮発性/揮発性の半導体メモリ素子により電気的に情報の記録を可能としたものである。テレビex300の各部は同期バスを介して互いに接続されている。
【0138】
まず、テレビ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の間等でもシステムのオーバフロー、アンダーフローを避ける緩衝材としてバッファにデータを蓄積することとしてもよい。
【0139】
また、テレビex300は、放送等や記録メディア等から音声データ、映像データを取得する以外に、マイクやカメラのAV入力を受け付ける構成を備え、それらから取得したデータに対して符号化処理を行ってもよい。なお、ここではテレビex300は上記の符号化処理、多重化、および外部出力ができる構成として説明したが、これらの処理を行うことはできず、上記受信、復号化処理、外部出力のみが可能な構成であってもよい。
【0140】
また、リーダ/レコーダex218で記録メディアから多重化データを読み出す、または書き込む場合には、上記復号化処理または符号化処理はテレビex300、リーダ/レコーダex218のいずれで行ってもよいし、テレビex300とリーダ/レコーダex218が互いに分担して行ってもよい。
【0141】
一例として、光ディスクからデータの読み込みまたは書き込みをする場合の情報再生/記録部ex400の構成を
図13に示す。情報再生/記録部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は例えばマイクロプロセッサで構成され、読み出し書き込みのプログラムを実行することでそれらの処理を実行する。
【0142】
以上では、光ヘッドex401はレーザスポットを照射するとして説明したが、近接場光を用いてより高密度な記録を行う構成であってもよい。
【0143】
図14に光ディスクである記録メディアex215の模式図を示す。記録メディアex215の記録面には案内溝(グルーブ)がスパイラル状に形成され、情報トラックex230には、予めグルーブの形状の変化によってディスク上の絶対位置を示す番地情報が記録されている。この番地情報はデータを記録する単位である記録ブロックex231の位置を特定するための情報を含み、記録や再生を行う装置において情報トラックex230を再生し番地情報を読み取ることで記録ブロックを特定することができる。また、記録メディアex215は、データ記録領域ex233、内周領域ex232、外周領域ex234を含んでいる。ユーザデータを記録するために用いる領域がデータ記録領域ex233であり、データ記録領域ex233より内周または外周に配置されている内周領域ex232と外周領域ex234は、ユーザデータの記録以外の特定用途に用いられる。情報再生/記録部ex400は、このような記録メディアex215のデータ記録領域ex233に対して、符号化された音声データ、映像データまたはそれらのデータを多重化した多重化データの読み書きを行う。
【0144】
以上では、1層のDVD、BD等の光ディスクを例に挙げ説明したが、これらに限ったものではなく、多層構造であって表面以外にも記録可能な光ディスクであってもよい。また、ディスクの同じ場所にさまざまな異なる波長の色の光を用いて情報を記録したり、さまざまな角度から異なる情報の層を記録したりなど、多次元的な記録/再生を行う構造の光ディスクであってもよい。
【0145】
また、デジタル放送用システムex200において、アンテナex205を有する車ex210で衛星ex202等からデータを受信し、車ex210が有するカーナビゲーションex211等の表示装置に動画を再生することも可能である。なお、カーナビゲーションex211の構成は例えば
図12に示す構成のうち、GPS受信部を加えた構成が考えられ、同様なことがコンピュータex111や携帯電話ex114等でも考えられる。
【0146】
図15Aは、上記実施の形態で説明した動画像復号化方法および動画像符号化方法を用いた携帯電話ex114を示す図である。携帯電話ex114は、基地局ex110との間で電波を送受信するためのアンテナex350、映像、静止画を撮ることが可能なカメラ部ex365、カメラ部ex365で撮像した映像、アンテナex350で受信した映像等が復号化されたデータを表示する液晶ディスプレイ等の表示部ex358を備える。携帯電話ex114は、さらに、操作キー部ex366を有する本体部、音声を出力するためのスピーカ等である音声出力部ex357、音声を入力するためのマイク等である音声入力部ex356、撮影した映像、静止画、録音した音声、または受信した映像、静止画、メール等の符号化されたデータもしくは復号化されたデータを保存するメモリ部ex367、又は同様にデータを保存する記録メディアとのインタフェース部であるスロット部ex364を備える。
【0147】
さらに、携帯電話ex114の構成例について、
図15Bを用いて説明する。携帯電話ex114は、表示部ex358及び操作キー部ex366を備えた本体部の各部を統括的に制御する主制御部ex360に対して、電源回路部ex361、操作入力制御部ex362、映像信号処理部ex355、カメラインタフェース部ex363、LCD(Liquid Crystal Display)制御部ex359、変調/復調部ex352、多重/分離部ex353、音声信号処理部ex354、スロット部ex364、メモリ部ex367がバスex370を介して互いに接続されている。
【0148】
電源回路部ex361は、ユーザの操作により終話及び電源キーがオン状態にされると、バッテリパックから各部に対して電力を供給することにより携帯電話ex114を動作可能な状態に起動する。
【0149】
携帯電話ex114は、CPU、ROM、RAM等を有する主制御部ex360の制御に基づいて、音声通話モード時に音声入力部ex356で収音した音声信号を音声信号処理部ex354でデジタル音声信号に変換し、これを変調/復調部ex352でスペクトラム拡散処理し、送信/受信部ex351でデジタルアナログ変換処理および周波数変換処理を施した後にアンテナex350を介して送信する。また携帯電話ex114は、音声通話モード時にアンテナex350を介して受信した受信データを増幅して周波数変換処理およびアナログデジタル変換処理を施し、変調/復調部ex352でスペクトラム逆拡散処理し、音声信号処理部ex354でアナログ音声信号に変換した後、これを音声出力部ex357から出力する。
【0150】
さらにデータ通信モード時に電子メールを送信する場合、本体部の操作キー部ex366等の操作によって入力された電子メールのテキストデータは操作入力制御部ex362を介して主制御部ex360に送出される。主制御部ex360は、テキストデータを変調/復調部ex352でスペクトラム拡散処理をし、送信/受信部ex351でデジタルアナログ変換処理および周波数変換処理を施した後にアンテナex350を介して基地局ex110へ送信する。電子メールを受信する場合は、受信したデータに対してこのほぼ逆の処理が行われ、表示部ex358に出力される。
【0151】
データ通信モード時に映像、静止画、または映像と音声を送信する場合、映像信号処理部ex355は、カメラ部ex365から供給された映像信号を上記各実施の形態で示した動画像符号化方法によって圧縮符号化し(即ち、本発明の一態様に係る画像符号化装置として機能する)、符号化された映像データを多重/分離部ex353に送出する。また、音声信号処理部ex354は、映像、静止画等をカメラ部ex365で撮像中に音声入力部ex356で収音した音声信号を符号化し、符号化された音声データを多重/分離部ex353に送出する。
【0152】
多重/分離部ex353は、映像信号処理部ex355から供給された符号化された映像データと音声信号処理部ex354から供給された符号化された音声データを所定の方式で多重化し、その結果得られる多重化データを変調/復調部(変調/復調回路部)ex352でスペクトラム拡散処理をし、送信/受信部ex351でデジタルアナログ変換処理及び周波数変換処理を施した後にアンテナex350を介して送信する。
【0153】
データ通信モード時にホームページ等にリンクされた動画像ファイルのデータを受信する場合、または映像およびもしくは音声が添付された電子メールを受信する場合、アンテナex350を介して受信された多重化データを復号化するために、多重/分離部ex353は、多重化データを分離することにより映像データのビットストリームと音声データのビットストリームとに分け、同期バスex370を介して符号化された映像データを映像信号処理部ex355に供給するとともに、符号化された音声データを音声信号処理部ex354に供給する。映像信号処理部ex355は、上記各実施の形態で示した動画像符号化方法に対応した動画像復号化方法によって復号化することにより映像信号を復号し(即ち、本発明の一態様に係る画像復号装置として機能する)、LCD制御部ex359を介して表示部ex358から、例えばホームページにリンクされた動画像ファイルに含まれる映像、静止画が表示される。また音声信号処理部ex354は、音声信号を復号し、音声出力部ex357から音声が出力される。
【0154】
また、上記携帯電話ex114等の端末は、テレビex300と同様に、符号化器・復号化器を両方持つ送受信型端末の他に、符号化器のみの送信端末、復号化器のみの受信端末という3通りの実装形式が考えられる。さらに、デジタル放送用システムex200において、映像データに音楽データなどが多重化された多重化データを受信、送信するとして説明したが、音声データ以外に映像に関連する文字データなどが多重化されたデータであってもよいし、多重化データではなく映像データ自体であってもよい。
【0155】
このように、上記各実施の形態で示した動画像符号化方法あるいは動画像復号化方法を上述したいずれの機器・システムに用いることは可能であり、そうすることで、上記各実施の形態で説明した効果を得ることができる。
【0156】
また、本発明はかかる上記実施の形態に限定されるものではなく、本発明の範囲を逸脱することなく種々の変形または修正が可能である。
【0157】
(実施の形態3)
上記各実施の形態で示した動画像符号化方法または装置と、MPEG−2、MPEG4−AVC、VC−1など異なる規格に準拠した動画像符号化方法または装置とを、必要に応じて適宜切替えることにより、映像データを生成することも可能である。
【0158】
ここで、それぞれ異なる規格に準拠する複数の映像データを生成した場合、復号する際に、それぞれの規格に対応した復号方法を選択する必要がある。しかしながら、復号する映像データが、どの規格に準拠するものであるか識別できないため、適切な復号方法を選択することができないという課題を生じる。
【0159】
この課題を解決するために、映像データに音声データなどを多重化した多重化データは、映像データがどの規格に準拠するものであるかを示す識別情報を含む構成とする。上記各実施の形態で示す動画像符号化方法または装置によって生成された映像データを含む多重化データの具体的な構成を以下説明する。多重化データは、MPEG−2トランスポートストリーム形式のデジタルストリームである。
【0160】
図16は、多重化データの構成を示す図である。
図16に示すように多重化データは、ビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム(PG)、インタラクティブグラフィックスストリームのうち、1つ以上を多重化することで得られる。ビデオストリームは映画の主映像および副映像を、オーディオストリーム(IG)は映画の主音声部分とその主音声とミキシングする副音声を、プレゼンテーショングラフィックスストリームは、映画の字幕をそれぞれ示している。ここで主映像とは画面に表示される通常の映像を示し、副映像とは主映像の中に小さな画面で表示する映像のことである。また、インタラクティブグラフィックスストリームは、画面上にGUI部品を配置することにより作成される対話画面を示している。ビデオストリームは、上記各実施の形態で示した動画像符号化方法または装置、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠した動画像符号化方法または装置によって符号化されている。オーディオストリームは、ドルビーAC−3、Dolby Digital Plus、MLP、DTS、DTS−HD、または、リニアPCMのなどの方式で符号化されている。
【0161】
多重化データに含まれる各ストリームはPIDによって識別される。例えば、映画の映像に利用するビデオストリームには0x1011が、オーディオストリームには0x1100から0x111Fまでが、プレゼンテーショングラフィックスには0x1200から0x121Fまでが、インタラクティブグラフィックスストリームには0x1400から0x141Fまでが、映画の副映像に利用するビデオストリームには0x1B00から0x1B1Fまで、主音声とミキシングする副音声に利用するオーディオストリームには0x1A00から0x1A1Fが、それぞれ割り当てられている。
【0162】
図17は、多重化データがどのように多重化されるかを模式的に示す図である。まず、複数のビデオフレームからなるビデオストリームex235、複数のオーディオフレームからなるオーディオストリームex238を、それぞれPESパケット列ex236およびex239に変換し、TSパケットex237およびex240に変換する。同じくプレゼンテーショングラフィックスストリームex241およびインタラクティブグラフィックスex244のデータをそれぞれPESパケット列ex242およびex245に変換し、さらにTSパケットex243およびex246に変換する。多重化データex247はこれらのTSパケットを1本のストリームに多重化することで構成される。
【0163】
図18は、PESパケット列に、ビデオストリームがどのように格納されるかをさらに詳しく示している。
図18における第1段目はビデオストリームのビデオフレーム列を示す。第2段目は、PESパケット列を示す。
図18の矢印yy1,yy2,yy3,yy4に示すように、ビデオストリームにおける複数のVideo Presentation UnitであるIピクチャ、Bピクチャ、Pピクチャは、ピクチャ毎に分割され、PESパケットのペイロードに格納される。各PESパケットはPESヘッダを持ち、PESヘッダには、ピクチャの表示時刻であるPTS(Presentation Time−Stamp)やピクチャの復号時刻であるDTS(Decoding Time−Stamp)が格納される。
【0164】
図19は、多重化データに最終的に書き込まれる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フィルタへの転送開始時刻を示す。多重化データには
図19下段に示すようにソースパケットが並ぶこととなり、多重化データの先頭からインクリメントする番号はSPN(ソースパケットナンバー)と呼ばれる。
【0165】
また、多重化データに含まれる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時間の情報を持つ。
【0166】
図20はPMTのデータ構造を詳しく説明する図である。PMTの先頭には、そのPMTに含まれるデータの長さなどを記したPMTヘッダが配置される。その後ろには、多重化データに関するディスクリプタが複数配置される。上記コピーコントロール情報などが、ディスクリプタとして記載される。ディスクリプタの後には、多重化データに含まれる各ストリームに関するストリーム情報が複数配置される。ストリーム情報は、ストリームの圧縮コーデックなどを識別するためストリームタイプ、ストリームのPID、ストリームの属性情報(フレームレート、アスペクト比など)が記載されたストリームディスクリプタから構成される。ストリームディスクリプタは多重化データに存在するストリームの数だけ存在する。
【0167】
記録媒体などに記録する場合には、上記多重化データは、多重化データ情報ファイルと共に記録される。
【0168】
多重化データ情報ファイルは、
図21に示すように多重化データの管理情報であり、多重化データと1対1に対応し、多重化データ情報、ストリーム属性情報とエントリマップから構成される。
【0169】
多重化データ情報は
図21に示すようにシステムレート、再生開始時刻、再生終了時刻から構成されている。システムレートは多重化データの、後述するシステムターゲットデコーダのPIDフィルタへの最大転送レートを示す。多重化データ中に含まれるATSの間隔はシステムレート以下になるように設定されている。再生開始時刻は多重化データの先頭のビデオフレームのPTSであり、再生終了時刻は多重化データの終端のビデオフレームのPTSに1フレーム分の再生間隔を足したものが設定される。
【0170】
ストリーム属性情報は
図22に示すように、多重化データに含まれる各ストリームについての属性情報が、PID毎に登録される。属性情報はビデオストリーム、オーディオストリーム、プレゼンテーショングラフィックスストリーム、インタラクティブグラフィックスストリーム毎に異なる情報を持つ。ビデオストリーム属性情報は、そのビデオストリームがどのような圧縮コーデックで圧縮されたか、ビデオストリームを構成する個々のピクチャデータの解像度がどれだけであるか、アスペクト比はどれだけであるか、フレームレートはどれだけであるかなどの情報を持つ。オーディオストリーム属性情報は、そのオーディオストリームがどのような圧縮コーデックで圧縮されたか、そのオーディオストリームに含まれるチャンネル数は何であるか、何の言語に対応するか、サンプリング周波数がどれだけであるかなどの情報を持つ。これらの情報は、プレーヤが再生する前のデコーダの初期化などに利用される。
【0171】
本実施の形態においては、上記多重化データのうち、PMTに含まれるストリームタイプを利用する。また、記録媒体に多重化データが記録されている場合には、多重化データ情報に含まれる、ビデオストリーム属性情報を利用する。具体的には、上記各実施の形態で示した動画像符号化方法または装置において、PMTに含まれるストリームタイプ、または、ビデオストリーム属性情報に対し、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示す固有の情報を設定するステップまたは手段を設ける。この構成により、上記各実施の形態で示した動画像符号化方法または装置によって生成した映像データと、他の規格に準拠する映像データとを識別することが可能になる。
【0172】
また、本実施の形態における動画像復号化方法のステップを
図23に示す。ステップexS100において、多重化データからPMTに含まれるストリームタイプ、または、多重化データ情報に含まれるビデオストリーム属性情報を取得する。次に、ステップexS101において、ストリームタイプ、または、ビデオストリーム属性情報が上記各実施の形態で示した動画像符号化方法または装置によって生成された多重化データであることを示しているか否かを判断する。そして、ストリームタイプ、または、ビデオストリーム属性情報が上記各実施の形態で示した動画像符号化方法または装置によって生成されたものであると判断された場合には、ステップexS102において、上記各実施の形態で示した動画像復号方法により候補から参照ピクチャや動きベクトルを選択して復号を行う。また、ストリームタイプ、または、ビデオストリーム属性情報が、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠するものであることを示している場合には、ステップexS103において、従来の規格に準拠した動画像復号方法により復号を行う。これは例えば、属性情報がMPEG4−AVC規格に準拠するものであることを示している場合であれば、複数候補から選択するのではなく、空間的又は時間的に隣接する周辺ブロックの動きベクトルから算出される動きベクトルを用いて復号を行う。
【0173】
このように、ストリームタイプ、または、ビデオストリーム属性情報に新たな固有値を設定することにより、復号する際に、上記各実施の形態で示した動画像復号化方法または装置で復号可能であるかを判断することができる。従って、異なる規格に準拠する多重化データが入力された場合であっても、適切な復号化方法または装置を選択することができるため、エラーを生じることなく復号することが可能となる。また、本実施の形態で示した動画像符号化方法または装置、または、動画像復号方法または装置を、上述したいずれの機器・システムに用いることも可能である。
【0174】
(実施の形態4)
上記各実施の形態で示した動画像符号化方法および装置、動画像復号化方法および装置は、典型的には集積回路であるLSIで実現される。一例として、
図24に1チップ化されたLSIex500の構成を示す。LSIex500は、以下に説明する要素ex501、ex502、ex503、ex504、ex505、ex506、ex507、ex508、ex509を備え、各要素はバスex510を介して接続している。電源回路部ex505は電源がオン状態の場合に各部に対して電力を供給することで動作可能な状態に起動する。
【0175】
例えば符号化処理を行う場合には、LSIex500は、CPUex502、メモリコントローラex503、ストリームコントローラex504、駆動周波数制御部ex512等を有する制御部ex501の制御に基づいて、AV I/Oex509によりマイクex117やカメラex113等からAV信号を入力する。入力されたAV信号は、一旦SDRAM等の外部のメモリex511に蓄積される。制御部ex501の制御に基づいて、蓄積したデータは処理量や処理速度に応じて適宜複数回に分けるなどされ信号処理部ex507に送られ、信号処理部ex507において音声信号の符号化および/または映像信号の符号化が行われる。ここで映像信号の符号化処理は上記各実施の形態で説明した符号化処理である。信号処理部ex507ではさらに、場合により符号化された音声データと符号化された映像データを多重化するなどの処理を行い、ストリームI/Oex506から外部に出力する。この出力された多重化データは、基地局ex107に向けて送信されたり、または記録メディアex215に書き込まれたりする。なお、多重化する際には同期するよう、一旦バッファex508にデータを蓄積するとよい。
【0176】
なお、上記では、メモリex511がLSIex500の外部の構成として説明したが、LSIex500の内部に含まれる構成であってもよい。バッファex508も1つに限ったものではなく、複数のバッファを備えていてもよい。また、LSIex500は1チップ化されてもよいし、複数チップ化されてもよい。
【0177】
また、上記では、制御部ex501が、CPUex502、メモリコントローラex503、ストリームコントローラex504、駆動周波数制御部ex512等を有するとしているが、制御部ex501の構成は、この構成に限らない。例えば、信号処理部ex507がさらにCPUを備える構成であってもよい。信号処理部ex507の内部にもCPUを設けることにより、処理速度をより向上させることが可能になる。また、他の例として、CPUex502が信号処理部ex507、または信号処理部ex507の一部である例えば音声信号処理部を備える構成であってもよい。このような場合には、制御部ex501は、信号処理部ex507、またはその一部を有するCPUex502を備える構成となる。
【0178】
なお、ここでは、LSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
【0179】
また、集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。このようなプログラマブル・ロジック・デバイスは、典型的には、ソフトウェア又はファームウェアを構成するプログラムを、ロードする又はメモリ等から読み込むことで、上記各実施の形態で示した動画像符号化方法、又は動画像復号化方法を実行することができる。
【0180】
さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
【0181】
(実施の形態5)
上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データを復号する場合、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データを復号する場合に比べ、処理量が増加することが考えられる。そのため、LSIex500において、従来の規格に準拠する映像データを復号する際のCPUex502の駆動周波数よりも高い駆動周波数に設定する必要がある。しかし、駆動周波数を高くすると、消費電力が高くなるという課題が生じる。
【0182】
この課題を解決するために、テレビex300、LSIex500などの動画像復号化装置は、映像データがどの規格に準拠するものであるかを識別し、規格に応じて駆動周波数を切替える構成とする。
図25は、本実施の形態における構成ex800を示している。駆動周波数切替え部ex803は、映像データが、上記各実施の形態で示した動画像符号化方法または装置によって生成されたものである場合には、駆動周波数を高く設定する。そして、上記各実施の形態で示した動画像復号化方法を実行する復号処理部ex801に対し、映像データを復号するよう指示する。一方、映像データが、従来の規格に準拠する映像データである場合には、映像データが、上記各実施の形態で示した動画像符号化方法または装置によって生成されたものである場合に比べ、駆動周波数を低く設定する。そして、従来の規格に準拠する復号処理部ex802に対し、映像データを復号するよう指示する。
【0183】
より具体的には、駆動周波数切替え部ex803は、
図24のCPUex502と駆動周波数制御部ex512から構成される。また、上記各実施の形態で示した動画像復号化方法を実行する復号処理部ex801、および、従来の規格に準拠する復号処理部ex802は、
図24の信号処理部ex507に該当する。CPUex502は、映像データがどの規格に準拠するものであるかを識別する。そして、CPUex502からの信号に基づいて、駆動周波数制御部ex512は、駆動周波数を設定する。また、CPUex502からの信号に基づいて、信号処理部ex507は、映像データの復号を行う。ここで、映像データの識別には、例えば、実施の形態3で記載した識別情報を利用することが考えられる。識別情報に関しては、実施の形態3で記載したものに限られず、映像データがどの規格に準拠するか識別できる情報であればよい。例えば、映像データがテレビに利用されるものであるか、ディスクに利用されるものであるかなどを識別する外部信号に基づいて、映像データがどの規格に準拠するものであるか識別可能である場合には、このような外部信号に基づいて識別してもよい。また、CPUex502における駆動周波数の選択は、例えば、
図27のような映像データの規格と、駆動周波数とを対応付けたルックアップテーブルに基づいて行うことが考えられる。ルックアップテーブルを、バッファex508や、LSIの内部メモリに格納しておき、CPUex502がこのルックアップテーブルを参照することにより、駆動周波数を選択することが可能である。
【0184】
図26は、本実施の形態の方法を実施するステップを示している。まず、ステップexS200では、信号処理部ex507において、多重化データから識別情報を取得する。次に、ステップexS201では、CPUex502において、識別情報に基づいて映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものであるか否かを識別する。映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものである場合には、ステップexS202において、駆動周波数を高く設定する信号を、CPUex502が駆動周波数制御部ex512に送る。そして、駆動周波数制御部ex512において、高い駆動周波数に設定される。一方、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する映像データであることを示している場合には、ステップexS203において、駆動周波数を低く設定する信号を、CPUex502が駆動周波数制御部ex512に送る。そして、駆動周波数制御部ex512において、映像データが上記各実施の形態で示した符号化方法または装置によって生成されたものである場合に比べ、低い駆動周波数に設定される。
【0185】
さらに、駆動周波数の切替えに連動して、LSIex500またはLSIex500を含む装置に与える電圧を変更することにより、省電力効果をより高めることが可能である。例えば、駆動周波数を低く設定する場合には、これに伴い、駆動周波数を高く設定している場合に比べ、LSIex500またはLSIex500を含む装置に与える電圧を低く設定することが考えられる。
【0186】
また、駆動周波数の設定方法は、復号する際の処理量が大きい場合に、駆動周波数を高く設定し、復号する際の処理量が小さい場合に、駆動周波数を低く設定すればよく、上述した設定方法に限らない。例えば、MPEG4−AVC規格に準拠する映像データを復号する処理量の方が、上記各実施の形態で示した動画像符号化方法または装置により生成された映像データを復号する処理量よりも大きい場合には、駆動周波数の設定を上述した場合の逆にすることが考えられる。
【0187】
さらに、駆動周波数の設定方法は、駆動周波数を低くする構成に限らない。例えば、識別情報が、上記各実施の形態で示した動画像符号化方法または装置によって生成された映像データであることを示している場合には、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などの規格に準拠する映像データであることを示している場合に比べて、停止時間を短く設定することが考えられる。
【0188】
このように、映像データが準拠する規格に応じて、駆動周波数を切替えることにより、省電力化を図ることが可能になる。また、電池を用いてLSIex500またはLSIex500を含む装置を駆動している場合には、省電力化に伴い、電池の寿命を長くすることが可能である。
【0189】
(実施の形態6)
テレビや、携帯電話など、上述した機器・システムには、異なる規格に準拠する複数の映像データが入力される場合がある。このように、異なる規格に準拠する複数の映像データが入力された場合にも復号できるようにするために、LSIex500の信号処理部ex507が複数の規格に対応している必要がある。しかし、それぞれの規格に対応する信号処理部ex507を個別に用いると、LSIex500の回路規模が大きくなり、また、コストが増加するという課題が生じる。
【0190】
この課題を解決するために、上記各実施の形態で示した動画像復号方法を実行するための復号処理部と、従来のMPEG−2、MPEG4−AVC、VC−1などの規格に準拠する復号処理部とを一部共有化する構成とする。この構成例を
図28Aのex900に示す。例えば、上記各実施の形態で示した動画像復号方法と、MPEG4−AVC規格に準拠する動画像復号方法とは、エントロピー符号化、逆量子化、デブロッキング・フィルタ、動き補償などの処理において処理内容が一部共通する。共通する処理内容については、MPEG4−AVC規格に対応する復号処理部ex902を共有し、MPEG4−AVC規格に対応しない、本発明の一態様に特有の他の処理内容については、専用の復号処理部ex901を用いるという構成が考えられる。特に、本発明の一態様は、インター予測に特徴を有していることから、例えば、インター予測については専用の復号処理部ex901を用い、それ以外のエントロピー復号、逆量子化、デブロッキング・フィルタ、動き補償のいずれか、または、全ての処理については、復号処理部を共有することが考えられる。復号処理部の共有化に関しては、共通する処理内容については、上記各実施の形態で示した動画像復号化方法を実行するための復号処理部を共有し、MPEG4−AVC規格に特有の処理内容については、専用の復号処理部を用いる構成であってもよい。
【0191】
また、処理を一部共有化する他の例を
図28Bのex1000に示す。この例では、本発明の一態様に特有の処理内容に対応した専用の復号処理部ex1001と、他の従来規格に特有の処理内容に対応した専用の復号処理部ex1002と、本発明の一態様に係る動画像復号方法と他の従来規格の動画像復号方法とに共通する処理内容に対応した共用の復号処理部ex1003とを用いる構成としている。ここで、専用の復号処理部ex1001、ex1002は、必ずしも本発明の一態様、または、他の従来規格に特有の処理内容に特化したものではなく、他の汎用処理を実行できるものであってもよい。また、本実施の形態の構成を、LSIex500で実装することも可能である。
【0192】
このように、本発明の一態様に係る動画像復号方法と、従来の規格の動画像復号方法とで共通する処理内容について、復号処理部を共有することにより、LSIの回路規模を小さくし、かつ、コストを低減することが可能である。