(57)【要約】      （修正有）【課題】１画面を分割した領域のそれぞれを複数の符号化装置で並列的に符号化する場合に、分割された領域の符号化順で境界部分のマクロブロックに対する符号化処理を容易とする。【解決手段】１フレームを、マクロブロックが水平方向に連なるマクロブロックライン毎に、符号化部ＡおよびＢに振り分ける。符号化部Ａに対して数マクロブロック分遅延されて符号化部Ｂでの符号化処理が開始される。このとき、符号化部ＡおよびＢにおいて、マクロブロックラインの右端のマクロブロックの量子化を、既に符号化が終了し、ピクチャタイプおよびフレーム内の位置が対応するマクロブロックに対する量子化パラメータを用いて行う。マクロブロックラインにおける最後の量子化に用いられる量子化パラメータを予め知ることができるので、マクロブロックラインの右端と次のマクロブロックラインの左端との量子化パラメータの差分を容易に算出できる。【選択図】図６
2010035146.tif 000002
【特許請求の範囲】
【請求項１】
１画面を所定サイズに分割した符号化ブロックを、該画面の水平方向へのスキャンを垂直方向に繰り返してスキャンして画像データの量子化を行い、該量子化の結果の量子化値を符号化すると共に、該量子化に用いた量子化パラメータの該符号化ブロックのスキャン順に従った差分を符号化する符号化装置であって、
１画面の画像データを前記符号化ブロック単位に分割し、前記スキャン順が連続する複数の該符号化ブロックからなる符号化グループを単位として振り分けて出力する分割手段と、
前記分割手段が振り分けて出力したそれぞれの前記符号化グループの画像データを、互いに並列的に、前記符号化ブロック単位で量子化パラメータを用いて量子化する複数の量子化手段と、
前記量子化手段が前記符号化ブロックに対する量子化に用いた量子化パラメータと、該符号化ブロックの前記スキャン順で直前の前記符号化ブロックに対する量子化に用いた量子化パラメータとの差分を算出する複数の差分算出手段と、
前記複数の量子化手段による前記量子化の結果の量子化値と、前記複数の差分算出手段により算出された前記差分とを符号化して出力する符号化手段と、
前記複数の量子化手段が前記量子化に用いた前記量子化パラメータを保持する保持手段と、
前記量子化手段が量子化する前記符号化グループの中の前記スキャン順で後端の前記符号化ブロックの量子化に用いる前記量子化パラメータとして、前記保持手段に保持された、前記符号化が終了した前記画面の符号化ブロックの量子化に用いた量子化パラメータを適用する量子化制御手段と
を備え、
前記量子化制御手段は、前記量子化手段が量子化を開始する前に、該量子化手段に対する、前記保持手段に保持された、符号化が終了した画面の符号化ブロックの量子化に用いた量子化パラメータの前記適用を行う
ことを特徴とする符号化装置。
【請求項２】
前記量子化制御手段は、
前記スキャン順で後端の符号化ブロックの量子化に用いる量子化パラメータとして、
前記保持手段に保持された、前記符号化が終了した前記画面の、該符号化ブロックに位置が対応する符号化ブロックの量子化に用いた量子化パラメータを適用する
ことを特徴とする請求項１に記載の符号化装置。
【請求項３】
前記量子化制御手段は、前記スキャン順で後端の符号化ブロックの量子化に用いる量子化パラメータとして、
前記保持手段に保持された、前記符号化が終了した前記画面の、該符号化ブロックに位置が対応する符号化ブロックの量子化に用いた量子化パラメータと、該位置が対応する符号化ブロックに対して前記画面で近傍に位置する符号化ブロックの量子化に用いた量子化パラメータとに基づき生成した値を適用する
ことを特徴とする請求項１に記載の符号化装置。
【請求項４】
前記符号化ブロックは、時間的な参照関係が異なる複数のタイプを有し、
前記量子化制御手段は、前記符号化グループの中の前記スキャン順で後端の前記符号化ブロックの量子化に用いる前記量子化パラメータとして、
前記保持手段に保持された、前記符号化が終了した前記画面の、該符号化ブロックに位置および前記タイプが対応する符号化ブロックの量子化に用いた量子化パラメータを適用する
ことを特徴とする請求項１乃至請求項３の何れか１項に記載の符号化装置。
【請求項５】
前記量子化制御手段は、前記量子化手段が前記符号化グループの中のスキャン順で後端の符号化ブロックの量子化に用いる量子化パラメータとして、
前記保持手段に保持された、前記符号化が終了した前記画面の、該符号化グループに対してスキャン順で直後の前記符号化グループの前端の前記符号化ブロックの量子化に用いた量子化パラメータを適用する
ことを特徴とする請求項１に記載の符号化装置。
【請求項６】
前記量子化制御手段は、
他の前記量子化手段が、前記量子化手段が量子化を行う前記符号化ブロックが含まれる前記符号化グループに対してスキャン順で直後の前記符号化グループの前端の符号化ブロックの量子化に用いる量子化パラメータとして、
前記保持手段に保持された、前記符号化が終了した前記画面の、該符号化グループの前端の前記符号化ブロックの量子化に用いた量子化パラメータを適用する
ことを特徴とする請求項１または請求項５に記載の符号化装置。
【請求項７】
前記量子化制御手段は、
前記符号化ブロックのうち前記スキャン順が最も早い符号化ブロックの量子化に用いる量子化パラメータとして、予め決められた量子化パラメータを適用する
ことを特徴とする請求項５または請求項６に記載の符号化装置。
【請求項８】
前記量子化制御手段は、
前記符号化ブロックのうち前記スキャン順が最も早い符号化ブロックの量子化に用いる量子化パラメータとして、該符号化ブロックに基づき設定した量子化パラメータを適用する
ことを特徴とする請求項５または請求項６に記載の符号化装置。
【請求項９】
前記符号化ブロックは、時間的な参照関係が異なる複数のタイプを有し、
前記量子化制御手段は、前記符号化グループの中の前記スキャン順で前端の前記符号化ブロックの量子化に用いる前記量子化パラメータとして、
前記保持手段に保持された、前記符号化が終了した前記画面の、該符号化ブロックに位置および前記タイプが対応する符号化ブロックの量子化に用いた量子化パラメータを適用する
ことを特徴とする請求項４乃至請求項８の何れか１項に記載の符号化装置。
【請求項１０】
１画面を所定サイズに分割した符号化ブロックを、該画面の水平方向へのスキャンを垂直方向に繰り返してスキャンして画像データの量子化を行い、該量子化の結果の量子化値を符号化すると共に、該量子化に用いた量子化パラメータの該符号化ブロックのスキャン順に従った差分を符号化する符号化方法であって、
１画面の画像データを前記符号化ブロック単位に分割し、前記スキャン順が連続する複数の該符号化ブロックからなる符号化グループを単位として振り分けて出力する分割ステップと、
前記分割ステップが振り分けて出力したそれぞれの前記符号化グループの画像データを、互いに並列的に、前記符号化ブロック単位で量子化パラメータを用いて量子化する複数の量子化ステップと、
前記量子化ステップが前記符号化ブロックに対する量子化に用いた量子化パラメータと、該符号化ブロックの前記スキャン順で直前の前記符号化ブロックに対する量子化に用いた量子化パラメータとの差分を算出する複数の差分算出ステップと、
前記複数の量子化ステップによる前記量子化の結果の量子化値と、前記複数の差分算出ステップにより算出された前記差分とを符号化して出力する符号化ステップと、
前記複数の量子化ステップが前記量子化に用いた前記量子化パラメータを保持手段に保持する保持ステップと、
前記量子化ステップが量子化する前記符号化グループの中の前記スキャン順で後端の前記符号化ブロックの量子化に用いる前記量子化パラメータとして、前記保持手段に保持された、前記符号化が終了した前記画面の符号化ブロックの量子化に用いた量子化パラメータを適用する量子化制御ステップと
を備え、
前記量子化制御ステップは、前記量子化ステップが量子化を開始する前に、該量子化ステップに対する、前記保持手段に保持された、符号化が終了した画面の符号化ブロックの量子化に用いた量子化パラメータの前記適用を行う
ことを特徴とする符号化方法。
【請求項１１】
コンピュータを請求項１乃至９の何れか１項に記載の符号化装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像データに対してブロック毎に符号化を行う符号化装置および符号化方法に関する。
【背景技術】
【０００２】
動画像データの圧縮符号化方式として、ＭＰＥＧ２方式やＨ．２６４｜ＡＶＣ方式が知られている。このような圧縮符号化方式では、１フレームまたは１フィールド（以下、画面と呼ぶ）をマクロブロックと呼ばれる所定画素数の領域に分割し、このマクロブロックを単位にして、動き補償予測や直交変換処理、量子化処理、エントロピー符号化を施す。
【０００３】
一方、近年では、動画像データの高解像度化が進み、例えば、地上デジタル放送においては、フルハイビジョン映像と呼ばれる１９２０画素×１０８０画素の映像が用いられることが多くなっている。このような高解像度の動画像データは、単位時間当たりに伝送されるデータ量も膨大なものになるため、圧縮符号化を行う場合に、単体の符号化装置では処理しきれない事態が起こり得る。これを解消するために、特許文献１乃至３には、圧縮符号化を行う動画像データを分割し、それぞれの分割領域毎に符号化装置を用意して処理を行う技術が開示されている。
【０００４】
一例として、図１に例示するように、動画像データを画面の垂直方向にマクロブロック単位で分割して、マクロブロックが水平方向に連なるマクロブロックラインを形成する。そして、２台の符号化装置Ａおよび符号化装置Ｂに対して、奇数ラインおよび偶数ラインのマクロブロックラインをそれぞれ入力して、符号化装置ＡおよびＢでマクロブロックラインを並列的に符号化処理する。
【０００５】
ここで、Ｈ．２６４｜ＡＶＣ方式では、あるマクロブロックに対して符号化または復号化を行う場合、図２に示すように、符号化対象のマクロブロックに対して左横、左斜上、真上および右斜上にそれぞれ位置する４つのマクロブロックの処理結果を参照する。したがって、あるマクロブロックの符号化処理の際には、少なくともそのマクロブロックが参照する必要のあるマクロブロックは、符号化処理が完了してなければならない。
【０００６】
そのため、複数の符号化装置でマクロブロックラインの符号化を並列的に行う場合、工夫が必要となる。例えば、一方の符号化装置の処理タイミングに対して、当該符号化装置が符号化するマクロブロックラインの直下のマクロブロックラインを符号化する符号化装置の処理タイミングを、数マクロブロック分遅らせる。こうすることで、符号化対象のマクロブロックが参照する必要のあるマクロブロックの処理が完了しているようにできる。
【０００７】
また、Ｈ．２６４｜ＡＶＣでは、直交変換係数の量子化に用いる量子化スケールを規定する量子化パラメータに関し、符号化対象マクロブロックの量子化パラメータと、直前に符号化されたマクロブロックの量子化パラメータとの差分値として扱う必要がある。すなわち、量子化パラメータは、画面の左上隅のマクロブロックを基準として、マクロブロックラインを画面の左から右に向けて順次、差分値が算出され、右端に達したら直下のマクロブロックラインに対して、左端から同様にして差分値が算出される。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平０７−２７４１８０号公報
【特許文献２】特開平１０−２３４０４３号公報
【特許文献３】特開２００１−３４６２０１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ここで、画面をマクロブロックラインで分割し、複数の符号化装置にマクロブロックラインを振り分けてそれぞれ処理を行った場合について、図３を参照しながら考える。この場合、量子化を行う量子化部において、量子化パラメータの差分値を、あるマクロブロックラインの右端のマクロブロックと、当該マクロブロックラインに対し画面上で直下に位置するマクロブロックラインの左端のマクロブロックとから求める必要がある。
【００１０】
従来では、このような場合、一方の符号化装置が１マクロブロックラインの処理を終了するまで他方の符号化装置を待たせたり、それぞれ１マクロブロックライン分の量子化パラメータをバッファリングして後で差し替えるといった方法をとる必要があった。前者の場合、全体として処理が遅延してしまうという問題点があった。また、後者の場合、１マクロブロックライン分の量子化パラメータをバッファリングし、符号化済みの符号化データの該当個所に量子化パラメータを挿入する必要があるため、バッファリングするためのメモリが必要になるという問題点があった。さらに、該当個所に量子化パラメータを挿入する必要があるため処理が複雑になるという問題点があった。
【００１１】
したがって、本発明の目的は、１画面を分割した領域のそれぞれを、画面内の符号化順で直前の領域の情報を用いながら複数の符号化装置で並列的に符号化する場合に、分割された領域の符号化順で境界部分のブロックに対する符号化処理が容易な符号化装置および符号化方法を提供することにある。
【課題を解決するための手段】
【００１２】
本発明は、上述した課題を解決するために、１画面を所定サイズに分割した符号化ブロックを、画面の水平方向へのスキャンを垂直方向に繰り返してスキャンして画像データの量子化を行い、量子化の結果の量子化値を符号化すると共に、量子化に用いた量子化パラメータの符号化ブロックのスキャン順に従った差分を符号化する符号化装置であって、１画面の画像データを符号化ブロック単位に分割し、スキャン順が連続する複数の符号化ブロックからなる符号化グループ単位で振り分けて出力する分割手段と、分割手段が振り分けて出力したそれぞれの符号化グループの画像データを、互いに並列的に、符号化ブロック単位で量子化パラメータを用いて量子化する複数の量子化手段と、量子化手段が符号化ブロックに対する量子化に用いた量子化パラメータと、符号化ブロックのスキャン順で直前の符号化ブロックに対する量子化に用いた量子化パラメータとの差分を算出する複数の差分算出手段と、複数の量子化手段による量子化の結果の量子化値と、複数の差分算出手段により算出された差分とを符号化して出力する符号化手段と、複数の量子化手段が量子化に用いた量子化パラメータを保持する保持手段と、量子化手段が量子化する符号化グループの中のスキャン順で後端の符号化ブロックの量子化に用いる量子化パラメータとして、保持手段に保持された、符号化が終了した画面の符号化ブロックの量子化に用いた量子化パラメータを適用する量子化制御手段とを備え、量子化制御手段は、量子化手段が量子化を開始する前に、量子化手段に対する、保持手段に保持された、符号化が終了した画面の符号化ブロックの量子化に用いた量子化パラメータの適用を行うことを特徴とする符号化装置である。
【００１３】
また、本発明は、１画面を所定サイズに分割した符号化ブロックを、画面の水平方向へのスキャンを垂直方向に繰り返してスキャンして画像データの量子化を行い、量子化の結果の量子化値を符号化すると共に、量子化に用いた量子化パラメータの符号化ブロックのスキャン順に従った差分を符号化する符号化方法であって、１画面の画像データを符号化ブロック単位に分割し、スキャン順が連続する複数の符号化ブロックからなる符号化グループ単位で振り分けて出力する分割ステップと、分割ステップが振り分けて出力したそれぞれの符号化グループの画像データを、互いに並列的に、符号化ブロック単位で量子化パラメータを用いて量子化する複数の量子化ステップと、量子化ステップが符号化ブロックに対する量子化に用いた量子化パラメータと、符号化ブロックのスキャン順で直前の符号化ブロックに対する量子化に用いた量子化パラメータとの差分を算出する複数の差分算出ステップと、複数の量子化ステップによる量子化の結果の量子化値と、複数の差分算出ステップにより算出された差分とを符号化して出力する符号化ステップと、複数の量子化ステップが量子化に用いた量子化パラメータを保持手段に保持する保持ステップと、量子化ステップが量子化する符号化グループの中のスキャン順で後端の符号化ブロックの量子化に用いる量子化パラメータとして、保持手段に保持された、符号化が終了した画面の符号化ブロックの量子化に用いた量子化パラメータを適用する量子化制御ステップとを備え、量子化制御ステップは、量子化ステップが量子化を開始する前に、量子化ステップに対する、保持手段に保持された、符号化が終了した画面の符号化ブロックの量子化に用いた量子化パラメータの適用を行うことを特徴とする符号化方法である。
【発明の効果】
【００１４】
本発明は、上述の構成を有するため、１画面を分割した領域のそれぞれを、画面内の符号化順で直前の領域の情報を用いながら複数の符号化装置で並列的に符号化する場合に、分割された領域の符号化順で境界部分のブロックに対する符号化処理が容易である。
【図面の簡単な説明】
【００１５】
【図１】複数の符号化装置で並列的に符号化を行うことを説明するための図。
【図２】マクロブロックの参照関係を説明するための図。
【図３】複数の符号化装置で並列的に符号化を行う処理を説明するための図。
【図４】本発明の実施形態を適用可能な符号化装置の一例の構成を示すブロック図。
【図５】本発明に適用可能な復号装置の一例の構成を示すブロック図。
【図６】本発明の第１の実施形態による符号化処理を説明するための図。
【図７】本発明の第１の実施形態による符号化処理を説明するための図。
【図８】本発明の第１の実施形態の別の例による符号化処理を説明するための図。
【図９】本発明の第２の実施形態による符号化処理を説明するための図。
【発明を実施するための形態】
【００１６】
＜各実施形態に共通の構成＞
以下、図面を参照しながら本発明の実施形態を説明する。図４は、本発明の実施形態を適用可能な符号化装置１００の一例の構成を示す。符号化装置１００は、供給されたベースバンドの動画像データに対し、１画面を所定サイズに分割した符号化ブロック単位で、画面の水平方向にスキャンし更に垂直方向にスキャンして符号化を行う。符号化は、アダマール変換および整数精度ＤＣＴを用いた直交変換および変換係数に対する量子化と、フレーム内予測符号化および動き補償を用いたフレーム間予測符号化とを用い、さらにエントロピー符号化を施すことで行う。
【００１７】
以下では、アダマール変換および整数精度ＤＣＴを用いた直交変換を整数変換と呼び、フレーム内予測符号化およびフレーム間予測符号化をそれぞれイントラ符号化、インター符号化と呼ぶ。
【００１８】
インター符号化により、動き補償の単位（ＭＣブロック）に対して１枚の参照フレームとの予測を行うＰピクチャと、ＭＣブロックに対して時系列的に前後の２枚までの参照フレームとの予測を行うＢピクチャとが形成される。また、イントラ符号化によりＩピクチャが形成される。このように、インター符号化およびイントラ符号化により、時間的な参照関係が異なる複数のタイプのピクチャが形成される。さらに、フレーム間予測符号化では、動画像データを、これらＩピクチャ、ＰピクチャおよびＢピクチャが所定に配列されたＧＯＰ構造を持つデータとして符号化する。
【００１９】
例えば、符号化装置１００が１枚のＩピクチャ、４枚のＰピクチャおよび１０枚のＢピクチャからなる１５フレームで１ＧＯＰを形成する場合、符号化装置１００に入力されるフレームに対し、下記の順にピクチャタイプが割り当てられる。なお、添字は、入力順または表示順を示す。
Ｂ１Ｂ２Ｉ３Ｂ４Ｂ５Ｐ６Ｂ７Ｂ８Ｐ９Ｂ１０Ｂ１１Ｐ１２Ｂ１３Ｂ１４Ｐ１５
【００２０】
ここで、Ｂピクチャは、時系列的に過去のピクチャと共に未来のピクチャを用いて予測符号化を行うため、符号化は、Ｂピクチャの順序をＩピクチャおよびＰピクチャに対して入れ替えて、下記の順序で行われる。なお、Ｉ３ピクチャに続くＢ１ピクチャおよびＢ２ピクチャは、Ｉ３ピクチャと、直前のＧＯＰにおけるＰ１５ピクチャとを用いて予測符号化される。
Ｉ３Ｂ１Ｂ２Ｐ６Ｂ４Ｂ５Ｐ９Ｂ７Ｂ８Ｐ１２Ｂ１０Ｂ１１Ｐ１５Ｂ１３Ｂ１４
【００２１】
この符号化装置１００は、量子化制御手段としての図示されないＣＰＵにより、所定のプログラムに従って制御される。ＣＰＵは、符号化装置１００を専用に制御するものでもよいし、この符号化装置１００が組み込まれるより上位のシステムを制御するものでもよい。ＣＰＵは、図示されないＲＯＭおよびＲＡＭを有し、ＲＯＭに予め格納されたプログラムに従いＲＡＭをワークメモリとして動作し、符号化装置１００の各部を制御する。
【００２２】
符号化装置１００に入力されたベースバンドの動画像データ４００は、分割手段としてのフレーム並び替えおよび分割部４０１で、ピクチャ配列が入力順から符号化順に並べ替られる。さらに、フレーム並び替えおよび分割部４０１は、動画像データ４００を所定サイズ（例えば１６画素×１６画素）のマクロブロックに分割する。マクロブロックは、例えばマクロブロックが水平方向に連なるマクロブロックライン毎に、符号化部４０２−１、４０２−２、…、４０２−ｎに振り分けられて供給される。マクロブロックラインは、換言すれば、スキャン順が水平方向に連続する複数の符号化ブロックからなる符号化グループである。マクロブロックは、スキャン順に従い、画面上の位置で左側から右側へ向けて供給される。すなわち、マクロブロックライン単位での符号化処理は、画面上で左端側を前端として開始され、右端側を後端として終了される。
【００２３】
符号化部４０２−１、４０２−２、…、４０２−ｎは、互いにデータのやりとりが可能なように構成される。例えば、符号化部４０２−１、４０２−２、…、４０２−ｎは、共通してアクセス可能なメモリ４２０を介してデータのやりとりを行うことができる。これに限らず、符号化部４０２−１、４０２−２、…、４０２−ｎ間で通信を行ったり、符号化装置１００を制御するＣＰＵを介して情報のやりとりを行うようにもできる。
【００２４】
なお、符号化部４０２−１、４０２−２、…、４０２−ｎは、それぞれ独立したハードウェアで構成してもよいし、１つのハードウェア内で処理を分割してもよい。また、符号化部４０２−１、４０２−２、…、４０２−ｎをソフトウェアで構成することもできる。この場合、符号化部４０２−１、４０２−２、…、４０２−ｎの動作をそれぞれ独立したＣＰＵ上で行ってもよいし、１のＣＰＵ上で時分割で行ってもよい。また、複数のコアから構成されるＣＰＵにおいて、当該複数のコアのそれぞれに符号化部４０２−１、４０２−２、…、４０２−ｎの処理を割り当てることもできる。
【００２５】
以下では、符号化部４０２が符号化部４０２−１、４０２−２、…、４０２−ｎを代表するものとして説明する。符号化部４０２は、マクロブロック単位で後述する各種処理を行う。ここで、同一フレーム内において、符号化対象のマクロブロックと、当該マクロブロックの近傍のマクロブロックとの間には、図２を用いて既に説明したような参照関係がある。すなわち、あるマクロブロックは、当該マクロブロックに対して左辺、左上隅点、上辺および右上隅点で接する４つのマクロブロックを参照することができる。
【００２６】
そのため、各符号化部における符号化処理の開始タイミングを、各符号化部に振り分けられたマクロブロックラインのフレーム内での位置に応じて、直上のマクロブロックラインの符号化開始タイミングに対して２マクロブロックタイミング以上、遅延させる。
【００２７】
フレーム並び替えおよび分割部４０１からマクロブロック単位で出力された画像データは、減算器４０３の被減算入力に入力されると共に、動き検出部４１４に供給される。動き検出部４１４は、フレーム並び替えおよび分割部４０１から供給された画像データにおける動きベクトルを検出し、検出した動きベクトル情報をインター予測部４１３とエントロピー符号化部４１６とに出力する。
【００２８】
減算器４０３は、被減算入力に入力された画像データから、後述するスイッチ４１５から出力される予測画像データを減算し、画像残差データを生成する。画像残差データは、直交変換部４０４でアダマール変換や整数精度ＤＣＴといった直交変換処理によりＤＣＴ係数に変換される。
【００２９】
このＤＣＴ係数は、量子化手段としての量子化部４０５で所定の量子化パラメータを用いて量子化される。量子化パラメータは、ＤＣＴ係数を量子化する際の量子化ステップと所定の関係を有するパラメータで、例えば量子化パラメータと量子化ステップの対数が比例するように決められる。量子化ステップおよび量子化パラメータは、マクロブロック単位で変更することが可能である。例えば、エントロピー符号化部４１６で発生した符号量に基づき、マクロブロック毎の符号量が一定範囲内になるように、量子化パラメータを制御する。量子化部４０５から出力された量子化値は、エントロピー符号化部４１６に供給される。
【００３０】
差分算出手段としての量子化部４０５は、あるマクロブロックの量子化に用いた量子化パラメータと、画面上で当該マクロブロックの直前に位置するマクロブロックの量子化に用いた量子化パラメータとの差分を算出する。また、詳細は後述するが、必要に応じて、ある量子化パラメータと、並列的に符号化を行う他の符号化部が量子化した際の量子化パラメータとの差分を算出する。算出された量子化パラメータの差分値は、量子化値に付加されて量子化部４０５から出力される。
【００３１】
なお、各符号化部４０２−１、４０２−２、…、４０２−ｎにおいて、量子化部４０５が量子化の際に用いた量子化パラメータは、例えば保持手段としてのメモリ４２０に記憶される。並列的に符号化を行う他の符号化部による量子化パラメータは、このメモリ４２０から読み出して取得することができる。これに限らず、符号化部４０２−１、４０２−２、…、４０２−ｎを全体として制御するＣＰＵが、ＲＡＭなどに量子化パラメータを保持するようにしてもよい。
【００３２】
量子化部４０５から出力された量子化値は、逆量子化部４０６にも供給される。量子化値は、逆量子化部４０６で逆量子化され、逆直交変換部４０７で逆直交変換され、ローカルデコード画像データとされる。ローカルデコード画像データは、加算器４０８でスイッチ４１５から出力される予測画像データが加算され、再構成画像データが形成される。再構成画像データは、フレームメモリ４０９に格納されると共に、デブロッキングフィルタ４１０を介してフレームメモリ４１１に格納される。デブロッキングフィルタ４１０は、再構成画像データに対してフィルタ処理を施し、符号化歪を軽減させる。
【００３３】
イントラ予測部４１２は、フレームメモリ４０９に格納された再構成画像データを用いてフレーム内予測処理を行い、予測画像データを生成する。イントラ予測部４１２から出力されたイントラ予測画像データは、スイッチ４１５の一方の入力端に供給される。
【００３４】
インター予測部４１３は、フレームメモリ４１１に格納された再構成画像と、動き検出部４１４により検出された動きベクトルとに基づきフレーム間予測処理を行い、インター予測画像データを生成する。インター予測画像データは、スイッチ４１５の他方の入力端に供給される。
【００３５】
スイッチ４１５は、イントラ予測およびインター予測の何方を用いるかを選択する。イントラ予測部４１２から出力されたイントラ予測画像データと、インター予測部４１３から出力されたインター予測画像データとのうち一方を選択し、選択された予測画像データを減算器４０３の減算入力に供給すると共に、加算器４０８に供給する。
【００３６】
エントロピー符号化部４１６は、各符号化部４０２−１、４０２−２、…、４０２−ｎそれぞれから出力されたデータを図示されないバッファメモリに溜め込む。そして、バッファメモリに溜め込まれたデータをエントロピー符号化して、例えば画面の並び順に従って符号が配列された符号化ストリームとして出力する。
【００３７】
エントロピー符号化を行うデータとしては、量子化部４０５の出力の量子化値および量子化パラメータ、動き検出部４１４の出力の動きベクトル情報、イントラ符号化およびインター符号化の何れを行ったかを示す情報（マクロブロックタイプ）などがある。量子化パラメータは、直前のマクロブロックの量子化パラメータとの差分がエントロピー符号化される。また、マクロブロックのデータのそれぞれには、マクロブロックの画面上の位置を示す位置情報が付加される。
【００３８】
図５は、本発明に適用可能な復号装置１０１の一例の構成を示す。この復号装置１０１は、図示されないＣＰＵにより、所定のプログラムに従って制御される。ＣＰＵは、復号装置１０１を専用に制御するものでもよいし、この復号装置１０１が組み込まれるより上位のシステムを制御するものでもよい。ＣＰＵは、図示されないＲＯＭおよびＲＡＭを有し、ＲＯＭに予め格納されたプログラムに従いＲＡＭをワークメモリとして動作し、復号装置１０１の各部を制御する。
【００３９】
復号装置１０１に入力された符号化ストリームは、エントロピー復号部５０１に供給され、エントロピー符号を復号されマクロブロック毎の復号データとされる。このとき、エントロピー復号部５０１は、符号化ストリーム中に含まれる量子化パラメータの差分情報を用いて、マクロブロック毎の量子化パラメータを復元する。マクロブロック毎の復号データは、位置情報に基づきそれぞれ対応する復号部５０２−１、５０２−２、…、５０２−ｎに供給される。
【００４０】
復号部５０２−１、５０２−２、…、５０２−ｎは、互いにデータのやりとりが可能なように構成される。例えば、復号部５０２−１、５０２−２、…、５０２−ｎは、共通してアクセス可能なメモリ５２０を介してデータのやりとりを行うことができる。これに限らず、復号部５０２−１、５０２−２、…、５０２−ｎ間で通信を行ったり、復号装置１０１を制御するＣＰＵを介してデータのやりとりを行うようにもできる。
【００４１】
なお、復号部５０２−１、５０２−２、…、５０２−ｎは、それぞれ独立したハードウェアで構成してもよいし、１つのハードウェア内で処理を分割してもよい。また、復号部５０２−１、５０２−２、…、５０２−ｎをソフトウェアで構成することもできる。この場合、復号部５０２−１、５０２−２、…、５０２−ｎの動作をそれぞれ独立したＣＰＵ上で行ってもよいし、１のＣＰＵ上で時分割で行ってもよい。また、複数のコアから構成されるＣＰＵにおいて、当該複数のコアのそれぞれに復号部５０２−１、５０２−２、…、５０２−ｎの処理を割り当てることもできる。
【００４２】
以下では、復号部５０２が復号部５０２−１、５０２−２、…、５０２−ｎを代表するものとして説明する。復号部５０２は、マクロブロック単位で後述する各種処理を行う。
【００４３】
エントロピー復号部５０１から出力された復号データは、スイッチ回路５１０に供給されると共に、逆量子化部５０３に供給される。逆量子化部５０３は、復号データに含まれる量子化パラメータの差分データに基づき量子化パラメータを再構成し、逆量子化処理を行う。復号部間でのマクロブロックの処理の境界部分における量子化パラメータの差分データは、例えば、メモリ５２０を用いて、並列的に復号処理を行う他の復号部とデータのやりとりを行うことで取得することができる。逆量子化部５０３の出力は、逆直交変換部５０４に供給されて逆直交変換処理され、復号画像残差データとされる。この復号画像残差データは、加算器５０５に入力される。
【００４４】
スイッチ回路５１０の出力がインター予測部５０８またはイントラ予測部５０９に供給される。インター予測部５０８は、後述するフレームメモリ５０７に格納されたフレーム画像データを参照フレームとして用いて、復号データに含まれる動きベクトルを参照して動き補償を行い、予測ブロックを生成する。また、イントラ予測部５０９は、動き補償を行わずにそのまま予測ブロックとなるマクロブロック（イントラマクロブロック）が格納されている。スイッチ回路５１０は、供給される復号データのマクロブロックタイプに応じて、インター予測部５０８およびイントラ予測部５０９のうち一方を選択する。スイッチ回路５１０の選択に応じてインター予測部５０８またはイントラ予測部５０９から出力された予測ブロックは、加算器５０５に入力される。
【００４５】
逆直交変換部５０４から出力された復号画像残差データと、インター予測部５０８またはイントラ予測部５０９から出力された予測ブロックとが加算器５０５で加算される。加算器５０５の加算出力は、さらにデブロッキングフィルタ５０６でフィルタ処理を施され、復号マクロブロックとして復号部５０２から出力される。復号部５０２−１、５０２−２、…、５０２−ｎから出力された復号マクロブロックは、それぞれフレームメモリ５０７に格納される。フレームメモリ５０７に格納された復号マクロブロックは、所定のタイミングで出力される。
【００４６】
＜第１の実施形態＞
次に、本発明の第１の実施形態について、図６〜図８を用いて説明する。本第１の実施形態では、マクロブロックを量子化部４０５で量子化する際の量子化パラメータとして、符号化済みの、当該マクロブロックとピクチャタイプが同じで画面上の位置が対応するマクロブロックの量子化に用いた量子化パラメータを用いる。
【００４７】
図６を用いて、上述の処理についてより具体的に説明する。図６（ａ）に例示されるフレーム（またはフィールド）を、マクロブロックライン毎に交互に符号化部Ａおよび符号化部Ｂに振り分け、符号化部Ａおよび符号化部Ｂで、振り分けられた画像データに対して並列的に符号化処理を施す。なお、１フレームは、１画面に対応するものとする。この例では、図６（ａ）に斜線を付して示されるマクロブロックラインが符号化部Ｂに振り分けられ、白抜きで示されるマクロブロックラインが符号化部Ａに振り分けられている。
【００４８】
図６（ａ）において、符号化部Ｂに振り分けるマクロブロックラインの左端に位置するマクロブロック６００の量子化を行う場合について考える。この場合、量子化部４０５は、当該量子化に用いた量子化パラメータと、当該マクロブロックラインに対して画面上で直上に位置するマクロブロックラインにおける右端のマクロブロック６０１Ａの量子化に用いた量子化パラメータとの差分を算出する必要がある。
【００４９】
マクロブロック６０１Ａは、符号化部Ａにより符号化される。本発明を適用しない場合、例えばマクロブロック６０１Ａが符号化された直後から、符号化部Ｂでマクロブロック６００の符号化を開始させることで、マクロブロック６０１Ａとマクロブロック６００との間で量子化パラメータの差分を求めることが可能となる。すなわち、符号化部Ｂは、符号化部Ａがマクロブロック６０１Ａの量子化を完了するまで、マクロブロック６００の次のマクロブロックの量子化処理を開始できないことになる。
【００５０】
そのため、本発明の第１の実施形態では、符号化部Ａは、マクロブロック６０１Ａを、既に符号化が完了しており、マクロブロック６０１Ａとピクチャタイプおよび画面上の位置が対応しているマクロブロックの量子化パラメータを用いて量子化する。図６（ｂ）の例において、既に符号化され、マクロブロック６０１Ａとピクチャタイプおよび位置が対応するマクロブロックがマクロブロック６０１Ｂであるものとする。符号化部Ａは、マクロブロック６０１Ａを、マクロブロック６０１Ｂの量子化に用いた量子化パラメータを使って量子化する。
【００５１】
例えば、符号化部Ａは、マクロブロック６０１Ａを量子化する際に、マクロブロック６０１Ｂを量子化した際に用いた量子化パラメータをメモリ４２０から読み出す。そして、符号化部Ａは、読み出したこの量子化パラメータを用いて、マクロブロック６０１Ａの量子化処理を行う。
【００５２】
また、上述したように、同一画面内におけるマクロブロックの、近傍のマクロブロックに対する参照関係に基づき、符号化部Ｂは、符号化の開始タイミングが少なくとも２マクロブロック分、符号化部Ａに対して遅延される。この場合、符号化部Ａが次のマクロブロックラインの符号化を開始する時点で、当該マクロブロックラインに対して画面上で直上に位置するマクロブロックラインの左端のマクロブロックを量子化した際の量子化パラメータを取得できない。そのため、符号化部Ｂにおいても、同様にして、マクロブロックラインの右端のマクロブロックを、既に符号化され、ピクチャタイプおよび位置が対応するマクロブロックを量子化する際の量子化パラメータを用いて量子化する。
【００５３】
尚、他のピクチャの位置が対応するマクロブロックの量子化パラメータを、量子化対象のマクロブロックの量子化パラメータとして用いると、該マクロブロックに対して水平方向に隣接するマクロブロックの量子化パラメータとの連続性が失われる可能性がある。ここで、画像データにおいて、時間的に連続するフレーム間における、画面上で位置が対応するブロックは、高い相関を持つことが知られている。そのため、実際の復号画像に対する影響は小さいと考えられる。
【００５４】
図７を用いて、マクロブロックの量子化を、既に符号化された、ピクチャタイプおよびフレーム内での位置が対応するマクロブロックの量子化に用いた量子化パラメータを使って行うことについて、より具体的に説明する。
【００５５】
ここでは、図７の上側に例示されるように、１枚のＩピクチャと、４枚のＰピクチャと、１０枚のＢピクチャの、合計で１５枚のピクチャから１ＧＯＰが構成されているものとする。なお、図７は、各ピクチャが符号化順に並べられている。各ピクチャに記される数字はＧＯＰ内での並び順を示す。各ピクチャの順番は、上述したように、
Ｉ３Ｂ１Ｂ２Ｐ６Ｂ４Ｂ５Ｐ９Ｂ７Ｂ８Ｐ１２Ｂ１０Ｂ１１Ｐ１５Ｂ１３Ｂ１４
となる（添字は入力順を示す）。
【００５６】
一例として、ＧＯＰ内において符号化順で１０番目に位置するＰピクチャ＃１０の右端のマクロブロック６１０を、量子化部４０５で量子化する場合について考える。この場合、既に符号化が完了している、Ｐピクチャ＃１０より符号化順が前のＰピクチャ（例えばＰピクチャ＃７）の、マクロブロック６１０に対して画面上の位置が対応するマクロブロックは、マクロブロック６１１とする。量子化部４０５は、このマクロブロック６１１の量子化に用いた量子化パラメータを使って、マクロブロック６１０を量子化する。
【００５７】
Ｂピクチャの場合も同様である。例えば、６番目のＢピクチャ＃６の右端のマクロブロックを符号化する際には、既に符号化が完了している５番目のＢピクチャ＃５における位置が対応するマクロブロックの量子化パラメータを用いて量子化を行う。
【００５８】
Ｉピクチャの場合、ＧＯＰ内に符号化が完了した他のＩピクチャが存在しないので、１つ前のＧＯＰにおけるＩピクチャのデータを用いる。同様に、ＧＯＰ内で最初に現れるピクチャタイプのピクチャを符号化する際には、１つ前のＧＯＰにおける、同一のピクチャタイプのデータを用いる。
【００５９】
なお、上述では、１フレームの符号化を２つの符号化部ＡおよびＢにより並列的に行う場合について説明したが、これはこの例に限定されない。すなわち、本第１の実施形態は、１フレームの符号化をｎ個の符号化部４０２−１、４０２−２、…、４０２−ｎにより、マクロブロックライン単位で振り分けて行う場合にも適用できる。
【００６０】
以上のように処理を行うことで、１つの画面を複数の符号化部で並列的に符号化するようなシステムにおいて、ある符号化部で用いる量子化パラメータの値が他の符号化部の処理結果に関わらず決まる。そのため、符号化順が画面上で連続するマクロブロックが異なる符号化部で符号化される境界部分において、当該マクロブロックに対する量子化パラメータの差分値を容易に求めることが可能となる。したがって、当該境界部分における符号化制御を容易に行うことができる。
【００６１】
＜第１の実施形態の別の例＞
次に、本発明の第１の実施形態の別の例について説明する。上述した第１の実施形態では、符号化順で前に位置する、ピクチャタイプおよび画面上の位置が対応するマクロブロックの量子化パラメータを順次用いるようにしている。この場合、１本の動画像データ内の、ピクチャタイプおよび画面上の位置が対応するマクロブロックの量子化パラメータが全て同一の値になってしまう。
【００６２】
そこで、図８に例示されるように、マクロブロック６２０を量子化部４０５が量子化する際に、同じピクチャタイプで同位置のマクロブロック６２１に加えて、その近傍のマクロブロック６２２および６２３の量子化パラメータをさらに用いてもよい。この場合、例えば、マクロブロック６２１、６２２および６２３にそれぞれ対応する量子化パラメータの加重平均を求め、この加重平均値を量子化パラメータとして用いてマクロブロック６２０の量子化を行うことが考えられる。
【００６３】
これに限らず、量子化パラメータの差分値を所定のタイミングでリセットすることもできる。例えば、ＧＯＰを単位として所定のフレーム毎に量子化パラメータの差分値をリセットする。また例えば、量子化パラメータの差分値をリセットするタイミングを、量子化パラメータの変化に応じて決めることも考えられる。すなわち、シーンチェンジなどにより画像データの内容があるフレームを境に大きく変化した場合には、量子化パラメータも大きく変化することが予測される。
【００６４】
また、本第１の実施形態においては、あるフレーム（またはフィールド）を符号化する際に、当該フレームより前に符号化が完了したフレームのデータを用いる必要がある。そのため、各符号化部４０２−１、４０２−２、…、４０２−ｎのそれぞれについて、ピクチャタイプ毎に最初に量子化が行われる、画面上のそれぞれの位置のマクロブロックには、量子化パラメータの初期値が必要となる。この量子化パラメータの初期値は、例えば、予め所定の方法で求めてメモリ４２０に格納しておく。量子化パラメータの初期値は、例えばＭＰＥＧ２  ＴＭ５（Ｔｅｓｔ  Ｍｏｄｅｌ  ５）方式を用いて算出される量子化パラメータの初期値を用いることができる。
【００６５】
以下、ＭＰＥＧ２  ＴＭ５方式での量子化パラメータ算出方法を説明する。なお、Ｉピクチャ、Ｐピクチャ、Ｂピクチャごとに異なる定数や係数はそれぞれｉ、ｐ、ｂの添字をつけて区別する。
【００６６】
まず、ピクチャタイプごとの目標符号量（Ｔｉ，Ｔｐ，Ｔｂ）を、以下の式に従って決定する。
【００６７】
【数１】
2010035146.tif 000003
Ｘｉ＝Ｓｉ×Ｑｉ， Ｘｐ＝Ｓｐ×Ｑｐ， Ｘｂ＝Ｓｂ×Ｑｂ
Ｘｉ＿ｉｎｉｔ＝１６０×Ｂｉｔ＿Ｒａｔｅ／１１５
Ｘｐ＿ｉｎｉｔ＝６０×Ｂｉｔ＿Ｒａｔｅ／１１５
Ｘｂ＿ｉｎｉｔ＝４２×Ｂｉｔ＿ｒａｔｅ／１１５
【００６８】
ここで、Ｋｐ，Ｋｂは量子化マトリクスに依存する恒常な定数で、通常、Ｋｐ＝１．０、Ｋｂ＝１．４である。
【００６９】
ＲはＧＯＰ内で割り当てることができる残りビット数、Ｎｐ，ＮｂはＧＯＰ中の残り（未符号化）Ｐ、Ｂピクチャ数を示す。Ｓｉ，Ｓｐ，Ｓｂは直前のピクチャタイプ毎の発生符号量、Ｑｉ，Ｑｐ，Ｑｂは直前の同ピクチャタイプの量子化パラメータ平均値、Ｘｉ，Ｘｐ，Ｘｂはピクチャの複雑度（Ｃｏｍｐｌｅｘｉｔｙ）を示す。Ｘｉ＿ｉｎｉｔ，Ｘｐ＿ｉｎｉｔ，Ｘｂ＿ｉｎｉｔはＸｉ，Ｘｐ，Ｘｂの初期値を示す。
また、Ｂｉｔ＿Ｒａｔｅは符号化装置に定められている、出力データを媒体に記録する際の品質を表す数値で（単位ｂｐｓ）、Ｐｉｃｔｕｒｅ＿Ｒａｔｅは１秒間あたりのピクチャ数を示す。
量子化パラメータの初期値を求める場合、Ｘｉ，Ｘｐ，Ｘｂの初期値を適用して、ピクチャタイプごとの目標符号量（Ｔｉ，Ｔｐ，Ｔｂ）を決定する。
【００７０】
次に、求めた目標符号量に従って、量子化パラメータＱＰを以下の式に従って算出する。
【００７１】
【数２】
2010035146.tif 000004
【００７２】
ここで、ｄ＿ｊは仮想バッファフルネス（占有量）であり、量子化パラメータを求めるピクチャのピクチャタイプに応じてｄｉ＿ｊ，ｄｐ＿ｊ，ｄｂ＿ｊを用いる。ｄｉ＿ｉｎｉｔ，ｄｐ＿ｉｎｉｔ，ｄｂ＿ｉｎｉｔは仮想バッファフルネスの初期値である。ＭＢ＿ｃｎｔはピクチャ内のマクロブロック数であり、ｊは１からＭＢ＿ｃｎｔまでの値を取る整数である。Ｂ＿ｊはピクチャ開始からＭＢ＿ｊまでに発生した符合量（ｂｉｔｓ）、ｒはリアクションパラメータ（制御感度）である。
量子化パラメータの初期値を求める場合、ピクチャタイプに応じてｄｉ＿ｊ，ｄｐ＿ｊ，ｄｂ＿ｊの何れかを算出すればよい。
【００７３】
このようにして、例えば１本の動画像における最初のフレームのような、符号化が完了したフレームが存在しないフレームについての量子化パラメータ（量子化パラメータの初期値）を求めることができる。
【００７４】
なお、ここで説明したＭＰＥＧ２  ＴＭ５方式による量子化パラメータ算出は、初期値算出後の、符号化が完了したフレームが存在するフレームについての量子化パラメータの算出にも適用できる。
【００７５】
＜第２の実施形態＞
次に、本発明の第２の実施形態について説明する。本第２の実施形態では、上述した第１の実施形態と同様に、１つのフレーム（またはフィールド）を、マクロブロックライン毎に複数の符号化部４０２−１、４０２−２、…、４０２−ｎに振り分けて並列的に符号化を行う。
【００７６】
本発明の第２の実施形態では、マクロブロックラインの右端に位置するマクロブロックの量子化を、次のように行う。すなわち、量子化を、当該マクロブロックラインと並列的に処理される、画面上で当該マクロブロックラインの直下に位置するマクロブロックラインの左端のマクロブロックに対する量子化パラメータを用いて行う。また、当該左端のマクロブロックの量子化は、既に符号化が行われ、当該左端のマクロブロックとピクチャタイプおよび画面上の位置が対応するマクロブロックの量子化パラメータを用いて行う。
【００７７】
なお、画面上で左上隅に位置するマクロブロックについては、所定の量子化パラメータを用いて量子化を行う。例えば、既に符号化が行われ、ピクチャタイプが対応し画面上で左上隅に位置するマクロブロックを量子化する際に用いた量子化パラメータを、当該所定の量子化パラメータに適用できる。これに限らず、量子化部４０５において、当該マクロブロックデータに基づき生成した量子化パラメータを用いてもよい。予め設定した量子化パラメータを用いることもできる。
【００７８】
図９を用いて、より具体的に説明する。ここでは、上述した第１の実施形態の場合と同様にして、１つのフレームまたはフィールドを、マクロブロックライン毎に符号化部Ａおよび符号化部Ｂに振り分け、符号化部Ａおよび符号化部Ｂで並列的に符号化を行うものとする。図９において上から奇数行目のマクロブロックラインが符号化部Ａに、偶数行目のマクロブロックラインが符号化部Ｂにそれぞれ振り分けられるものとする。
【００７９】
符号化部Ａ、Ｂに振り分けられるマクロブロックラインの左端のマクロブロック６３０、６３２を、既に符号化された、ピクチャタイプと画面上での位置とが対応するマクロブロックの量子化に用いた量子化パラメータによって量子化する。さらに、マクロブロックラインの右端のマクロブロック６３１および６３３のそれぞれを、画面上で直下に位置するマクロブロックラインの左端のマクロブロック６３２および６３４量子化に用いた量子化パラメータそれぞれによって量子化する。
【００８０】
その結果、１フレーム（またはフィールド）を符号化部ＡおよびＢで並列的に符号化処理を行う場合に、異なる符号化部で符号化されるフレームの境界部分における量子化パラメータの差分値が０になる。そのため、境界部分の符号化制御を容易に行うことができる。
【００８１】
なお、これに限らず、第１の実施形態の方法を取り入れ、マクロブロック６３１を、既に符号化された、ピクチャタイプと位置とが対応するマクロブロックの量子化に用いた量子化パラメータで量子化してもよい。この場合には、符号化部Ｂは、符号化部Ａがマクロブロック６３１を量子化する際に用いた量子化パラメータを、マクロブロック６３２の処理を行う際に知ることができる。そのため、異なる符号化部で符号化される、マクロブロックラインの右端のマクロブロックと、フレーム内で直下に位置するマクロブロックラインの左端のマクロブロックとの、量子化する際に用いた量子化パラメータの差分を容易に求めることができる。
【００８２】
したがって、符号化順が画面上で連続するマクロブロックが異なる符号化部で符号化される境界部分において、当該マクロブロックに対する量子化パラメータの差分値を容易に求めることが可能となる。
【００８３】
また、マクロブロック６３１の量子化に用いる量子化パラメータ値が、既に符号化が行われ、ピクチャタイプおよびフレーム内の位置が対応するマクロブロックの量子化に用いた量子化パラメータ値に対して急激に変化することも考えられる。この場合には、マクロブロック６３１を含むピクチャにおいて画質が劣化してしまうことが考えられる。そこで、マクロブロック６３１より時間的に前の、ピクチャタイプおよびフレーム内の位置が対応する数マクロブロックの量子化パラメータ値を、緩やかに変化させることも可能である。
【００８４】
以上説明したように、本発明は、１フレーム（またはフィールド）のデータを複数の符号化部で並列的に符号化する際の符号化制御を容易に行うことが可能となる。すなわち、符号化順が画面上で連続するマクロブロックが異なる符号化部で符号化される境界部分の処理を、ピクチャタイプおよび画面上の位置が対応する、既に符号化されたマクロブロックに対する量子化パラメータを用いて行う。そのため、当該境界部分における量子化パラメータの差分値を、他の符号化部の処理に関わらず決定できるからである。
【００８５】
なお、本発明は、本発明の技術思想の範囲内において、上述の各実施形態に限定されるものではなく、対象となる回路形態により適時変更されて適応するべきものである。
【００８６】
＜他の実施形態＞
上述の各実施形態は、システムあるいは装置のコンピュータ（或いはＣＰＵ、ＭＰＵ等）によりソフトウェア的に実現することも可能である。
【００８７】
したがって、上述の各実施形態をコンピュータで実現するために、当該コンピュータに供給されるコンピュータプログラム自体も本発明を実現するものである。つまり、上述の実施形態の機能を実現するためのコンピュータプログラム自体も本発明の一つである。
【００８８】
なお、上述の各実施形態を実現するためのコンピュータプログラムは、コンピュータで読み取り可能であれば、どのような形態であってもよい。例えば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等で構成することができるが、これらに限るものではない。
【００８９】
上述の各実施形態を実現するためのコンピュータプログラムは、記憶媒体又は有線／無線通信によりコンピュータに供給される。プログラムを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、磁気テープ等の磁気記憶媒体、ＭＯ、ＣＤ、ＤＶＤ等の光／光磁気記憶媒体、不揮発性の半導体メモリなどがある。
【００９０】
有線／無線通信を用いたコンピュータプログラムの供給方法としては、コンピュータネットワーク上のサーバを利用する方法がある。この場合、本発明を形成するコンピュータプログラムとなりうるデータファイル（プログラムファイル）をサーバに記憶しておく。プログラムファイルとしては、実行形式のものであっても、ソースコードであっても良い。
【００９１】
そして、このサーバにアクセスしたクライアントコンピュータに、プログラムファイルをダウンロードすることによって供給する。この場合、プログラムファイルを複数のセグメントファイルに分割し、セグメントファイルを異なるサーバに分散して配置することも可能である。
【００９２】
つまり、上述の各実施形態を実現するためのプログラムファイルをクライアントコンピュータに提供するサーバ装置も本発明の一つである。
【００９３】
また、上述の各実施形態を実現するためのコンピュータプログラムを暗号化して格納した記憶媒体を配布し、所定の条件を満たしたユーザに、暗号化を解く鍵情報を供給し、ユーザの有するコンピュータへのインストールを許可してもよい。鍵情報は、例えばインターネットを介してホームページからダウンロードさせることによって供給することができる。
【００９４】
また、上述の各実施形態を実現するためのコンピュータプログラムは、すでにコンピュータ上で稼働するＯＳの機能を利用するものであってもよい。
【００９５】
さらに、上述の各実施形態を実現するためのコンピュータプログラムは、その一部をコンピュータに装着される拡張ボード等のファームウェアで構成してもよいし、拡張ボード等が備えるＣＰＵで実行するようにしてもよい。
【図１】
2010035146.tif 000005
【図２】
2010035146.tif 000006
【図３】
2010035146.tif 000007
【図４】
2010035146.tif 000008
【図５】
2010035146.tif 000009
【図６】
2010035146.tif 000010
【図７】
2010035146.tif 000011
【図８】
2010035146.tif 000012
【図９】
2010035146.tif 000013