(57)【要約】【課題】画像処理装置で、フレーム間予測の際の動きベクトル検出における探索範囲窓の位置を適応的に制御する。【解決手段】動きベクトル検出手段１〜１０が、処理対象の画像が分割されて生成された複数のブロックの各々毎に、参照画像に設定された探索範囲窓に含まれるブロックの中から最も類似するブロックを探索して、当該探索結果に基づいて動きベクトルを検出する。探索範囲窓設定手段１１〜１３が、動きベクトルを検出する対象となるブロックに対して、それより前段に位置するブロックについて検出された動きベクトルに基づいて、予測される動き方向のブロックを探索範囲窓内に確保するように予め設定された規定に従って、動きベクトル検出手段により使用される探索範囲窓を設定する。【選択図】  図１
2011151509.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置において、
処理対象の画像が分割されて生成された複数のブロックの各々毎に、参照画像に設定された探索範囲窓に含まれるブロックの中から最も類似するブロックを探索して、当該探索結果に基づいて動きベクトルを検出する動きベクトル検出手段と、
前記動きベクトル検出手段により動きベクトルを検出する対象となるブロックに対して、それより前段に位置するブロックについて前記動きベクトル検出手段により検出された動きベクトルに基づいて、予測される動き方向のブロックを前記探索範囲窓内に確保するように予め設定された規定に従って、前記動きベクトル検出手段により使用される前記探索範囲窓を設定する探索範囲窓設定手段と、
を備えたことを特徴とする画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像を符号化する画像符号化装置などの画像処理装置に関し、特に、フレーム間予測の際の動きベクトル検出における探索範囲窓の位置を適応的に制御することにより、例えば、動きが大きいブロックの動きベクトル検出においても、より小さいＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅ）値を与える参照画像データが探索範囲内に含まれる可能性を高めて、発生符号量の低減、画質向上を実現する画像処理装置に関する。
ここで、ＳＡＤ値は、画素値差分の絶対和である。
【背景技術】
【０００２】
例えば、テレビ会議、デジタルＴＶ放送等でデジタルフォーマットの動画を送信する際には、未圧縮データのままでは、その量が膨大であるため、そのまま送信することが困難である。このため、通常、伝送路に送る前に符号化（圧縮）処理が行われる。
【０００３】
今日、このような動画像データを符号化する際には、多くの映像信号が有する高い自己相関性（冗長性）を利用してデータ量を圧縮することが行われている。動画像が有する冗長性には、二次元の空間冗長性と、時間冗長性がある。空間冗長性とは、フレーム内の画素の局所的類似性を指し、また、時間冗長性とは、フレーム間において画素が類似性を持つことを指す。動画像符号化装置では、これらの冗長性を低減することによりデータ量を圧縮する。
【０００４】
圧縮符号化復号化技術として知られるＭＰＥＧ方式やＨ．２６４方式などでは、空間冗長性を低減するフレーム内予測画像、及び時間冗長性を低減するフレーム間予測画像を導入することにより、データ圧縮の効果を向上させている。
【０００５】
図４には、一般的な機能を有する動画像符号化装置の構成例を示してある。
本例の動画像符号化装置は、フレーム内予測画像生成部１０１、フレーム間予測画像生成部１０２、予測画像選択部１０３、符号化部１０４を備えている。
【０００６】
本例の動画像符号化装置における動作の一例を示す。
符号化対象となる画像データがフレーム内予測画像生成部１０１、フレーム間予測画像生成部１０２、符号化部１０４に入力される。
フレーム内予測画像生成部１０１がフレーム内予測画像を生成するとともに、フレーム間予測画像生成部１０２がフレーム間予測画像を生成する。生成した両予測画像から、予測画像選択部１０３が、符号化した際の発生符号量が少なくなるように予測画像を選択する。符号化部１０４では、選択された予測画像と予測対象画像である入力画像データとの差分がとられ、可変長符号化処理が施される。これにより、符号化データが生成される。
【０００７】
図５には、従来の動きベクトル検出機能を有するフレ一ム間予測画像生成部１０２の構成例を示してある。なお、本例では、図４に示される符号化部１０４と同様な機能を有する符号化部１１９をフレ一ム間予測画像生成部１０２に備えた場合を示してある。
本例のフレ一ム間予測画像生成部１０２は、フレーム単位で保持する入力画像データ保持メモリ１１１、予測対象ブロック分割部１１２、ＭＢ（マクロブロック）単位で保持する予測対象ブロックデータ保持メモリ１１３、参照画像データ保持メモリ１１４、ＭＢＬ（マクロブロックレイヤ）単位で保持するラインメモリ（キャッシュ）１１５、数十のＭＢ単位で保持する探索範囲画像データ保持メモリ１１６、動きベクトル検出部１１７、動き補償部１１８、符号化部１１９、局所復号化部１２０を備えている。
【０００８】
本例の動画像符号化装置内のフレーム間予測画像生成部１０２における動作の一例を示す。
なお、概略的には、本例の動作は、後述する実施例に係る図１に示される構成で追加されている処理部１１〜１３により改良される点を除いては、図１に示される構成の動作と同様である。
【０００９】
符号化した結果（符号化データ）を局所復号化部１２０が局所復号化するとともに、局所復号化された画像データを参照画像データとして用いるために参照画像データ保持メモリ１１４に保存する。
動きベクトル検出部１１７では、図６に示されるように、ある入力画像データ上のブロック（本例では、マクロブロック）１３１に対して最も類似する（つまり、ＳＡＤ値が最小となる）参照画像データ上のブロック（本例では、マクロブロック）１３２を検出し、入力画像データのブロックに対する参照画像データのブロックの移動方向及び移動量を表すベクトルを動きベクトル１３３として検出する。
図６には、動きベクトルの一例を示してある。
【００１０】
また、低遅延が要求されるアプリケーションにおける動きベクトル検出では、処理時間の制限により、動きベクトルの探索範囲が制限される。
このような場合、従来方式では、例えば、図７（ａ）、（ｂ）、（ｃ）に示されるように、Ｍ×Ｎ画素（Ｍ、Ｎはそれぞれ整数値）の予測対象ブロック１４２、１５２、１６２付近の固定領域１４３、１５３、１６３を動きベクトルの探索範囲窓として設定して、動きベクトルの検出が行われる。
【００１１】
図７（ａ）、（ｂ）、（ｃ）には、それぞれ、Ｍ×Ｎ画素の予測対象ブロック１４２、１５２、１６２と動きベクトル探索範囲窓１４３、１５３、１６３の位置関係の例を示してあり、また、ラインメモリ１１５の保持領域１４１、１５１、１６１の例を示してある。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特開２００７−２４３３６６号公報
【特許文献２】特許第３０２０２９９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１３】
しかしながら、上記した従来方式による動きベクトル検出では、Ｍ×Ｎ画素の予測対象ブロックと動きベクトル探索範囲窓の位置関係がＭ×Ｎ画素の予測対象ブロックに対して固定領域であるため、例えば、図８（ａ）、（ｂ）に示されるように、Ｍ×Ｎ画素の予測対象ブロック１７１、１８１がフレーム間で大きく動くような場合には、より小さいＳＡＤ値を与える領域（本例では、マクロブロック）１７２、１８２が探索範囲外となる可能性が高くなる。これにより、Ｍ×Ｎ画素の予測対象ブロックのフレーム間予測におけるＳＡＤ値が増大して、予測精度が低下する。この結果、発生符号量の増加、画質劣化につながる。
【００１４】
図８（ａ）、（ｂ）には、それぞれ、最小ＳＡＤ値を与える領域が動きベクトルの探索範囲外となる場合の例を示してある。
図８（ａ）には、Ｍ×Ｎ画素の予測対象ブロック１７１が上方向に大きく動く場合の例を示してあり、また、図８（ｂ）には、Ｍ×Ｎ画素の予測対象ブロック１８１が下方向に大きく動く場合の例を示してある。
【００１５】
本発明は、このような従来の事情に鑑み為されたもので、フレーム間予測の際の動きベクトル検出における探索範囲窓の位置を適応的に制御することにより、例えば、動きが大きいブロックの動きベクトル検出においても、より小さいＳＡＤ値を与える参照画像データが探索範囲内に含まれる可能性を高めて、発生符号量の低減、画質向上を実現することができる画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１６】
上記目的を達成するため、本発明では、画像処理装置において、次のような構成とした。
すなわち、動きベクトル検出手段が、処理対象の画像が分割されて生成された複数のブロックの各々毎に、参照画像に設定された探索範囲窓に含まれるブロックの中から最も類似するブロックを探索して、当該探索結果に基づいて動きベクトルを検出する。
探索範囲窓設定手段が、前記動きベクトル検出手段により動きベクトルを検出する対象となるブロックに対して、それより前段に位置するブロックについて前記動きベクトル検出手段により検出された動きベクトルに基づいて、予測される動き方向のブロックを前記探索範囲窓内に確保するように予め設定された規定に従って、前記動きベクトル検出手段により使用される前記探索範囲窓を設定する。
【００１７】
従って、あるブロックについて動きベクトルを検出するに際して、それより前段に位置するブロックについて検出された動きベクトルに基づいて、予測される動き方向のブロックを探索範囲窓内に確保するように探索範囲窓を設定することが行われ、このように、フレーム間予測の際の動きベクトル検出における探索範囲窓の位置を適応的に制御することにより、例えば、動きが大きいブロックの動きベクトル検出においても、より小さいＳＡＤ値を与える参照画像データが探索範囲内に含まれる可能性を高めて、発生符号量の低減、画質向上を実現することができる。
【００１８】
ここで、画像処理装置としては、種々なものに適用されてもよい。
また、処理対象の画像としては、種々なものが用いられてもよく、例えば、動画像のフレーム毎の画像を用いることができる。
また、参照画像としては、種々なものが用いられてもよく、例えば、処理対象の画像に比べて、過去のフレームの画像などを用いることができる。
また、探索範囲窓としては、種々なものが用いられてもよく、例えば、動きベクトルを検出する対象となるブロックを含んで、そのブロックから見て、縦横のそれぞれに所定数（端数があってもよい）のブロックを有して、全体として複数（端数があってもよい）のブロックからなる矩形領域などを用いることができる（例えば、図３参照。）。
【００１９】
また、ブロックとしては、例えば、マクロブロックを用いることができる。
また、複数のブロックの各々毎に動きベクトルを検出する態様としては、例えば、全てのブロックについて動きベクトルを検出する態様が用いられてもよく、或いは、一部のブロック（のみ）について動きベクトルを検出する態様が用いられてもよい。
また、あるブロックに最も類似するブロックを探索する態様としては、例えば、当該あるブロックと他のブロックの各々についてＳＡＤ値を算出して、ＳＡＤ値が最小となった他のブロックを最も類似するブロックとして検出する態様を用いることができる。
【００２０】
また、動きベクトルを検出する対象となるブロックより前段に位置するブロックとしては、任意のブロックが用いられてもよく、例えば、前段の１ライン分などのように、前段の所定数のブロックを用いることができる（例えば、図３参照。）。
また、動きベクトルを検出する対象となるブロックより前段に位置するブロックについて検出される動きベクトルとしては、例えば、複数のブロックについての平均値が用いられてもよい。
また、動きベクトルを検出する対象となるブロックより前段に位置するブロックについて検出される動きベクトルや、予測される動き方向としては、例えば、所定の方向の成分（のみ）が用いられてもよく、一例として、探索範囲窓の更新方向の成分（のみ）を用いることができる（例えば、図３参照。）。
【００２１】
また、予測される動き方向のブロックを探索範囲窓内に確保するように予め設定される規定としては、種々なものが用いられてもよく、例えば、動きベクトルを検出する対象となるブロックより前段に位置するブロックについて検出された動きベクトル（平均値でもよい）と１つ以上の所定の閾値との大小関係に基づいて、探索範囲窓の設定の仕方を決定するような規定を用いることができる（例えば、図３参照。）。
なお、この規定は、予測される動き方向のブロックを（何もしないよりは）探索範囲窓内に確保するように予め（考えられて）設定されるものであるが、実際には必ずしもそれが実現されない場合があってもよい。
【００２２】
また、予測される動き方向のブロックを探索範囲窓内に確保するように予め設定される規定に従って探索範囲窓を設定する場合と、このような規定を用いずに、動きベクトルを検出する対象となるブロックの位置に対して、予め定められた固定的な領域を探索範囲窓として設定する場合と、が切り替えられる構成が用いられてもよい。一例として、１フレームの画像について、最初の第１の所定数のブロックと最後の第２の所定数（第１の所定数と同じであってもよく、或いは、異なってもよい）のブロックでは前記規定を用いずに、これらの間のブロックにおいて前記規定を用いるような構成を用いることができる（例えば、図２のステップＳ３、ステップＳ７参照。）。
【発明の効果】
【００２３】
以上説明したように、本発明に係る画像処理装置によると、フレーム間予測の際の動きベクトル検出における探索範囲窓の位置を適応的に制御することにより、例えば、動きが大きいブロックの動きベクトル検出においても、より小さいＳＡＤ値を与える参照画像データが探索範囲内に含まれる可能性を高めて、発生符号量の低減、画質向上を実現することができる。
【図面の簡単な説明】
【００２４】
【図１】本発明の一実施例に係るフレ一ム間予測画像生成部の構成例を示す図である。
【図２】フレーム間予測画像生成部において行われる動きベクトル探索処理の手順の一例を示す図である。
【図３】（ａ）〜（ｄ）はＭ×Ｎ画素の予測対象ブロックとラインメモリ保持領域との関係の例を説明するための図である。
【図４】動画像符号化装置の構成例を示す図である。
【図５】フレ一ム間予測画像生成部の構成例を示す図である。
【図６】動きベクトルの一例を示す図である。
【図７】（ａ）、（ｂ）、（ｃ）はＭ×Ｎ画素の予測対象ブロックと動きベクトル探索範囲窓の位置関係の例を示す図である。
【図８】（ａ）、（ｂ）は最小ＳＡＤ値を与える領域が動きベクトルの探索範囲外となる場合の例を示す図である。
【発明を実施するための形態】
【００２５】
本発明に係る実施例を図面を参照して説明する。
図１には、本発明の一実施例に係るフレ一ム間予測画像生成部の構成例を示してある。
ここで、本例のフレ一ム間予測画像生成部は、例えば、図４に示されるような動画像符号化装置のフレ一ム間予測画像生成部１０２などに適用される。なお、本例では、図４に示される符号化部１０４と同様な機能を有する符号化部９をフレ一ム間予測画像生成部に備えた場合を示してある。
また、本例では、動画像符号化装置がＨ．２６４符号化方式で符号化を行う場合について説明するが、符号化方式としては、本例に限定されず、種々なものが用いられてもよい。
【００２６】
本例のフレ一ム間予測画像生成部は、フレーム単位で保持する入力画像データ保持メモリ１、予測対象ブロック分割部２、ＭＢ単位で保持する予測対象ブロックデータ保持メモリ３、参照画像データ保持メモリ４、ＭＢＬ単位で保持するラインメモリ（キャッシュ）５、数十のＭＢ単位で保持する探索範囲画像データ保持メモリ６、動きベクトル検出部７、動き補償部８、符号化部９、局所復号化部１０、ライン動きベクトル保持メモリ１１、ライン平均動きベクトル算出部１２、参照画像データ管理部１３を備えている。
【００２７】
本例のフレーム間予測画像生成部における動作の一例を示す。
外部から入力された画像データが入力画像データ保持メモリ１及び符号化部９に入力される。
入力画像データ保持メモリ１では、入力された入力画像データがフレーム単位で書き込まれて保持（記憶）される。
予測対象ブロック分割部２は、入力画像データ保持メモリ１に書き込まれた入力画像データを入力して、入力した入力画像データを縦横に切り出して、Ｍ×Ｎ画素の予測対象ブロック（ＭＢ単位）に分割する。
予測対象ブロックデータ保持メモリ３では、分割されたＭ×Ｎ画素の予測対象ブロックのデータが格納されて保持される。
【００２８】
上記の処理と同時に（並行して）、参照画像データを保持する参照画像データ保持メモリ４から数スライス分の参照画像データをラインメモリ５に書き込み、更に、その内の数十ＭＢ分の参照画像データを探索範囲画像データ（動きベクトルの探索範囲窓のデータ）として探索範囲画像データ保持メモリ６に書き込んで保持する。
ここで、ラインメモリ５は、参照画像データ保持メモリ４と探索範囲画像データ保持メモリ６との間に位置しており、キャッシュメモリの役割を有している。
【００２９】
動きベクトル検出部７は、Ｍ×Ｎ画素の予測対象ブロックデータを予測対象ブロックデータ保持メモリ３から読み出すとともに、探索範囲画像データを動き探索範囲画像データ保持メモリ６から読み出し、Ｍ×Ｎ画素の予測対象ブロックデータと探索範囲画像データから動きベクトルを検出する処理を実行する。具体的には、動きベクトル検出部７は、分割されたブロック単位毎に、Ｍ×Ｎ画素の予測対象ブロックデータと探索範囲画像データ（参照画像データ）との間でＳＡＤ値を算出し、これら算出したＳＡＤ値から最小値を検出し、検出した最小値におけるベクトルを動きベクトルとして検出する（例えば、図６参照。）。
【００３０】
動きベクトル検出部７で検出された動きベクトルは、動き補償部８及びライン動きベクトル保持メモリ１１に入力される。
動き補償部８は、動きベクトル検出部７から入力された動きベクトルに応じて、動きベクトルに基づいて補償ブロック（動き補償ブロック）を特定し、特定した補償ブロックのデータを探索範囲画像データ保持メモリ６から読み出して、補償ブロックに基づいてフレーム間予測画像データを生成して符号化部９へ出力する。
ここで、補償ブロックについては、Ｍ×Ｎ画素の予測対象ブロックの動きベクトルを探索範囲画像データ内で探索して、得られた動きベクトルで特定されるブロックを補償ブロックとする。
【００３１】
符号化部９は、生成された予測画像データと、当該予測画像データを生成する基となった入力画像データ（当該予測画像データに対応するもの）から、これらの差分画像データを生成し、そして、生成した差分画像データを符号化して、符号化データを生成する。
生成された符号化データは、外部へ出力されるとともに、局所復号化部１０に送られて入力される。
【００３２】
局所復号化を行う局所復号化部１０は、入力された符号化データ（符号化された画像データ）をフレーム単位で復号化する。これにより得られた画像データが、参照画像データとして、参照画像データ保持メモリ４に書き込まれて保持される。
参照画像データ保持メモリ４に書き込まれたデータは、必要に応じて適宜、ラインメモリ５へ転送される。
【００３３】
ライン動きベクトル保持メモリ１１は、動きベクトル検出部７から入力された動きベクトルに基づいて、１スライス分の動きベクトルを保持する。
ライン平均動きベクトル算出部１２は、ライン動きベクトル保持メモリ１１に保持された１スライス分の動きベクトルに基づいて、１スライス分の動きベクトルの平均（平均動きベクトル）を算出して参照画像データ管理部１３へ出力する。
【００３４】
参照画像データ管理部１３は、ライン平均動きベクトル算出部１２から入力された平均動きベクトルに基づいて、参照画像データ保持メモリ４とラインメモリ５との間の通信を制御する。
本例では、参照画像データ管理部１３は、平均動きベクトルに基づいて、Ｍ×Ｎ画素の予測対象ブロックの動きベクトルを予測し、当該予測の結果に基づいて参照画像データ中で設定する動きベクトル探索範囲窓を適応的に制御する。これにより、保持する参照画像データをＭ×Ｎ画素の予測対象ブロックに対して適応制御する。
【００３５】
図２には、本例のフレーム間予測画像生成部において行われる動きベクトル探索処理のフローの一例を示してある。
まず、入力画像データを入力画像データ保持メモリ１に取り込む（ステップＳ１）。
次に、予測対象ブロック分割部２が、入力画像データ保持メモリ１に書き込まれているデータを、先頭からＭＢ単位で切り出して、これにより得られたＭ×Ｎ画素の予測対象ブロックのデータを予測対象ブロックデータ保持メモリ３に書き込む（ステップＳ２）。
【００３６】
次に、［｛探索範囲窓の縦ブロック数（ＳＣＢ）／２｝＞予測対象ブロックのスライス番号］であるか否かを評価する（ステップＳ３）。
ステップＳ３の評価の結果、真であると判定した場合には、予測対象ブロックに対して固定領域の探索範囲窓（動きベクトルの探索範囲窓）を設定して（ステップＳ４）、設定された探索範囲内で動きベクトル探索を実行する（ステップＳ５）。
【００３７】
一方、ステップＳ３の評価の結果、偽であると判定した場合には、［予測対象ブロックのスライス番号＜｛フレームの縦ブロック数（ＦＣＢ）−探索範囲窓の縦ブロック数（ＳＣＢ）／２｝］であるか否かを評価する（ステップＳ７）。
ステップＳ７の評価の結果、真であると判定した場合には、適応的に探索範囲窓を設定して（ステップＳ８）、設定された探索範囲内で動きベクトル探索を実行する（ステップＳ９）。
【００３８】
一方、ステップＳ７の評価の結果、偽であると判定した場合には、予測対象ブロックに対して固定領域の探索範囲窓を設定して（ステップＳ１０）、設定された探索範囲内で動きベクトル探索を実行する（ステップＳ１１）。
【００３９】
ステップＳ５、ステップＳ９、ステップＳ１１のいずれかで動きベクトル探索が実行された後に、処理対象の予測対象ブロックがフレームの最終ブロックとなったか否かをチェック（検査）する（ステップＳ６）。
ステップＳ６のチェックの結果、真であると判定した場合には、動きベクトル探索処理を終了する。
一方、ステップＳ６のチェックの結果、偽であると判定した場合には、次の予測対象ブロックの処理へ移る（ステップＳ２の処理へ戻る）。
【００４０】
ここで、本例では、ステップＳ３、ステップＳ４、ステップＳ７、ステップＳ８、ステップＳ１０、ステップＳ６の処理のように、動きベクトルの探索範囲窓の設定等の処理は、参照画像データ管理部１３により行われる。
また、本例では、ステップＳ５、ステップＳ９、ステップＳ１１の処理のように、動きベクトルを探索（検出）する処理は、動きベクトル検出部７により行われる。
【００４１】
次に、図２に示されるフローに関して、動きベクトルの探索範囲窓を適応的に設定する方法の具体例を示す。
図３には、Ｍ×Ｎ画素の予測対象ブロックとラインメモリ保持領域との関係の例を示してある。
本例では、１フレームの縦ブロック数が３４であり、探索範囲窓の縦ブロック数が５である場合を例として説明する。また、本例では、スライス番号が０、１、２、・・・と割り振られるとする。
【００４２】
図２に示されるステップＳ３の処理において、［｛探索範囲窓の縦ブロック数（ＳＣＢ）／２｝＞予測対象ブロックのスライス番号］が偽となるのは、予測対象ブロックのスライス番号が３（４スライス目）になったときである。また、図２に示されるステップＳ７の処理において、［予測対象ブロックのスライス番号＜｛フレームの縦ブロック数（ＦＣＢ）−探索範囲窓の縦ブロック数（ＳＣＢ）／２｝］が真となる予測対象ブロックのスライス番号の内で、最大の値は３１（３２スライス目）のときである。
従って、本例では、適応的な探索範囲窓の設定処理が実行されるのは、予測対象ブロックのスライス番号が３から３１の間においてである。
【００４３】
本例では、動きベクトル探索処理の開始時から、スライス単位で、各予測対象ブロックの動きベクトルを、順次、ライン動きベクトル保持メモリ１１に書き込む。
図３（ａ）に示されるように、３スライス目の動きベクトル探索時には、２スライス目の各予測対象ブロックの動きベクトルがライン動きベクトル保持メモリ１１に保持されている。
図３（ａ）には、ラインメモリ５の保持領域２１、予測対象ブロック２２、動きベクトル探索範囲窓２３、１ＭＢＬ分の動きベクトル２４を示してある。
【００４４】
そして、隣接するスライス間のブロックの動きベクトルには相関があるため、これを利用して、次のスライスに属する予測対象ブロックの動きベクトルの傾向を予測する。
本例では、ライン平均動きベクトル算出部１２が、（式１）により、前段のスライス目（ここの例では、２スライス目）の動きベクトルのＹ方向の成分Ｙｎを平均化したＹ方向平均値（平均動きベクトル）Ｙａｖｅを算出する。（式１）において、ｍは１スライス（本例では、１ＭＢＬ分）の総ブロック数である。
【００４５】
ここで、図３に示されるように、本例では、図３における横方向がＸ方向となっており、縦方向がＹ方向となっている。また、Ｙ方向は、複数のＭＢＬの並びの方向と平行であり、スライス番号０、１、２、・・・に沿った向きとは逆向きが正となっている。つまり、Ｙ方向平均値Ｙａｖｅが正で大きいほど図３における上方（スライス番号が小さくなる方向）へ動くと予測され、Ｙ方向平均値Ｙａｖｅが負で小さいほど図３における下方（スライス番号が大きくなる方向）へ動くと予測される。
【００４６】
【数１】
2011151509.tif 000003
【００４７】
このＹ方向平均値Ｙａｖｅが前段のスライス目（ここの例では、２スライス目）のＹ方向動きベクトルの傾向を示しており、これを基に、その次の段のスライス目（ここの例では、３スライス目）のＹ方向動きベクトルの傾向を推定する。
【００４８】
本例では、探索範囲窓の縦ブロック数が５であり、８０画素となっている（本例では、Ｍ×Ｎ＝１６×１６）。
これに対して閾値（例えば、−１６、１６）を設定し、参照画像データ管理部１３が、閾値とＹ方向平均値Ｙａｖｅとを比較する。この比較結果に基づいて、参照画像データ管理部１３が、ラインメモリ５が保持するデータの更新頻度を制御することにより、動きベクトル探索範囲窓の更新量（スライス番号を増加させる方向でずらしていく量）を適応制御する。
【００４９】
本例では、次の（制御１）〜（制御３）のような制御が行われる。ここでは、Ｙ方向平均値Ｙａｖｅは、画素数単位を用いて表されているとする。
（制御１）Ｙ方向平均値Ｙａｖｅが１６より大きい場合には、図３（ｂ）に示されるように、ラインメモリ５が保持するデータを更新しない。
（制御２）Ｙ方向平均値Ｙａｖｅが−１６以上で１６以下である場合には、図３（ｃ）に示されるように、ラインメモリ５が保持するデータを１スライス分更新する。
（制御３）Ｙ方向平均値Ｙａｖｅが−１６より小さい場合には、図３（ｄ）に示されるように、ラインメモリ５が保持するデータを２スライス分更新する。
【００５０】
図３（ｂ）、（ｃ）、（ｄ）には、それぞれ、ラインメモリの保持領域３１、４１、５１、予測対象ブロック３２、４２、５２、動きベクトル探索範囲窓３３、４３、５３を示してある。ここで、本例では、ラインメモリ５の保持領域３１、４１、５１が６スライス分あり、Ｙ方向についてはその先頭から５スライス分を動きベクトル探索範囲窓３３、４３、５３として設定する構成となっており、Ｘ方向については所定数（端数があってもよい）のブロックを動きベクトル探索範囲窓３３、４３、５３として設定する構成となっている。
以降のスライス（ここの例では、４スライス目以降）についても、同様に、Ｙ方向平均値Ｙａｖｅを求めて、閾値との比較結果に基づいて、ラインメモリ５が保持するデータを制御する。
【００５１】
以上のように、本例では、フレーム間予測の際の動きベクトル検出における探索範囲窓の位置を適応的に制御することが行われ、これにより、例えば、動きが大きいブロックの動きベクトル検出においても、より小さいＳＡＤ値を与える参照画像データが探索範囲内に含まれる可能性を高めて、ＳＡＤ値の改善を図ることができ、発生符号量の低減、画質向上を実現することができる。
本例は、動画などの画像データを符号化する際に好適な技術であり、例えば、動画像などの符号化装置、動きベクトル検出装置、フレーム間符号化装置など、種々なものに適用することが可能である。
【００５２】
なお、本例のフレーム間予測画像生成部（画像処理装置の一例）では、参照画像に設定された探索範囲窓を使用して動きベクトルを検出する処理を行う処理部１〜１０の機能により動きベクトル検出手段が構成されており、動きベクトルを検出する対象となるブロックより前段に位置するブロックについての動きベクトル検出結果に基づいて探索範囲窓を設定する処理を行う処理部１１〜１３の機能により探索範囲窓設定手段が構成されている。
【００５３】
ここで、本発明に係るシステムや装置などの構成としては、必ずしも以上に示したものに限られず、種々な構成が用いられてもよい。また、本発明は、例えば、本発明に係る処理を実行する方法或いは方式や、このような方法や方式を実現するためのプログラムや当該プログラムを記録する記録媒体などとして提供することも可能であり、また、種々なシステムや装置として提供することも可能である。
また、本発明の適用分野としては、必ずしも以上に示したものに限られず、本発明は、種々な分野に適用することが可能なものである。
また、本発明に係るシステムや装置などにおいて行われる各種の処理としては、例えばプロセッサやメモリ等を備えたハードウエア資源においてプロセッサがＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）に格納された制御プログラムを実行することにより制御される構成が用いられてもよく、また、例えば当該処理を実行するための各機能手段が独立したハードウエア回路として構成されてもよい。
また、本発明は上記の制御プログラムを格納したフロッピー（登録商標）ディスクやＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）−ＲＯＭ等のコンピュータにより読み取り可能な記録媒体や当該プログラム（自体）として把握することもでき、当該制御プログラムを当該記録媒体からコンピュータに入力してプロセッサに実行させることにより、本発明に係る処理を遂行させることができる。
【符号の説明】
【００５４】
１、１１１・・入力画像データ保持メモリ、  ２、１１２・・予測対象ブロック分割部、  ３、１１３・・予測対象ブロックデータ保持メモリ、  ４、１１４・・参照画像データ保持メモリ、  ５、１１５・・ラインメモリ（キャッシュ）、  ６、１１６・・探索範囲画像データ保持メモリ、  ７、１１７・・動きベクトル検出部、  ８、１１８・・動き補償部、  ９、１０４、１１９・・符号化部、  １０、１２０・・局所復号化部、  １１・・ライン動きベクトル保持メモリ、  １２・・ライン平均動きベクトル算出部、  １３・・参照画像データ管理部、
２１、３１、４１、５１、１４１、１５１、１６１・・ラインメモリの保持領域、  ２２、３２、４２、５２、１４２、１５２、１６２、１７１、１８１・・予測対象ブロック、  ２３、３３、４３、５３、１４３、１５３、１６３・・動きベクトル探索範囲窓、  ２４・・１ＭＢＬ分の動きベクトル、
１０１・・フレーム内予測画像生成部、  １０２・・フレーム間予測画像生成部、  １０３・・予測画像選択部、
１３１、１３２・・ブロック、  １３３・・動きベクトル、
１７２、１８２・・小さいＳＡＤ値を与える領域、
【図１】
2011151509.tif 000004
【図２】
2011151509.tif 000005
【図３】
2011151509.tif 000006
【図４】
2011151509.tif 000007
【図５】
2011151509.tif 000008
【図６】
2011151509.tif 000009
【図７】
2011151509.tif 000010
【図８】
2011151509.tif 000011