(57)【特許請求の範囲】
【請求項１】
動画像の符号化時に行う動き予測処理に際して、注目ＭＢ（ＭＢ：マクロブロック）の符号化タイプをイントラＭＢ、インターＭＢ、スキップ候補ＭＢのいずれか１つに決定する符号化タイプ決定装置であって、
符号化タイプ毎に、前記注目ＭＢを該符号化タイプで符号化する場合の予測残差コストと、オーバーヘッドコストを算出するためのオーバーヘッド情報とを取得する候補評価部と、
符号化タイプ毎に、前記候補評価部が得た前記オーバーヘッド情報に基づいてオーバーヘッドコストを算出して予測残差コストに加算することにより総合コストを得ると共に、符号化タイプ間で、前記総合コストを比較することにより前記注目ＭＢの符号化タイプを選択する符号化タイプ選択部とを有し、
前記符号化タイプ選択部は、
インターＭＢとスキップ候補ＭＢ間で前記総合コストの比較をする際に、
前記注目ＭＢのアクティビティ、または該注目ＭＢのアクティビティの大きさを示しうる別の値である指標値が所定の閾値以下であるときに、インターＭＢに対応する前記総合コストの制限処理と、スキップＭＢに対応する前記総合コストの調整処理とのいずれか一方を行ってから前記比較をし、
前記制限処理は、インターＭＢに対して、オーバーヘッドコストに含まれる差分ベクトルコストが予測残差コストの１／ｎ（ｎ＞１）を超えないように前記差分ベクトルコストを制限した上で総合コストを再計算する処理であり、
前記調整処理は、スキップＭＢに対して、スキップ候補ＭＢに対応する前記オーバーヘッド情報に含まれる動きベクトルと、インターＭＢに対応する前記オーバーヘッド情報に含まれる動きベクトルとの差分を差分ベクトルとしてオーバーヘッドコストに含まれる差分ベクトルコストを再計算し、再計算によって得た差分ベクトルコストを用いて総合コストを再計算する処理であることを特徴とする符号化タイプ決定装置。
【請求項２】
前記符号化タイプ選択部は、前記候補評価部によりインターＭＢについて得られた予測残差コストを前記指標値として用いることを特徴とする請求項１に記載の符号化タイプ決定装置。
【請求項３】
請求項１または２に記載の符号化タイプ決定装置を備えることを特徴とする動画像符号化装置。
【請求項４】
動画像の符号化時に行う動き予測処理に際して、注目ＭＢ（ＭＢ：マクロブロック）の符号化タイプをイントラＭＢ、インターＭＢ、スキップ候補ＭＢのいずれか１つに決定する符号化タイプ決定方法において、
符号化タイプ毎に、前記注目ＭＢを該符号化タイプで符号化する場合の予測残差コストと、オーバーヘッドコストを算出するためのオーバーヘッド情報とを取得し、
符号化タイプ毎に、前記オーバーヘッド情報に基づいてオーバーヘッドコストを算出して予測残差コストに加算することにより総合コストを得ると共に、符号化タイプ間で、前記総合コストを比較することにより前記注目ＭＢの符号化タイプを選択し、
インターＭＢとスキップＭＢ間で前記総合コストの比較をする際に、
前記注目ＭＢのアクティビティ、または該注目ＭＢのアクティビティの大きさを示しうる別の値である指標値が所定の閾値以下であるときに、インターＭＢに対応する前記総合コストの制限処理と、スキップＭＢに対応する前記総合コストの調整処理とのいずれか一方を行ってから前記比較をし、
前記制限処理は、インターＭＢに対して、オーバーヘッドコストに含まれる差分ベクトルコストが予測残差コストの１／ｎ（ｎ＞１）を超えないように前記差分ベクトルコストを制限した上で総合コストを再計算する処理であり、
前記調整処理は、スキップ候補ＭＢに対して、スキップ候補ＭＢに対応する前記オーバーヘッド情報に含まれる動きベクトルと、インターＭＢに対応する前記オーバーヘッド情報に含まれる動きベクトルとの差分を差分ベクトルとしてオーバーヘッドコストに含まれる差分ベクトルコストを再計算し、再計算によって得た差分ベクトルコストを用いて総合コストを再計算する処理であることを特徴とする符号化タイプ決定方法。
【請求項５】
前記インターＭＢについて得られた予測残差コストを前記指標値として用いることを特徴とする請求項４に記載の符号化タイプ決定方法。
【請求項６】
請求項４または５に記載の符号化タイプ決定方法を実行することを特徴とする動画像符号化方法。
【請求項７】
動画像の符号化時に行う動き予測処理に際して、注目ＭＢ（ＭＢ：マクロブロック）の符号化タイプをイントラＭＢ、インターＭＢ、スキップ候補ＭＢのいずれか１つに決定するために、
符号化タイプ毎に、前記注目ＭＢを該符号化タイプで符号化する場合の予測残差コストと、オーバーヘッドコストを算出するためのオーバーヘッド情報とを取得し、
符号化タイプ毎に、前記オーバーヘッド情報に基づいてオーバーヘッドコストを算出して予測残差コストに加算することにより総合コストを得ると共に、符号化タイプ間で、前記総合コストを比較することにより前記注目ＭＢの符号化タイプを選択する処理をコンピュータに実行せしめるプログラムであって、
インターＭＢとスキップＭＢ間で前記総合コストの比較をする際に、
前記注目ＭＢのアクティビティ、または該注目ＭＢのアクティビティの大きさを示しうる別の値である指標値が所定の閾値以下であるときに、インターＭＢに対応する前記総合コストの制限処理と、スキップＭＢに対応する前記総合コストの調整処理とのいずれか一方を行ってから前記比較をし、
前記制限処理は、インターＭＢに対して、オーバーヘッドコストに含まれる差分ベクトルコストが予測残差コストの１／ｎ（ｎ＞１）を超えないように前記差分ベクトルコストを制限した上で総合コストを再計算する処理であり、
前記調整処理は、スキップ候補ＭＢに対して、スキップ候補ＭＢに対応する前記オーバーヘッド情報に含まれる動きベクトルと、インターＭＢに対応する前記オーバーヘッド情報に含まれる動きベクトルとの差分を差分ベクトルとしてオーバーヘッドコストに含まれる差分ベクトルコストを再計算し、再計算によって得た差分ベクトルコストを用いて総合コストを再計算する処理であることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像符号化、より具体的には、動画像の符号化時に行う動き予測処理に際して、注目マクロブロックのタイプを決定する技術に関する。
【背景技術】
【０００２】
Ｈ．２６４／ＡＶＣ符号化方式（非特許文献１）は、従来のＭＰＥＧ−２などの動画像符号化方式より符号化効率が高いため、動画像の分野で広く用いられており、様々な視点からの技術が提案されている（例えば特許文献１）。以下において、「Ｈ．２６４／ＡＶＣ符号化方式」を単に「Ｈ．２６４」ともいう。
【０００３】
Ｈ．２６４では、現在の符号化対象のマクロブロック（ＭＢ）、すなわち注目ＭＢに対して動き予測処理を行う際に、レート歪最適化（Ｒａｔｅ−Ｄｉｓｔｏｒｔｉｏｎ  Ｏｐｔｉｍｉｚａｔｉｏｎ）法を用いて、注目ＭＢをイントラＭＢ、インターＭＢ、スキップ候補ＭＢのいずれのタイプで符号化するかを決定する。具体的には、注目ＭＢに対して、上記３種類のＭＢタイプ（イントラＭＢ、インターＭＢ、スキップ候補ＭＢ）毎に、注目ＭＢを該タイプで符号化する場合のオーバーコストと予測残差コストとの和を総合コストとして算出し、最も小さい総合コストに対応するＭＢタイプを、注目ＭＢの符号化タイプに決定する。
【０００４】
なお、スキップＭＢは、ＭＢタイプ情報や差分ベクトル情報や予測残差情報をストリームにエンコードせず、デコーダ側で周辺ＭＢの情報から動きベクトルを合成し、動きベクトルの示す予測画像が再生画像となるＭＢである。画面全体が同様の動きをしている場合に、スキップＭＢを用いることにより符号量を抑制することができるメリットがある。特に低ビットレート（例えば１９８０×１０８０／６０ｉの画像を２ｍｂｐｓ）で符号化する場合、スキップＭＢを多用しないと符号化できないため、スキップＭＢとなるベクトル条件をインターＭＢとは別にスキップ候補ＭＢとして、総合コストによる評価が行われる。
【０００５】
ここで、レート歪最適化法による総合コストの算出について説明する。なお、スキップＭＢに関してはＰ＿Ｓｋｉｐを例にする。
【０００６】
＜イントラＭＢの総合コスト：ｉｐｒｅｄ＿ｃｏｓｔ＞
イントラＭＢの場合、注目ＭＢと同一のピクチャ（またはスライス）内の周辺画素データから予測が行われ、ＭＢタイプ（イントラＭＢのタイプ）とイントラ予測方向の組合せ毎に予測残差コストが算出される。そして、算出された各予測残差コストのうちの最も小さい予測残差コストに対応するＭＢタイプとイントラ予測方向が選択される。なお、イントラＭＢで符号化する場合、オーバーヘッドコストがＭＢタイプとイントラ予測方向から算出されるため、オーバーヘッドコストを算出するための情報として、ＭＢタイプとイントラ予測方向は、オーバーヘッド情報とも呼ばれる。
【０００７】
そして、総合コストｉｐｒｅｄ＿ｃｏｓｔは、下記の式（１）に従って算出される。
ipred_cost＝ipred_mb_cost＋ipred_pred_cost＋ipred_satd      (1)
【０００８】
式（１）において、「ｉｐｒｅｄ＿ｍｂ＿ｃｏｓｔ」はＭＢタイプコストであり、「ｉｐｒｅｄ＿ｐｒｅｄ＿ｃｏｓｔ」は、イントラ予測方向コストであり、この２つの要素の和は、イントラＭＢの場合のオーバーヘッドコストである。また、「ｉｐｒｅｄ＿ｓａｔｄ」は、予測残差コストであり、上述した最も小さい予測残差コストである。なお、予測残差コストとしては、「ｉｐｒｅｄ＿ｓａｔｄ」（ｓａｔｄ：ｓｕｍ  ｏｆ  ａｂｓｏｌｕｔｅ  ｔｒａｎｓｆｏｒｍｅｄ  ｄｉｆｆｅｒｅｎｃｅｓ）の代わりに、「ｉｐｒｅｄ＿ｓａｄ」（ｓａｄ：ｓｕｍ  ｏｆ  ａｂｓｏｌｕｔｅ  ｄｉｆｆｅｒｅｎｃｅｓ）を用いてもよい。
【０００９】
＜インターＭＢの総合コスト：ｉｎｔｅｒ＿ｃｏｓｔ＞
インターＭＢの場合、注目ＭＢについて参照ピクチャ（またはスライス）内でのベクトル検索が行われ、探索の結果毎に予測残差コストが算出される。そして、算出された各予測残差コストのうちの最も小さい予測残差コストに対応するＭＢタイプ（インターＭＢのタイプ）と動きベクトルが選択される。なお、インターＭＢで符号化する場合、オーバーヘッドコストがＭＢタイプと動きベクトルから算出されるため、ＭＢタイプと動きベクトルは、インターＭＢの場合のオーバーヘッド情報である。
【００１０】
そして、総合コストｉｎｔｅｒ＿ｃｏｓｔは、下記の式（２）に従って算出される。
inter_cost＝inter_mb_cost＋inter_vec_cost＋inter_satd      (2)
【００１１】
式（２）において、「ｉｎｔｅｒ＿ｍｂ＿ｃｏｓｔ」はＭＢタイプコストであり、「ｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔ」は、差分ベクトルコストであり、この２つの要素の和は、インターＭＢの場合のオーバーヘッドコストである。また、「ｉｎｔｅｒ＿ｓａｔｄ」は、予測残差コストであり、上述した最も小さい予測残差コストである。なお、予測残差コストとしては、「ｉｎｔｅｒ＿ｓａｔｄ」の代わりに「ｉｎｔｅｒ＿ｓａｄ」を用いてもよい。
【００１２】
式（２）におけるＭＢタイプコスト「ｉｎｔｅｒ＿ｍｂ＿ｃｏｓｔ」と、差分ベクトルコスト「ｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔ」は、夫々式（３）と式（４）に従って算出される。
【００１３】
inter_mb_cost＝λ(Qp)×g（mb_type）      (3)
inter_vec_cost＝λ(Qp)×g(dmv)      (4)
【００１４】
式（３）と式（４）において、Ｑｐは、量子化ステップ値であり、λ（Ｑｐ）は、Ｑｐの値に応じて決められるラグランジュ（Ｌａｇｒａｎｇｅ）乗数である。図１２には、λ（Ｑｐ）とＱｐの関係の例を示す。図１２に示すように、Ｑｐは、量子化ステップ値と呼ばれ、予測残差の直交変換係数を除算するときの序数として用いられ、高ビットレートではＱｐは小さく、低ビットレートではＱｐは大きくなる。そのため、λ（Ｑｐ）、及びＭＢタイプコストと差分ベクトルコストも、ビットレートが低いほど大きくなる。
【００１５】
また、式（３）において、ｍｂ＿ｔｙｐｅは、Ｈ．２６４規格で定められた、ＭＢのタイプに応じて付与される番号を示し、ｇ（ｍｂ＿ｔｙｐｅ）は、ｍｂ＿ｔｙｐｅに応じて決められるコロム符号長を示す。図１３は、ｇ（ｍｂ＿ｔｙｐｅ）とｍｂ＿ｔｙｐｅの関係の例を示す。なお、図１３における「Ｖａｌ」は、ｍｂ＿ｔｙｅの値すなわち番号である。
【００１６】
また、式（４）におけるｄｍｖは、インターＭＢの場合の差分ベクトルと呼ばれ、動きベクトル（ｍｖ）と予測動きベクトルの差分である。ｇ（ｄｍｖ）は、差分ベクトルｄｍｖに応じて決められるコロム符号長を示す。図１４は、ｇ（ｄｍｖ）とｄｍｖの関係の例を示す。
【００１７】
例えば、図１３に示す４種類のｍｂ＿ｔｙｐｅのうちのＰ＿Ｓｋｉｐ以外の３種類のｍｂ＿ｔｙｐｅがインターＭＢとして使用可能である場合に、この３種類のｍｂ＿ｔｙｐｅ毎に、予測残差コスト（ｉｎｔｅｒ＿ｓａｔｄまたはｉｎｔｅｒ＿ｓａｄ）が算出され、最も小さい予測残差コストが選択される。そして、式（２）〜（４）に従って総合コスト（ｉｎｔｅｒ＿ｃｏｓｔ）が算出される。
【００１８】
＜スキップ候補ＭＢの総合コスト：ｓｋｉｐ＿ｃｏｓｔ＞
Ｐ＿Ｓｋｉｐのスキップ候補ＭＢの場合、注目ＭＢと同一のピクチャ（またはスライス）内の周辺画素データから予測動きベクトルが求められ、該予測動きベクトルから、さらに予測残差コスト、ＭＢタイプコスト、差分ベクトルコストが算出される。なお、スキップＭＢで符号化する場合には、オーバーヘッド情報が存在しないが、スキップ候補ＭＢの総合コストの算出は、量子化後に量子化係数値が残るとの仮定の元で行われる。また、スキップ候補ＭＢの場合、ＭＢタイプが「Ｐ＿Ｌ０＿１６×１６」として評価されるため、ＭＢタイプコストは、常に「Ｐ＿Ｌ０＿１６×１６」として計算される。
【００１９】
式（５）に従って、総合コストが算出される。
skip_cost＝skip_mb_cost＋skip_vec_cost＋skip_satd      (5)
式（５）において、「ｓｋｉｐ＿ｍｂ＿ｃｏｓｔ」はＭＢタイプコストであり、「ｓｋｉｐ＿ｖｅｃ＿ｃｏｓｔ」は、差分ベクトルコストであり、この２つの要素の和は、スキップＭＢの場合のオーバーヘッドコストである。また、「ｓｋｉｐ＿ｓａｔｄ」は、予測残差コストであり、「ｓｋｉｐ＿ｓａｔｄ」の代わりに「ｓｋｉｐ＿ｓａｄ」を用いてもよい。
【００２０】
式（５）におけるＭＢタイプコスト「ｓｋｉｐ＿ｍｂ＿ｃｏｓｔ」と、差分ベクトルコスト「ｓｋｉｐ＿ｖｅｃ＿ｃｏｓｔ」は、夫々式（６）と式（７）に従って算出される。
【００２１】
skip_mb_cost＝λ(Qp)×g（P_L0_16×16）      (6)
skip_vec_cost＝λ(Qp)×g(skip_dmv)      (7)
【００２２】
式（７）におけるｓｋｉｐ＿ｄｍｖは、スキップＭＢの場合の差分ベクトルであり、動きベクトル（ｓｋｉｐ＿ｍｖ）と予測動きベクトルの差分であり、式（８）で表すことができる。
skip_dmv＝skip_mv−pmv      (8)
【００２３】
式（８）における「ｐｍｖ」は、予測動きベクトルである。
Ｈ．２６４では、動きベクトルの予測は、メディアン予測（Ｍｅｄｉａｎ  Ｐｒｅｄｉｃｔｉｏｎ）が用いられる。例えば、図１５に示す同一のピクチャ（またはスライス。以下同じ）におけるマクロブロックＡ、Ｂ、Ｃ、Ｄ、Ｅのうちに、マクロブロックＥが注目ＭＢであるとする。このとき、マクロブロックＥの予測動きベクトルｐｍｖは、原則として、マクロブロックＡ、Ｂ、Ｃの動きベクトルの平均値すなわちメディアン値になる。
【００２４】
動きベクトルｓｋｉｐ＿ｍｖは、参照インデックス（ｒｅｆＩｄｘ）の値が「０」であり、かつ、以下に示す３つの条件の内のいずれか１つが成立する場合には「０」となり、他の場合には、予測動きベクトルｐｍｖとなる。
【００２５】
＜条件１＞：マクロブロックＡまたはマクロブロックＢが使用不可能である。
＜条件２＞：マクロブロックＡは、参照インデックス（ｒｅｆＩｄｘＬ０Ａ）の値が「０」であり、かつ、動きベクトルが「０」である。
＜条件３＞：マクロブロックＢは、参照インデックス（ｒｅｆＩｄｘＬ０Ｂ）の値が「０」であり、かつ、動きベクトルが「０」である。
【先行技術文献】
【特許文献】
【００２６】
【特許文献１】特開２００５−２４４５０３号公報
【非特許文献】
【００２７】
【非特許文献１】ＩＳＯ/ＩＥＣ  １４４９６−１０,"Ｉｎｆｏｒｍａｔｉｏｎ  Ｔｅｃｈｎｏｌｏｇｙ−Ｃｏｄｉｎｇ  ｏｆ  ａｕｄｉｏ-ｖｉｓｕａｌ  ｏｂｊｅｃｔｓ−Ｐａｒｔ.１０  Ａｄｖａｎｃｅｄ  Ｖｉｄｅｏ  Ｃｏｄｉｎｇ",２００５−１２−１５
【発明の概要】
【発明が解決しようとする課題】
【００２８】
レート歪最適化法により符号化タイプを決定する際に、低ビットレートの場合において、スキップＭＢに関しては、オーバーヘッドコストがとても小さくなるため、その総合コストの大小は、予測残差コスト（ｓｋｉｐ＿ｓａｔｄまたはｓｋｉｐ＿ｓａｄ）でほぼ決まってしまう。
【００２９】
ここで、低ビットレートで符号化する際に、注目ＭＢのインターＭＢの動きベクトルと予測動きベクトルのずれが大きい場合を考える。
【００３０】
アクティビティの高い領域では、スキップ候補ＭＢに関して、周辺ＭＢから求めたスキップＭＢ条件となる動きベクトルが、注目ＭＢの動きを表していない場合、スキップ候補ＭＢの予測残差コストは、注目ＭＢの動きを表しているインターＭＢの予測残差コストよりはるかに大きいため、オーバーヘッドコストの大小で、インターＭＢとスキップ候補ＭＢの間でスキップ候補ＭＢが選択されることは無い。
【００３１】
しかし、アクティビティの低い領域では、スキップＭＢ条件となる動きベクトルが、注目ＭＢの動きを表していない場合でも、スキップ候補ＭＢの予測残差コストが小さくなるため、オーバーヘッドコストが小さいスキップ候補ＭＢがオーバーヘッドコストの大きなインターＭＢより選ばれやすくなってしまう。
【００３２】
スキップＭＢが選ばれると、ストリームにＭＢタイプや同ベクトル情報はエンコードされないため、デコード時に、該ＭＢの動きベクトルとして周辺のＭＢから求められた予測ベクトルが用いられる。
【００３３】
画面全体が同様の動きをしている場合に、スキップＭＢが選ばれても、デコード時に該ＭＢの動きベクトルとして周辺のＭＢから求められたメディアン値が、実際の動きベクトルに近いため、画質の劣化が限定されている。
【００３４】
しかし、領域によって動きが異なる場合、例えば、図１５におけるマクロブロックＡ、Ｂ、Ｃの動きベクトルが夫々（１，１）、（０，０）、（−１，−１）である場合には、マクロブロックＥがスキップＭＢに選択されときに、復号時には、該ＭＢは、動きベクトルが本来ではないベクトル（擬似ベクトル）「０」として復号される。これでは、擬似ベクトル場が形成されてしまい、画質が劣化し、視覚上に大きな違和感を与えてしまう。
【課題を解決するための手段】
【００３５】
本発明の１つの態様は、動画像の符号化時に行う動き予測処理に際して、注目ＭＢの符号化タイプをイントラＭＢ、インターＭＢ、スキップ候補ＭＢのいずれか１つに決定する符号化タイプ決定方法である。
【００３６】
該方法は、まず、符号化タイプ毎に、前記注目ＭＢを該符号化タイプで符号化する場合の予測残差コストと、オーバーヘッド情報とを取得する。オーバーヘッド情報は、オーバーヘッドコストを算出するための情報であり、差分ベクトルコストを含む。
【００３７】
そして、符号化タイプ毎に、前記オーバーヘッド情報に基づいてオーバーヘッドコストを算出して予測残差コストに加算することにより総合コストを得ると共に、符号化タイプ間で、前記総合コストを比較することにより前記注目ＭＢの符号化タイプを選択する。
【００３８】
インターＭＢとスキップ候補ＭＢ間で前記総合コストの比較をする際に、前記注目ＭＢのアクティビティ、または該注目ＭＢのアクティビティの大きさを示しうる別の値である指標値が所定の閾値以下であるときに、インターＭＢに対応する前記総合コストの制限処理と、スキップＭＢに対応する前記総合コストの調整処理とのいずれか一方を行ってから前記比較をする。
【００３９】
前記制限処理は、インターＭＢに対して、オーバーヘッドコストに含まれる差分ベクトルコストが予測残差コストの１／ｎ（ｎ＞１）を超えないように前記差分ベクトルコストを制限した上で総合コストを再計算する処理である。
【００４０】
前記調整処理は、スキップ候補ＭＢに対して、スキップ候補ＭＢに対応する前記オーバーヘッド情報に含まれる動きベクトルと、インターＭＢに対応する前記オーバーヘッド情報に含まれる動きベクトルとの差分を差分ベクトルとしてオーバーヘッドコストに含まれる差分ベクトルコストを再計算し、再計算によって得た差分ベクトルコストを用いて総合コストを再計算する処理である。
【００４１】
なお、上記態様の符号化タイプ決定方法を装置やシステムに置き換えて表現したもの、該符号化タイプ決定方法を含む動画像符号化方法、該動画像符号化方法を実行する動画像符号化装置、上記符号化タイプ決定方法または動画像符号化方法をコンピュータに実行せしめるプログラムなども、本発明の態様としては有効である。
【発明の効果】
【００４２】
本発明にかかる技術によれば、低ビットレートで符号化する際における画質劣化を抑制することができる。
【図面の簡単な説明】
【００４３】
【図１】本発明の第１の実施の形態にかかる動画像符号化装置を示す図である。
【図２】図１に示す動画像符号化装置における符号化タイプ決定部を示す図である。
【図３】図２に示す符号化タイプ決定部における処理を示すフローチャートである（その１）。
【図４】図２に示す符号化タイプ決定部における処理を示すフローチャートである（その２）。
【図５】本発明の第２の実施の形態にかかる動画像符号化装置における符号化タイプ決定部を示す図である。
【図６】図５に示す符号化タイプ決定部における処理を示すフローチャートである（その１）。
【図７】図５に示す符号化タイプ決定部における処理を示すフローチャートである（その２）。
【図８】本発明の第３の実施の形態にかかる動画像符号化装置における符号化タイプ決定部を示す図である。
【図９】図８に示す符号化タイプ決定部における処理を示すフローチャートである。
【図１０】本発明の第３の実施の形態にかかる動画像符号化装置における符号化タイプ決定部を示す図である。
【図１１】図１０に示す符号化タイプ決定部における処理を示すフローチャートである。
【図１２】λ（Ｑｐ）とＱｐの関係の例を示す図である。
【図１３】ｇ（ｍｂ＿ｔｙｐｅ）とｍｂ＿ｔｙｐｅの関係の例を示す図である。
【図１４】ｇ（ｄｍｖ）とｄｍｖの関係の例を示す図である。
【図１５】予測動きベクトルｐｍｖを説明するための図である。
【発明を実施するための形態】
【００４４】
以下、図面を参照して本発明の実施の形態について説明する。説明の明確化のため、以下の記載及び図面は、適宜、省略、及び簡略化がなされている。また、様々な処理を行う機能ブロックとして図面に記載される各要素は、ハードウェア的には、ＣＰＵ、メモリ、その他の回路で構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。なお、各図面において、同一の要素には同一の符号が付されており、必要に応じて重複説明は省略されている。
【００４５】
また、上述したプログラムは、様々なタイプの非一時的なコンピュータ可読媒体（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（ｔａｎｇｉｂｌｅ  ｓｔｏｒａｇｅ  ｍｅｄｉｕｍ）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  ＰＲＯＭ）、フラッシュＲＯＭ、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【００４６】
＜第１の実施の形態＞
図１は、本発明の第１の実施の形態にかかる動画像符号化装置１００を示す。該動画像符号化装置１００は、Ｈ．２６４で動画像を符号化するものであり、この種の装置に通常備えられる機能ブロックを有するが、図１においては、本発明にかかる技術を説明する上で必要なもののみを示す。
【００４７】
図１に示すように、動画像符号化装置１００は、符号化タイプ決定部１１０、直交変換部１７０、量子化部１８０、エントロピー符号化部１９０を備える。
【００４８】
符号化タイプ決定部１１０は、動画像が入力され、該動画像に対してＭＢ毎に動き予測処理を行う。符号化タイプ決定部１１０が行う動き予測処理は、注目ＭＢの符号化タイプをイントラＭＢ、インターＭＢ、スキップ候補ＭＢのいずれかに決定する処理を含む。
【００４９】
符号化タイプ決定部１１０は、注目ＭＢの符号化タイプを決定すると、該符号化タイプに対応する予測残差とオーバーヘッド情報を直交変換部１７０とエントロピー符号化部１９０に夫々出力する。なお、符号化タイプがイントラＭＢに決定されたときには、エントロピー符号化部１９０に出力されるオーバーヘッド情報は、ＭＢタイプ（イントラＭＢのＭＢタイプ）と予測方向であり、符号化タイプがインターＭＢに決定されたときには、エントロピー符号化部１９０に出力されるオーバーヘッド情報は、ＭＢタイプ（インターＭＢのタイプ）と動きベクトルである。符号化タイプがスキップ候補ＭＢである場合には、エントロピー符号化部１９０に情報は出力されない。
【００５０】
直交変換部１７０は、符号化タイプ決定部１１０からの予測残差に対して直交変換を行い、直交変換係数を量子化部１８０に出力する。
【００５１】
量子化部１８０は、周波数毎に異なる重み付けの量子化マトリックスと量子化ステップ値を用いて直交変換係数の量子化処理を行い、量子化係数データをエントロピー符号化部１９０に出力する。
【００５２】
エントロピー符号化部１９０は、可変長符号化や算術符号化などで、符号化タイプ決定部１１０からのオーバーヘッド情報と、量子化部１８０からの量子化係数データを符号化し、符号化ストリームを出力する。
【００５３】
符号化タイプ決定部１１０による符号化タイプを決定する処理を除き、動画像符号化装置１００は、通常のＨ．２６４規格の動画像符号化装置と同様であるため、ここで、符号化タイプ決定部１１０に対してのみ詳細に説明する。なお、説明に際して、スキップＭＢについては、Ｐ＿ｓｋｉｐを例にする。
【００５４】
図２は、符号化タイプ決定部１１０を示す。符号化タイプ決定部１１０は、候補評価部１２０と、符号化タイプ選択部１４０を備える。
【００５５】
候補評価部１２０は、イントラＭＢ、インターＭＢ、スキップ候補ＭＢの３つの符号化タイプ毎に、注目ＭＢを該符号化タイプで符号化する場合の予測残差コストと、オーバーヘッドコストを算出するためのオーバーヘッド情報とを取得する。図示のように、候補評価部１２０は、イントラ候補評価部１２２、インター候補評価部１２４、スキップ候補評価部１２６を備える。
【００５６】
イントラ候補評価部１２２は、注目ＭＢをイントラＭＢとして符号化する場合の予測残差コスト（イントラ予測残差コストｉｐｒｅｄ＿ｓａｔｄ）と、オーバーヘッド情報（イントラオーバヘッド情報ＯＨＩ１）とを取得する。具体的には、イントラ候補評価部１２２は、注目ＭＢと同一のピクチャ（またはスライス）内の周辺画素データから予測を行い、ＭＢタイプ（イントラＭＢのタイプ）とイントラ予測方向の組合せ毎に予測残差コストを算出する。そして、算出した各予測残差コストのうちの最も小さい予測残差コストに対応するＭＢタイプとイントラ予測方向を選択する。
【００５７】
イントラ候補評価部１２２は、選択したＭＢタイプと予測方向を、イントラオーバヘッド情報ＯＨＩ１として出力する。また、イントラオーバヘッド情報ＯＨＩ１に対応する上記最も小さい予測残差コストを、イントラ予測残差コストｉｐｒｅｄ＿ｓａｔｄとして出力する。
【００５８】
インター候補評価部１２４は、注目ＭＢをインターＭＢとして符号化する場合の予測残差コスト（インター予測残差コストｉｎｔｅｒ＿ｓａｔｄ）と、オーバーヘッド情報（インターオーバーヘッド情報ＯＨＩ２）を取得する。具体的には、注目ＭＢについて参照ピクチャ（またはスライス）内でのベクトル検索を行い、探索の結果毎に予測残差コストを算出する。そして、算出した各予測残差コストのうちの最も小さい予測残差コストに対応するＭＢタイプ（インターＭＢのタイプ）と動きベクトルｍｖを選択する。
【００５９】
インター候補評価部１２４は、選択したＭＢタイプと動きベクトルｍｖをインターオーバーヘッド情報ＯＨＩ２として出力する。また、インターオーバーヘッド情報ＯＨＩ２に対応する上記最も小さい予測残差コスト、インター予測残差コストｉｎｔｅｒ＿ｓａｔｄとして出力する。
【００６０】
スキップ候補評価部１２６は、注目ＭＢをスキップ候補ＭＢとして符号化する場合の予測残差コスト（スキップ予測残差コストｓｋｉｐ＿ｓａｔｄ）と、オーバーヘッド情報（スキップオーバーヘッド情報ＯＨＩ３）を取得する。具体的には、注目ＭＢと同一のピクチャ（またはスライス）内の周辺画素データから予測動きベクトルｐｍｖを求め、該予測動きベクトルｐｍｖを用いて、後にオーバーヘッドコストを算出するための動きベクトルｓｋｉｐ＿ｍｖ（０またはｐｍｖ）と、予測残差コスト（スキップ予測残差コストｓｋｉｐ＿ｓａｔｄ）を算出する。
【００６１】
スキップ候補評価部１２６は、スキップ候補ＭＢのＭＢタイプである「Ｐ＿Ｌ０＿１６×１６」を示す「０」と、動きベクトルｓｋｉｐ＿ｍｖをスキップオーバーヘッド情報ＯＨＩ３として出力する。また、スキップ候補評価部１２６は、スキップ予測残差コストｓｋｉｐ＿ｓａｔｄも出力する。
【００６２】
候補評価部１２０の各機能ブロックによる予測残差コストの算出と、オーバーヘッド情報の取得は、背景技術のときに説明した、Ｈ．２６４に準拠する符号化装置においてレート歪最適化法で符号化タイプを決定する通常の相対応する処理と同様である。
【００６３】
符号化タイプ選択部１４０は、候補評価部１２０から得られた種々の情報に基づいて注目ＭＢの符号化タイプを決定する。符号化タイプ選択部１４０は、選択実行部１４２、制限処理部１４４、アクティビティ算出部１４６を備える。
【００６４】
アクティビティ算出部１４６は、注目ＭＢのアクティビティＱを算出して制限処理部１４４とアクティビティ算出部１４６に出力する。アクティビティ算出部１４６によるアクティビティＱの算出は、従来知られている種々の手法を適用することができる。例えば注目ＭＢの水平方向と垂直方向の画素の差分の累積値をアクティビティＱとして求めればよい。
【００６５】
選択実行部１４２は、符号化タイプ毎に、候補評価部１２０からのオーバーヘッド情報に基づいてオーバーヘッドコストを算出して予測残差コストに加算することにより総合コストを得ると共に、符号化タイプ間で、総合コストを比較することにより注目ＭＢの符号化タイプを選択する。
【００６６】
選択実行部１４２は、アクティビティ算出部１４６からのアクティビティＱが予め定められた閾値Ｔ１以下と、アクティビティＱが閾値Ｔ１より大きいとで、異なる動作をする。
【００６７】
＜アクティビティＱ＞閾値Ｔ１＞
この場合、選択実行部１４２は、Ｈ．２６４に準拠する通常の符号化装置と同様の動作をする。具体的には、まず、上述した式（１）に従ってイントラ総合コストｉｐｒｅｄ＿ｃｏｓｔを算出し、式（２）〜（４）に従ってインター総合コストｉｎｔｅｒ＿ｃｏｓｔを算出し、式（５）〜（８）に従ってスキップ候補総合コストｓｋｉｐ＿ｃｏｓｔを算出する。分かりやすいように、これらの式を再度示す。
【００６８】
ipred_cost＝ipred_mb_cost＋ipred_pred_cost＋ipred_satd      (1)
inter_cost＝inter_mb_cost＋inter_vec_cost＋inter_satd      (2)
inter_mb_cost＝λ(Qp)×g（mb_type）      (3)
inter_vec_cost＝λ(Qp)×g(dmv)      (4)
skip_cost＝skip_mb_cost＋skip_vec_cost＋skip_satd      (5)
skip_mb_cost＝λ(Qp)×g（P_L0_16×16）      (6)
skip_vec_cost＝λ(Qp)×g(skip_dmv)      (7)
skip_dmv＝skip_mv−pmv       (8)
【００６９】
そして、選択実行部１４２は、符号化タイプ間で上記において算出した総合コストを比較し、最も小さい総合コストに対応する符号化タイプを選択する。
【００７０】
選択実行部１４２は、選択した符号化タイプに対応する予測残差を直交変換部１７０に出力し、選択した符号化タイプに対応するオーバーヘッド情報をエントロピー符号化部１９０に出力する。
【００７１】
＜アクティビティＱ≦閾値Ｔ１＞
この場合、選択実行部１４２は、まず、イントラ総合コストｉｐｒｅｄ＿ｃｏｓｔ、インター総合コストｉｎｔｅｒ＿ｃｏｓｔ、スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔを算出する。これらの総合コストの算出は、アクティビティＱが閾値Ｔ１より大きいときと同様に、式（１）〜（８）に従って行われる。
【００７２】
しかし、この場合、インターＭＢとスキップ候補ＭＢ間で前記総合コストの比較をする際に、選択実行部１４２は、インター総合コストｉｎｔｅｒ＿ｃｏｓｔの代わりに制限処理部１４４により得られた制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡを用いる。
【００７３】
制限処理部１４４は、アクティビティＱが閾値Ｔ１以下であるときにのみ制限処理を行って制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡを算出して選択実行部１４２に供する。この制限処理は、インターＭＢのオーバーヘッドコストに含まれる差分ベクトルコスト（インター差分ベクトルコストｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔ）がインター予測残差コストｉｎｔｅｒ＿ｓａｔｄの１／ｎ（ｎ＞１）を超えないように差分ベクトルコストを制限した上でインター総合コストｉｎｔｅｒ＿ｃｏｓｔを再計算する処理である。
【００７４】
具体的には、制限処理部１４４は、制限処理に当たり、まず、選択実行部１４２により算出したインター差分ベクトルコストｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔと、インター予測残差コストｉｎｔｅｒ＿ｓａｔｄとを比較する。
【００７５】
インター差分ベクトルコストｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔがインター予測残差コストｉｎｔｅｒ＿ｓａｔｄの１／ｎ以下である場合には、制限処理部１４４は、選択実行部１４２が算出したインター総合コストｉｎｔｅｒ＿ｃｏｓｔをそのまま制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡとして選択実行部１４２に返送する。
【００７６】
一方、インター差分ベクトルコストｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔがインター予測残差コストｉｎｔｅｒ＿ｓａｔｄの１／ｎより大きい場合には、制限処理部１４４は、式（９）に従って制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡを算出して選択実行部１４２に出力する。
inter_costA＝inter_mb_cost＋inter_stad／ｎ＋inter_satd      (9)
【００７７】
式（９）と式（２）を比較すると分かるように、インター差分ベクトルコストｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔがインター予測残差コストｉｎｔｅｒ＿ｓａｔｄの１／ｎより大きい場合に、制限処理部１４４は、式（２）に対して、インター差分ベクトルコストｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔを「ｉｎｔｅｒ＿ｓａｔｄ／ｎ」に置き換えて算出した総合コストを制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡとしている。
【００７８】
なお、選択実行部１４２は、インターＭＢとスキップ候補ＭＢ間で行う総合コストの比較時にのみ制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡを用い、イントラＭＢとインターＭＢ間で総合コストを比較するときには、インター総合コストｉｎｔｅｒ＿ｃｏｓｔを用いる。
【００７９】
図３は、符号化タイプ決定部１１０の処理を示すフローチャートである。まず、式（１）〜式（７）に従って、イントラ総合コストｉｐｒｅｄ＿ｃｏｓｔ、インター総合コストｉｎｔｅｒ＿ｃｏｓｔ、スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔが算出される（Ｓ１００）。
【００８０】
アクティビティ算出部１４６により算出されたアクティビティＱが閾値Ｔ１より大きいときに（Ｓ１０２：Ｎｏ）、スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔとインター総合コストｉｎｔｅｒ＿ｃｏｓｔの比較が行われる（Ｓ１１０）。
【００８１】
スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔがインター候補総合コストｉｎｔｅｒ＿ｃｏｓｔ以下であるときに（Ｓ１１０：Ｙｅｓ）、スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔとイントラ総合コストｉｐｒｅｄ＿ｃｏｓｔの比較が行われる（Ｓ１６０）。そして、スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔがイントラ総合コストｉｐｒｅｄ＿ｃｏｓｔ以下であるときには、符号化タイプがスキップ候補ＭＢに決定され（Ｓ１６０：Ｙｅｓ、Ｓ１７０）、スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔがイントラ総合コストｉｐｒｅｄ＿ｃｏｓｔより大きいときには、符号化タイプがイントラＭＢに決定される（Ｓ１６０：Ｎｏ、Ｓ１３０）。
【００８２】
ステップＳ１１０において、スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔがインター総合コストｉｎｔｅｒ＿ｃｏｓｔより大きいときに（Ｓ１１０）、インター総合コストｉｎｔｅｒ＿ｃｏｓｔとイントラ総合コストｉｐｒｅｄ＿ｃｏｓｔの比較が行われる（Ｓ１１２）。そして、インター総合コストｉｎｔｅｒ＿ｃｏｓｔがイントラ総合コストｉｐｒｅｄ＿ｃｏｓｔ以下であるときには、符号化タイプがインターＭＢに決定され（Ｓ１１２：Ｙｅｓ、Ｓ１２０）、インター総合コストｉｎｔｅｒ＿ｃｏｓｔがイントラ総合コストｉｐｒｅｄ＿ｃｏｓｔより大きいときには、符号化タイプがイントラＭＢに決定される（Ｓ１１２：Ｎｏ、Ｓ１３０）。
【００８３】
ステップＳ１０２において、アクティビティＱが閾値Ｔ１以下であるとき（Ｓ１０２：Ｙｅｓ）、制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡが算出される（Ｓ１４０）。
【００８４】
そして、スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔと、ステップＳ１４０で算出された制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡの比較が行われる（Ｓ１５０）。
【００８５】
スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔが制限インター候補総合コストｉｎｔｅｒ＿ｃｏｓｔＡ以下であるときには（Ｓ１５０：Ｙｅｓ）、スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔとイントラ総合コストｉｐｒｅｄ＿ｃｏｓｔの比較が行われる（Ｓ１６０）。ステップＳ１６０以降の処理は、上記にて説明した通りである。
【００８６】
ステップＳ１５０において、スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔが制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡより大きいときには（Ｓ１５０：Ｎｏ）、処理がステップＳ１１２に進み、インター総合コストｉｎｔｅｒ＿ｃｏｓｔとイントラ総合コストｉｐｒｅｄ＿ｃｏｓｔの比較が行われる。ステップＳ１１２以降の処理は、上記にて説明した通りである。
【００８７】
図４は、図３のステップＳ１４０における制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡの算出を示すフローチャートである。図示のように、インター差分ベクトルコストｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔがインター予測残差コストｉｎｔｅｒ＿ｓａｔｄの１／ｎ以下であるときに（Ｓ１４１：Ｙｅｓ）、制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡは、インター総合コストｉｎｔｅｒ＿ｃｏｓｔと同値の制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡが選択実行部１４２に供される（Ｓ１４２）。
【００８８】
一方、インター差分ベクトルコストｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔがインター予測残差コストｉｎｔｅｒ＿ｓａｔｄの１／ｎより大きいときに（Ｓ１４１：Ｎｏ）、差分ベクトルコストがインター差分ベクトルコストｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔからインター予測残差コストｉｎｔｅｒ＿ｓａｔｄ／ｎであるインター差分ベクトルコストｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔＡに置き換えられ、置換え後のインター差分ベクトルコストｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔＡでインター総合コストの再算出が行われる（Ｓ１４５、Ｓ１４６）。この再算出により得られたインター総合コストは、制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡとして選択実行部１４２に供される。
【００８９】
このように、本実施の形態の動画像符号化装置１００は、注目ＭＢのアクティビティＱが閾値Ｔ１以下であり、かつ、インター差分ベクトルコストｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔがインター予測残差コストｉｎｔｅｒ＿ｓａｔｄの１／ｎより大きいときに、スキップ候補ＭＢとインターＭＢ間で総合コストを比較する際に、インター差分ベクトルコストｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔをインター予測残差コストｉｎｔｅｒ＿ｓａｔｄの１／ｎに置き換えて再算出したインターＭＢの総合コスト（制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡ）を用いる。
【００９０】
通常、画面全体が一様な動きをしていないインターＭＢは、差分ベクトルコストがオーバーヘッドコストの成分の中で最も大きな値である。アクティビティＱが低い注目ＭＢのインター差分ベクトルコストｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔに対して上述した制限処理を加えることにより、インターＭＢのオーバーヘッドコストを小さくし、インターＭＢが選択されやすくすることができる。その結果、不当にスキップ候補ＭＢを選択することに起因する擬似ベクトル場ひいては画質劣化の発生を抑制することができる。
【００９１】
なお、上記制限処理で用いられる「ｎ」が１より大きい値であれば効果を得ることができるが、本願発明者は、多数のサンプルで実験を重ね、２以上４以下の範囲のｎを用いることにより良好な効果が得られることを確認した。
【００９２】
＜第２の実施の形態＞
本発明の第２の実施の形態も、動画像符号化装置である。この動画像符号化装置は、図１に示す動画像符号化装置１００に対して、符号化タイプ決定部１１０の代わりに図５に示す符号化タイプ決定部２１０を設けたものである。ここで、符号化タイプ決定部２１０について説明する。なお、符号化タイプ決定部２１０に対して、符号化タイプ決定部１１０と異なる点についてのみ説明する。
【００９３】
図２に示すように、符号化タイプ決定部２１０は、候補評価部１２０と、符号化タイプ選択部２４０を備える。
【００９４】
符号化タイプ選択部２４０は、選択実行部２４２、調整処理部２４４、アクティビティ算出部１４６を備える。
【００９５】
アクティビティ算出部１４６が算出したアクティビティＱが閾値Ｔ１より大きいときに、調整処理部２４４は動作せず、選択実行部２４２は、動画像符号化装置１００の符号化タイプ決定部１１０における選択実行部１４２と同様の動作をする。
【００９６】
調整処理部２４４は、アクティビティＱが閾値Ｔ１以下であるときに、スキップ候補ＭＢに対して、スキップ候補オーバーヘッド情報ＯＨＩ３に含まれる動きベクトルｓｋｉｐ＿ｍｖと、インターオーバーヘッド情報ＯＨＩ２に含まれる動きベクトルｍｖとの差分（ｓｋｉｐ＿ｄｍｖＡ）を差分ベクトルとして差分ベクトルコストを再計算し、再計算によって得た差分ベクトルコスト（ｓｋｉｐ＿ｖｅｃ＿ｃｏｓｔＡ）を用いて総合コストを再計算して調整スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔＡを得て選択実行部２４２に供する。
【００９７】
調整処理部２４４による調整処理は、式（１０）〜（１２）により表わすことができる。
skip_dmvA＝skip_mv−mv      (10)
skip_vec_costA＝λ(Qp)×g(skip_dmvA)      (11)
skip_costA＝skip_mb_cost＋skip_vec_costA＋skip_satd      (12)
【００９８】
また、この場合、選択実行部２４２は、インターＭＢとスキップ候補ＭＢ間で総合コストを比較する際に、スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔの代わりに、調整処理部２４４により得られた調整スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔＡを用いる。
【００９９】
式（１０）と式（８）を比較すると分かるように、調整処理部２４４による調整処理は、スキップ候補ＭＢに対して、差分ベクトルを求める際に用いる予測動きベクトルｐｍｖをインターＭＢのときの動きベクトルｍｖに置換えている。
【０１００】
図６は、符号化タイプ決定部２１０における処理を示すフローチャートである。図示のように、アクティビティＱが閾値Ｔ１以下であるときに（Ｓ１０２：Ｙｅｓ）、調整スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔＡが算出される（Ｓ２４０）。そして、インターＭＢとスキップ候補ＭＢ間で総合コストを比較する際に、スキップ候補ＭＢについて、スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔの代わりに調整スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔＡが用いられる（Ｓ２５０）。
【０１０１】
ステップＳ２４０とＳ２５０を除き、図６に示す各ステップは、図３のフローチャートにおける同符号のステップと同様であるため、他のステップについての説明を省略する。
【０１０２】
図７は、図６のステップＳ２４０における調整スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔＡの算出を示すフローチャートである。図示のように、ｓｋｉｐ＿ｍｖとｍｖの差分をｓｋｉｐ＿ｄｍｖＡとして算出され（Ｓ２４２）、該ｓｋｉｐ＿ｄｍｖＡを用いて、差分ベクトルコスト（ｓｋｉｐ＿ｖｅｃ＿ｃｏｓｔＡ）が算出され（Ｓ２４４）、さらに調整スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔＡが算出され、選択実行部２４２に供される（Ｓ２４６）。
【０１０３】
インターＭＢのときの動きベクトルｍｖが実際の動きベクトルを代表しているため、アクティビティＱが低い注目ＭＢに対して式（１０）が示す調整を行うことにより、注目ＭＢの実際の動きベクトルと予測動きベクトルｐｍｖとのずれが大きいときに、式（８）に示すｓｋｉｐ＿ｄｍｖより大きいｓｋｉｐ＿ｄｍｖＡが得られる。そのため、該ｓｋｉｐ＿ｄｍｖＡを用いて得たｓｋｉｐ＿ｖｅｃ＿ｃｏｓｔＡ乃至調整スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔＡも大きくなり、スキップ候補ＭＢとインターＭＢ間において、インターＭＢが選ばれやすくなる。
【０１０４】
その結果、不当にスキップＭＢを選択することに起因する擬似ベクトル場ひいては画質劣化の発生を抑制することができる。
【０１０５】
＜第３の実施の形態＞
【０１０６】
上述した２つの実施の形態の動画像符号化装置において、アクティビティ算出部１４６によりアクティビティＱを算出し、算出したアクティビティＱが低いときにインター総合コストｉｎｔｅｒ＿ｃｏｓｔまたはスキップ候補総合コストｓｋｉｐ＿ｃｏｓｔを調整している。
【０１０７】
アクティビティが低い領域では、インター予測残差コストｉｎｔｅｒ＿ｓａｔｄも低いため、アクティビティＱの代わりに、アクティビティＱを示す指標値としてインター予測残差コストｉｎｔｅｒ＿ｓａｔｄを用いることもできる。これについて、第３の実施の形態で説明する。
【０１０８】
本発明の第３の実施の形態も、動画像符号化装置である。この動画像符号化装置は、図１に示す動画像符号化装置１００に対して、符号化タイプ決定部１１０の代わりに図８に示す符号化タイプ決定部３１０を設けたものである。ここで、符号化タイプ決定部３１０について説明する。なお、符号化タイプ決定部３１０に対して、符号化タイプ決定部１１０と異なる点についてのみ説明する。
【０１０９】
図８に示すように、符号化タイプ決定部３１０は、候補評価部１２０と、符号化タイプ選択部３４０を備える。
【０１１０】
符号化タイプ選択部３４０は、選択実行部１４２、制限処理部３４４を有し、動画像符号化装置１００における符号化タイプ決定部１１０のアクティビティ算出部１４６が設けられていない。
【０１１１】
制限処理部３４４は、注目ＭＢのインター予測残差コストｉｎｔｅｒ＿ｓａｔｄを、アクティビティＱを示す指標値として用い、インター予測残差コストｉｎｔｅｒ＿ｓａｔｄが予め定められた閾値Ｔ２以下であるときに、制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡを算出する。制限処理部３４４による制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡの算出処理は、図４のフローチャートが示す処理と同様である。
【０１１２】
図９は、符号化タイプ決定部３１０における処理を示すフローチャートである。図示のように、インター予測残差コストｉｎｔｅｒ＿ｓａｔｄが閾値Ｔ２以下であるときに（Ｓ３０２：Ｙｅｓ）、制限処理部３４４により制限インター総合コストｉｎｔｅｒ＿ｃｏｓｔＡが算出される（Ｓ１４０）。インター予測残差コストｉｎｔｅｒ＿ｓａｔｄが閾値Ｔ２より大きい場合の処理（Ｓ３０２：Ｎｏ、Ｓ１１０〜）、ステップＳ１４０以降の処理は、図３のフローチャートにおける同符号のステップと同様であるため、ここで説明を省略する。
【０１１３】
本実施の形態の動画像符号化装置は、アクティビティを近似的に示しうる指標値としてインター予測残差コストｉｎｔｅｒ＿ｓａｔｄを用いることにより、アクティビティを算出する回路を設ける必要がないため、回路規模を小さくすることができる。
【０１１４】
＜第４の実施の形態＞
本発明の第４の実施の形態も、アクティビティを近似的に示しうる指標値としてインター予測残差コストｉｎｔｅｒ＿ｓａｔｄを用いる動画像符号化装置である。この動画像符号化装置は、図１に示す動画像符号化装置１００に対して、符号化タイプ決定部１１０の代わりに図１０に示す符号化タイプ決定部４１０を設けたものである。ここで、符号化タイプ決定部４１０について説明する。
【０１１５】
図１０に示すように、符号化タイプ決定部４１０は、候補評価部１２０と、符号化タイプ選択部４４０を備える。
【０１１６】
符号化タイプ選択部４４０は、選択実行部２４２と、調整処理部４４４を有する。図５に示す符号化タイプ決定部２１０と比較すると、符号化タイプ選択部２４０に備えられた符号化タイプ選択部１４０を設けていない点と、調整処理部２４４の代わりに調整処理部４４４が設けられている点を除き、符号化タイプ選択部４４０は、符号化タイプ選択部２４０と同様である。
【０１１７】
調整処理部４４４は、注目ＭＢのインター予測残差コストｉｎｔｅｒ＿ｓａｔｄを、アクティビティＱを示す指標値として用い、インター予測残差コストｉｎｔｅｒ＿ｓａｔｄが予め定められた閾値Ｔ２以下であるときに、調整スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔＡを算出する。調整処理部４４４による調整スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔＡの算出処理は、図７のフローチャートが示す処理と同様である。
【０１１８】
図１１は、符号化タイプ決定部４１０における処理を示すフローチャートである。図示のように、インター予測残差コストｉｎｔｅｒ＿ｓａｔｄが閾値Ｔ２以下であるときに（Ｓ４０２：Ｙｅｓ）、調整処理部４４４により調整スキップ候補総合コストｓｋｉｐ＿ｃｏｓｔＡが算出される（Ｓ２４０）。インター予測残差コストｉｎｔｅｒ＿ｓａｔｄが閾値Ｔ２より大きい場合の処理（Ｓ４０２：Ｎｏ、Ｓ１１０〜）、ステップＳ２４０以降の処理は、図６のフローチャートにおける同符号のステップと同様であるため、ここで説明を省略する。
【０１１９】
本実施の形態の動画像符号化装置も、アクティビティを算出する回路を設ける必要がないため、回路規模を小さくすることができる。
【０１２０】
以上、実施の形態をもとに本発明を説明した。実施の形態は例示であり、本発明の主旨から逸脱しない限り、上述した各実施の形態に対してさまざまな変更、増減、組合せを行ってもよい。これらの変更、増減、組合せが行われた変形例も本発明の範囲にあることは当業者に理解されるところである。
【０１２１】
例えば、上述した各実施の形態において、予測残差コストとしてｓａｔｄを用いたが、ｓａｄを用いてもよい。
【符号の説明】
【０１２２】
１００  動画像符号化装置
１１０  符号化タイプ決定部
１２０  候補評価部
１２２  イントラ候補評価部
１２４  インター候補評価部
１２６  スキップ候補評価部
１４０  符号化タイプ選択部
１４２  選択実行部
１４４  制限処理部
１４６  アクティビティ算出部
１７０  直交変換部
１８０  量子化部
１９０  エントロピー符号化部
２１０  符号化タイプ決定部
２４０  符号化タイプ選択部
２４２  選択実行部
２４４  調整処理部
３１０  符号化タイプ決定部
３４０  符号化タイプ選択部
３４４  制限処理部
４１０  符号化タイプ決定部
４４０  符号化タイプ選択部
４４４  調整処理部
ｉｐｒｅｄ＿ｓａｔｄ  イントラ予測残差コスト
ｉｎｔｅｒ＿ｓａｔｄ  インター予測残差コスト
ｓｋｉｐ＿ｓａｔｄ  スキップ候補予測残差コスト
ｉｐｒｅｄ＿ｍｂ＿ｃｏｓｔ  イントラＭＢタイプコスト
ｉｎｔｅｒ＿ｍｂ＿ｃｏｓｔ  インターＭＢタイプコスト
ｓｋｉｐ＿ｍｂ＿ｃｏｓｔ  スキップＭＢタイプコスト
ｉｐｒｅｄ＿ｐｒｅｄ＿ｃｏｓｔ  イントラ予測方向コスト
ｉｎｔｅｒ＿ｖｅｃ＿ｃｏｓｔ  インター差分ベクトルコスト
ｓｋｉｐ＿ｖｅｃ＿ｃｏｓｔ  スキップ候補差分ベクトルコスト
ｉｐｒｅｄ＿ｃｏｓｔ  イントラ総合コスト
ｉｎｔｅｒ＿ｃｏｓｔ  インター総合コスト
ｓｋｉｐ＿ｃｏｓｔ  スキップ候補総合コスト
ｉｎｔｅｒ＿ｃｏｓｔＡ  制限インター総合コスト
ｓｋｉｐ＿ｃｏｓｔＡ  調整スキップ候補総合コスト
ｐｍｖ  予測動きベクトル
ＯＨＩ１  イントラオーバヘッド情報
ＯＨＩ２  インターオーバーヘッド情報
ＯＨＩ３  スキップオーバーヘッド情報
Ｑ  アクティビティ
Ｔ１  閾値
Ｔ２  閾値
【図１】
0005798467.tif 000002
【図２】
0005798467.tif 000003
【図３】
0005798467.tif 000004
【図４】
0005798467.tif 000005
【図５】
0005798467.tif 000006
【図６】
0005798467.tif 000007
【図７】
0005798467.tif 000008
【図８】
0005798467.tif 000009
【図９】
0005798467.tif 000010
【図１０】
0005798467.tif 000011
【図１１】
0005798467.tif 000012
【図１２】
0005798467.tif 000013
【図１３】
0005798467.tif 000014
【図１４】
0005798467.tif 000015
【図１５】
0005798467.tif 000016