(57)【要約】【課題】複数の原画像の符号化を複数のコアで並列に行う場合に各原画像の内容に応じて符号化するコアを効率的に切り替える。【解決手段】符号化装置は、第１のコア及び第１のメモリの組と、第２のコア及び第２のメモリの組と、制御部とを備える。第２のコアにおいて第１のコアと同一の原画像の予測画像を生成する場合に用いる予測画像の候補は、第１のコアが用いる予測画像の候補を全て含み、かつ第１のコアが用いる予測画像の候補の数よりも多い。第１のコアは、原画像と予測画像の候補とに基づいて求めた歪量の最小値を検出する。第２のコアは、原画像と予測画像の候補のうち第１のコアが設定する予測画像の候補に該当する予測画像の候補とに基づいて求めた歪量の最小値を検出する。制御部は、第１のコア及び第２のコアが検出した歪量の最小値に基づいて次の原画像の符号化を第１のコア及び第２のコアのいずれで行うかを決定する。【選択図】図１
2017005592.tif 000002
【特許請求の範囲】
【請求項１】
原画シーケンスの符号化を別個に行う第１のコア及び第２のコアと、
前記第１のコアが符号化時のある期間の符号化処理において演算に使用する可能性の高い参照画像領域を演算に先立ち、予め投機的に外部メモリから読み出して保持する第１の参照画像保持部と、
前記第１の参照画像保持部よりも容量が大きく、前記第２のコアが符号化時のある期間の符号化処理において演算に使用する可能性の高い参照画像領域を演算に先立ち、予め投機的に外部メモリから読み出して保持する第２の参照画像保持部と、
前記第１のコア及び前記第２のコアに前記原画シーケンスの符号化を行わせる制御部と、を備え、
前記第２のコアにおいて前記第１のコアと同一の原画像についての予測画像を生成する場合に前記参照画像内に設定される予測画像の候補は、前記第１のコアが前記参照画像内に設定する予測画像の候補を全て含み、かつ前記第１のコアが設定する予想画像の候補の数よりも多く、
前記第１のコアは、前記原画シーケンスにおける符号化対象の原画像と前記予測画像の候補とに基づいて求めた前記原画像と前記予測画像との歪量が最小になる予測モード及び動きベクトルを検出する第１の歪検出部を含み、
前記第２のコアは、前記原画シーケンスにおける符号化対象の原画像と前記予測画像の候補のうち前記第１のコアが設定する予測画像の候補に該当する予測画像の候補とに基づいて求めた前記原画像と前記予測画像との歪量の最小値を検出する第２の歪検出部を含み、
前記制御部は、前記第１の歪検出部及び前記第２の歪検出部で検出した歪量の最小値に基づいて、前記原画シーケンスにおいて次に符号化対象となる原画像の符号化を前記第１のコア及び前記第２のコアのいずれで行うかを決定する割当決定部を含む、
ことを特徴とする動画像符号化装置。
【請求項２】
前記第２のコアが符号化時に参照する前記参照画像の寸法が、前記第１のコアが符号化時に参照する前記参照画像の寸法よりも大きく、かつ１つの参照ピクチャ内に各前記参照画像を設定した場合に前記第１のコアが参照する前記参照画像の全領域が前記第２のコアが参照する参照画像の領域内に含まれる、
ことを特徴とする請求項１に記載の動画像符号化装置。
【請求項３】
前記第１のコア及び前記第２のコアは、それぞれ符号化対象の原画像を複数の予測単位ブロックに分割して前記予測単位ブロック毎に予測画像を生成し、
前記第２のコアが予測画像の生成に用いる予測単位ブロックは、前記第１のコアが予測画像の生成に用いる予測単位ブロックを全て含み、かつ、前記第１のコアが用いる予測単位ブロックの数よりも多い、
ことを特徴とする請求項１に記載の動画像符号化装置。
【請求項４】
前記第２のコアが前記参照画像を取得する参照ピクチャは、前記第１のコアが前記参照画像を取得する参照ピクチャを全て含み、かつ前記第１のコアが前記参照画像を取得する参照ピクチャの数よりも多い、
ことを特徴とする請求項１に記載の動画像符号化装置。
【請求項５】
前記第１のコアは、前記参照画像を用いた動き探索を整数画素精度で行い、
前記第２のコアは、前記参照画像を用いた動き探索を小数画素精度で行う、
ことを特徴とする請求項１に記載の動画像符号化装置。
【請求項６】
前記動画像符号化装置は、第１のコア及び第１の参照画像保持部の組と、第２のコア及び第２の参照画像保持部の組とを、それぞれ複数備え、
前記割当決定部は、前記歪量の最小値の大きい原画シーケンスから順に前記第２のコア及び第２の参照画像保持部の組に符号化を割り当てる、
ことを特徴とする請求項１に記載の動画像符号化装置。
【請求項７】
前記動画像符号化装置は、第１のコア及び第１の参照画像保持部の組と、第２のコア及び第２の参照画像保持部の組とを、それぞれ複数備え、
前記割当決定部は、前記歪量の最小値が所定の閾値以上の原画シーケンスの符号化のみを前記第２のコア及び第２の参照画像保持部の組に割り当てる、
ことを特徴とする請求項１に記載の動画像符号化装置。
【請求項８】
第１の参照画像保持部で保持する参照画像を参照して原画シーケンスを符号化する第１のコアと、前記第１の参照画像保持部よりも容量の大きい第２の参照画像保持部で保持する参照画像を参照して原画シーケンスを符号化する第２のコアとに前記原画シーケンスの符号化を行わせる際に、前記第２のコアにおいて前記第１のコアと同一の原画像についての予測画像を生成する場合に前記参照画像内に設定される予測画像の候補が、前記第１のコアが前記参照画像内に設定する予測画像の候補を全て含み、かつ前記第１のコアが設定する予想画像の候補の数よりも多くなるようにしておき、
前記第１のコアにおいて前記原画シーケンスにおける符号化対象の原画像と前記予測画像の候補とに基づいて求めた前記原画像と前記予測画像との歪量の最小値を検出し、
前記第２のコアにおいて前記原画シーケンスにおける符号化対象の原画像と前記予測画像の候補のうち前記第１のコアが設定する予測画像の候補に該当する予測画像の候補とに基づいて求めた前記原画像と前記予測画像との歪量の最小値を検出し、
前記第１のコアにおいて検出した歪量の最小値、及び前記第２のコアにおいて検出した歪量の最小値に基づいて、前記原画シーケンスにおいて次に符号化対象となる原画像の符号化を前記第１のコア及び前記第２のコアのいずれで行うかを決定する、
処理をコンピュータが実行することを特徴とする動画像符号化方法。
【請求項９】
第１の参照画像保持部で保持する参照画像を参照して原画シーケンスを符号化する第１のコアと、前記第１の参照画像保持部よりも容量の大きい第２の参照画像保持部で保持する参照画像を参照して原画シーケンスを符号化する第２のコアとに前記原画シーケンスの符号化を行わせる際に、前記第２のコアにおいて前記第１のコアと同一の原画像についての予測画像を生成する場合に前記参照画像内に設定される予測画像の候補が、前記第１のコアが前記参照画像内に設定する予測画像の候補を全て含み、かつ前記第１のコアが設定する予想画像の候補の数よりも多くなるようにしておき、
前記第１のコアにおいて前記原画シーケンスにおける符号化対象の原画像と前記予測画像の候補とに基づいて求めた前記原画像と前記予測画像との歪量の最小値を検出し、
前記第２のコアにおいて前記原画シーケンスにおける符号化対象の原画像と前記予測画像の候補のうち前記第１のコアが設定する予測画像の候補に該当する予測画像の候補とに基づいて求めた前記原画像と前記予測画像との歪量の最小値を検出し、
前記第１のコアにおいて検出した歪量の最小値、及び前記第２のコアにおいて検出した歪量の最小値に基づいて、前記原画シーケンスにおいて次に符号化対象となる原画像の符号化を前記第１のコア及び前記第２のコアのいずれで行うかを決定する、
処理をコンピュータに実行させるための動画像符号化プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像符号化装置、動画像符号化方法、及び動画像符号化プログラムに関する。
【背景技術】
【０００２】
動画像符号化装置には、複数の符号化コアを備えたものがある。複数の符号化コアを備えた動画像符号化装置は、１ピクチャにおける複数のブロックラインの符号化を並列に行うことができる。そのため、この種の動画像符号化装置は、４Ｋ２Ｋや８Ｋ４Ｋといった高解像度の動画像の符号化を効率よく行うことができる。
【０００３】
この種の動画像符号化装置における符号化効率を向上させる技術として、ブロックライン毎に並列に動きベクトル検出を行う際にそれぞれの動きベクトル検出で用いられる参照画像の探索範囲を可変にする技術がある（例えば、特許文献１を参照）。この技術では、処理対象ブロックに対する左隣接ブロックの動きベクトルに基づいて記憶部に記憶された領域内の探索範囲を可変にして処理対象ブロックの動きベクトル検出を行うことで、符号化効率を向上させる。
【０００４】
また、複数の符号化コアを備えた動画像符号化装置は、複数の動画像データ（ピクチャ）の符号化を並行して行うことができる。そのため、複数の符号化コアを備えた動画像符号化装置は、仮想デスクトップインフラ（Virtual Desktop Infrastructure；ＶＤＩ）等にも用いられている。
【０００５】
ＶＤＩでは、端末（クライアント）のディスプレイに表示させる画面データを、端末と接続されたサーバで作成している。ＶＤＩのサーバは、所定の時間間隔毎に各端末のディスプレイに表示させる画面データを作成して各端末に送信している。この際、作成した画面データは、サーバに設けた動画像符号化装置で圧縮符号化してから各端末に送信している。
【０００６】
しかしながら、ＶＤＩにおいては、各端末のディスプレイに表示させる画面データに差がある。例えば、動画等の再生をしている端末のディスプレイに表示させる画面データは画面の変化が激しいのに対し、アイドル状態の端末のディスプレイに表示させる画面データは画面の変化が少ない。また、例えば、ある１個の端末のディスプレイに表示させる画面データにも、あるときは変化が激しく、別のときには変化が少ないといった時間変化が生じる。そのため、ＶＤＩのサーバ等に設ける動画像符号化装置では、各画面データの画面の変化の度合いに応じて符号化コアの割当を切り替え処理負荷の最適配分を行うことが望まれるが、現状では実現に至っていない。よって、動画像符号化装置では、符号化コアや参照画像を保持するプリフェッチメモリに大きなマージンを持たせた設計をする必要があり、電力消費量の増大や製造コストの増大を招いていた。
【０００７】
このＶＤＩのサーバに設けた動画像符号化装置と関連した技術として、複数のプロセッサ（コア）で異なるプログラム（タスク）を実行する際に、処理負荷等の影響を測定してコア間でプログラムを切り替える技術がある（例えば、特許文献２を参照。）。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１３−１７２３５０号公報
【特許文献２】特許第５１９５９１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、複数のコア間で実行するプログラム（タスク）を切り替える場合、試しに実行してみる等の方法により処理負荷等の影響を測定する必要がある。特に、非対称な演算性能や回路リソースを持つ符号化コア間でプログラムを切り替える場合、処理負荷等の影響は、各コアの性能差のほか、外部メモリアクセスの遅延や性能等のばらつきが複雑に絡み合う。そのため、処理負荷等の影響を正確に見積もることが難しく、複数のコア間で符号化する原画シーケンスを切替た場合にリアルタイム性能を満たせない可能性がある。
【００１０】
一つの側面において、本発明は、複数の原画シーケンスの符号化を複数のコアで並列に行う動画像符号化装置において各原画シーケンスの内容に応じて符号化するコアを効率的に切り替えることを目的とする。
【課題を解決するための手段】
【００１１】
１つの態様の動画像符号化装置は、第１のコア及び第２のコアと、第１の参照画像保持部と、第２の参照画像保持部と、制御部とを備える。第１のコア及び第２のコアは、原画シーケンスの符号化を行う。第１の参照画像保持部は、第１のコアが符号化時のある期間の符号化処理において、演算に使用する可能性の高い参照画像領域を演算に先立ち、予め投機的に外部メモリから読み出して保持する。第２の参照画像保持部は、第１の参照画像保持部よりも容量が大きく、第２のコアが符号化時のある期間の符号化処理において、演算に使用する可能性の高い参照画像領域を演算に先立ち、予め投機的に外部メモリから読み出して保持する。制御部は、第１のコア及び第２のコアに原画シーケンスの符号化を行わせる。この動画像符号化装置では、第２のコアにおいて第１のコアと同一の原画像についての予測画像を生成する場合に参照画像内に設定される予測画像の候補が、第１のコアが参照画像内に設定する予測画像の全てを含む。また、第２のコアにおいて設定される予測画像の候補は、第１のコアが設定する予想画像の候補の数よりも多い。また、この動画像符号化装置における第１のコアは、原画シーケンスにおける符号化対象の原画像と予測画像の候補とに基づいて求めた前記原画像と前記予測画像との歪量が最小になる予測モード及び動きベクトルを検出する第１の歪検出部を有する。一方、第２のコアは、原画シーケンスにおける符号化対象の原画像と予測画像の候補のうち第１のコアが設定する予測画像の候補に該当する予測画像の候補とに基づいて求めた前記原画像と前記予測画像との歪量の最小値を検出する第２の歪検出部を有する。更に、制御部は、第１の歪検出部及び第２の歪検出部で検出した歪量の最小値に基づいて、原画シーケンスにおいて次に符号化対象となる原画像の符号化を第１のコア及び第２のコアのいずれで行うかを決定する割当決定部を有する。
【発明の効果】
【００１２】
上述の態様によれば、複数の原画シーケンスの符号化を複数のコアで並列に行う動画像符号化装置において各原画シーケンスの内容に応じて符号化するコアを効率的に切り替えることができる。
【図面の簡単な説明】
【００１３】
【図１】一実施形態に係る動画像符号化装置の機能的構成を示す図である。
【図２】第１の符号化器の機能的構成を示す図である。
【図３】第２の符号化器の機能的構成を示す図である。
【図４】全体制御部の機能的構成を示す図である。
【図５】１ピクチャの符号化の手順を示す図である。
【図６】第１の条件及び第２の条件における予測ユニットの分割形状の包含関係の一例を示す図である。
【図７】第１の条件及び第２の条件における予測ユニットの分割形状の包含関係の別の例を示す図である。
【図８】第１の条件及び第２の条件における動き探索の探索範囲の包含関係の一例を示す図である。
【図９】第１の条件及び第２の条件における動き探索の探索範囲の包含関係の別の例を示す図である。
【図１０】第１の条件及び第２の条件における動きベクトルの精度の包含関係を示す図である。
【図１１】第１の条件及び第２の条件における参照ピクチャの包含関係の一例を示す図である。
【図１２】第１の符号化器におけるＣＴＵの符号化及び歪検出処理の内容を示すフローチャートである。
【図１３】図１２の予測及び歪検出処理の内容を示すフローチャートである。
【図１４】第２の符号化器におけるＣＴＵの符号化及び歪検出処理の内容を示すフローチャートである。
【図１５】図１４の予測及び歪検出処理の内容を示すフローチャートである。
【図１６】第１の歪検出部での歪検出処理の内容を示すフローチャートである。
【図１７】第２の歪検出部での歪検出処理の内容を示すフローチャートである。
【図１８】動画像符号化装置における１ピクチャ分の符号化処理の内容を示すフローチャートである。
【図１９】図１８の符号化器予約処理の内容を示すフローチャートである。
【図２０】符号化器の割当の遷移の例を示す図である。
【図２１】動画像符号化装置における１ピクチャ分の符号化処理の変形例を示すフローチャートである。
【図２２】図２１の符号化器予約処理の内容を示すフローチャートである。
【図２３】原画シーケンスの画面サイズが異なる場合の符号化器の割当の遷移の例を示す図である。
【図２４】ＶＤＩの構成例を示す図である。
【図２５】コンピュータのハードウェア構成例を示す図である。
【発明を実施するための形態】
【００１４】
図１は、一実施形態に係る動画像符号化装置の機能的構成を示す図である。
図１に示すように、本実施形態の動画像符号化装置１は、第１の符号化器２（２Ａ〜２Ｆ）と、第２の符号化器３（３Ａ，３Ｂ）と、全体制御部４と、を備える。また、動画像符号化装置１は、バス５を介して外部メモリ６等と接続している。外部メモリ６には、動画像符号化装置１により符号化する動画像データ（原画シーケンス）や、動画像符号化装置１により符号化された動画像データ（符号化ビットストリーム）等が格納される。
【００１５】
第１の符号化器２及び第２の符号化器３は、原画シーケンスを圧縮符号化する。なお、図１に示した６個の第１の符号化器２Ａ〜２Ｆ及び２個の第２の符号化器３Ａ，３Ｂは、それぞれが独立して原画シーケンスの符号化を行う。すなわち、図示は省略するが、各符号化器２，３は、符号化演算を行う演算部（符号化コア）と、符号化演算において参照する参照画像データを保持するプリフェッチメモリ等の参照画像保持部とを有する。各符号化器２，３は、外部メモリ６に格納された動画像データを読み出し、例えば、Ｈ．２６４／ＡＶＣ、或いはＨ．２６５／ＨＥＶＣ等の所定の符号化規格に従って動画像データを符号化する。
【００１６】
なお、第１の符号化器２と第２の符号化器３とは参照画像保持部の容量が異なり、第２の符号化器３の参照画像保持部の容量が第１の符号化器２の参照画像保持部の容量よりも大きい。図１では、各符号化器２，３における参照画像保持部の容量の大小関係をわかりやすくするため、第２の符号化器３の寸法を第１の符号化器２の寸法よりも大きくしている。
【００１７】
全体制御部４は、第１の符号化器２及び第２の符号化器３に対して符号化する動画像データを割り当てて符号化を指示する等、動画像符号化装置１全体の動作を制御する。
【００１８】
この動画像符号化装置１は、例えば、複数の符号化器のそれぞれに別個の動画像データ（原画シーケンス）の符号化を割り当てることで、複数の動画像データの符号化処理を並列に行うことができる。
【００１９】
図２は、第１の符号化器の機能的構成を示す図である。
図２に示すように、第１の符号化器２は、歪演算部２０１と、符号化部２０２と、最小歪検出部２０３と、歪情報出力部２０４と、予測制御部２０５と、探索条件保持部２０６と、参照画像保持部２０７と、を備える。この第１の符号化器２では、歪演算部２０１と、符号化部２０２と、最小歪検出部２０３と、歪情報出力部２０４と、予測制御部２０５と、探索条件保持部２０６とが協働し、符号化コア２００として機能する。
【００２０】
歪演算部２０１は、符号化対象のピクチャにおける注目ブロック（原画像）についての予測画像の候補に対応した差分から求めたブロックマッチング毎の歪量を算出する。ここで、符号化対象のピクチャは原画シーケンスにおける符号化対象の画面の単位であり、ノンインタレース方式におけるフレーム、インタレース方式におけるフィールドがピクチャに相当する。また、注目ブロックは、１ピクチャにおいて符号化の単位となる画素ブロックである。Ｈ．２６５／ＨＥＶＣにおいてはCoding Tree Unit（ＣＴＵ）と呼ばれる画素ブロックが注目ブロックに相当し、Ｈ．２６４／ＡＶＣにおいてはMacro Block（ＭＢ）と呼ばれる画素ブロックが注目ブロックに相当する。
【００２１】
歪演算部２０１は、注目ブロックに対するフレーム内予測又はフレーム間予測、或いはその両方を行い、注目ブロックとの誤差が最も小さくなる予測画像を検出するために、予測制御部２０５の指示に基づいてブロックマッチング処理を行う。歪演算部２０１は、ブロックマッチング単位の歪を計算し、動きベクトルなどのCording Tree／Predict Unit（ＣＵ／ＰＵ）の位置・形状情報と合わせて最小歪検出部２０３に出力する。このとき、注目ブロックに対する予測は、探索条件保持部２０６で保持する第１の条件２０６Ａに基づいて行う。第１の条件２０６Ａは、予測画像を生成する画素ブロック（予測単位ブロック）のサイズを指定する情報、フレーム間予測で参照するピクチャ及び動き探索の探索範囲を指定する情報、並びにフレーム内予測に用いる予測モードを指定する情報を含む。予測単位ブロックは、注目ブロックと同じサイズの画素ブロック及び注目ブロックを再帰的に分割した画素ブロックから複数種指定することができる。この第１の条件２０６Ａは、Ｈ．２６５／ＨＥＶＣ等の所定の符号化規格に基づいて設定される。
【００２２】
符号化部２０２は、注目ブロック（原画像）と予測画像との誤差画像に対し直交変換、量子化、及びエントロピー符号化を順次行い、符号化ビットストリームを生成する。また、符号化部２０２は、直交変換及び量子化を行って得られた値に対し逆量子化及び逆変換を行い、再構成画像を生成する。更に、符号化部２０２は、生成した再構成画像に対しデブロッキング・フィルタ処理を行う。符号化部２０２は、生成した符号化ビットストリームやデブロッキング・フィルタ処理後の再構成画像を、バス５を介して外部メモリ６に記憶させる。
【００２３】
最小歪検出部２０３は、歪演算部２０１における演算処理の結果から、画像に生じる歪を表す値（以下「歪量」ともいう）をＣＵ単位もしくはＰＵ単位で検出する。歪量には、例えば、予測単位ブロックと予測画像の候補との誤差を求める際に算出する、Sum of Absolute Difference（ＳＡＤ）、Sum of absolute transformed difference（ＳＡＴＤ）等の差分値和を用いることができる。最小歪検出部２０３は、歪演算部２０１が注目ブロックの各予測単位ブロックと予測画像の候補との誤差を算出する毎に歪量を検出する。そして、最小歪検出部２０３は、各予測単位ブロックの歪量の最小値を求め、所定のアルゴリズムに従って、予測ベクトルや符号化モードを決定し、符号化部２０２に送出する。ここで、所定のアルゴリズムは、例えば、予測単位ブロック毎に最小値を算出した結果から、ＣＴＵ全体の歪が最も少なくなる符号化モードについて全ての歪量の組み合わせから（総当たりで）決定し、決定された符号化モードや動きベクトルを符号化部に出力する。以下の説明では、最小歪検出部２０３のことを単に歪検出部２０３ともいう。
【００２４】
歪情報出力部２０４は、歪演算部２０１における１ＣＴＵ分の予測が終了すると、最小歪検出部２０３で検出し、決定したＣＴＵの符号化モード歪量の累積値（もしくは平均値）、最大値、及び最小値を全体制御部４に出力する。
【００２５】
予測制御部２０５は、第１の符号化器２における歪演算部２０１の動作を制御する。予測制御部２０５は、全体制御部４からの符号化を指示する信号を受信すると、受信した信号及び探索条件保持部２０６で保持する第１の条件２０６Ａに基づいて、歪演算部２０１に各注目ブロックについての歪を計算させる。また、歪演算部２０１にフレーム間予測を行わせる場合、予測制御部２０５は、符号化時のある期間の符号化処理において演算に使用する可能性の高い参照画像領域を演算に先立ち、予め投機的に外部メモリ６から読み出して参照画像保持部２０７に保持させる。すなわち、予測制御部２０５は、フレーム間予測で参照する参照画像データを外部メモリ６から読み出して参照画像保持部２０７に保持させる。
【００２６】
図３は、第２の符号化器の機能的構成を示す図である。
図３に示すように、第２の符号化器３は、歪演算部３０１と、符号化部３０２と、第１の最小歪検出部３０３と、第２の最小歪検出部３０４と、歪情報出力部３０５と、予測制御部３０６と、探索条件保持部３０７と、参照画像保持部３０８と、を備える。この第２の符号化器３では、歪演算部３０１と、符号化部３０２と、第１の最小歪検出部３０３と、第２の最小歪検出部３０４と、歪情報出力部３０５と、予測制御部３０６と、探索条件保持部３０７とが協働し、符号化コア３００として機能する。
【００２７】
第２の符号化器３における歪演算部３０１及び符号化部３０２は、それぞれ第１の符号化器２における歪演算部２０１及び符号化部２０２と同一の機能を有する。また、第２の符号化器３における第１の最小歪検出部３０３は、第１の符号化器２における最小歪検出部２０３と同一の機能を有する。
【００２８】
第２の最小歪検出部３０４は、第２の符号化器３で符号化する注目ブロック（原画像）を第１の符号化器２で処理した場合の歪量を検出する。すなわち、第２の最小歪検出部３０４は、予測単位ブロックと予測画像の候補との誤差のうち予測単位ブロックと予測画像の候補との組み合わせが第１の条件に含まれるものの誤差のみを抽出し、各予測単位ブロックの歪量の最小値を求める。第２の最小歪検出部３０４は、探索条件保持部３０７で保持する第１の条件３０７Ｂを参照して、予測単位ブロックと予測画像の候補との組み合わせが第１の条件に含まれるか否かを判定する。以下の説明では、第１の最小歪検出部３０３及び第２の最小歪検出部３０４を、それぞれ、単に第１の歪検出部３０３及び第２の歪検出部３０４ともいう。
【００２９】
歪情報出力部３０５は、歪演算部３０１における１ＣＴＵ分の予測が終了すると、第１の歪検出部３０３により検出した歪量、及び第２の歪検出部３０４により検出した歪量の累積値、最大値、及び最小値等を全体制御部４に出力する。
【００３０】
予測制御部３０６は、歪演算部３０１の動作を制御する。予測制御部３０６は、全体制御部４からの符号化を指示する信号を受信すると、受信した信号及び探索条件保持部３０７で保持する第２の条件３０７Ａに基づいて、歪演算部３０１に各注目ブロックについての歪を計算させる。また、歪演算部３０１にフレーム間予測を行わせる場合、予測制御部３０６は、符号化時のある期間の符号化処理において演算に使用する可能性の高い参照画像領域を演算に先立ち、予め投機的に外部メモリ６から読み出して参照画像保持部３０８に保持させる。すなわち、予測制御部３０６は、フレーム間予測で参照する参照画像データを外部メモリ６から読み出して参照画像保持部３０８に保持させる。
【００３１】
第２の符号化器３の参照画像保持部３０８は、上記のように、容量が第１の符号化器２の参照画像保持部２０７の容量よりも大きい。
【００３２】
第２の符号化器３の歪演算部３０１における予測処理で用いる第２の条件３０７Ａは、第１の条件２０６Ａとの間に後述する包含関係を有する。
【００３３】
図４は、全体制御部の機能的構成を示す図である。
図４に示すように、全体制御部４は、原画情報取得部４０１と、割当決定部４０２と、符号化指示部４０３と、符号化情報保持部４０４と、を備える。
【００３４】
原画情報取得部４０１は、符号化する原画シーケンスの識別情報を取得する。
割当決定部４０２は、各符号化器２，３に対し符号化する原画シーケンスを割り当てる。割当決定部４０２は、各符号化部２，３からの歪情報を解析し、解析結果及び符号化情報保持部４の情報に基づいて各符号化器２，３への割当を決定する。なお、原画シーケンスの符号化を開始した直後のように符号化器２，３からの歪情報が揃っていない場合、割当決定部４０２は、予め定めた初期条件に従って割当を決定する。
【００３５】
符号化指示部４０３は、割当決定部４０２で決定した割当に従って各符号化器２，３に対して符号化を指示する制御信号を送信する。符号化指示部４０３が各符号化器２，３に送信する制御信号には、符号化する原画シーケンス及びピクチャ、符号化する範囲（ライン数又はピクチャ）を含む。
【００３６】
符号化情報保持部４０４は、符号化中の原画シーケンスや符号化器の予約状況に関する情報を保持する。符号化情報保持部４０４で保持する情報は、原画シーケンスの識別子や画面サイズ、符号化を行っている符号化器の識別子を含む。
【００３７】
上記構成の動画像符号化装置１において、第２の符号化器３が予測処理で用いる第２の条件３０７Ａは、第１の条件２０６Ａ（３０７Ｂ）を全て含み、かつ１個の予測単位ブロックに対する予測画像の候補の数を第１の条件２０６Ａよりも多くする。この第１の条件２０６Ａと第２の条件３０７Ａとの包含関係は、具体的には、下記（１）〜（３）を満たすようにする。
（１）第１の条件２０６Ａに指定された全ての予測単位ブロックが第２の条件３０７Ａの予測単位ブロックに含まれるようにする。
（２）第１の条件２０６Ａにおける１つの予測単位ブロックに対する動き探索の全探索範囲及び精度が第２の条件３０７Ａに含まれるようにする。
（３）第１の条件２０６Ａにおける動き探索で参照する全ての参照ピクチャが第２の条件３０７Ａの参照ピクチャに含まれるようにする。
【００３８】
（１）は、Ｈ．２６４／ＡＶＣにおけるマクロブロックＭＢ、Ｈ．２６５／ＨＥＶＣにおける予測ユニットＰＵの包含関係に関する。Ｈ．２６５／ＨＥＶＣに従って符号化する場合の（１）の包含関係について、図５〜図７を参照しながら説明する。
【００３９】
図５は、１ピクチャの符号化の手順を示す図である。図６は、第１の条件及び第２の条件における予測ユニットの分割形状の包含関係の一例を示す図である。図７は、第１の条件及び第２の条件における予測ユニットの分割形状の包含関係の別の例を示す図である。
【００４０】
Ｈ．２６５／ＨＥＶＣに従った符号化を行う場合、動画像符号化装置１は、図５に示すように、原画シーケンスの１ピクチャ７を複数のＣＴＵ（画素ブロック）８に分割し、左上角部に位置するＣＴＵ ８から順に、ラスタスキャンにより符号化していく。
【００４１】
このとき、１個のＣＴＵ ８に対する符号化では、ＣＴＵ ８を可変サイズ分割したＣＵについて処理が繰り返される。また、１個のＣＵに対する符号化における予測処理は、１個のＣＵを複数の予測ユニットＰＵに分割して行うことができる。
【００４２】
Ｈ．２６５／ＨＥＶＣでは、１個のＣＴＵ（ＣＵ）を６４×６４画素とした場合のフレーム間予測における予測ユニットＰＵの分割形状として、図６に示すように、形状ＳＳ１−１〜ＳＳ１−８の８通りの分割形状が用意されている。
【００４３】
また、Ｈ．２６５／ＨＥＶＣでは、フレーム間予測による符号化を行う場合、再帰的にＣＵ及び予測ユニットＰＵのサイズを細分化することができる。すなわち、６４×６４画素のＣＴＵを形状ＳＳ１−４のようにＮｘＮ（３２×３２画素）のＣＵに分割すると、この３２×３２画素のＣＵについての予測ユニットＰＵは、形状ＳＳ２−１〜ＳＳ２−８の８通りの分割形状のいずれかに細分化することができる。
【００４４】
更に、３２×３２画素のＣＵを形状ＳＳ２−４のようにＮｘＮ（１６×１６画素）のＣＵに分割すると、この１６×１６画素のＣＵについての予測ユニットＰＵは、形状ＳＳ３−１〜ＳＳ３−４の４通りの分割形状のいずれかに細分化することができる。
【００４５】
そして、１６×１６画素のＣＵを形状ＳＳ３−４のようにＮｘＮ（８×８画素）のＣＵに分割すると、この８×８画素のＣＵについての予測ユニットＰＵは、形状ＳＳ４−１〜ＳＳ４−３の３通りの分割形状のいずれかに細分化することができる。
【００４６】
フレーム間予測では、ＰＵ毎に動き探索を行い予測画像を生成する。そのため、第２の符号化器３で符号化する注目ブロックを第１の符号化器２で符号化した場合の歪量を検出するには、第１の符号化器２で使用する予測ユニットＰＵによる動き探索を第２の符号化器３においても行う必要がある。よって、本実施形態の動画像符号化装置１では、図６に示すように、第１の条件における予測ユニットＰＵの分割形状の組ＳＳＰ１が、第２の条件における予測ユニットＰＵの分割形状の組ＳＳＰ２に内包されるようにする。
【００４７】
なお、第１の条件における予測ユニットＰＵの分割形状の組ＳＳＰ１と、第２の条件における予測ユニットＰＵの分割形状の組ＳＳＰ２との包含関係は、図６に示した関係に限らず、例えば図７に示した関係であってもよい。
【００４８】
（２）は、フレーム間予測を行う際の動き探索の探索範囲の包含関係に関する。
図８は、第１の条件及び第２の条件における動き探索の探索範囲の包含関係の一例を示す図である。図９は、第１の条件及び第２の条件における動き探索の探索範囲の包含関係の別の例を示す図である。
【００４９】
符号化器において動き探索を行う際には、図８に示すように、符号化するピクチャ７の注目ブロック８における予測単位ブロックと対応する参照ブロック（予測画像の候補）を参照ピクチャ９内に設定し、両者の差分値を求める。符号化器の歪演算部では、この差分値を求める処理を参照ピクチャにおける探索範囲（参照範囲）内で参照ブロックの設定位置を変えながら行い、差分値が最も小さくなる参照ブロックを予測画像とする。そのため、第２の符号化器３で符号化する注目ブロック８を第１の符号化器２で符号化した場合の歪量を検出するには、第１の符号化器２における動き探索の全探索範囲についての動き探索を第２の符号化器においても行う必要がある。よって、図８に示すように、第２の符号化器３で使用する第２の条件における動き探索の探索範囲ＳＡ２は、第１の符号化器２における動き探索の探索範囲ＳＡ１の全域を内包するように設定する。
【００５０】
なお、第１の条件における探索範囲ＳＡ１と第２の条件における探索範囲ＳＡ２との包含関係は、第２の条件における探索範囲ＳＡ２内に第１の条件における探索範囲ＳＡ１全域が含まれる関係になっていればよい。よって、第１の条件における探索範囲ＳＡ１と第２の条件における探索範囲ＳＡ２との包含関係は、図８に示した関係に限らず、適宜変更可能である。例えば、第１の条件における探索範囲ＳＡ１の外周を示す４本の辺のうち１本〜３本の辺が第２の条件における探索範囲ＳＡ２の外周を示す辺と重なっていてもよい。
【００５１】
また、第１の条件における探索範囲ＳＡ１及び第２の条件における探索範囲ＳＡ２は、それぞれ矩形に限らず、例えば、図９に示すように、第２の条件における探索範囲ＳＡ２が十字型であってもよい。図９に示した例においても、第１の条件における探索範囲ＳＡ１が第２の条件における探索範囲ＳＡ２に内包されていれば、第２の符号化器３で符号化する注目ブロック８を第１の符号化器２で符号化した場合の歪量を検出することができる。
【００５２】
更に、上記（２）の包含関係は、探索範囲ＳＡ１，ＳＡ２のサイズを変える代わりに、例えば、動き探索における動きベクトルの精度を変えてもよい。
【００５３】
図１０は、第１の条件及び第２の条件における動きベクトルの精度の包含関係を示す図である。
【００５４】
Ｈ．２６４／ＡＶＣやＨ．２６５／ＨＥＶＣにおけるフレーム間予測では、整数画素精度（画素単位）だけでなく、１／４画素精度で動きベクトル情報を持つこともできる。１／４画素精度では、図１０に示すように、１個の画素を４×４の１６個のブロックに分割して各ブロックに輝度画素値を与える。この際、１画素の左上角部に位置するブロックＡ-1，-1、Ａ0，0、Ａ1，-1等には整数画素精度における輝度画素値が与えられ、残りのブロックには所定のフィルタを用いて算出した輝度画素値が与えられる。そのため、第１の符号化器２では整数画素精度で動き探索を行い、第２の符号化器３では１／４画素精度で動き探索を行うことで、第２の符号化器３で符号化する注目ブロックを第１の符号化器２で符号化した場合の歪量を検出することができる。
【００５５】
なお、第１の条件と第２の条件とで動きベクトルの精度を変える場合、第１の条件及び第２の条件における動き探索の探索範囲ＳＡ１，ＳＡ２を同じにしてもよい。
【００５６】
また、Ｈ．２６４／ＡＶＣにおけるＭＢやＨ．２６５／ＨＥＶＣにおけるＣＴＵは、輝度信号及び色差信号のブロックで構成される。そのため、動きベクトルの精度を変える代わりに、例えば、第１の符号化器２は輝度信号のみで動き探索を行い、第２の符号化器３は輝度信号及び色差信号を用いて動き探索を行う探索するようにしてもよい。
【００５７】
（３）は、フレーム間予測を行う際の参照ピクチャの包含関係に関する。
図１１は、第１の条件及び第２の条件における参照ピクチャの包含関係の一例を示す図である。
【００５８】
符号化器においてフレーム間予測を行う際の参照ピクチャの数や符号化するピクチャとの時間的な位置関係は適宜変更可能である。しかしながら、第２の符号化器３で符号化する注目ブロックを第１の符号化器２で符号化した場合の歪量を検出するには、第１の符号化器２において参照する参照ピクチャを第２の符号化器３においても参照する必要がある。
【００５９】
例えば、図１１に示すように、第１の符号化器２において符号化対象のピクチャ７の２つ前のピクチャ９Ａ及び２つ後のピクチャ９Ｂを参照する場合、第２の符号化器３においても少なくともこの２つのピクチャ９Ａ，９Ｂを参照する。また、上記のように、参照ピクチャの数は適宜変更可能であるため、第２の符号化器３では、上記のピクチャ９Ａ，９Ｂに加え、更に２つのピクチャ９Ｃ，９Ｄを参照する。このように第２の符号化器３で参照するピクチャの数を第１の符号化器２で参照するピクチャの数よりも多くすることで、第２の符号化器３における動き探索の探索範囲を第１の符号化器２の探索範囲よりも広くすることができる。
【００６０】
なお、第１の符号化器２において参照するピクチャと第２の符号化器３において参照するピクチャとの包含関係は、第１の符号化器２において参照するピクチャを第２の符号化器３においても参照していればよく、図１１に示した関係に限らず、適宜変更可能である。
【００６１】
以下、動画像符号化装置１がＨ．２６５／ＨＥＶＣに従って原画シーケンスを符号化する場合を例に挙げ、第１の符号化器２、第２の符号化器３、及び全体制御部４の動作について説明する。
【００６２】
図１２は、第１の符号化器におけるＣＴＵの符号化及び歪検出処理の内容を示すフローチャートである。
【００６３】
第１の符号化器２は、全体制御部４からの符号化指示を受信すると、符号化対象の各ＣＴＵに対し図１２に示す処理を行う。全体制御部４からの符号化指示は、符号化対象の原画シーケンス及び符号化するＣＴＵラインを指定する情報を含む。
【００６４】
第１の符号化器２は、符号化処理を開始すると、まず、各ＣＵ（ＰＵ）の歪量の最小値ＭＣＵを初期化する（ステップＳ１００）。次に、第１の符号化器２は、予測及び歪検出処理を行う（ステップＳ１０１）。ステップＳ１００及びＳ１０１は、予測制御部２０５、歪演算部２０１、及び歪検出部２０３が協働して行う。予測制御部２０５及び歪演算部２０１は、探索条件保持部２０６で保持している第１の条件２０６Ａに基づいてＣＴＵにおける各予測ユニットＰＵについての予測処理を行う。この予測処理において、歪演算部２０１は、予測ユニットＰＵ毎に、予測画像の候補を生成して原画像と予測画像の候補との差分値（誤差）を算出する処理を繰り返す。また、歪演算部２０１は、原画像及び予測画像の候補を順次符号化部２０２に出力するとともに、差分値を歪検出部２０３に出力する。
【００６５】
歪検出部２０３は、歪演算部２０１が出力した差分値を取得して予測ユニットＰＵ毎に歪量Ｄを計算し、その最小値ＭＣＵを求めることで最適な動きベクトル等の予測モード情報を検出する。
【００６６】
そして、１個のＣＴＵにおける全ての予測ユニットＰＵに対する予測処理が終わると、第１の符号化器２は、次に、歪演算部２０１による予測処理の結果に基づいてＣＴＵの符号化処理を行う（ステップＳ１０２）。また、第１の符号化器２は、ステップＳ１０２の符号化処理と並行して、歪検出部２０３で検出した歪量の最小値ＭＣＵを出力する（ステップＳ１０３）。
【００６７】
ステップＳ１０２は、符号化部２０２が行う。符号化部２０２は、歪演算部２０１から受け取った各予測ユニットＰＵの原画像、予想画像の候補、及び差分値に基づいて各予測ユニットＰＵの歪量が最小値となる符号化モードや動きベクトル等のパラメータを決定する。そして、符号化部２０２は、決定した符号化モードや動きベクトル等のパラメータを用いてＣＴＵを符号化する。符号化部２０２が行う符号化処理は、各予測ユニットＰＵについての予測画像の候補から予測画像を決定する処理、原画像と予測画像との誤差画像を直交変換して量子化する処理、及び量子化した値をエントロピー符号化する処理を含む。また、符号化部２０２が行う符号化処理は、量子化して得られた値を逆量子化、逆変換して再構成画像を生成する処理、再構成画像に対するデブロッキング・フィルタ処理を含む。符号化部２０２におけるこれらの処理は、既知の動画像符号化装置における処理を行えばよい。
【００６８】
一方、ステップＳ１０３は、歪検出部２０３と歪情報出力部２０４とが行う。歪情報出力部２０４は、歪検出部２０３で検出した歪量の最小値ＭＣＵを符号化対象のＣＴＵの識別子と対応付けて全体制御部４に出力する。
【００６９】
第１の符号化器２は、例えば、１個のＣＴＵラインにおける各ＣＴＵに対して、上記のステップＳ１００〜Ｓ１０３の処理を行う。
【００７０】
図１３は、図１２の予測及び歪検出処理の内容を示すフローチャートである。なお、図１３には、予測及び歪検出処理（図１２のステップＳ１０１）においてフレーム間予測を行う場合の処理の内容を示している。
【００７１】
第１の符号化器２が予測及び歪検出処理においてフレーム間予測を行う場合、図１３に示すように、まず、予測制御部２０５が外部メモリ６から読み出した参照画像（参照ピクチャ）を参照画像保持部２０７に保持させる（ステップＳ１１０）。
【００７２】
次に、歪演算部２０１が、予測制御部２０５からの制御信号と第１の条件２０６Ａとに基づいてＣＵ（ＰＵ）を選択する（ステップＳ１１１）。
【００７３】
次に、歪演算部２０１が、参照画像内に予測画像の候補となる参照ブロックを設定する（ステップＳ１１２）。参照ブロックは、例えば、予測ユニットＰＵと同じサイズの画素ブロックとする。
【００７４】
次に、歪演算部２０１が予測画像の候補から差分を求めて歪検出部２０３に送出すると、歪検出部２０３が差分から歪量Ｄを求め（ステップＳ１１３）、歪量Ｄが最小となる（動きベクトル、ＰＵ、ＣＵの組み合わせ）符号化モードを求める。歪演算部２０１は、差分値を算出した後、差分値を歪検出部２０３に渡す。歪検出部２０３は、差分値から求めた歪量Ｄとこれまでの歪量の最小値ＭＣＵとを比較する（ステップＳ１１４）。
【００７５】
Ｄ＜ＭＣＵの場合（ステップＳ１１４；Ｙｅｓ）、歪検出部２０３は、歪量の最小値ＭＣＵを歪量Ｍに更新する（ステップＳ１１５）。一方、Ｄ≧Ｍの場合（ステップＳ１１４；Ｎｏ）、歪検出部２０３は、ステップＳ１１５をスキップする。
【００７６】
次に、歪演算部２０１が、ステップＳ１１３〜Ｓ１１５の処理を行っていない参照ブロックがあるかをチェックする（ステップＳ１１６）。未処理の参照ブロックがある場合（ステップＳ１１６；Ｙｅｓ）、ステップＳ１１２に戻り、歪演算部２０１及び歪検出部２０３は、未処理の参照ブロックについてステップＳ１１２〜Ｓ１１５の処理を行う。
【００７７】
一方、未処理の参照ブロックがない場合（ステップＳ１１６；Ｎｏ）、歪演算部２０１は、次に、ステップＳ１１２〜Ｓ１１５の処理を行っていないＣＵ（ＰＵ）があるかをチェックする（ステップＳ１１７）。未処理のＣＵ（ＰＵ）がある場合（ステップＳ１１７；Ｙｅｓ）、ステップＳ１１１に戻り、歪演算部２０１及び歪検出部２０３は、未処理の予測ユニットＰＵについてステップＳ１１１〜Ｓ１１５の処理を行う。未処理のＣＵ（ＰＵ）がない場合（ステップＳ１１７；Ｎｏ）、歪演算部２０１及び歪検出部２０３は、予測及び歪検出処理を終了し、歪量が最小値ＭＣＵとなったＣＴＵに対応した差分値、符号化モード、及び予測ベクトルを符号化部２０２に渡す。
【００７８】
なお、第１の符号化器２において、符号化対象のＣＴＵについてフレーム内予測のみを行う場合には、既知の方法でフレーム内予測を行えばよい。この場合、予測及び歪検出処理では、フレーム内予測のみを行ってもよいし、フレーム内予測を行うとともにＣＴＵで歪量が最小となる符号化モードを検出してもよい。
【００７９】
図１４は、第２の符号化器におけるＣＴＵの符号化及び歪検出処理の内容を示すフローチャートである。
【００８０】
第２の符号化器３は、全体制御部４からの符号化指示を受信すると、符号化対象の各ＣＴＵに対し図１３に示す処理を行う。全体制御部４からの符号化指示は、符号化対象の原画シーケンス及び符号化するＣＴＵラインを指定する情報を含む。
【００８１】
第２の符号化器３は、符号化処理を開始すると、まず、各ＣＵ（ＰＵ）の歪量ＭＣＵ，Ｍ１ＣＵを初期化する（ステップＳ２００）。歪量ＭＣＵは、第１の符号化器２と同じ第１の条件でＣＵ（ＰＵ）についての予測処理を行った場合に最小となる歪を表す値である。一方、歪量Ｍ１ＣＵは、第２の条件でＣＵ（ＰＵ）についての予測処理を行った場合に最小となる歪を表す値である。
【００８２】
次に、第２の符号化器３は、予測及び歪検出処理を行う（ステップＳ２０１）。ステップＳ２００及びＳ２０１は、予測制御部３０６、歪演算部３０１、第１の歪検出部３０３、及び第２の歪検出部３０４が協働して行う。予測制御部３０６及び歪演算部３０１は、探索条件保持部３０７で保持している第２の条件３０７Ａに基づいてＣＴＵにおける各ＰＵについての予測処理を行う。この予測処理において、歪演算部３０１は、予測ユニットＰＵ毎に、予測画像の候補を生成して原画像と予測画像の候補との差分値（誤差）を算出する処理を繰り返す。また、歪演算部３０１は、原画像及び画像の候補を順次符号化部３０２に出力するとともに、差分値を第１の歪検出部３０３及び第２の歪検出部３０４に出力する。
【００８３】
第１の歪検出部３０３は、歪演算部３０１が出力した差分値を取得して予測ユニットＰＵ毎に歪量Ｄを求め、その最小値を歪量Ｍ１ＣＵとして検出する。また、第２の歪検出部３０４は、歪演算部３０１が出力した差分値から予測ユニットＰＵと第１の条件においても生成される予測画像の候補との差分値のみを抽出し、抽出した差分値から求めた歪量Ｄの最小値を歪量ＭＣＵとして検出する。
【００８４】
そして、１個のＣＴＵにおける全ての予測ユニットＰＵに対する予測処理が終わると、第２の符号化器３は、次に、歪演算部３０１による予測処理の結果に基づいてＣＴＵの符号化処理を行う（ステップＳ２０２）。また、第２の符号化器３は、ステップＳ２０２の符号化処理と並行して、第１の歪検出部３０３で検出した歪量の最小値Ｍ１ＣＵ及び第２の歪検出部３０４で検出した歪量の最小値ＭＣＵを出力する（ステップＳ２０３）。
【００８５】
ステップＳ２０２は、符号化部３０２が行う。符号化部３０２は、歪演算部３０１から受け取った各予測ユニットＰＵの原画像及び予測画像の候補、及び差分値に基づいて各予測ユニットＰＵの差分値が最小値となる符号化モードや動きベクトル等のパラメータを決定する。そして、符号化部３０２は、決定した符号化モードや動きベクトル等のパラメータを用いてＣＴＵを符号化する。符号化部３０２が行う符号化処理は、各ＰＵについての予測画像の候補から予測画像を決定する処理、原画像と予測画像との誤差画像を直交変換して量子化する処理、及び量子化した値をエントロピー符号化する処理を含む。また、符号化部３０２が行う符号化処理は、量子化した値を逆量子化、逆変換して再構成画像を生成する処理、再構成画像に対するデブロッキング・フィルタ処理を含む。符号化部３０２におけるこれらの処理は、既知の動画像符号化装置における処理を行えばよい。
【００８６】
一方、ステップＳ２０３は、第１の歪検出部３０３、第２の歪検出部３０４、及び歪情報出力部３０５が行う。歪情報出力部３０５は、第１の歪検出部３０３で検出した歪量の最小値Ｍ１ＣＵ及び第２の歪検出部３０４で検出した歪量の最小値ＭＣＵを符号化対象のＣＴＵの識別子と対応付けて全体制御部４に出力する。
【００８７】
第２の符号化器３は、例えば、１個のＣＴＵラインにおける各ＣＴＵに対して、上記のステップＳ２００〜Ｓ２０３の処理を行う。
【００８８】
図１５は、図１４の予測及び歪検出処理の内容を示すフローチャートである。なお、図１５には、予測及び歪検出処理（図１４のステップＳ２０１）においてフレーム間予測を行う場合の処理の内容を示している。
【００８９】
第２の符号化器３が予測及び歪検出処理においてフレーム間予測を行う場合、図１５に示すように、まず、予測制御部３０６が外部メモリ６から読み出した参照画像（参照ピクチャ）を参照画像保持部３０８に保持させる（ステップＳ２１０）。
【００９０】
次に、歪演算部３０１が、予測制御部３０６からの制御信号と第２の条件３０７Ａとに基づいてＣＵ（ＰＵ）を選択する（ステップＳ２１１）。
【００９１】
次に、歪演算部３０１が、参照画像内に予測画像の候補となる参照ブロックを設定する（ステップＳ２１２）。参照ブロックは、例えば、予測ユニットＰＵと同じサイズの画素ブロックとする。
【００９２】
次に、歪演算部３０１が予測画像の候補から差分を求めて第１の歪検出部３０３及び第２の歪検出部３０４に送出する（ステップＳ２１３）。その後、第２の符号化器３では、第１の歪検出部３０３での歪検出処理（ステップＳ２１４）、及び第２の歪検出部３０４での歪検出処理（ステップＳ２１５）が行われる。第１の歪検出部３０３及び第２の歪検出部３０４は、それぞれ、歪検出処理として、差分値から求めた歪量Ｄが最小となる（動きベクトル、ＰＵ、ＣＵの組み合わせ）符号化モードを求める処理を行う。
【００９３】
次に、歪演算部３０１が、ステップＳ２１３〜Ｓ２１５の処理を行っていない参照ブロックがあるかをチェックする（ステップＳ２１６）。未処理の参照ブロックがある場合（ステップＳ２１６；Ｙｅｓ）、ステップＳ２１２に戻り、歪演算部３０１、第１の歪検出部３０３及び第２の歪検出部３０４は、未処理の参照ブロックについてステップＳ２１２〜Ｓ２１５の処理を行う。
【００９４】
一方、未処理の参照ブロックがない場合（ステップＳ２１６；Ｎｏ）、歪演算部３０１は、次に、ステップＳ２１２〜Ｓ２１５の処理を行っていないＣＵ（ＰＵ）があるかをチェックする（ステップＳ２１７）。未処理のＣＵ（ＰＵ）がある場合（ステップＳ２１７；Ｙｅｓ）、ステップＳ２１１に戻り、歪演算部３０１、第１の歪検出部３０３及び第２の歪検出部３０４は、未処理のＣＵ（ＰＵ）についてステップＳ２１１〜２１５の処理を行う。未処理のＣＵ（ＰＵ）がない場合（ステップＳ２１７；Ｎｏ）、歪演算部３０１、第１の歪検出部３０３は、予測及び歪検出処理を終了し、歪量が最小値Ｍ１ＣＵとなったＣＴＵに対応した差分値、符号化モード、及び予測ベクトルを符号化部３０２に渡す。
【００９５】
図１６は、第１の歪検出部での歪検出処理の内容を示すフローチャートである。図１７は、第２の歪検出部での歪検出処理の内容を示すフローチャートである。
【００９６】
第１の歪検出部３０３での歪検出処理（ステップＳ２１４）では、図１６に示すように、まず、ステップＳ２１３で算出した歪量Ｄとこれまでの歪量の最小値Ｍ１ＣＵとを比較する（ステップＳ２２０）。Ｄ＜Ｍ１ＣＵの場合（ステップＳ２２０；Ｙｅｓ）、第１の歪検出部３０３は、歪量の最小値Ｍ１ＣＵを歪量Ｄに更新し（ステップＳ２２１）、歪検出処理を終了する。一方、Ｄ≧Ｍ１ＣＵの場合（ステップＳ２２０；Ｎｏ）、第１の歪検出部３０３は、ステップＳ２２１をスキップし、歪検出処理を終了する。
【００９７】
一方、第２の歪検出部３０４での歪検出処理（ステップＳ２１５）では、図１７に示すように、まず、歪量Ｄを算出したときの探索条件が第１の条件に含まれるかをチェックする（ステップＳ２３０）。このとき、第２の歪検出部３０４は、探索条件保持部３０７の第１の条件３０７Ａを参照し、歪量Ｄの算出に用いた予測ユニットＰＵと予測画像の候補との組み合わせが、第１の条件に含まれるか否かをチェックする。
【００９８】
探索条件が第１の条件に含まれる場合（ステップＳ２３０；Ｙｅｓ）、第２の歪検出部３０４は、次に、ステップＳ２１３で算出した歪量Ｄと歪量の最小値ＭＣＵとを比較する（ステップＳ２３１）。Ｄ＜ＭＣＵの場合（ステップＳ２３１；Ｙｅｓ）、第２の歪検出部３０４は、歪量の最小値ＭＣＵを歪量Ｄに更新して（ステップＳ２３２）、歪検出処理を終了する。
【００９９】
探索条件が第１の条件に含まれない場合（ステップＳ２３０；Ｎｏ）、第２の歪検出部３０４は、ステップＳ２３１，２３２をスキップして歪検出処理を終了する。また、探索条件が第１の条件に含まれるもののＤ≧ＭＣＵの場合（ステップＳ２３１；Ｎｏ）、第２の歪検出部３０４は、ステップＳ２３２をスキップして歪検出処理を終了する。
【０１００】
なお、第２の符号化器３においても、符号化対象のＣＴＵについてフレーム内予測のみを行う場合には、既知の方法でフレーム内予測を行えばよい。この場合、予測及び歪検出処理では、フレーム内予測のみを行ってもよいし、フレーム内予測を行うとともに歪量が最小となる符号化モードを検出してもよい。
【０１０１】
図１８は、動画像符号化装置における１ピクチャ分の符号化処理の内容を示すフローチャートである。
【０１０２】
動画像符号化装置１は、外部から原画シーケンスの符号化を指示する信号を受信すると、図１８に示すように、まず、初期条件に基づいて各原画シーケンスの符号化に用いる符号化器を予約する（ステップＳ３００）。ステップＳ３００は、全体制御部４が行う。全体制御部４は、各符号化器２，３の予約状況を確認し、予約可能な第２の符号化器３がある場合には原画シーケンスの符号化を第２の符号化器３に割り当てて予約する。また、予約可能な第２の符号化器３がない場合には、符号化を第１の符号化器２に割り当てて予約する。
【０１０３】
次に、全体制御部４は、予約した符号化器に符号化指示を送信して原画シーケンスの符号化をアサインする（ステップＳ３０１）。この際、全体制御部４は、予約した符号化器が符号化処理を実行可能な状態であるかをチェックし、実行可能な状態であれば原画シーケンスをアサインする。一方、予約した符号化器が符号化処理を実行可能な状態ではない場合、全体制御部４は、実行可能な状態になるのを待つ。
【０１０４】
全体制御部４からの符号化指示を受信した符号化器は、アサインされた原画シーケンスにおける符号化対象のＣＴＵラインに対する予測処理及び符号化処理を行う（ステップＳ３０２）。このとき、第１の符号化器２は、アサインされた原画シーケンスのＣＴＵラインにおける各ＣＴＵに対して図１２及び図１３に示したような処理を行う。また、第２の符号化器３は、アサインされた原画シーケンスのＣＴＵラインにおける各ＣＴＵに対して図１４〜図１７に示したような処理を行う。更に、各符号化器２，３は、ＣＴＵラインの符号化が完了すると、完了したことを全体制御部４に通知する。
【０１０５】
全体制御部４は、各符号化器２，３からＣＴＵラインの符号化が終了したことを通知する信号を受信すると、１ピクチャ分の符号化が完了したかをチェックする（ステップＳ３０３）。１ピクチャ分の符号化が完了していない場合（ステップＳ３０３；Ｎｏ）、全体制御部４は符号化器予約処理（ステップＳ３０４）を行った後、ステップＳ３０１の処理に戻る。以降、全体制御部４及び各符号化器２，３は、１ピクチャ分の符号化が完了するまでステップＳ３０１〜Ｓ３０４の処理を繰り返す。
【０１０６】
一方、１ピクチャ分の符号化が完了した場合（ステップＳ３０３；Ｎｏ）、全体制御部４は符号化処理を終了し、次にピクチャの符号化処理を開始する。
【０１０７】
図１９は、図１８の符号化器予約処理の内容を示すフローチャートである。
符号化器予約処理Ｓ３０４では、図１９に示すように、まず、原画シーケンスを歪量の最小値ＭＣＵの大きさで順位付けする（ステップＳ３１０）。ステップＳ３１０は、全体制御部４の割当決定部４０２が行う。割当決定部４０２は、各符号化器２，３から出力された歪量の最小値ＭＣＵを解析、比較して、歪量の最小値ＭＣＵの大きさの順に原画シーケンスの順位付けを行う。
【０１０８】
次に、全体制御部４の符号化指示部４０３が、歪量の最小値ＭＣＵの最も大きい原画シーケンスから順に第２の符号化器３に割り当てて予約し、予約可能な第２の符号化器がなくなったら残りの原画シーケンスを第１の符号化器２に割り当てて予約する（ステップＳ３１１）。
【０１０９】
図２０は、符号化器の割当の遷移の例を示す図である。
なお、図２０には、動画像符号化装置１により４個の原画シーケンス（原画１〜原画４）の符号化を並列に行う場合の各ＣＴＵラインの符号化を担当する符号化器と、歪量の最小値ＭＣＵが大きい順に付した順位とを示している。また、図２０において、Line_0、Line_1、・・・、Line_Nは、１ピクチャをＮ＋１本のＣＴＵラインに分割したときのＣＴＵラインの番号を示している。また、図２０において、Enc1-1、Enc1-2、及びEnc1-3はそれぞれ第１の符号化器２を表しており、Enc2は第２の符号化器３を表している。また、動画像符号化装置１は、３個の第１の符号化器２と１個の第２の符号化器３とを備え、図１８及び図１９に示した要領で原画シーケンスの符号化を各符号化器２，３に割り当てる。
【０１１０】
動画像符号化装置１は、まず、例えば、原画シーケンスの受け付け順に原画１、原画２、原画３、原画４とし、各原画シーケンスの受け付け順に符号化器に割り当てる。そのため、最初のＣＴＵライン（Line_0）を符号化するときには、原画１の符号化が第２の符号化器（Enc2）に割り当てられる。
【０１１１】
そして、原画１〜原画４のＣＴＵライン（Line_0）を各符号化器で符号化した結果、図２０に示すように原画１についての歪量の最小値ＭＣＵが１位の場合、動画像符号化装置１は、次のＣＴＵライン（Line_1）も原画１の符号化を第２の符号化器（Enc2）に割り当てる。
【０１１２】
そして、原画１〜原画４のＣＴＵライン（Line_1）を各符号化器で符号化した結果、原画３についての歪量の最小値ＭＣＵが１位になった場合、動画像符号化装置１は、次のＣＴＵライン（Line_2）の符号化では原画３の符号化を第２の符号化器（Enc2）に割り当てる。
【０１１３】
その後、原画１〜原画４のＣＴＵライン（Line_n）の符号化が完了する毎に、動画像符号化装置１は、歪量の最小値ＭＣＵが１位であった原画シーケンスの符号化が第２の符号化器で行われるよう符号化器の割当を切り替える。
【０１１４】
歪量の最小値ＭＣＵは、第１の符号化器２で符号化した原画シーケンス（ＣＴＵライン）における原画像と予測画像との誤差、及び第２の符号化器３で符号化した原画シーケンスを第１の符号化器で符号化した場合の原画像と予測画像との誤差である。この誤差は、上記のようにＳＡＤ等の差分値和であり、値が大きいほど原画像と予測画像との誤差、言い換えると符号化による画質の劣化の度合いが大きい。すなわち、歪量の最小値ＭＣＵが大きい原画シーケンスは、第１の符号化器２で符号化した場合に画質の劣化の度合いが大きくなる。
【０１１５】
このように第１の符号化器２で符号化した場合の歪量の最小値ＭＣＵが大きくなる主な要因は、第１の条件での動き探索では探索が不十分で適切な動きベクトルを検出できないことにある。
【０１１６】
本実施形態の動画像符号化装置１では、上記のように、ＣＴＵラインの符号化が完了する毎に歪量の最小値ＭＣＵが大きい原画シーケンスの符号化を第２の符号化器３で行うよう割当を切り替える。第２の符号化器３は、第１の符号化器２に比べて参照画像保持部の容量が大きく動き探索の探索範囲を広範囲にすることや、動き探索時の予測画像の候補の数を多くすることができる。そのため、ある１つの原画シーケンス（ＣＴＵ）に対しフレーム間予測による予測処理を行う場合、第２の符号化器３で行ったほうがより適切な動きベクトルを検出することができる。よって、本実施形態の動画像符号化装置１は、適切な動きベクトルを検出できなかったことによる画質の劣化を抑制することができる。
【０１１７】
また、本実施形態の動画像符号化装置１では、第２の符号化器３における予測処理に使用する第２の条件に第１の符号化器２における予測処理に使用する第１の条件の全てが含まれるようにしている。そのため、第２の符号化器３の第２の歪検出部３０４において第２の条件を用いた予測処理を行う過程で、第１の条件下で予測処理をした場合の歪量の最小値ＭＣＵを容易に検出（推測）することができる。よって、本実施形態の動画像符号化装置１は、歪検出処理による第２の符号化器３の演算処理量の増大を抑えつつ、画質の劣化を抑制することができる。
【０１１８】
また、本実施形態の動画像符号化装置１は、参照画像保持部の容量が異なる第１の符号化器２及び第２の符号化器３をそれぞれ複数個ずつ備える。そのため、本実施形態の動画像符号化装置１は、例えば、第１の符号化器２で符号化した場合の歪量の最小値ＭＣＵが所定の閾値を超える原画シーケンスの符号化のみを第２の符号化器３で行うようにすることもできる。
【０１１９】
図２１は、動画像符号化装置における１ピクチャ分の符号化処理の変形例を示すフローチャートである。
【０１２０】
ここで例示する１ピクチャ分の符号化処理では、１個の動画像符号化装置１が符号化を受け持つ原画シーケンスの数を動画像符号化装置１が備える第１の符号化器２の数以下とする。
【０１２１】
この動画像符号化装置１における１ピクチャ分の符号化処理では、図２１に示すように、まず、全体制御部４が全ての原画シーケンスの符号化を第１の符号化器２に割り当てて予約する（ステップＳ３２０）。
【０１２２】
次に、全体制御部４は、予約した各符号化器２に符号化指示を送信して原画シーケンスの符号化をアサインする（ステップＳ３２１）。この際、全体制御部４は、予約した符号化器２が符号化処理を実行可能な状態であるかをチェックし、実行可能な状態であれば原画シーケンスをアサインする。一方、予約した符号化器２が符号化処理を実行可能な状態ではない場合、全体制御部４は、実行可能な状態になるのを待つ。
【０１２３】
全体制御部４からの符号化指示を受信した第１の符号化器２は、それぞれ、アサインされた原画シーケンスにおける符号化対象のＣＴＵラインに対する予測処理及び符号化処理を行う（ステップＳ３２２）。このとき、第１の符号化器２は、それぞれ、アサインされた原画シーケンスのＣＴＵラインにおける各ＣＴＵに対して図１２及び図１３に示したような処理を行う。また、第１の符号化器２は、ＣＴＵラインの符号化が完了すると、完了したことを全体制御部４に通知する。
【０１２４】
全体制御部４は、第１の符号化器２からＣＴＵラインの符号化が終了したことを通知する信号を受信すると、１ピクチャ分の符号化が完了したかをチェックする（ステップＳ３２３）。１ピクチャ分の符号化が完了していない場合（ステップＳ３２３；Ｎｏ）、全体制御部４は符号化器予約処理（ステップＳ３２４）を行った後、ステップＳ３２１の処理に戻る。以降、全体制御部４及び各符号化器は、１ピクチャ分の符号化が完了するまでステップＳ３２１〜Ｓ３２４の処理を繰り返す。
【０１２５】
一方、１ピクチャ分の符号化が完了した場合（ステップＳ３２３；Ｎｏ）、全体制御部４及び各符号化器は符号化処理を終了し、次にピクチャの符号化処理を開始する。
【０１２６】
図２２は、図２１の符号化器予約処理の内容を示すフローチャートである。
図２１に示した符号化器予約処理（ステップＳ３２４）では、図２２に示すように、まず、全原画シーケンスの歪量の最小値ＭＣＵを閾値ＴＨと比較する（ステップＳ３３０）。ステップＳ３３０は、全体制御部４の割当決定部４０２が行う。閾値ＴＨは、符号化する原画シーケンスや第１の条件に基づいて適宜設定する。
【０１２７】
次に、割当決定部４０２は、歪量の最小値ＭＣＵが閾値ＴＨ以上の原画シーケンスの有無をチェックする（ステップＳ３３１）。
【０１２８】
ＭＣＵ≧ＴＨの原画シーケンスがある場合（ステップＳ３３１；Ｙｅｓ）、割当決定部４０２は、その原画シーケンスの符号化を第２の符号化器３に割り当てることを符号化通知部４０３に通知する。通知を受けた符号化指示部４０３は、ＭＣＵ≧ＴＨの原画シーケンスを歪量の最小値ＭＣＵの最も大きい原画シーケンスから順に第２の符号化器３に割り当てて予約し、予約可能な第２の符号化器３がなくなったら第１の符号化器２に割り当てて予約する（ステップＳ３３２）。
【０１２９】
一方、ＭＣＵ≧ＴＨの原画シーケンスがない場合（ステップＳ３３１；Ｎｏ）、割当決定部４０２は、第２の符号化器３に符号化を割り当てる原画シーケンスがないことを符号化通知部４０３に通知する。通知を受けた符号化指示部４０３は、ステップＳ３２０と同様、全ての原画シーケンスの符号化を第１の符号化部２に割り当てて予約する（ステップＳ３３３）。
【０１３０】
このように、符号化による画質の劣化の度合いと関連した歪量の最小値ＭＣＵが所定の閾値ＴＨ以上である原画シーケンスの符号化のみを第２の符号化器３で行うことにより、画質の劣化を抑えるとともに、動画像符号化装置１の処理負荷の増大を抑えることができる。
【０１３１】
更に、本実施形態の動画像符号化装置１は、例えば、１個又は複数個のDigital Signal Processor（ＤＳＰ）を内蔵したLarge-Scale Integration（ＬＳＩ）により実現できる。
【０１３２】
１個のＬＳＩに参照画像保持部（プリフェッチメモリ）の容量が大きい第２の符号化器３のみを設ける場合、ＬＳＩの外形寸法が小さいと内蔵可能な第２の符号化器３の数が少なくなる。そのため、後述するＶＤＩに適用する場合のように多くの原画シーケンスの符号化を並列に行う場合、必要なＬＳＩの数が増大し、動画像符号化装置１の製造コストや消費電力量が増大する。また、１個のＬＳＩに参照画像保持部（プリフェッチメモリ）の容量が小さい第１の符号化器２のみを設ける場合、動き探索が不十分で適切な動きベクトルを検出できず画質が劣化する。
【０１３３】
これに対し、本実施形態の動画像符号化装置１は、参照画像保持部の容量が異なる第１の符号化器２と第２の符号化器３とを組み合わせているため、同じサイズのＬＳＩに第２の符号化器３のみを設けた場合に比べて符号化器の数を多くすることができる。また、歪検出部で検出した歪量の最小値ＭＣＵの値が大きい原画シーケンスの符号化を第２の符号化器３に切り替えることができ、動きベクトルの探索範囲等を広くすることができる。よって、動画像符号化装置１の製造コストや消費電力量の増大を抑えつつ、画質の劣化を抑えることができる。
【０１３４】
なお、図１に示した動画像符号化装置１は、６個の第１の符号化器２と２個の第２の符号化器３とを備えているが、１個の動画像符号化装置１が備える第１の符号化器２及び第２の符号化器３の数は、これに限らず、適宜変更可能である。
【０１３５】
また、第１の符号化器２及び第２の符号化器３の機能的構成は、それぞれ、図２及び図３に示した構成に限らず、適宜変更可能である。
【０１３６】
また、第１の符号化器２及び第２の符号化器３において検出する歪量の最小値ＭＣＵは、上記のＳＡＤに限らず、差分にアダマール変換をした変換結果の絶対和であるＳＡＴＤを用いても良い。更に、ＳＡＤやＳＡＴＤの代わりに、例えば、Rate Distortion（ＲＤ）コストのような動きベクトルの長さをはじめ、符号化のためのシンタックス要素のシグナリングに必要なデータ量を加味した値を歪量の最小値ＭＣＵとして検出してもよい。
【０１３７】
また、第１の符号化器２が行う処理は、図１２及び図１３に示した手順に限らず、適宜変更可能である。同様に、第２の符号化器３が行う処理は、図１４〜図１７に示した手順に限らず、適宜変更可能である。更に、動画像符号化装置１が行う全体処理は、図１８及び図１９に示した手順や図２１及び図２２に示した手順に限らず、適宜変更可能である。例えば、上記の手順では、ＣＴＵラインの符号化が完了する毎に符号化器の割当を切り替えているが、これに限らず、１ピクチャの符号化が完了する毎に符号化器の割当を切り替えてもよい。
【０１３８】
また、１個の動画像符号化装置１の各符号化器２，３で符号化する原画シーケンスは、画面サイズが同じである必要はなく、ＣＴＵラインの符号化に要する時間が異なっていてもよい。
【０１３９】
図２３は、原画シーケンスの画面サイズが異なる場合の符号化器の割当の遷移の例を示す図である。
【０１４０】
なお、図２３には、動画像符号化装置１により４個の原画シーケンス（原画１〜原画４）の符号化を並列に行う場合の各ＣＴＵラインの番号（Line_0、Line_1、・・・）と、符号化を担当する符号化器を示している。図２３において、Enc1は第１の符号化器を表しており、Enc2は第２の符号化器を表している。
【０１４１】
また、動画像符号化装置１は、４個の第１の符号化器２と１個の第２の符号化器３とを備え、図２１及び図２２に示した要領で原画シーケンスの符号化を各符号化器に割り当てる。すなわち、動画像符号化装置１は、原画１〜原画４の符号化開始時に、全ての原画シーケンス（ＣＴＵライン）の符号化を第１の符号化器（Enc1）に割り当てる。そして、各原画シーケンスのＣＴＵラインの符号化が完了する毎に、全体制御部４が、各符号化器における符号化の進捗状況及び予約状況に応じて、次のＣＴＵラインの符号化を行う符号化器を決定する。
【０１４２】
例えば、原画２の最初のＣＴＵライン（Line_0）の符号化が完了した時点では、他の原画１、原画３、及び原画４の符号化がまだ終わっていない。そのため、原画２のＣＴＵライン（Line_0）の符号化時における歪量の最小値ＭＣＵが閾値ＴＨより小さい場合、次のＣＴＵライン（Line_1）は再び同じ第１の符号化器で符号化する。
【０１４３】
また、例えば、原画２のＣＴＵライン（Line_2）の符号化時における歪量の最小値ＭＣＵが閾値ＴＨ以上の場合、次のＣＴＵライン（Line_3）は第２の符号化器に行わせることになるが、第２の符号化器は原画１のＣＴＵライン（Line_1）の符号化を行っている。しかしながら、原画１のＣＴＵライン（Line_1）の符号化が完了した後の第２の符号化器に予約がなければ、全体制御部４は、原画２のＣＴＵライン（Line_3）の符号化を第２の符号化器に割り当てて予約し、原画１の符号化が完了するのを待つ。そして、第２の符号化器が符号化を完了すると、全体制御部４は、第２の符号化器に対して原画２のＣＴＵライン（Line_3）の符号化をアサインする。
【０１４４】
このように本実施形態の動画像符号化装置１は、各原画シーケンスのＣＴＵラインの符号化が完了するタイミングが異なっている場合でも、符号化器を予約して符号化が完了するのを待つことで、効率よく符号化を行うことができる。
【０１４５】
また、本実施形態の動画像符号化装置１に関する上記の説明では、複数の原画シーケンスの符号化を同時に開始しているが、これに限らず、符号化を開始するタイミングが異なっていてもよい。
【０１４６】
また、本実施形態の動画像符号化装置１は、特定の用途に限定されるものではないが、特にVirtual Desktop Infrastructure（ＶＤＩ）のサーバに設ける動画像符号化装置に適している。
【０１４７】
図２４は、ＶＤＩの構成例を示す図である。
ＶＤＩは、例えば、図２４に示すように、１台のサーバ１０に複数の端末（クライアント）１１Ａ〜１１Ｃが接続されている。ＶＤＩでは、各端末１１Ａ〜１１Ｃのユーザが利用するアプリケーションソフト等の実行をサーバ１０の仮想マシン１００１Ａ〜１００１Ｃで行う。
【０１４８】
各端末１１Ａ〜１１Ｃにはキーボード１２やマウス１３等の入力装置が接続されており、それら入力装置をユーザが操作すると、入力情報がサーバ１０の仮想マシン１００１Ａ〜１００１Ｃに送信される。
【０１４９】
サーバ１０の仮想マシン１００１Ａ〜１００１Ｃは、所定の時間間隔毎に、端末１１Ａ〜１１Ｃに接続された表示装置１４に表示させる画面データを作成する。仮想マシンが作成した画面データは、動画像符号化装置１００２（１）で符号化した後、各端末１１Ａ〜１１Ｃに送信され表示装置１４に表示される。
【０１５０】
このようなＶＤＩにおける各仮想マシンの動作状態は様々であり、例えば、ある仮想マシンでは動画の再生処理をしており、別の仮想マシンではアイドル状態になっていることがある。動画の再生処理をしている仮想マシンが生成する画面データは、画面内の像の変化が激しいため、符号化による画質の劣化を抑制するには、動き探索における探索範囲をできるだけ広くし予測画像の候補の数を増やすことが好ましい。一方、アイドル状態の仮想マシンが生成する画面データは、画面内の像の変化がほとんどないため、動き探索における探索範囲が狭く予測画像の候補の数が少なくても、画質の劣化の度合いが小さい。
【０１５１】
よって、本実施形態の動画像符号化装置１を用いれば、画面内の像の変化が激しい仮想マシンが生成する画面データは第２の符号化器３で符号化し、画面内の像の変化がほとんどない仮想マシンが生成する画面データは第１の符号化器２で符号化することができる。
【０１５２】
また、仮想マシンが生成する画面データにおける像の変化は一定ではなく、不定期に変化する。例えば、動画の再生処理をしている仮想マシンが再生処理を終えてアイドル状態になれば画面内の像はほとんど変化しなくなる。一方、アイドル状態の仮想マシンにおいて何らかのアプリケーションソフトが実行されると、画面内の像の変化が激しくなる。
【０１５３】
このように各仮想マシンが生成する画面データにおける像の変化の度合いが変わっても、本実施形態の動画像符号化装置１であれば、各画面データの符号化を行う符号化器の割当を随時自動的に切り替えることができる。
【０１５４】
なお、図２４に示したＶＤＩの構成例では、端末が３台であるが、端末は４台以上であってもよい。また、端末の数は１個の動画像符号化装置が備える符号化器の数より多くてもよく、その場合、サーバに設ける動画像符号化装置の数を増やせばよい。
【０１５５】
また、本実施形態の動画像符号化装置１は、図２４に示したＶＤＩのサーバ１０に限らず、複数の原画シーケンスの符号化を並列に行う画像処理装置や情報処理装置に適用できることはもちろんである。
【０１５６】
また、動画像符号化装置１は、例えば、コンピュータと、コンピュータに上記の符号化処理を実行させるプログラムとにより実現可能である。以下、コンピュータとプログラムにより実現される動画像符号化装置１について、図２５を参照しながら説明する。
【０１５７】
図２５は、コンピュータのハードウェア構成例を示す図である。
図２５に示すように、動画像符号化装置１として動作させるコンピュータ１５は、Central Processing Unit（ＣＰＵ）１５１０と、主記憶装置１５２０と、補助記憶装置１５３０と、入力装置１５４０と、出力装置１５５０と、を備える。また、コンピュータ１５は、Digital Signal Processor（ＤＳＰ）１５６０と、記憶媒体駆動装置１５７０と、インタフェース装置１５８０と、を更に備える。コンピュータ１５におけるこれらの要素１５１０〜１５８０は、バス１５９０により相互に接続されており、要素間でのデータの受け渡しが可能になっている。
【０１５８】
ＣＰＵ １５１０は、オペレーティングシステムを含む各種のプログラムを実行することによりコンピュータ１５の全体の動作を制御する演算処理装置である。
【０１５９】
主記憶装置１５２０は、Read Only Memory（ＲＯＭ）１５２１及びRandom Access Memory（ＲＡＭ）１５２２を含む。ＲＯＭ １５２１には、例えばコンピュータ１５の起動時にＣＰＵ １５１０が読み出す所定の基本制御プログラム等が予め記録されている。また、ＲＡＭ １５２２は、ＣＰＵ １５１０が各種のプログラムを実行する際に、必要に応じて作業用記憶領域として使用する。本実施形態においては、例えば並列して符号化する動画像データ（原画シーケンス）の識別情報や、各符号化器２，３で検出した歪量の最小値ＭＣＵ等の一時的な記憶にＲＡＭ １５２２を使用することができる。
【０１６０】
補助記憶装置１５３０は、Hard Disk Drive（ＨＤＤ）やSolid State Drive（ＳＳＤ）等の記憶装置であり、主記憶装置５１に比べて容量が非常に大きい。補助記憶装置１５３０には、ＣＰＵ １５１０によって実行される各種のプログラムや各種のデータ等を記憶させる。補助記憶装置１５３０に記憶させるプログラムとしては、例えば、動画像データの符号化や再生を行うメディアプレイヤーのプログラム、仮想マシンを作成し管理するプログラム等が挙げられる。また、補助記憶装置１５３０に記憶させるデータとしては、例えば、動画像データが挙げられる。
【０１６１】
入力装置１５４０は、例えばキーボード装置やマウス装置であり、コンピュータ１５のオペレータにより操作されると、その操作内容に対応付けられている入力情報をＣＰＵ １５１０に送信する。
【０１６２】
出力装置１５５０は、例えば液晶ディスプレイ等の表示装置である。液晶ディスプレイは、ＣＰＵ １５１０等から送信される表示データに従って各種のテキスト、画像等を表示する。なお、出力装置１５５０には、例えば、プリンタやスピーカ等も含まれる。
【０１６３】
ＤＳＰ １５６０は、ＣＰＵ １５１０からの制御信号等に従って動画像データの符号化処理、復号化（再生）処理等を行う演算処理装置である。ＤＳＰ １５６０は、各符号化器２，３の符号化演算を行うコア（演算部）と、各符号化器２，３の参照画像保持部に相当するプリフェッチメモリとを備える。ＤＳＰ １５６０において動画像データを符号化する際には、例えば、補助記憶装置１５３０から動画像データを読み出してプリフェッチメモリで保持する。また、動画像データの符号化は、符号化対象の動画像データを外部メモリ６に相当するSynchronous Dynamic RAM（ＳＤＲＡＭ）に格納しておき、ＤＳＰ １５６０とＳＤＲＡＭとの間でデータを受け渡しながら行うこともできる。
【０１６４】
記憶媒体駆動装置１５７０は、図示しない可搬型記憶媒体に記録されているプログラムやデータの読み出し、補助記憶装置１５３０に記憶されたデータ等の可搬型記憶媒体への書き込みを行う。可搬型記憶媒体としては、例えば、ＵＳＢ規格のコネクタが備えられているフラッシュメモリが利用可能である。また、可搬型記憶媒体としては、Compact Disk（ＣＤ）、Digital Versatile Disc（ＤＶＤ）、Blu-ray Disc（Blu-rayは登録商標）等の光ディスクも利用可能である。
【０１６５】
インタフェース装置１５８０は、例えば、通信制御装置や映像（動画像）入出力装置である。通信制御装置は、コンピュータ１５とインターネット等の通信ネットワークとを通信可能に接続し、通信ネットワークを介した外部通信装置等との通信により動画像データ等の送受信を行う。また、映像入出力装置は、例えば、コンピュータ１５とビデオカメラ等の撮像装置とを接続して動画像データの入力を行う。
【０１６６】
このコンピュータ１５は、ＣＰＵ １５１０が補助記憶装置１５３０等から上述した符号化処理を含むプログラムを読み出し、ＤＳＰ １５６０、主記憶装置１５２０、補助記憶装置１５３０等と協働して動画像データの符号化処理を実行する。この際、ＣＰＵ １５１０は、動画像データに対するフレーム間予測、フレーム内予測、直交変換、量子化、エントロピー符号化等の演算処理や歪量の最小値ＭＣＵの検出処理をＤＳＰ １５６０に実行させる。
【０１６７】
コンピュータ１５で符号化した動画像データ（符号化ビットストリーム）は、例えば、上述したＶＤＩのように通信ネットワークを介して他のコンピュータ等に送信することができる。また、コンピュータ１５で符号化した動画像データは、補助記憶装置１５３０に記憶させておき、必要に応じてコンピュータ１５で復号化（再生）することもできる。
【０１６８】
なお、動画像符号化装置１として用いるコンピュータ１５は、種々のプログラム（アプリケーションソフトウェア）を実行することにより複数の機能を実現する汎用型のものに限らず、動画像データの符号化、復号化に特化された装置でもよい。
【０１６９】
以上記載した各実施例を含む実施形態に関し、更に以下の付記を開示する。
（付記１）
原画シーケンスの符号化を別個に行う第１のコア及び第２のコアと、
前記第１のコアが符号化時のある期間の符号化処理において演算に使用する可能性の高い参照画像領域を演算に先立ち、予め投機的に外部メモリから読み出して保持する第１の参照画像保持部と、
前記第１の参照画像保持部よりも容量が大きく、前記第２のコアが符号化時のある期間の符号化処理において演算に使用する可能性の高い参照画像領域を演算に先立ち、予め投機的に外部メモリから読み出して保持する第２の参照画像保持部と、
前記第１のコア及び前記第２のコアに前記原画シーケンスの符号化を行わせる制御部と、を備え、
前記第２のコアにおいて前記第１のコアと同一の原画像についての予測画像を生成する場合に前記参照画像内に設定される予測画像の候補は、前記第１のコアが前記参照画像内に設定する予測画像の候補を全て含み、かつ前記第１のコアが設定する予想画像の候補の数よりも多く、
前記第１のコアは、前記原画シーケンスにおける符号化対象の原画像と前記予測画像の候補とに基づいて求めた前記原画像と前記予測画像との歪量が最小になる予測モード及び動きベクトルを検出する第１の歪検出部を含み、
前記第２のコアは、前記原画シーケンスにおける符号化対象の原画像と前記予測画像の候補のうち前記第１のコアが設定する予測画像の候補に該当する予測画像の候補とに基づいて求めた前記原画像と前記予測画像との歪量の最小値を検出する第２の歪検出部を含み、
前記制御部は、前記第１の歪検出部及び前記第２の歪検出部で検出した歪量の最小値に基づいて、前記原画シーケンスにおいて次に符号化対象となる原画像の符号化を前記第１のコア及び前記第２のコアのいずれで行うかを決定する割当決定部を含む、
ことを特徴とする動画像符号化装置。
（付記２）
前記第２のコアが符号化時に参照する前記参照画像の寸法が、前記第１のコアが符号化時に参照する前記参照画像の寸法よりも大きく、かつ１つの参照ピクチャ内に各前記参照画像を設定した場合に前記第１のコアが参照する前記参照画像の全領域が前記第２のコアが参照する参照画像の領域内に含まれる、
ことを特徴とする付記１に記載の動画像符号化装置。
（付記３）
前記第１のコア及び前記第２のコアは、それぞれ符号化対象の原画像を複数の予測単位ブロックに分割して前記予測単位ブロック毎に予測画像を生成し、
前記第２のコアが予測画像の生成に用いる予測単位ブロックは、前記第１のコアが予測画像の生成に用いる予測単位ブロックを全て含み、かつ、前記第１のコアが用いる予測単位ブロックの数よりも多い、
ことを特徴とする付記１に記載の動画像符号化装置。
（付記４）
前記予測単位ブロックは輝度信号及び色差信号のブロックを含み、
前記第１のコアは、前記輝度信号の値のみを用いて前記予測画像を生成し、
前記第２のコアは、前記輝度信号及び前記色差信号の値を用いて前記予測画像を生成する、
ことを特徴とする付記３に記載の動画像符号化装置。
（付記５）
前記第２のコアが前記参照画像を取得する参照ピクチャは、前記第１のコアが前記参照画像を取得する参照ピクチャを全て含み、かつ前記第１のコアが前記参照画像を取得する参照ピクチャの数よりも多い、
ことを特徴とする付記１に記載の動画像符号化装置。
（付記６）
前記第１のコアは、前記参照画像を用いた動き探索を整数画素精度で行い、
前記第２のコアは、前記参照画像を用いた動き探索を小数画素精度で行う、
ことを特徴とする付記１に記載の動画像符号化装置。
（付記７）
前記動画像符号化装置は、第１のコア及び第１の参照画像保持部の組と、第２のコア及び第２の参照画像保持部の組とを、それぞれ複数備え、
前記割当決定部は、前記歪量の最小値の大きい原画シーケンスから順に前記第２のコア及び第２の参照画像保持部の組に符号化を割り当てる、
ことを特徴とする付記１に記載の動画像符号化装置。
（付記８）
前記動画像符号化装置は、第１のコア及び第１の参照画像保持部の組と、第２のコア及び第２の参照画像保持部の組とを、それぞれ複数備え、
前記割当決定部は、前記歪量の最小値が所定の閾値以上の原画シーケンスの符号化のみを前記第２のコア及び第２の参照画像保持部の組に割り当てる、
ことを特徴とする付記１に記載の動画像符号化装置。
（付記９）
前記第１の歪検出部及び前記第２の歪検出部は、それぞれ、前記原画像と前記予測画像との差分値に基づいて前記歪量を検出する、
ことを特徴とする付記１に記載の動画像符号化装置。
（付記１０）
第１の参照画像保持部で保持する参照画像を参照して原画シーケンスを符号化する第１のコアと、前記第１の参照画像保持部よりも容量の大きい第２の参照画像保持部で保持する参照画像を参照して原画シーケンスを符号化する第２のコアとに前記原画シーケンスの符号化を行わせる際に、前記第２のコアにおいて前記第１のコアと同一の原画像についての予測画像を生成する場合に前記参照画像内に設定される予測画像の候補が、前記第１のコアが前記参照画像内に設定する予測画像の候補を全て含み、かつ前記第１のコアが設定する予想画像の候補の数よりも多くなるようにしておき、
前記第１のコアにおいて前記原画シーケンスにおける符号化対象の原画像と前記予測画像の候補とに基づいて求めた前記原画像と前記予測画像との歪量の最小値を検出し、
前記第２のコアにおいて前記原画シーケンスにおける符号化対象の原画像と前記予測画像の候補のうち前記第１のコアが設定する予測画像の候補に該当する予測画像の候補とに基づいて求めた前記原画像と前記予測画像との歪量の最小値を検出し、
前記第１のコアにおいて検出した歪量の最小値、及び前記第２のコアにおいて検出した歪量の最小値に基づいて、前記原画シーケンスにおいて次に符号化対象となる原画像の符号化を前記第１のコア及び前記第２のコアのいずれで行うかを決定する、
処理をコンピュータが実行することを特徴とする動画像符号化方法。
（付記１１）
第１の参照画像保持部で保持する参照画像を参照して原画シーケンスを符号化する第１のコアと、前記第１の参照画像保持部よりも容量の大きい第２の参照画像保持部で保持する参照画像を参照して原画シーケンスを符号化する第２のコアとに前記原画シーケンスの符号化を行わせる際に、前記第２のコアにおいて前記第１のコアと同一の原画像についての予測画像を生成する場合に前記参照画像内に設定される予測画像の候補が、前記第１のコアが前記参照画像内に設定する予測画像の候補を全て含み、かつ前記第１のコアが設定する予想画像の候補の数よりも多くなるようにしておき、
前記第１のコアにおいて前記原画シーケンスにおける符号化対象の原画像と前記予測画像の候補とに基づいて求めた前記原画像と前記予測画像との歪量の最小値を検出し、
前記第２のコアにおいて前記原画シーケンスにおける符号化対象の原画像と前記予測画像の候補のうち前記第１のコアが設定する予測画像の候補に該当する予測画像の候補とに基づいて求めた前記原画像と前記予測画像との歪量の最小値を検出し、
前記第１のコアにおいて検出した歪量の最小値、及び前記第２のコアにおいて検出した歪量の最小値に基づいて、前記原画シーケンスにおいて次に符号化対象となる原画像の符号化を前記第１のコア及び前記第２のコアのいずれで行うかを決定する、
処理をコンピュータに実行させるための動画像符号化プログラム。
【符号の説明】
【０１７０】
１  動画像符号化装置
２  第１の符号化器
２００  符号化コア
２０１  歪演算部
２０２  符号化部
２０３  最小歪検出部
２０４  歪情報出力部
２０５  予測制御部
２０６  探索条件保持部
２０６Ａ  第１の条件
２０７  参照画像保持部
３  第２の符号化器
３００  符号化コア
３０１  歪演算部
３０２  符号化部
３０３  第１の最小歪検出部
３０４  第２の最小歪検出部
３０５  歪情報出力部
３０６  予測制御部
３０７  探索条件保持部
３０７Ａ  第２の条件
３０７Ｂ  第１の条件
４  全体制御部
４０１  原画情報取得部
４０２  割当決定部
４０３  符号化指示部
４０４  符号化情報保持部
５  バス
６  外部メモリ
１０  サーバ
１００１Ａ〜１００１Ｃ  仮想マシン
１００２  動画像符号化装置
１１Ａ〜１１Ｃ  端末
１２  キーボード
１３  マウス
１４  表示装置
１５  コンピュータ
１５１０  ＣＰＵ
１５２０  主記憶装置
１５２１  ＲＯＭ
１５２２  ＲＡＭ
１５３０  補助記憶装置
１５４０  入力装置
１５５０  出力装置
１５６０  ＤＳＰ
１５７０  記憶媒体駆動装置
１５８０  インタフェース装置
１５９０  バス
【図１】
2017005592.tif 000003
【図２】
2017005592.tif 000004
【図３】
2017005592.tif 000005
【図４】
2017005592.tif 000006
【図５】
2017005592.tif 000007
【図６】
2017005592.tif 000008
【図７】
2017005592.tif 000009
【図８】
2017005592.tif 000010
【図９】
2017005592.tif 000011
【図１０】
2017005592.tif 000012
【図１１】
2017005592.tif 000013
【図１２】
2017005592.tif 000014
【図１３】
2017005592.tif 000015
【図１４】
2017005592.tif 000016
【図１５】
2017005592.tif 000017
【図１６】
2017005592.tif 000018
【図１７】
2017005592.tif 000019
【図１８】
2017005592.tif 000020
【図１９】
2017005592.tif 000021
【図２０】
2017005592.tif 000022
【図２１】
2017005592.tif 000023
【図２２】
2017005592.tif 000024
【図２３】
2017005592.tif 000025
【図２４】
2017005592.tif 000026
【図２５】
2017005592.tif 000027