(57)【要約】【課題】符号化効率の低下を抑えつつ、演算量削減を実現することができる予測モード判定を行う。【解決手段】符号化対象ブロックについて動きベクトル差分を符号化する第１の予測モードの動きベクトルを算出するステップと、符号化対象ブロックについて動きベクトル差分を符号化しない第２の予測モードの動きベクトルを算出するステップと、第１の予測モードと第２の予測モードの動きベクトルの差異を算出するステップと、符号化対象ブロックに関する特徴量から動きベクトルを除外するか否かを判定するための条件を決定するステップと、算出された動きベクトルの差異が条件を満たすか否かを判定するステップと、判定の結果、条件を満たさない場合には符号化対象ブロックに対する第１の予測モードまたは第２の予測モードの中から予測モードを除外するステップとを有する。【選択図】図１
2016187134.tif 000002
【特許請求の範囲】
【請求項１】
映像符号化において画像領域を分割した符号化対象ブロックの予測モードを判定する予測モード判定方法であって、
前記符号化対象ブロックについて動きベクトル差分を符号化する１つ以上の第１の予測モードの動きベクトルを算出する第１の動きベクトル算出ステップと、
前記符号化対象ブロックについて動きベクトル差分を符号化しない１つ以上の第２の予測モードの動きベクトルを算出する第２の動きベクトル算出ステップと、
前記第１の予測モードと前記第２の予測モードの動きベクトルの差異を算出する動きベクトル差異算出ステップと、
前記符号化対象ブロックに関する１つ以上の特徴量から前記第１の予測モードまたは前記第２の予測モードの中から１つ以上の動きベクトルを除外するか否かを判定するための条件を決定するモード判定条件決定ステップと、
前記動きベクトル差異算出ステップにおいて算出された前記動きベクトルの差異が前記条件を満たすか否かを判定するモード判定ステップと、
前記モード判定ステップによる判定の結果、前記条件を満たさない場合には前記符号化対象ブロックに対する第１の予測モードまたは第２の予測モードの中から１つ以上の予測モードを除外するモード除外ステップと
を有することを特徴とする予測モード判定方法。
【請求項２】
前記第１の動きベクトル算出ステップでは、前記第２の予測モードの動きベクトルが指す参照画像のみを動き探索の対象とすることを特徴とする請求項１に記載の予測モード判定方法。
【請求項３】
前記特徴量は、前記符号化対象ブロックの量子化パラメータ、予測ブロックサイズ、第１の予測モードにおける予測画像と原画像の誤差及びそれらの分散、第１の予測モードの動きベクトルと第２の予測モードの動きベクトルそれぞれの予測方向及びそれらの組み合わせのうち、少なくとも１つであることを特徴とする請求項１または２に記載の予測モード判定方法。
【請求項４】
前記条件は閾値を用いた不等式で表現され、当該閾値は、量子化パラメータ、予測ブロックサイズ、第１の予測モードにおける予測画像と原画像の誤差、当該誤差の分散のうち少なくとも１つを引数とし、前記量子化パラメータ、前記予測ブロックサイズの逆数、前記第１の予測モードにおける前記予測画像と前記原画像の誤差の逆数及びそれらの分散の逆数のそれぞれについて単調増加する性質を有する関数を用いることを特徴とする請求項１または２に記載の予測モード判定方法。
【請求項５】
前記条件は閾値を用いた不等式で表現され、当該閾値は、第１の予測モードの動きベクトルの予測方向と第２の予測モードの動きベクトルの予測方向の組み合わせを引数とし、当該組み合わせが双方向−片方向、片方向−片方向、片方向−双方向または双方向−双方向の順に単調増加する性質を有する関数を用いることを特徴とする請求項１または２に記載の予測モード判定方法。
【請求項６】
前記条件は閾値を用いた不等式で表現され、当該閾値は前記符号化対象ブロックに関する特徴量のいずれか１つ以上の線形結合として表現される関数を用いることを特徴とする請求項１または２に記載の予測モード判定方法。
【請求項７】
前記条件に第１の予測モードの動きベクトルと第２の予測モードの動きベクトルの参照画像インデックスの一致度を含むことを特徴とする請求項４から６のいずれか１項に記載の予測モード判定方法。
【請求項８】
コンピュータに、請求項１から７のいずれか１項に記載の予測モード判定方法を実行させるための予測モード判定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像符号化において予測モードを判定する予測モード判定方法及び予測モード判定プログラムに関する。
【背景技術】
【０００２】
映像符号化の標準規格であるＨ．２６４／ＡＶＣやＨ．２６５／ＨＥＶＣ（High Efficiency Video Coding）では符号化対象ピクチャの符号化をブロック単位で行う。以下の説明ではＨＥＶＣを例に説明する。ＨＥＶＣでは符号化対象ピクチャをＬＣＵ（Largest Coding Unit）と呼ばれるブロックに分け、ＬＣＵ毎に符号化を行う。ＬＣＵは四分木で最大３回まで分割することができる。ＬＣＵは最大６４画素×６４画素（以下、ｎ画素×ｎ画素をｎｘｎ（ｎは、８、１６、３２、６４）と称する）から８ｘ８までのＣＵ（Coding Unit）と呼ばれるブロックから構成され、ＣＵ単位で異なる予測モードの符号化を行うことができる。ＨＥＶＣでは予測モードとして符号化対象ブロックの隣接画素から予測を行うイントラ予測モード、符号化済みフレームから予測を行うインター予測モード、スキップモード、マージモードが規定されている。
【０００３】
インター予測モードとスキップモード、マージモードは動きベクトル情報の符号化方法が異なる。インター予測モードは符号化対象ブロックの周囲或いは符号化済みフレームの符号化済みブロックから取得した予測動きベクトルとの差分、予測動きベクトルインデックス、参照フレームインデックス、予測方向情報を符号化する。これに対し、スキップモードとマージモードは周囲或いは符号化済みフレームの符号化済みブロックから最大５つの候補リスト（以下、マージ候補リストと称する）を作成し、インデックスのみを符号化する。また、スキップモードとマージモードでは動きベクトルで動き補償した際の予測残差を符号化するか否かの違いがあり、スキップモードは残差を符号化せず、マージモードは符号化する。
【０００４】
前述したようにスキップモードとマージモードはそれぞれ最大５つの候補から選択することができる。このため、全ての動きベクトル候補について最適な予測モードであるかを判定すると、予測モード判定処理に要する演算量が増大する。
【０００５】
このような問題に対して、ＨＥＶＣの参照ソフトウェア（ＨＭ）（例えば、非特許文献１参照）では次のような方法で対処している。まずマージ候補リスト内の各動きベクトル候補に対して順に動き補償、残差計算、変換処理及び量子化を施し、量子化後の変換係数に有意係数（０ではない係数）があるか否かのチェックを行う。有意係数が無い場合にはその時点でチェックしていない動きベクトル候補に対してはマージモードの計算を省略（動き補償以降の計算を省略）することで演算量を削減する。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】［online］、［平成２７年３月１２日検索］、インターネット＜https://hevc.hhi.fraunhofer.de/trac/hevc/＞、ＨＥＶＣの参照ソフトウェア（ＨＭ）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、非特許文献１に記載のＨＥＶＣの参照ソフトウェアにあっては、特に符号化対象ピクチャが複雑な動きを含む場合には有意係数が存在するケースが多くなる。このため、全ての動きベクトル候補に対して計算することになり演算量を削減できないという問題がある。
【０００８】
本発明は、このような事情に鑑みてなされたもので、符号化効率の低下を抑えつつ、演算量削減を実現することができる予測モード判定方法及び予測モード判定プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、映像符号化において画像領域を分割した符号化対象ブロックの予測モードを判定する予測モード判定方法であって、前記符号化対象ブロックについて動きベクトル差分を符号化する１つ以上の第１の予測モードの動きベクトルを算出する第１の動きベクトル算出ステップと、前記符号化対象ブロックについて動きベクトル差分を符号化しない１つ以上の第２の予測モードの動きベクトルを算出する第２の動きベクトル算出ステップと、前記第１の予測モードと前記第２の予測モードの動きベクトルの差異を算出する動きベクトル差異算出ステップと、前記符号化対象ブロックに関する１つ以上の特徴量から前記第１の予測モードまたは前記第２の予測モードの中から１つ以上の動きベクトルを除外するか否かを判定するための条件を決定するモード判定条件決定ステップと、前記動きベクトル差異算出ステップにおいて算出された前記動きベクトルの差異が前記条件を満たすか否かを判定するモード判定ステップと、前記モード判定ステップによる判定の結果、前記条件を満たさない場合には前記符号化対象ブロックに対する第１の予測モードまたは第２の予測モードの中から１つ以上の予測モードを除外するモード除外ステップとを有することを特徴とする。
【００１０】
本発明は、前記第１の動きベクトル算出ステップでは、前記第２の予測モードの動きベクトルが指す参照画像のみを動き探索の対象とすることを特徴とする。
【００１１】
本発明は、前記特徴量は、前記符号化対象ブロックの量子化パラメータ、予測ブロックサイズ、第１の予測モードにおける予測画像と原画像の誤差及びそれらの分散、第１の予測モードの動きベクトルと第２の予測モードの動きベクトルそれぞれの予測方向及びそれらの組み合わせのうち、少なくとも１つであることを特徴とする。
【００１２】
本発明は、前記条件は閾値を用いた不等式で表現され、当該閾値は、量子化パラメータ、予測ブロックサイズ、第１の予測モードにおける予測画像と原画像の誤差、当該誤差の分散のうち少なくとも１つを引数とし、前記量子化パラメータ、前記予測ブロックサイズの逆数、前記第１の予測モードにおける前記予測画像と前記原画像の誤差の逆数及びそれらの分散の逆数のそれぞれについて単調増加する性質を有する関数を用いることを特徴とする。
【００１３】
本発明は、前記条件は閾値を用いた不等式で表現され、当該閾値は、第１の予測モードの動きベクトルの予測方向と第２の予測モードの動きベクトルの予測方向の組み合わせを引数とし、当該組み合わせが双方向−片方向、片方向−片方向、片方向−双方向または双方向−双方向の順に単調増加する性質を有する関数を用いることを特徴とする。
【００１４】
本発明は、前記条件は閾値を用いた不等式で表現され、当該閾値は前記符号化対象ブロックに関する特徴量のいずれか１つ以上の線形結合として表現される関数を用いることを特徴とする。
【００１５】
本発明は、前記条件に第１の予測モードの動きベクトルと第２の予測モードの動きベクトルの参照画像インデックスの一致度を含むことを特徴とする。
【００１６】
本発明は、コンピュータに、前記予測モード判定方法を実行させるための予測モード判定プログラムである。
【発明の効果】
【００１７】
本発明によれば、映像符号化において、符号化効率の低下を抑えつつ、演算量削減を実現することができるという効果が得られる。
【図面の簡単な説明】
【００１８】
【図１】本発明の予測モード判定装置が用いられる映像符号化装置全体の構成を示すブロック図である。
【図２】図１に示す予測モード判定部１１の詳細な構成を示すブロック図である。
【図３】図２に示す予測モード判定部１１の処理動作を示すフローチャートである。
【図４】図１に示す予測モード判定部１１の詳細な構成を示すブロック図である。
【図５】図４に示す予測モード判定部１１の処理動作を示すフローチャートである。
【発明を実施するための形態】
【００１９】
＜第１実施形態＞
以下、図面を参照して、本発明の第１実施形態による予測モード判定装置を説明する。以下では一例としてＨＥＶＣに準拠した映像符号化装置に本発明による予測モード判定装置を適用した場合の実施形態を説明する。なお、説明を簡単にするため、ＬＣＵサイズ及びＣＵサイズは固定（例えば６４ｘ６４）として記載するが、ブロック分割をした場合においても各ＣＵに対して同様の処理を行うことで本発明を適用可能である。
【００２０】
図１は予測モード判定装置が用いられる映像符号化装置全体の構成を示すブロック図である。図１に示す映像符号化装置１００の構成は、一般的な公知の構成であるため、ここでは、説明を簡単に行う。映像符号化装置１００には符号化対象入力映像の各符号化対象ピクチャについてＬＣＵ（ＣＵ）ブロック単位で入力され、このブロックに対応した符号化データが出力される。これが符号化対象ピクチャの各ブロックについてラスタスキャン順に繰り返し実行されることで、符号化対象ピクチャが符号化されることになる。
【００２１】
減算器１は、入力された入力画像とイントラ予測またはインター予測を行った結果得られる予測画像との差分を出力する。直交変換／量子化部２は、減算器１から出力する差分を入力し、直交変換と量子化を施し、可変長符号化部３と逆量子化／逆直交変換部４へ出力する。
【００２２】
可変長符号化部３は、直交変換／量子化部２から出力された量子化係数を可変長符号化し、符号化データとして映像符号化装置１００から出力する。可変長符号化部３は、符号量を予測モード判定部１１とイントラ予測部８に対して出力する。逆量子化／逆直交変換部４は、直交変換／量子化部２から出力された量子化係数に対して逆量子化と逆直交変換を施す。
【００２３】
加算器５は、逆量子化／逆直交変換部４から出力された画像と予測画像との和を出力する。ループフィルタ部６は、加算器５から出力される逆量子化／逆直交変換部４から出力された画像と予測画像との和にループフィルタを適用する。
【００２４】
復号ピクチャメモリ７は、ループフィルタ部６の出力を格納するとともに、インター予測部９へ出力し、後の符号化対象ブロックのインター予測において参照画像として利用される。
【００２５】
イントラ予測部８は、加算器５の出力される逆量子化／逆直交変換部から出力された画像と予測画像との和を参照画像として符号化対象ブロックのイントラ予測画像を生成する。インター予測部９は、復号ピクチャメモリ７の参照画像を用いて符号化対象ブロックのインター予測画像を生成する。
【００２６】
イントラ／インター切り替えスイッチ１０は、予測モード判定部１１からの出力に応じて、イントラ予測部８またはインター予測部９を切り替えて減算器１へ予測画像を出力する。予測モード判定部１１は対象ブロックをどの予測モードで符号化するかを判定する。
【００２７】
次に、図２を参照して、図１に示す予測モード判定部１１の詳細な構成を説明する。図２は、図１に示す予測モード判定部１１の詳細な構成を示すブロック図である。動きベクトル算出部１１１は対象ブロックの動きベクトルを算出する。マージ候補リスト算出部１１２は周囲の符号化済みブロックからマージ候補リストを作成する。
【００２８】
動きベクトル差異算出部１１３は動きベクトル算出部で求めた動きベクトルとマージ候補リストの各動きベクトル候補について差異を計算する。予測モード判定条件決定部１１４は動きベクトル算出部１１１で求めた動きベクトルとマージ候補リストの各動きベクトル候補と後述する対象ブロックの特徴量に基づいてインター予測モード、スキップモード及びマージモードのそれぞれについて判定条件を決定する。
【００２９】
予測モード除外部１１５は予測モード判定条件決定部１１４で決定した各条件に基づいて動きベクトル差異算出部１１３の出力に対し、各予測モードの動きベクトルを評価値算出の計算対象から除外するか否かを判定する。評価値算出部１１６は除外されなかった動きベクトル候補に対する各予測モードとイントラ予測モードの評価値を算出する。評価値比較部１１７は算出した評価値の比較を行い、最小評価値の予測モードを出力する。
【００３０】
次に、図３を参照して、図２に示す予測モード判定部１１の処理動作を説明する。図３は、図２に示す予測モード判定部１１の処理動作を示すフローチャートである。
【００３１】
まず始めに、マージ候補リスト算出部１１２は、対象ブロックのマージ候補リスト（最大５つ）を作成する（ステップＳ１）。続いて、動きベクトル算出部１１１は対象ブロックについて動きベクトルを算出する（ステップＳ２）。
【００３２】
次に、予測モード除外部１１５は、インター予測モードの評価値算出フラグを無効にセットする（ステップＳ３）。そしてマージ候補リストの各動きベクトル候補について以下の処理を行う。
【００３３】
まず、動きベクトル差異算出部１１３は、算出した動きベクトルＭＶ＿Ｉｎｔｅｒとマージ候補リストの動きベクトルＭＶ＿Ｓｋｉｐの差異ｄＭＶを計算する（ステップＳ４）。ＭＶ＿ＩｎｔｅｒとＭＶ＿Ｓｋｉｐはそれぞれｘ成分とｙ成分を要素とする２次元ベクトルである。差異の計算は以下の式で表されるユークリッド距離を用いる。
ｄＭＶ＝√（（ＭＶ＿Ｉｎｔｅｒ＿ｘ−ＭＶ＿Ｓｋｉｐ＿ｘ）２＋（ＭＶ＿Ｉｎｔｅｒ＿ｙ−ＭＶ＿Ｓｋｉｐ＿ｙ）２）
【００３４】
ＭＶ＿Ｉｎｔｅｒ＿ｘ，ＭＶ＿Ｉｎｔｅｒ＿ｙはそれぞれＭＶ＿Ｉｎｔｅｒのｘ成分、ｙ成分、ＭＶ＿Ｓｋｉｐ＿ｘ，  ＭＶ＿Ｓｋｉｐ＿ｙはそれぞれＭＶ＿Ｓｋｉｐのｘ成分、ｙ成分を表す。差異の計算はその他にも各成分の差分の絶対値和や二乗和、重み付け線形和などが適用でき、これらを利用してもよいし、成分毎にｄＭＶを算出して、後述する判定条件を成分毎に定義して判定してもよい。また、ＭＶ＿ＩｎｔｅｒとＭＶ＿Ｓｋｉｐの参照画像が異なる場合には動きベクトルをいずれかの参照画像に統一するように参照距離に応じたスケーリングを行ってから差異を計算する。
【００３５】
さらに、一方が片方向予測で他方が双方向予測だった場合には双方向予測側の片方向予測と同じ予測方向の動きベクトルのみの差異を計算する。また、両方とも双方向予測だった場合にはそれぞれの予測方向の動きベクトルについて差異を計算し、それらの和として算出する。この計算はその他にも最大値、最小値、平均値、重み付け線形和などで計算してもよい。また、ＭＶ＿Ｉｎｔｅｒの算出で各予測方向（片方向（Ｌ０及びＬ１）、双方向）でそれぞれ最適な動きベクトルを保存しておき、差異の計算においてＭＶ＿Ｓｋｉｐと同じ予測方向のＭＶ＿Ｉｎｔｅｒを用いるようにしてもよい。
【００３６】
次に、予測モード判定条件決定部１１４は、対象ブロックの特徴量に基づき、インター予測モード判定条件、スキップモード判定条件及びマージモード判定条件を決定する（ステップＳ５）。ここで用いる特徴量と決定方法については後述する。そして、予測モード除外部１１５は、インター予測モード判定を行い（ステップＳ６）、ｄＭＶがインター予測モード判定条件を満たすか否かを判定する（ステップＳ７）。この判定の結果、インター予測モード判定条件を満たす場合、予測モード除外部１１５はインター予測モードの評価値算出フラグを有効にセットする（ステップＳ８）。
【００３７】
次に、予測モード除外部１１５は、スキップモード判定を行い（ステップＳ９）、ｄＭＶがスキップモード判定条件を満たすか否かを判定する（ステップＳ１０）。この判定の結果、スキップモード判定条件を満たす場合、評価値算出部１１６は当該動きベクトル候補について対象ブロックのスキップモードの評価値を算出する（ステップＳ１１）。
【００３８】
同様に、予測モード除外部１１５は、マージモード判定を行い（ステップＳ１２）、ｄＭＶがマージモード判定条件を満たすか否かを判定する（ステップＳ１３）。この判定の結果、マージモード判定条件を満たす場合、評価値算出部１１６は、当該動きベクトル候補について対象ブロックのマージモードの評価値を算出する（ステップＳ１４）。
【００３９】
評価値には以下の式で表されるＲＤコストを用いる。
ＲＤコスト＝Ｄ＋λＲ
Ｄは復元信号と原信号の画素単位での差分の二乗和、Ｒは符号化するデータの符号量、λはラグランジアンパラメータである。
【００４０】
マージ候補リストの全ての動きベクトル候補について終了したら、インター予測モードの評価値算出フラグが有効であれば、評価値算出部１１６は、対象ブロックのインター予測モードの評価値を算出する（ステップＳ１５）。また、評価値算出部１１６は、対象ブロックのイントラ予測モードに対しても評価値を算出する（ステップＳ１６）。そして、評価値比較部１１７は、計算した各予測モードの中で最小評価値の予測モードを対象ブロックの最適予測モードとして決定する（ステップＳ１７）。なお、評価値はＲＤコストでなく、Ｄだけを用いてもよく、各予測モードを比較することが可能な評価値であればよい。
【００４１】
このように、インター予測モード、スキップモード或いはマージモードの予測モード決定についての評価値計算を行う前に、符号化対象ブロックの動きベクトルを算出し、マージ候補リストの各動きベクトル候補との差異を計算する。差異がインター予測モード、スキップモード或いはマージモードの各モード判定条件を満たさない場合にはその動きベクトル候補を評価値の計算対象から除外する。この時の条件は符号化対象ブロックに関する１つ以上の特徴量から適応的に決定する。
【００４２】
符号化対象ブロックの動きベクトルとマージ候補リストの各動きベクトル候補との比較を先に行うことで、少ない演算量で予測モードの判定が行える。また、符号化対象ブロックの動きベクトルとスキップモード或いはマージモードの動きベクトル候補との差異が大きくなるほどスキップモード或いはマージモードにおける予測画像と原画像との誤差が大きくなり、スキップモード或いはマージモードが最適な予測モードとして選択されなくなると想定される。このため、符号化効率の低下を抑えつつスキップモード或いはマージモードとならない動きベクトルを除外することができる。また、逆に差異が小さいほどスキップモード或いはマージモードが選択されやすいため、条件判定でインター予測モードを除外することもできる。この時、比較する際の条件を符号化対象ブロックの特徴に合わせて適応的に切り替えることで適切な条件判定を行うことができる。
【００４３】
＜第２実施形態＞
次に、本発明の第２実施形態による予測モード判定装置を説明する。図４は、第２実施形態よる予測モード判定部１１の構成を示すブロック図である。図４に示す予測モード判定部１１が、図２に示す予測モード判定部１１と異なる点は、参照画像インデックス抽出部１１８と動きベクトル算出部１１９が追加されている点である。参照画像インデックス抽出部１１８はマージ候補リストの各動きベクトル候補から参照画像インデックスを抽出する。動きベクトル算出部１１１では抽出した参照インデックスについてのみ動き探索を行い、動きベクトルを算出する。動きベクトル算出部１１９では後述するインター予測モードの評価値算出フラグが有効な場合にのみ対象ブロックについて計算していない参照画像の動き探索を行う。
【００４４】
次に、図５を参照して、図４に示す予測モード判定部１１の処理動作について説明する。図５は、図４に示す予測モード判定部１１の処理動作を示すフローチャートである。図５において、図３に示す動作と同じ動作には同じ符号を付与してその詳細な説明を省略する。
【００４５】
対象ブロックについてマージ候補リストを作成した（ステップＳ１）後、参照画像インデックス抽出部１１８はループ内においてマージ候補リストの各動きベクトルと同じ参照画像についてのみ動き探索を行い、動きベクトルを算出する（ステップＳ１８）。この時、ループの途中で既に計算済みの参照画像であれば動き探索は省略可能である。そして、ループが終了した後、インター予測モードの評価値算出フラグが有効であれば、動きベクトル算出部１１９が、対象ブロックについて計算していない参照画像の動き探索を実施してからインター予測モードの評価値を算出する（ステップＳ１９）。
【００４６】
この処理動作によって、もしインター予測モードの評価値算出フラグが有効にならなければ、マージ候補リストの動きベクトルにない参照画像の動き探索の分だけ演算量が削減できる。
【００４７】
このように、インター予測モードの動きベクトルを算出する際に、スキップモードの動きベクトルが指す参照画像のみを探索する。この処理動作により、他の参照画像に対する動き探索を省略できるため、演算量が削減できる。また、インター予測モードの動きベクトルとスキップモードの動きベクトルの差異を計算する際に、参照画像が異なることによるスケーリング処理を行う必要が無くなる効果もある。
【００４８】
＜モード判定条件の第１の決定方法＞
次に、インター予測モード判定条件、スキップモード判定条件及びマージモード判定条件の決定方法について説明する。インター予測モード判定条件に利用する閾値をＴｈ＿Ｉｎｔｅｒ、スキップモード判定条件に利用する閾値をＴｈ＿Ｓｋｉｐ、マージモード判定条件に利用する閾値をＴｈ＿Ｍｅｒｇｅとすると、第１実施形態におけるスキップモード判定条件とマージモード判定条件はそれぞれ以下となる。
（インター予測モード判定条件）・・・ｄＭＶ  ＞  Ｔｈ＿Ｉｎｔｅｒ
（スキップモード判定条件）・・・ｄＭＶ  ＜  Ｔｈ＿Ｓｋｉｐ
（マージモード判定条件）・・・ｄＭＶ  ＜  Ｔｈ＿Ｍｅｒｇｅ
【００４９】
なお、ここではそれぞれ条件が１つずつしか記載していないが、２つ以上の条件で判定してもよい。Ｔｈ＿Ｉｎｔｅｒ、Ｔｈ＿Ｓｋｉｐ及びＴｈ＿Ｍｅｒｇｅは任意の値を用いてもよいが、ここでは各閾値の決定に対象ブロックについて下記（１）〜（４）の特徴量を用いる。
（１）量子化パラメータＱＰ
（２）予測ブロックサイズＢＳ
（３）インター予測モードの動きベクトルとスキップモードの動きベクトルそれぞれの予測方向及びそれらの組み合わせＤｉｒ＿Ｘ（Ｘには下記Ａ，Ｂ，Ｃ，Ｄのいずれかが入る）
インター予測モードの動きベクトルとスキップモードの動きベクトルのそれぞれの予測方向の組み合わせを「Ｄｉｒ＿Ａ：双方向−片方向」、「Ｄｉｒ＿Ｂ：片方向−片方向」、「Ｄｉｒ＿Ｃ：片方向−双方向」、「Ｄｉｒ＿Ｄ：双方向−双方向」とそれぞれ表記する。
【００５０】
（４）インター予測モードの予測画像と原画像の誤差ＳＡＤ及びそれらの分散ＶＡＲ
閾値を上記パラメータの値或いは組み合わせに応じて複数のテーブルに予め用意しておいてもよいが、ここでは以下のように上記パラメータを入力変数とした関数から算出する。こうすることで大量のテーブルが不要になる。Ｔｈ＿Ｉｎｔｅｒ、Ｔｈ＿Ｓｋｉｐ及びＴｈ＿Ｍｅｒｇｅを算出するための関数をそれぞれｆ＿Ｉｎｔｅｒ，ｆ＿Ｓｋｉｐ，ｆ＿Ｍｅｒｇｅとすると、下記のように表せる。
Ｔｈ＿Ｉｎｔｅｒ＝ｆ＿Ｉｎｔｅｒ（ＱＰ，ＢＳ，Ｄｉｒ＿Ｘ，ＳＡＤ，ＶＡＲ）
Ｔｈ＿Ｓｋｉｐ＝ｆ＿Ｓｋｉｐ（ＱＰ，ＢＳ，Ｄｉｒ＿Ｘ，ＳＡＤ，ＶＡＲ）
Ｔｈ＿Ｍｅｒｇｅ＝ｆ＿Ｍｅｒｇｅ（ＱＰ，ＢＳ，Ｄｉｒ＿Ｘ，ＳＡＤ，ＶＡＲ）
ｆ＿Ｉｎｔｅｒ，ｆ＿Ｓｋｉｐ，ｆ＿Ｍｅｒｇｅは任意の関数を用いてもよい。
【００５１】
なお、以下のいずれかの条件を満たすような関数を用いてもよい。
（条件１）Ｔｈ＿Ｓｋｉｐ≦Ｔｈ＿Ｍｅｒｇｅ
（条件２）ＱＰ、ＢＳの逆数、ＳＡＤの逆数、ＶＡＲの逆数それぞれに関してｆ＿Ｉｎｔｅｒ，  ｆ＿Ｓｋｉｐ及びｆ＿Ｍｅｒｇｅが単調増加
（条件３）Ｄｉｒ＿Ｘはその他のパラメータが同じだった場合はｆ（Ｄｉｒ＿Ａ）≦ｆ（Ｄｉｒ＿Ｂ）≦ｆ（Ｄｉｒ＿Ｃ）＝ｆ（Ｄｉｒ＿Ｄ）
ｆはｆ＿Ｉｎｔｅｒ、ｆ＿Ｓｋｉｐまたはｆ＿Ｍｅｒｇｅを表す。
【００５２】
ｆ＿Ｉｎｔｅｒ，ｆ＿Ｓｋｉｐ，ｆ＿Ｍｅｒｇｅが（条件１）、（条件２）、（条件３）のいずれか一つの条件を満たすとき、膨大な閾値の組み合わせに対して適切な閾値を算出可能な関数を容易に決定できるという効果がある。
【００５３】
これらを満たすような関数の一例としてそれぞれの特徴量の線形結合とした場合を以下に示す。
ｆ＿Ｉｎｔｅｒ（ＱＰ，ＢＳ，Ｄｉｒ＿Ｘ，ＳＡＤ，ＶＡＲ）＝ａ１×ＱＰ＋ａ２×ＢＳ−１＋ａ３×ＳＡＤ−１＋ａ４×ＶＡＲ−１＋ａ５×ｇ（Ｄｉｒ＿Ｘ）
ｆ＿Ｓｋｉｐ（ＱＰ，ＢＳ，Ｄｉｒ＿Ｘ，ＳＡＤ，ＶＡＲ）＝ｂ１×ＱＰ＋ｂ２×ＢＳ−１＋ｂ３×ＳＡＤ−１＋ｂ４×ＶＡＲ−１＋ｂ５×ｇ（Ｄｉｒ＿Ｘ）
ｆ＿Ｍｅｒｇｅ（ＱＰ，ＢＳ，Ｄｉｒ＿Ｘ，ＳＡＤ，ＶＡＲ）＝ｃ１×ＱＰ＋ｃ２×ＢＳ−１＋ｃ３×ＳＡＤ−１＋ｃ４×ＶＡＲ−１＋ｃ５×ｇ（Ｄｉｒ＿Ｘ）
ａ１〜ａ５，ｂ１〜ｂ５及びｃ１〜ｃ５は任意の正の実数で、ｂ１≦ｃ１，ｂ２≦ｃ２，…，ｂ５≦ｃ５である。また、ｇはＤｉｒ＿Ｘを変数とする関数であり、ｇ（Ｄｉｒ＿Ａ）≦ｇ（Ｄｉｒ＿Ｂ）≦ｇ（Ｄｉｒ＿Ｃ）＝ｇ（Ｄｉｒ＿Ｄ）を満たす。また、上記では全ての特徴量を用いて閾値を決定しているが、任意の組み合わせだけで求めてもよい。
【００５４】
このように、インター予測モード、スキップモード、マージモードの各モード判定条件に以下の（１）〜（４）の特徴量を用いることで適切な条件判定を実現する。
（１）量子化パラメータ
量子化パラメータが大きい場合には動きベクトルの差異が大きくても有意係数の数が０になりやすいため、スキップモード或いはマージモードが選ばれやすくなる。一方で、量子化パラメータが小さい場合には動きベクトルの差異が大きいほど有意係数が０になりにくくなるため、スキップモード或いはマージモードが選ばれにくくなる。したがって、量子化パラメータを用いて単調増加するように判定条件の閾値を決定することで適切な判定が可能となる。
【００５５】
（２）予測ブロックサイズ
大きい予測ブロックサイズは小さい予測ブロックサイズと比較して、動きベクトルが１だけずれたときの予測画像と原画像の誤差増加量が大きい。すなわち、大きい予測ブロックサイズと小さい予測ブロックサイズでは同じ動きベクトルの差異でも大きい予測ブロックサイズの方がスキップモード或いはマージモードが選ばれにくい。よって、判定対象ブロックの予測ブロックサイズの逆数を用いて単調増加するように判定条件の閾値を決定することで適切な判定が可能となる。
【００５６】
（３）インター予測モードにおける予測画像と原画像の誤差及びそれらの分散
対象ブロックの動き探索中に求まる各動きベクトルの予測画像と原画像の誤差とそれらに対する分散を用いる。一般的に、これらの誤差或いは誤差分散が大きい場合には対象ブロック内の物体の動きが複雑である可能性が高く、スキップモード或いはマージモードの動きベクトルのずれによる予測画像と原画像の誤差増加量が大きくなる。このため、動きベクトルの差異が小さくてもスキップモード或いはマージモードが選ばれにくくなると想定される。一方で、インター予測モードの誤差或いは誤差分散が小さい場合には対象ブロック内の物体の動きが単純或いは平坦領域である可能性が高く、スキップモード或いはマージモードの動きベクトルのずれによる予測画像と原画像の誤差増加量は小さくなる。このため、動きベクトルの差異が大きくてもスキップモードが選ばれやすい。したがって、インター予測モードにおける予測画像と原画像の誤差の逆数及びそれらの分散の逆数を用いてそれぞれに単調増加するように判定条件の閾値を決定することで適切な判定が可能となる。
【００５７】
（４）インター予測モードの動きベクトルとスキップモードの動きベクトルそれぞれの予測方向及びそれらの組み合わせ
インター予測モードの動きベクトルとスキップモードの動きベクトルのそれぞれの予測方向の組み合わせをそれぞれ「Ａ：双方向−片方向」、「Ｂ：片方向−片方向」、「Ｃ：片方向−双方向」、「Ｄ：双方向−双方向」と表記する。
（ＡとＢの比較）・・・Ａではインター予測モードの動きベクトルに双方向が選択されているにも関わらずスキップモードの動きベクトルが片方向であるため、スキップモードは最適な予測画像が得られない。すなわち、動きベクトルの差異が小さくてもスキップモードが選ばれにくいと予想される。対してＢはインター予測モードの動きベクトルが片方向であるので動きベクトルの差異が小さければスキップモードが選ばれやすくなる。したがって、判定条件の閾値はＡ≦Ｂとするのが有効である。
（ＢとＣ（Ｄ）の比較）・・・Ｃ（Ｄ）はＢと比較してスキップモードの予測画像が双方向の動きベクトルそれぞれの動き補償画像の平均となるため、片方の動きベクトルがずれた時の予測画像と原画像の誤差増加量はほぼ半分になる。つまりＢとＣ（Ｄ）では同じスキップモードの動きベクトルのずれに対する予測画像と原画像の誤差増加量がＢよりもＣ（Ｄ）の方が小さくなる。このため、同じ動きベクトルの差異であった場合ＢよりもＣ（Ｄ）の方がスキップモードが選ばれやすい。したがって、判定条件の閾値はＢ≦Ｃ（Ｄ）とするのが有効である。
【００５８】
このように、インター予測モードの動きベクトルとスキップモードの動きベクトルそれぞれの予測方向及びそれらの組み合わせを用いて判定条件の閾値がＡ≦Ｂ≦Ｃ＝Ｄとなるように判定条件を決定することで適切な判定が可能となる。
【００５９】
さらに上記を踏まえて閾値を各パラメータの線形結合として算出することで、各特徴量の組み合わせによる大量のテーブルを予め用意する必要が無く閾値の算出が可能となる。
【００６０】
なお、量子化パラメータ、予測ブロックサイズ、インター予測モードにおける予測画像と原画像の誤差及びそれらの分散、インター予測モードの動きベクトルとスキップモードの動きベクトルそれぞれの予測方向及びそれらの組み合わせの各特徴量はすべて用いる必要はなく、１つのみ用いてモード判定を行ってもよい。
【００６１】
＜モード判定条件の第２の決定方法＞
また、モード判定条件の決定にインター予測モードの動きベクトルとスキップモードの動きベクトルの参照画像インデックスの一致度を加えてもよい。具体的に、インター予測モード判定条件、スキップモード判定条件及びマージモード判定条件を示す。
（インター予測モード判定条件）・・・ＲｅｆＩｄｘ＿Ｉｎｔｅｒ≠ＲｅｆＩｄｘ＿Ｓｋｉｐ且つｄＭＶ＞Ｔｈ＿Ｉｎｔｅｒ
（スキップモード判定条件）・・・ＲｅｆＩｄｘ＿Ｉｎｔｅｒ＝ＲｅｆＩｄｘ＿Ｓｋｉｐ且つｄＭＶ＜Ｔｈ＿Ｓｋｉｐ
（マージモード判定条件）・・・ＲｅｆＩｄｘ＿Ｉｎｔｅｒ＝ＲｅｆＩｄｘ＿Ｓｋｉｐ且つｄＭＶ＜Ｔｈ＿Ｍｅｒｇｅ
【００６２】
ＲｅｆＩｄｘ＿ＩｎｔｅｒとＲｅｆＩｄｘ＿Ｓｋｉｐはそれぞれインター予測モードの動きベクトルの参照画像インデックス、スキップモードの動きベクトルの参照画像インデックスを表す。インター予測モードの動きベクトルとスキップモードの動きベクトルで予測方向（片方向或いは双方向）が異なる場合には、片方向の揃っている方の参照画像インデックスを判定する。双方向同士の場合はどちらか一方或いは両方の参照画像インデックスを判定する。この判定により、インター予測モード判定ではインター予測モードの動きベクトルとスキップモードの動きベクトルの参照画像が異なる場合を含む時にのみ条件を満たすと判定され、スキップモード判定とマージモード判定ではその逆となる。
【００６３】
このように、モード判定条件にインター予測モードの動きベクトルとスキップモードの動きベクトルの参照画像インデックスの一致度を加える。
【００６４】
スキップモードの動きベクトルは対象ブロックの周囲のブロックの動きベクトルを組み合わせたものである。このため、インター予測モードの動きベクトルとスキップモードの動きベクトルの参照画像インデックスが異なるということは対象ブロックが周囲のブロックとは異なる物体である可能性が高い。その場合、一般的にスキップモード或いはマージモードが選択される可能性は低い。したがって、判定条件に参照画像インデックスの一致度を加味することでさらに精度の高い予測モードの判定を行うことが可能となる。
【００６５】
以上説明したように、画像符号化における予測モード判定する際に、各予測モードにおける評価値を算出する前に、符号化対象ブロックの特徴量に応じた判定条件を用いて符号化対象ブロックの動きベクトルとマージ候補リスト中の動きベクトルとを比較することにより、予測モード判定に係る演算を削減することが可能になる。
【００６６】
前述した実施形態における予測モード判定部１１の全部または一部をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよく、ＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）等のハードウェアを用いて実現されるものであってもよい。
【００６７】
以上、図面を参照して本発明の実施の形態を説明してきたが、上記実施の形態は本発明の例示に過ぎず、本発明が上記実施の形態に限定されるものではないことは明らかである。したがって、本発明の技術思想及び範囲を逸脱しない範囲で構成要素の追加、省略、置換、その他の変更を行ってもよい。
【産業上の利用可能性】
【００６８】
映像符号化において予測モードを判定する際に、符号化効率の低下を抑えつつ、演算量削減を実現することが不可欠な用途に適用できる。
【符号の説明】
【００６９】
１・・・減算器、２・・・直交変換／量子化部、３・・・可変長符号化部、４・・・逆量子化／逆直交変換部、５・・・加算器、６・・・ループフィルタ部、７・・・復号ピクチャメモリ、８・・・イントラ予測部、９・・・インター予測部、１０・・・イントラ／インター切替スイッチ、１１・・・予測モード判定部、１１１・・・動きベクトル算出部、１１２・・・マージ候補リスト算出部、１１３・・・動きベクトル差異算出部、１１４・・・予測モード判定条件決定部、１１５・・・予測モード除外部、１１６・・・評価値算出部、１１７・・・評価値比較部、１１８・・・参照画像インデックス抽出部、１１９・・・動きベクトル算出部
【図１】
2016187134.tif 000003
【図２】
2016187134.tif 000004
【図３】
2016187134.tif 000005
【図４】
2016187134.tif 000006
【図５】
2016187134.tif 000007