(57)【要約】【課題】  動きベクトルの検出精度を改善し、動きベクトルの符号量を削減する。【解決手段】  現画像中に設定された動き検出の対象ブロックに最も近似する参照ブロックを現画像と時間的に異なる参照画像から検出して、対象ブロック及び参照ブロックの相対位置を示す第１動きベクトル候補Ｖｃ１を生成する第１検出回路１５ａと、対象ブロック及び対象ブロックに隣接する第１隣接ブロックを併せた第１対象領域に最も近似する第１参照領域を参照画像から検出して、第１対象領域及び第１参照領域の相対位置を示す第２動きベクトル候補Ｖｃ２を生成する第２検出回路１５ｂと、少なくとも第１及び第２動きベクトル候補Ｖｃ１及びＶｃ２を用いて、対象ブロックについての動きベクトルＭＶ２を決定する決定回路１７ａとを備える。【選択図】    図１
2006245932.tif 000002
【特許請求の範囲】
【請求項１】
現画像中に設定された動き検出の対象ブロックに最も近似する参照ブロックを前記現画像と時間的に異なる参照画像から検出して、前記対象ブロック及び前記参照ブロックの相対位置を示す第１動きベクトル候補を生成する第１検出回路と、
前記対象ブロック及び前記対象ブロックに隣接する第１隣接ブロックを併せた第１対象領域に最も近似する第１参照領域を前記参照画像から検出して、前記第１対象領域及び前記第１参照領域の相対位置を示す第２動きベクトル候補を生成する第２検出回路と、
少なくとも前記第１及び第２動きベクトル候補を用いて、前記対象ブロックについての動きベクトルを決定する決定回路
とを備えることを特徴とする動画像処理装置。
【請求項２】
前記対象ブロック、前記第１隣接ブロック、及び前記対象ブロックに隣接する第２隣接ブロックを併せた第２対象領域に最も近似する第２参照領域を前記参照画像から検出して、前記第２対象領域及び前記第２参照領域の相対位置を示す第３動きベクトル候補を生成する第３検出回路と、
前記決定回路が決定した前記動きベクトルを記憶する動きベクトルメモリ
とを更に備え、前記決定回路は、前記第１〜第３動きベクトル候補、及び記憶された前記動きベクトルのそれぞれを比較し、比較結果に応じて前記対象ブロックについての前記動きベクトルを決定することを特徴とする請求項１に記載の動画像処理装置。
【請求項３】
前記現画像の絵柄を認識し、前記絵柄に応じて前記第１〜第３動きベクトル候補及び前記記憶された前記動きベクトルに対して重み付けを行う画像認識回路を更に備えることを特徴とする請求項２に記載の動画像処理装置。
【請求項４】
現画像中に設定された動き検出の対象ブロックに最も近似する参照ブロックを前記現画像と時間的に異なる参照画像から検出して、前記対象ブロック及び前記参照ブロックの相対位置を示す第１動きベクトル候補を生成するステップと、
前記対象ブロック及び前記対象ブロックに隣接する第１隣接ブロックを併せた第１対象領域に最も近似する第１参照領域を前記参照画像から検出して、前記第１対象領域及び前記第１参照領域の相対位置を示す第２動きベクトル候補を生成するステップと、
少なくとも前記第１及び第２動きベクトル候補を用いて、前記対象ブロックについての動きベクトルを決定するステップ
とを含むことを特徴とする動画像処理方法。
【請求項５】
コンピュータに、
現画像中に設定された動き検出の対象ブロックに最も近似する参照ブロックを前記現画像と時間的に異なる参照画像から検出して、前記対象ブロック及び前記参照ブロックの相対位置を示す第１動きベクトル候補を生成する手順と、
前記対象ブロック及び前記対象ブロックに隣接する第１隣接ブロックを併せた第１対象領域に最も近似する第１参照領域を前記参照画像から検出して、前記第１対象領域及び前記第１参照領域の相対位置を示す第２動きベクトル候補を生成する手順と、
少なくとも前記第１及び第２動きベクトル候補を用いて、前記対象ブロックについての動きベクトルを決定する手順
とを実行させることを特徴とする動画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動画像データから動きベクトルを高精度に検出可能な動画像処理装置、動画像処理方法、及び動画像処理プログラムに関する。
【背景技術】
【０００２】
近年、画像符号化の国際標準化が急速に進められている。画像符号化方式としては、静止画符号化標準であるジョイント・フォトグラフィック・エキスパート・グループ（ＪＰＥＧ）、動画の通信メディア用符号化標準であるＨ．２６３及びＨ．２６４、動画の蓄積用メディア用符号化標準であるムービング・ピクチャー・エキスパート・グループ（ＭＰＥＧ）等が挙げられる。各符号化方式には、それぞれの目的に合わせたビットレート（伝送速度）を実現する符号化アルゴリズムが採用されている。ＪＰＥＧはハフマン符号化と離散コサイン変換（ＤＣＴ）とを基本とした方式により色データの間引きを行う。一方、Ｈ．２６３及びＭＰＥＧ等の動画像圧縮符号化には、通常、空間的情報量削減にＪＰＥＧと同様にＤＣＴ等の直交変換を用い、時間的情報量削減には動き補償（ＭＣ）を用いる。一般的なＭＣは、動きベクトルを用いたフレーム間予測、即ち、現画像及び参照画像の動き分を補償することにより実行われる。更に、動きベクトルの検出の際に、参照画像内に設定された検索範囲において、現画像の対象ブロックとの誤差絶対値の総和（ＳＡＤ）等の評価関数が最小となるブロックを検出するブロックマッチングが行われる。尚、動きベクトルとは、現画像における動き検出の対象ブロックと、参照画像における対象ブロックに最も近似するブロックとの水平方向及び垂直方向の相対位置を示すベクトルを意味する。
【０００３】
一方、連続するブロックが平行移動等により均一に移動する場合、連続するブロックのそれぞれの動きベクトルは等しい。しかしながら、動きベクトルには、以下の（１）〜（３）等に起因するばらつきが生じる。（１）ブロックマッチング時には評価関数による演算結果のみで動きベクトルを検出するために、画像中にホワイトノイズ等の誤差が含まれている場合、検出された動きベクトルにばらつきが生じる。（２）画像中の物体の移動量が、一般には画素の整数倍ではない。よって、マクロブロック単位で処理した場合、各マクロブロックの移動量が、１画素、半画素、又は１／４画素等の整数倍に近似される。この結果、近似によるばらつきが動きベクトルに生じる。（３）画像が平坦な絵柄である場合、又は模様が繰り返される場合等に、ブロックマッチングを使用すると、別の似たような場所にマッチングしやすくなる。同様に、偶然似たような模様が他の部分にあると、他の部分にマッチングする可能性がある。
【０００４】
更に、連続する動きベクトルがそれぞれ等しい場合、動きベクトルの符号量を削減できる。しかしながら、連続する動きベクトルに生じる僅かなばらつきにより、動きベクトルの符号量を削減できない。特に、圧縮率が高い場合には、全符号量に対する動きベクトルの符号量が支配的となり、圧縮効率が悪くなる。隣接マクロブロック間で動きベクトルが異なるとブロックノイズが目立ちやすい等の問題も生じる。動きベクトルについての符号量を削減する背景技術として、１つのマクロブロックに対して、一定のマッチング誤差以下の複数の動きベクトル候補を検出し、複数の動きベクトル候補の中から、直前に検出された動きベクトルとの差分が最も小さい動きベクトル候補を選択する手法が提案されている（例えば、特許文献１参照。）。
【０００５】
しかしながら、上記背景技術においては、直前に検出された動きベクトルが最適であることを前提としているため、直前に検出された動きベクトルが最適でない場合、以降の動きベクトルに影響が伝播されてしまう。この結果、全体の符号量が増大する可能性がある。特に、サブサンプリングされた画像に対して動き検出を行う際には、動きベクトルが誤検出される可能性が高くなる。よって、直前のマクロブロックの動きベクトルとの差分が最も小さい動きベクトル候補を選択するのみでは、最適な動きベクトルを検出できない可能性が高い。更に、サブサンプリングされた画像で、複数の動きベクトル候補を検出しても、複数の動きベクトル候補中に最適な動きベクトルが含まれない可能性がある。
【特許文献１】特開平７−９９６４５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、動きベクトルの検出精度を改善し、動きベクトルの符号量を削減可能な動画像処理装置、動画像処理方法、及び動画像処理プログラムを提供する。
【課題を解決するための手段】
【０００７】
本発明の一態様は、（イ）現画像中に設定された動き検出の対象ブロックに最も近似する参照ブロックを現画像と時間的に異なる参照画像から検出して、対象ブロック及び参照ブロックの相対位置を示す第１動きベクトル候補を生成する第１検出回路；（ロ）対象ブロック及び対象ブロックに隣接する第１隣接ブロックを併せた第１対象領域に最も近似する第１参照領域を参照画像から検出して、第１対象領域及び第１参照領域の相対位置を示す第２動きベクトル候補を生成する第２検出回路；（ハ）少なくとも第１及び第２動きベクトル候補を用いて、対象ブロックについての動きベクトルを決定する決定回路を備える動画像処理装置であることを要旨とする。
【０００８】
本発明の一態様は、（イ）現画像中に設定された動き検出の対象ブロックに最も近似する参照ブロックを現画像と時間的に異なる参照画像から検出して、対象ブロック及び参照ブロックの相対位置を示す第１動きベクトル候補を生成するステップ；（ロ）対象ブロック及び対象ブロックに隣接する第１隣接ブロックを併せた第１対象領域に最も近似する第１参照領域を参照画像から検出して、第１対象領域及び第１参照領域の相対位置を示す第２動きベクトル候補を生成するステップ；（ハ）少なくとも第１及び第２動きベクトル候補を用いて、対象ブロックについての動きベクトルを決定するステップを含む動画像処理方法であることを要旨とする。
【０００９】
本発明の一態様は、コンピュータに、（イ）現画像中に設定された動き検出の対象ブロックに最も近似する参照ブロックを現画像と時間的に異なる参照画像から検出して、対象ブロック及び参照ブロックの相対位置を示す第１動きベクトル候補を生成する手順；（ロ）対象ブロック及び対象ブロックに隣接する第１隣接ブロックを併せた第１対象領域に最も近似する第１参照領域を参照画像から検出して、第１対象領域及び第１参照領域の相対位置を示す第２動きベクトル候補を生成する手順；（ハ）少なくとも第１及び第２動きベクトル候補を用いて、対象ブロックについての動きベクトルを決定する手順を実行させる動画像処理プログラムであることを要旨とする。
【発明の効果】
【００１０】
本発明によれば、動きベクトルの検出精度を改善し、動きベクトルの符号量を削減可能な動画像処理装置、動画像処理方法、及び動画像処理プログラムを提供できる。
【発明を実施するための最良の形態】
【００１１】
次に、図面を参照して、本発明の第１及び第２実施形態を説明する。以下の第１及び第２実施形態における図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。
【００１２】
（第１実施形態）
本発明の実施形態に係る動画像処理装置は、図１に示すように、動きベクトル生成回路１ａ、動画像符号化回路２、前置フィルタ３、及び後置フィルタ４を備える。動きベクトル生成回路１ａは、現フレームの画像データ（以下において「現画像」という。）、及び現画像と時間的に異なるフレームの画像データ（以下において「参照画像」という。）に基づいて、現画像における動き検出の対象ブロック毎に動きベクトルＭＶ２を生成する。また、動きベクトル生成回路１ａは、現画像メモリ１１、参照画像メモリ１３、選択回路１２、切出し回路１４、第１検出回路１５ａ、第２検出回路１５ｂ、第３検出回路１５ｃ、動きベクトルメモリ１６、及び決定回路１７ａを備える。第１検出回路１５ａは、図２に示す現画像中に設定された動き検出の対象ブロックＢ１に最も近似する参照ブロックを参照画像から検出して、対象ブロックＢ１及び参照ブロックの相対位置を示す第１動きベクトル候補Ｖｃ１を生成する。ここで「最も近似する」とは、現画像及び参照画像のそれぞれのブロックに対して評価関数を用いた演算処理が施されて、演算処理により算出された誤差値が最小値となることを意味する。尚、評価関数としては、例えば、現画像及び参照画像のそれぞれのブロックにおける相対的位置が同一の画素同士の誤差絶対値総和（ＳＡＤ）、平均自乗誤差（ＭＳＥ）、又は平均絶対値誤差（ＭＡＤ）等が利用できる。
【００１３】
また、第２検出回路１５ｂは、図２に示す対象ブロックＢ１及び対象ブロックＢ１に隣接する第１隣接ブロックＢ２を併せた第１対象領域に最も近似する第１参照領域を参照画像から検出して、第１対象領域及び第１参照領域の相対位置を示す第２動きベクトル候補Ｖｃ２を生成する。決定回路１７ａは、少なくとも第１及び第２動きベクトル候補Ｖｃ１及びＶｃ２を用いて、対象ブロックＢ１についての動きベクトルＭＶ２を決定する。
【００１４】
図３に示す例において、絵柄Ｄ１が参照画像中に存在し、絵柄Ｄ２が現画像中に存在すると仮定すると、絵柄Ｄ２中の対象ブロックＢ１は、絵柄Ｄ１中の参照ブロックＢ１０に最も近似する。この結果、図３に示す第１動きベクトル候補Ｖｃ１が、第１検出回路１５ａにより検出される。しかしながら、動きベクトルＶｃ１には上述した理由により誤差が生じる可能性がある。
【００１５】
よって、第２検出回路１５ｂは、絵柄Ｄ２中の対象ブロックＢ１及び第１隣接ブロックＢ２を併せた第１対象領域に最も近似する第１参照領域を絵柄Ｄ１から検出して、図３に示す第２動きベクトル候補Ｖｃ２を生成する。決定回路１７ａは、例えば、第１及び第２動きベクトル候補Ｖｃ１及びＶｃ２が一致しない場合、第１及び第２動きベクトル候補Ｖｃ１及びＶｃ２を平均化することで、対象ブロックＢ１についての動きベクトルの検出精度を向上させる。
【００１６】
更に、第３検出回路１５ｃは、図２に示す対象ブロックＢ１、第１隣接ブロックＢ２、及び対象ブロックＢ１に隣接する第２隣接ブロックＢ３を併せた第２対象領域に最も近似する第２参照領域を検出して、第３動きベクトル候補Ｖｃ３を生成する。動きベクトルメモリ１６は、決定回路１７ａが決定した動きベクトルＭＶ２を記憶する。決定回路１７ａは、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３、及び動きベクトルメモリ１６に記憶された動きベクトル（以下において「前回の動きベクトル」という。）ＭＶ１を用いて、対象ブロックＢ１についての動きベクトルＭＶ２を決定する。
【００１７】
したがって、決定回路１７ａが、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３、及び前回の動きベクトルＭＶ１の合計４つの候補から、動きベクトルＭＶ２を決定することにより、動きベクトルの検出精度を更に向上させることが可能となる。
【００１８】
具体的には、決定回路１７ａは、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３、及び前回の動きベクトルＭＶ１のそれぞれを比較し、互いに一致する動きベクトルを対象ブロックＢ１についての動きベクトルＭＶ２として決定する。一例として、第１動きベクトル候補Ｖｃ１、第２動きベクトル候補Ｖｃ２、及び前回の動きベクトルＭＶ１が互いに一致する場合、第３動きベクトル候補Ｖｃ３が無視されて、例えば第１動きベクトル候補Ｖｃ１が動きベクトルＭＶ２として決定される。
【００１９】
但し、決定回路１７ａは、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３及び前回の動きベクトルＭＶ１のいずれも一致しない場合、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３及び前回の動きベクトルＭＶ１の重み付き平均（加重平均）を算出することにより、動きベクトルＭＶ２を決定する。一例として、前回の動きベクトルＭＶ１の重みが最も大きく設定され、次いで第１動きベクトル候補Ｖｃ１の重みが大きく設定される。第２動きベクトル候補Ｖｃ２は最も重みが小さく設定される。第３動きベクトル候補Ｖｃ３は、第２動きベクトル候補Ｖｃ２よりも重みが大きく、第１動きベクトル候補Ｖｃ１よりも重みが小さい。この場合、前回の動きベクトルＭＶ１の重みを“５”とし、第１動きベクトル候補Ｖｃ１の重みを“４”とし、第３動きベクトル候補Ｖｃ３の重みを“３”とし、第２動きベクトル候補Ｖｃ２の重みを“２”とすることができる。
【００２０】
尚、現画像メモリ１１及び参照画像メモリ１３のそれぞれの入力は前置フィルタ３の出力に接続される。選択回路１２の入力は現画像メモリ１１の出力に接続される。切出し回路１４の入力は参照画像メモリ１３の出力に接続される。第１〜第３検出回路１５ｃのそれぞの入力は、選択回路１２及び切出し回路１４のそれぞれの出力に接続される。メモリは決定回路１７ａと互いに接続される。決定回路１７ａは、第１〜第３検出回路１５ｃのそれぞれの出力に入力が接続され、後置フィルタの入力に出力が接続される。
【００２１】
また、前置フィルタ３は、動きベクトルＭＶ２の検出エラーを防止するために、画像データＩＮの周波数特性を補正する。現画像メモリ１１及び参照画像メモリ１３は、現画像及び参照画像をそれぞれ保持する。選択回路１２は、現画像を複数のブロックに分割し、複数のブロックから、図４に示す対象ブロックＢ１、図５に示す第１隣接ブロックＢ２、及び図６に示す第２隣接ブロックＢ３を選択する。ここで、第１及び第２隣接ブロックＢ２及びＢ３は、画面（画像）上の水平方向に隣接する場合に限らず、垂直方向に隣接していても良い。
【００２２】
切出し回路１４は、図４〜図６に示すように、対象ブロックの位置を中心とする検索範囲を参照画像中に設定し、検索範囲内で切出し位置を移動しながら参照ブロックＲＢ１、第１隣接参照ブロックＲＢ２、及び第２隣接参照ブロックＲＢ３を順次切出す。図５に示す参照ブロックＲＢ１及び第１隣接参照ブロックＲＢ２を併せた領域が第１参照領域に相当する。図６に示す参照ブロックＲＢ１、第１隣接参照ブロックＲＢ２、及び第２隣接参照ブロックＲＢ３を併せた領域が第２参照領域に相当する。
【００２３】
更に、第１検出回路１５ａは図４に示すように、参照画像の検索範囲内から対象ブロックＢ１に最も近似した参照ブロックＲＢ１を検出する。この結果、参照ブロックＲＢ１に対する、対象ブロックＢ１の相対位置が、第１動きベクトル候補Ｖｃ１として検出される。尚、ブロックマッチングは、現画像における１６×１６画素の正方領域であるマクロブロック単位、マクロブロックを更に分割したサブマクロブロック単位、又はサブマクロブロックを更に分割したブロック単位で行われる。また、動きベクトル候補Ｖｃ１は、例えば整数画素単位、半画素単位、又は１／４画素単位で検出される。
【００２４】
同様に、第２検出回路１５ｂは図５に示すように、参照画像の検索範囲内から、対象ブロックＢ１及び第１隣接ブロックＢ２を併せた第１対象領域に最も近似した第１参照領域を検出する。この結果、第１参照領域に対する、第１対象領域の相対位置が、第２動きベクトル候補Ｖｃ２として検出される。
【００２５】
第３検出回路１５ｃは図６に示すように、参照画像の検索範囲内から、対象ブロックＢ１、第１隣接ブロックＢ２、及び第２隣接ブロックＢ３を併せた第２対象領域に最も近似した第２参照領域を検出する。この結果、第２参照領域に対する、第２対象領域の相対位置が、第３動きベクトル候補Ｖｃ３として検出される。
【００２６】
更に、第１検出回路１５ａは、図７に示すように、対象ブロックメモリ１５１ａ、第１演算回路１５２ａ、参照ブロックメモリ１５３ａ、第１動きベクトルレジスタ１５４ａ、第１最小値判定回路１５５ａ、及び第１最小値レジスタ１５６ａを備える。対象ブロックメモリ１５１ａの入力は、図１に示す選択回路１２の出力に接続される。参照ブロックメモリ１５３ａの入力は、切出し回路１４の出力に接続される。第１演算回路１５２ａの入力は、対象ブロックメモリ１５１ａ及び参照ブロックメモリ１５３ａのそれぞれの出力に接続される。第１最小値レジスタ１５６ａの入力は第１最小値判定回路１５５ａの出力に接続される。第１最小値判定回路１５５ａの入力は、第１演算回路１５２ａ及び第１最小値レジスタ１５６ａのそれぞれの出力に接続される。第１動きベクトルレジスタ１５４ａの入力は、第１演算回路１５２ａ及び第１最小値判定回路１５５ａのそれぞれの出力に接続される。
【００２７】
また、対象ブロックメモリ１５１ａには、図４に示す対象ブロックＢ１のデータが格納される。参照ブロックメモリ１５３ａには、参照ブロックＲＢ１のデータが格納される。第１演算回路１５２ａは、参照画像の検索範囲から順次切出される参照ブロックＲＢ１のそれぞれについて、評価関数を用いて、対象ブロックＢ１及び参照ブロックＲＢ１のマッチング演算を行う。第１演算回路１５２ａからの誤差値Ｓ１は、第１最小値判定回路１５５ａ及び第２検出回路１５ｂに供給される。
【００２８】
第１演算回路１５２ａは、参照画像の検索範囲から順次切出される参照ブロックＲＢ１のそれぞれについて、対象ブロックＢ１及び参照ブロックＲＢ１の相対位置を示す動きベクトルＶ１を生成する。生成された動きベクトルＶ１は、第１動きベクトルレジスタ１５４ａに格納される。
【００２９】
第１最小値判定回路１５５ａは、誤差値Ｓ１を第１最小値レジスタ１５６ａに格納された前回までの最小値と比較する。第１最小値判定回路１５５ａは、誤差値Ｓ１が前回までの最小値よりも小さい場合に、誤差値Ｓ１を更新された最小値として第１最小値レジスタ１５６ａに格納する。この結果、誤差値Ｓ１の最小値が検出されて、最小値が検出された時点の動きベクトルＶ１が、第１動きベクトル候補Ｖｃ１として第１動きベクトルレジスタ１５４ａから読み出される。
【００３０】
また、第２検出回路１５ｂは、第１隣接ブロックメモリ１５１ｂ、第２演算回路１５２ｂ、第１隣接参照ブロックメモリ１５３ｂ、第２動きベクトルレジスタ１５４ｂ、第２最小値判定回路１５５ｂ、第２最小値レジスタ１５６ｂ、及び第１加算器１５７ａを備える。ここで、第２検出回路１５ｂが第１加算器１５７ａを備える点が、第１検出回路１５ａと異なる。
【００３１】
第１隣接ブロックメモリ１５１ｂには、図５に示す第１隣接ブロックＢ２のデータが格納される。第１隣接参照ブロックメモリ１５３ｂには、第１隣接参照ブロックＲＢ２のデータが格納される。第２演算回路１５２ｂは、参照画像の検索範囲から順次切出される第１隣接参照ブロックＲＢ２のそれぞれについて、評価関数を用いて、第１隣接ブロックＢ２及び第１隣接参照ブロックＲＢ２のマッチング演算を行う。第２演算回路１５２ｂからの誤差値Ｓ２は、第１加算器１５７ａに供給される。また、第２演算回路１５２ｂは、参照画像の検索範囲から順次切出される第１隣接参照ブロックＲＢ２のそれぞれについて、第１隣接ブロックＢ２及び第１隣接参照ブロックＲＢ２の相対位置を示す動きベクトルＶ２を生成する。生成された動きベクトルＶ２は、第２動きベクトルレジスタ１５４ｂに格納される。第１加算器１５７ａは、第１演算回路１５２ａの誤差値Ｓ１及び第２演算回路１５２ｂの誤差値Ｓ２を加算して、合計値Ａ１を第２最小値判定回路１５５ｂに供給する。
【００３２】
第２最小値判定回路１５５ｂは、第１加算器１５７ａからの合計値Ａ１を第２最小値レジスタ１５６ｂに格納された前回までの最小値と比較する。第２最小値判定回路１５５ｂは、第１加算器１５７ａの合計値Ａ１が前回までの最小値よりも小さい場合に、合計値Ａ１を更新された最小値として第２最小値レジスタ１５６ｂに格納する。この結果、第２最小値判定回路１５５ｂは、第２動きベクトルレジスタ１５４ｂから、第１演算回路１５２ａからの誤差値Ｓ１及び第２演算回路１５２ｂからの誤差値Ｓ２の合計値Ａ１が最小値となる動きベクトルＶ２を第２動きベクトル候補Ｖｃ２として読み出す。
【００３３】
更に、第３検出回路１５ｃは、第２隣接ブロックメモリ１５１ｃ、第３演算回路１５２ｃ、第２隣接参照ブロックメモリ１５３ｃ、第３動きベクトルレジスタ１５４ｃ、第３最小値判定回路１５５ｃ、第３最小値レジスタ１５６ｃ、及び第２加算器１５７ｂを備える。即ち、第３検出回路１５ｃは、第２検出回路１５ｂと同様に構成される。
【００３４】
第２隣接ブロックメモリ１５１ｃには、図６に示す第２隣接ブロックＢ３のデータが格納される。第２隣接参照ブロックメモリ１５３ｃには、第２隣接参照ブロックＲＢ３のデータが格納される。第３演算回路１５２ｃは、参照画像の検索範囲から順次切出される第２隣接参照ブロックＲＢ３のそれぞれについて、評価関数を用いて、第２隣接ブロックＢ３及び第２隣接参照ブロックＲＢ３のマッチング演算を行う。第３演算回路１５２ｃからの誤差値Ｓ３は、第２加算器１５７ｂに供給される。また、第３演算回路１５２ｃは、参照画像の検索範囲から順次切出される第２隣接参照ブロックＲＢ３のそれぞれについて、第２隣接ブロックＢ３及び第２隣接参照ブロックＲＢ３の相対位置を示す動きベクトルＶ３を生成する。生成された動きベクトルＶ３は、第３動きベクトルレジスタ１５４ｃに格納される。第２加算器１５７ｂは、第１加算器１５７ａからの合計値Ａ１及び第３演算回路１５２ｃの誤差値Ｓ３を加算して、合計値Ａ２を第３最小値判定回路１５５ｃに供給する。
【００３５】
第３最小値判定回路１５５ｃは、第２加算器１５７ｂからの合計値Ａ２を第３最小値レジスタ１５６ｃに格納された前回までの最小値と比較する。第３最小値判定回路１５５ｃは、第２加算器１５７ｂの合計値Ａ２が前回までの最小値よりも小さい場合に、合計値Ａ２を更新された最小値として第３最小値レジスタ１５６ｃに格納する。この結果、第３最小値判定回路１５５ｃは、第３動きベクトルレジスタ１５４ｃから、第１加算器１５７ａからの合計値Ａ１及び第３演算回路１５２ｃからの誤差値Ｓ３の合計値Ａ２が最小値となる動きベクトルＶ３を第３動きベクトル候補Ｖｃ３として読み出す。このようにして、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３が生成される。
【００３６】
一方、図１に示す動画像符号化回路２としては、例えば、ＭＰＥＧ規格に準拠した動画像符号化回路が使用される。動画像符号化回路２に供給される画像データＩＮとしては、例えば輝度信号がフレーム単位で供給される。尚、動きベクトルＭＶ２の検出においては、画像データＩＮの輝度信号を使用する場合に限らず、色差信号を使用することも可能である。
【００３７】
更に、動画像符号化回路２は、動きベクトルＭＶ２を用いて動き補償された参照ローカルデコード信号（以下において「予測画像」という。）と現画像との差分値を符号化する。詳細には、動画像符号化回路２は、減算器２１、離散コサイン変換（ＤＣＴ）回路２２、量子化回路２３、逆量子化回路２４、逆ＤＣＴ回路２５、可変長符号化回路２９、加算器２６、フレームメモリ２７、及び動き補償回路２８を備える。
【００３８】
減算器２１、ＤＣＴ回路５２、量子化回路２３、及び可変長符号化回路２９は、この順に直列接続される。逆量子化回路２４の入力は、量子化回路２３の出力に接続される。逆ＤＣＴ回路２５の入力は、逆量子化回路２４の出力に接続される。加算器２６の一方の入力は逆ＤＣＴ回路２５の出力に接続され、他方の入力は動き補償回路２８の出力に接続される。フレームメモリ２７の入力は、加算器２６の出力に接続される。動き補償回路２８の入力は、フレームメモリ２７及び後置フィルタ４のそれぞれの出力に接続される。
【００３９】
また、ＤＣＴ回路５２は、減算器２１からの差分値を直交変換する。尚、ＤＣＴは、フーリエ変換の一種であり、２次元の画像を２次元の周波数に変換する。この結果、差分値が、人間の目に識別され易い低周波数成分と、識別され難い高周波成分とに分離される。量子化回路２３は、直交変換された差分値を量子化して可変長符号化回路２９及び逆量子化回路２４に伝達する。可変長符号化回路２９は、量子化された差分値を可変長符号化して外部に伝達する。
【００４０】
逆量子化回路２４、逆ＤＣＴ回路２５、加算器２６、及びフレームメモリ２７により、参照ローカルデコード信号が生成される。動き補償回路２８は、動きベクトルを用いて参照ローカルデコード信号を動き補償する。尚、動きベクトルによる予測方法には、過去の画像からの予測である順方向予測、未来の画像からの予測である逆方向予測、過去及び未来の画像からの予測である双方向予測等がある。
【００４１】
更に、可変長符号化回路２９は、後置フィルタ４が出力する１フレーム分の動きベクトルＭＶ２を符号化する。ここで、可変長符号化回路２９は、現画像の互いに隣接するブロックから得られる動きベクトル同士の差分値を符号化する。図１に示す動きベクトル生成回路１ａは、高精度に動きベクトルを生成可能であるため、動きベクトルにばらつきが生じない。したがって、可変長符号化回路２９により算出される動きベクトル同士の差分値が極小化される。この結果、可変長符号化回路２９が生成する符号列の符号量が大幅に削減される。
【００４２】
次に、図８に示すフローチャートを参照して、第１実施形態に係る動画像処理方法を説明する。
【００４３】
（イ）ステップＳ１１において、図１に示す選択回路１２は、現画像メモリ１１に格納された現画像を複数のブロックに分割し、複数のブロックから図２に示す動きベクトル検出の対象ブロックＢ１、及び対象ブロックＢ１に隣接する２つの隣接ブロックＢ２，Ｂ３を選択する。
【００４４】
（ロ）ステップＳ１２において、切出し回路１４は、参照画像メモリ１３に格納された参照画像に対して、現画像中の対象ブロックの位置を中心とした検索範囲を設定する。更に、切出し回路１４は、検索範囲から参照ブロックＲＢ１、及び参照ブロックに隣接する２つの隣接参照ブロックＲＢ２，ＲＢ３を順次切出す。
【００４５】
（ハ）ステップＳ１３において、第１〜第３検出回路１５ａ〜１５ｃは、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３をそれぞれ生成する。
【００４６】
（ニ）ステップＳ１４において、決定回路１７ａは、動きベクトルメモリ１６に記憶された前回の動きベクトルＭＶ１を読み出す。尚、ステップＳ１４の処理は、ステップＳ１１〜ステップＳ１３のいずれかと同時に行われても良い。
【００４７】
（ホ）ステップＳ１５において、決定回路１７ａは、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３、及び前回の動きベクトルＭＶ１の合計４つを互いに比較し、４つすべてが一致するか否か判定する。４つすべてが一致すると判定された場合、ステップＳ１８に進む。ステップＳ１８では、一致した動きベクトルが対象ブロックＢ１についての動きベクトルＭＶ２として決定される。４つすべてが一致しないと判定された場合、ステップＳ１６に進む。
【００４８】
（ヘ）ステップＳ１６において、決定回路１７ａは、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３、及び前回の動きベクトルＭＶ１のうちの３つが一致するか否か判定する。３つが一致すると判定された場合、ステップＳ１８に進む。３つが一致しないと判定された場合、ステップＳ１７に進む。
【００４９】
（ト）ステップＳ１７において、決定回路１７ａは、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３、及び前回の動きベクトルＭＶ１のうちの２つが一致するか否か判定する。２つが一致すると判定された場合、ステップＳ１８に進む。２つが一致しないと判定された場合、ステップＳ１９に進む。ここで、一致する２つの動きベクトルの組が２組検出された場合、合計の重みが大きい動きベクトルの組が選択される。例えば、前回の動きベクトルＭＶ１及び第１動きベクトル候補Ｖｃ１が一致し、第２動きベクトル候補Ｖｃ２及び第３動きベクトル候補Ｖｃ３が一致する場合、前回の動きベクトルＭＶ１及び第１動きベクトル候補Ｖｃ１の組が選択される。
【００５０】
（チ）ステップＳ１９において、決定回路１７ａは、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３、及び前回の動きベクトルＭＶ１が、いずれも一致しないと判定して、設定された重みを利用した重み付き平均により、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３、及び前回の動きベクトルＭＶ１が平均化される。
【００５１】
（リ）ステップＳ２０において、決定回路１７ａは、決定した動きベクトルＭＶ２を動きベクトルメモリ１６に記憶させる。記憶された動きベクトルは、次回の比較対象として利用される。
【００５２】
（ヌ）ステップＳ２１において、選択回路１２は、対象ブロックＢ１が現画像中の最後のブロックであるか否か判定する。対象ブロックＢ１が現画像中の最後のブロックでないと判定された場合は、ステップＳ２２に進み、次の対象ブロックＢ１についての動きベクトル生成処理が再開される。
【００５３】
このように、第１実施形態によれば、ブロックマッチングを行う評価点数を増大させることが可能となるため、サブサンプリングされた場合又は対象ブロックＢ１が小さい場合等においても、高精度に動きベクトルＭＶ２を生成できる。更に、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３、及び前回の動きベクトルＭＶ１から、動きベクトルＭＶ２を適応的に選択又は重み付き平均することにより、動きベクトルの連続を保ちつつ、動きベクトルの誤検出が起きたとしても補正が可能であり、且つ、不適切な補正による影響が次々に伝播していくことを防止できる。
【００５４】
（第１実施形態の変形例）
本発明の第１実施形態の変形例として、図９に示すように、対象ブロックＢ１左右（水平）方向に加えて、上下（垂直）方向及び斜め方向に隣接する合計６個の隣接ブロックＢ４〜Ｂ９を利用しても良い。この結果、図１０に示すように、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３に加えて、第４〜第７動きベクトル候補Ｖｃ４〜Ｖｃ７を得ることが可能となる。
【００５５】
第４動きベクトル候補Ｖｃ４は、図９に示す対象ブロックＢ１、第３隣接ブロックＢ４、及び第４隣接ブロックＢ５を併せた第３対象領域と、第３対象領域と最も近似する参照画像中の第３参照領域とに基づいて生成される。
【００５６】
同様に、第５動きベクトル候補Ｖｃ５は、対象ブロックＢ１、第５隣接ブロックＢ６、及び第８隣接ブロックＢ９を併せた第４対象領域と、第４対象領域と最も近似する参照画像中の第４参照領域とに基づいて生成される。
【００５７】
第６動きベクトル候補Ｖｃ６は、対象ブロックＢ１、第６隣接ブロックＢ７、及び第７隣接ブロックＢ８を併せた第５対象領域と、第５対象領域と最も近似する参照画像中の第５参照領域とに基づいて生成される。
【００５８】
第７動きベクトル候補Ｖｃ７は、対象ブロックＢ１、第１隣接ブロックＢ２、第２隣接ブロックＢ３、第３隣接ブロックＢ４、第４隣接ブロックＢ５、第５隣接ブロックＢ６、第６隣接ブロックＢ７、第７隣接ブロックＢ８、及び第８隣接ブロックＢ９を併せた第６対象領域と、第６対象領域と最も近似する参照画像中の第６参照領域とに基づいて生成される。
【００５９】
第１実施形態の変形例に係る動画像処理装置によれば、第１実施形態よりも、動きベクトルの連続性を保ち、誤差検出への耐性を強くすることができる。
【００６０】
（第２実施形態）
本発明の第２実施形態に係る動画像処理装置は、図１１に示すように、現画像の絵柄を認識する画像認識回路５を更に備える構成でも良い。画像認識回路５の出力は、決定回路１７ｂの入力に接続される。その他の構成については、図１と同様である。画像認識回路５は、現画像の絵柄を認識し、絵柄に応じて第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３、及び前回の動きベクトルＭＶ１に対して重み付けを行う。
【００６１】
例えば、現画像中で絵柄が少なく濃淡の緩やかな部分に関しては、小さい領域でブロックマッチングを行う場合よりも、大きい領域でブロックマッチングを行う方が精度が向上する。これに対して、現画像中で複雑な絵柄を有する部分に関しては、大きい領域でブロックマッチングを行う場合よりも、小さい領域でブロックマッチングを行う方が精度が向上すると考えられる。
【００６２】
よって、絵柄が少なく濃淡の緩やかな部分では、第２動きベクトル候補Ｖｃ２及び第３動きベクトル候補Ｖｃ３の重みを大きく設定する。更に、現画像中に存在する所定の被写体だけが動いている場合と、現画像全体が動いている場合とで、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３、及び前回の動きベクトルＭＶ１に対する重みを再設定することが可能となる。
【００６３】
次に、図１２に示すフローチャートを参照して、第２実施形態に係る動画像処理方法を説明する。但し、第１実施形態に係る動画像処理方法と重複する処理については重複する説明を省略する。
【００６４】
（イ）ステップＳ３１において、画像認識回路５は、現画像の絵柄を認識する。具体的には、画像認識回路５は、現画像の絵柄の複雑度、現画像画面全体の動き、及び現画像中の被写体の位置等を認識する。
【００６５】
（ロ）ステップＳ３２において、画像認識回路５は、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３、及び前回の動きベクトルＭＶ１に対して重みを設定する。
【００６６】
このように、第２実施形態に係る動画像処理装置によれば、現画像の絵柄に応じて、第１〜第３動きベクトル候補Ｖｃ１〜Ｖｃ３、及び前回の動きベクトルＭＶ１の重みを対象ブロックＢ１毎に再設定できる。したがって、第１実施形態よりも高精度に動きベクトルＭＶ２を生成できる。
【００６７】
（その他の実施形態）
上記のように、本発明は第１及び第２実施形態によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施形態、実施例及び運用技術が明らかとなろう。
【００６８】
上述した第１及び第２実施形態においては、複数の動きベクトル候補、及び前回の動きベクトルＭＶ１のいずれも一致しない場合に、重み付き平均を算出することにより最終的な動きベクトルＭＶ２を決定する一例を説明した。しかしながら、複数の動きベクトル候補、及び前回の動きベクトルＭＶ１のいずれも一致しない場合、複数の動きベクトル候補、及び前回の動きベクトルＭＶ１から重みの大きい動きベクトルを選択することにより最終的な動きベクトルＭＶ２を決定しても良い。
【００６９】
上述した第１及び第２実施の形態においては、動画像符号化回路２に対して、前置フィルタ３、動きベクトル生成回路１ａ、及び後置フィルタ４を適用する一例を説明した。しかしながら、動画像符号化回路２に代えて、フォーマット変換装置又はノイズ軽減装置等に適用しても良い。また、参照画像は原画ではなく、動画像符号化回路２内で生成されるローカルデコード画像を用いても良い。
【００７０】
更に、図１及び図１１に示す動画像処理装置は、単一の半導体チップ上にモノリシックに集積化し、半導体集積回路として構成可能である。この場合、図１及び図１１に示す動きベクトルメモリ１６は、半導体集積回路の外部に設けても良い。
【００７１】
このように本発明は、ここでは記載していない様々な実施形態等を包含するということを理解すべきである。したがって、本発明はこの開示から妥当な特許請求の範囲の発明特定事項によってのみ限定されるものである。
【図面の簡単な説明】
【００７２】
【図１】本発明の第１実施形態に係る動画像処理装置の構成を示すブロック図である。
【図２】本発明の第１実施形態に係る動きベクトル生成回路の機能を説明する模式図である。
【図３】本発明の第１実施形態に係る動きベクトル生成回路の機能を説明する模式図である。
【図４】本発明の第１実施形態に係る第１検出回路の機能を説明する模式図である。
【図５】本発明の第１実施形態に係る第２検出回路の機能を説明する模式図である。
【図６】本発明の第１実施形態に係る第３検出回路の機能を説明する模式図である。
【図７】本発明の第１実施形態に係る第１〜第３検出回路の構成例を示すブロック図である。
【図８】本発明の第１実施形態に係る動画像処理方法を示すフローチャートである。
【図９】本発明の第１実施形態の変形例に係る動きベクトル生成回路の機能を説明する模式図である。
【図１０】本発明の第１実施形態の変形例に係る動きベクトル生成回路の機能を説明する模式図である。
【図１１】本発明の第２実施形態に係る動画像処理装置の構成を示すブロック図である。
【図１２】本発明の第２実施形態に係る動画像処理方法を示すフローチャートである。
【符号の説明】
【００７３】
５…画像認識回路
１５ａ…第１検出回路
１５ｂ…第２検出回路
１５ｃ…第３検出回路
１６…動きベクトルメモリ
１７ａ、１７ｂ…決定回路
【図１】
2006245932.tif 000003
【図２】
2006245932.tif 000004
【図３】
2006245932.tif 000005
【図４】
2006245932.tif 000006
【図５】
2006245932.tif 000007
【図６】
2006245932.tif 000008
【図７】
2006245932.tif 000009
【図８】
2006245932.tif 000010
【図９】
2006245932.tif 000011
【図１０】
2006245932.tif 000012
【図１１】
2006245932.tif 000013
【図１２】
2006245932.tif 000014