(57)【要約】【課題】  動きベクトル探索の演算処理量及び同演算に用いるハードウェア資源を抑制すると共に、高精度な動きベクトル探索を実現する画像符号化装置を提供することを目的とする。【解決手段】  画像符号化装置は、大領域の動きベクトル探索を行う第１動きベクトル探索部１５、小領域の動きベクトル探索を行う第２動きベクトル探索部１６、第２動きベクトル探索部１６の動きベクトル探索終了まで第１動きベクトル探索部での探索結果を保持する第１遅延回路１７、第２遅延回路１８、第２動きベクトル探索部での探索範囲の中心点を求める動きベクトル補間部１９、第１動きベクトル探索部１５での探索結果、または、第２動きベクトル探索部１６での探索結果を選択するセレクタ２０、動きベクトルの補間を行うために必要な前画像の動きベクトルを保持する動きベクトルメモリ２１を備えている。【選択図】        図１
2006254347.tif 000002
【特許請求の範囲】
【請求項１】
画像を所定の水平画素数と所定の垂直ライン数からなるブロックに分割して符号化する画像符号化装置において、
第１のブロックに設定した第１の探索範囲に対して全探索を行い、前記第１のブロックの動きベクトルを探索する第１動きベクトル探索部と、
複数の前記第１のブロックの動きベクトルと、時系列で前記画像より過去の画像のブロックの動きベクトルとを用いて補間を行い、第２のブロックに設定する第２の探索範囲の中心点を求める動きベクトル補間部と、
前記第２の探索範囲に対して全探索を行い、前記第２のブロックの動きベクトルを探索する第２動きベクトル探索部とを備えることを特徴とする画像符号化装置。
【請求項２】
前記動きベクトル補間部は、
前記画像において前記第２のブロックの近傍に位置する前記第１のブロックの動きベクトルと、
前記過去の画像において前記画像における前記第２のブロックと同位置のブロックの動きベクトルと、
前記過去の画像において前記同位置のブロックの近傍に位置するブロックの動きベクトルとを補間することにより、前記第２の探索範囲の中心点を示す補間ベクトルを求めることを特徴とする請求項１記載の画像符号化装置。
【請求項３】
前記画像における前記第１のブロックの位置と、前記過去の画像における前記第１のブロックの位置とが異なるように設定する動きベクトル探索制御部を備えることを特徴とする請求項２記載の画像符号化装置。
【請求項４】
前記画像において前記第２のブロックの近傍に位置する前記第１のブロックと、前記過去の画像において前記第２のブロックと同位置のブロックと、前記同位置のブロックの近傍に位置するブロックとについて、それぞれのブロックと前記第２のブロックとの相関性を評価するブロック相関評価部を備え、
前記動きベクトル補間部が、前記相関性の高いブロックの動きベクトルに対して重み付けすることを特徴とする請求項２記載の画像符号化装置。
【請求項５】
前記画像データをサブサンプリングして画素数を減少させたサブサンプリング画像を生成するサブサンプリング部を備えることを特徴とする請求項２記載の画像符号化装置。
【請求項６】
前記過去の画像の動きベクトルを保存する動きベクトルメモリを備えたことを特徴とする請求項２から請求項５のうちのいずれか１項記載の画像符号化装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、入力画像を所定の水平画素数と所定の垂直ライン数から成るブロックに分割し、ブロック毎に画像の動きベクトルを検出して動き補償予測を行なう、画像符号化装置に関するものである。
【背景技術】
【０００２】
動き補償予測を用いた動画像符号化方式であるＭＰＥＧ２において、動きベクトル探索を行う従来方式の代表的なものは基本的にはブロックマッチング法と呼ばれる方法であり、ＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１／Ｎ０４００  “ＴＥＳＴ  ＭＯＤＥＬ５”に示されている。同方法は、現画像をブロック（例えば、１６画素×１６画素ライン、１６画素×８ライン等）に分割し、差分絶対値和等の誤差評価基準を用いて、当該ブロックに対してその予測誤差評価基準が最も小さくなるブロックを参照画像から求め、当該ブロックの動きベクトルとする方法である。その際に、探索範囲の全てをしらみつぶしに探索し、その中から最小点を選び出す、“全探索”と呼ばれる方法がある。
【０００３】
また、全探索方式の処理量を削減するために、いくつかの方式が存在する。例えば、探索点を間引くサブサンプル方式や、サブサンプル方式で得られた候補点の周囲のみ再度細かく探索する多段マッチング方式等がある（例えば、特許文献１参照）。
【０００４】
【特許文献１】特開２０００−１３４６２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来の動きベクトル探索方式は、以上のように行なわれていたので、全探索方式では、演算処理量と同演算に必要なハードウェア資源が非常に大きくなってしまうという課題があった。また、それらを抑制するために、単純に探索点を間引くと、動きベクトルの精度が落ちて画質が劣化してしまうという課題があった。
【０００６】
この発明は上記のような課題を解消するためになされたもので、動きベクトル探索の演算処理量及び同演算に用いるハードウェア資源を抑制すると共に、高精度な動きベクトル探索を実現する画像符号化装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
この発明に係る画像符号化装置は、画像を所定の水平画素数と所定の垂直ライン数からなるブロックに分割して符号化する画像符号化装置であって、第１のブロックに設定した第１の探索範囲に対して全探索を行い、前記第１のブロックの動きベクトルを探索する第１動きベクトル探索部と、複数の前記第１のブロックの動きベクトルと、時系列で前記画像より過去の画像のブロックの動きベクトルとを用いて補間を行い、第２のブロックに設定する第２の探索範囲の中心点を求める動きベクトル補間部と、前記第２の探索範囲に対して全探索を行い、前記第２のブロックの動きベクトルを探索する第２動きベクトル探索部とを備えている。
【発明の効果】
【０００８】
この発明によれば、前記第１の探索範囲（大領域）での動きベクトル探索を行う第１のブロックを減らし、前記第２の探索範囲（小領域）での動きベクトル探索を行なうことで処理量、ハードウェア規模の削減を図ることができる。また、前記第２の探索範囲を設定する場合には、前記第１のブロックの動きベクトル及び時系列で過去の画像の動きベクトルを用いて補間することにより、より高精度な動きベクトル探索が可能となる効果がある。
【発明を実施するための最良の形態】
【０００９】
実施の形態１．
以下、この発明の実施の形態１について説明する。図１は、実施の形態１に係る画像符号化装置の構成図である。図１において、画像符号化装置は、入力画像信号１の入力により、入力画像の並べ替えを行う並べ替え部２、入力画像データと予測画像データの差分を取る減算器３、画像データを周波数成分に分解する直交変換部４、量子化を行う量子化部５、可変長符号化を行う可変長符号化部６、符号化データ８を蓄えるバッファ７、予測画像データを得るために逆量子化を行う逆量子化部９、予測画像データを得るために逆直交変換を行う逆直交変換部１０、予測画像データを生成するために逆直交変換したデータと入力画像データと予測画像データの差分の和をとる加算器１１、双方向予測を実現するための第１画像メモリ１２及び第２画像メモリ１３、動き補償を行う動き補償部１４を備えている。以上の構成は、従来の画像符号化装置と同構成である。
【００１０】
実施の形態１に係る画像符号化装置は、上記構成に加えて、大領域の動きベクトル探索を行う第１動きベクトル探索部１５、小領域の動きベクトル探索を行う第２動きベクトル探索部１６、第２動きベクトル探索部１６の動きベクトル探索終了まで第１動きベクトル探索部での探索結果を保持する第１遅延回路１７及び第２遅延回路１８、第２動きベクトル探索部での探索範囲の中心点を求める動きベクトル補間部１９、第１動きベクトル探索部１５での探索結果、または、第２動きベクトル探索部１６での探索結果を選択するセレクタ２０、動きベクトルの補間を行うために必要な過去の画像の動きベクトルを保持する動きベクトルメモリ２１を備えている。
【００１１】
次に、動作について説明する。図２は、図１の画像符号化装置の動作を説明する図である。また、図３は、図１中の第１動きベクトル探索部１５による動きベクトル探索範囲を説明する図である。図２において、マクロブロックａは、第１動きベクトル探索部１５による大領域の動きベクトル探索を行うマクロブロックである。また、マクロブロックｂは、第２動きベクトル探索部１６による小領域の動きベクトル探索を行うマクロブロックである。マクロブロックａでは、第１動きベクトル探索部１５が、大領域、例えば図３に示すような、対象マクロブロック位置（マクロブロックａ）を中心として１５０画素×１００ラインを探索範囲とした全探索を行う。
【００１２】
図４は、図１中の第２動きベクトル探索部１６による動きベクトル探索範囲を説明する図である。第２動きベクトル探索部１６では、動きベクトル探索対象をマクロブロックｂとする。先ず図２に示すように、マクロブロックｂに最も近い左右のマクロブロックａについて、それぞれの動きベクトルをＶ［ｍ−２］［ｎ］、Ｖ［ｍ＋２］［ｎ］とする。なお、マクロブロックａの動きベクトルは、第１動きベクトル探索部１５による全探索で検出されている。また、マクロブロックｂの所属する画像ｔの直前の画像（過去の画像）ｔ−１において、マクロブロックｂと同位置のマクロブロックｃの動きベクトルをＶ［ｍ’］［ｎ’］、その近傍左右に位置するマクロブロックｄの動きベクトルをそれぞれＶ［ｍ’−１］［ｎ’］、Ｖ［ｍ’＋１］［ｎ’］とする。実施の形態１では、動きベクトル補間部１９でこれらの５個の動きベクトルを補間することにより、マクロブロックｂにおける動きベクトル探索範囲の中心点を示す補間ベクトルＣ［ｍ］［ｎ］を得る。第２動きベクトル探索部１６は、補間ベクトルＣ［ｍ］［ｎ］を中心とした小領域、例えば図４に示すような５０画素×５０ラインを探索範囲とした全探索を行う。
【００１３】
動きベクトル補間部１９による補間方法としては、例えば、上記５個の動きベクトルを
Ｖ［ｍ−２］［ｎ］＝（−２０，８）
Ｖ［ｍ＋２］［ｎ］＝（−５，１６）
Ｖ［ｍ’−１］［ｎ’］＝（−２５，−１）
Ｖ［ｍ’］［ｎ’］＝（７，−３）
Ｖ［ｍ’＋１］［ｎ’］＝（８，５）
とした場合には、補間ベクトルＣ［ｍ］［ｎ］を、
Ｃ［ｍ］［ｎ］
＝｛Ｖ［ｍ−２］［ｎ］＋Ｖ［ｍ＋２］［ｎ］＋Ｖ［ｍ’−１］［ｎ’］
＋Ｖ［ｍ’］［ｎ’］＋Ｖ［ｍ’＋１］［ｎ’］｝／５
＝｛（−２０，８）＋（−５，１６）＋（−２５，−１）＋（７，−３）＋（８，５）｝
／５
＝（−７，５）
のように各動きベクトルの平均を取る方法等により求める。
【００１４】
以上のように、この実施の形態１によれば、大領域を探索範囲として動きベクトル探索を行うマクロブロックａを減らし、小領域を探索範囲としたマクロブロックｂの動きベクトル探索を行うことで、演算処理量及び同処理に要するハードウェア資源の抑制を図ることができる。また、小領域の探索では、動きベクトル探索対象マクロブロックｂに最も近い左右のマクロブロックａの動きベクトル、画像ｔ−１においてマクロブロックｂと同位置のマクロブロックｃの動きベクトル、及びその近傍左右に位置するマクロブロックｄの動きベクトルを用いて補間し、得られた補間ベクトルからマクロブロックｂの探索範囲の中心点を求めて探索を行うことで、高精度な動きベクトル探索が可能となる。
【００１５】
実施の形態２．
以下、この発明の実施の形態２について説明する。図５は、実施の形態２に係る画像符号化装置の構成図である。実施の形態２に係る画像符号化装置は、実施の形態１の画像符号化装置の構成（図１）に加えて、符号化データに含まれる任意のマクロブロックに対して、大領域の探索を行うか、或いは小領域の探索を行うかを制御する、動きベクトル探索制御部２２を備えている。
【００１６】
次に、動作について説明する。図６は、図５の画像符号化装置の動作を説明する図である。図６において、時間軸ｔ方向に並ぶ符号化画像データ（時系列で過去の画像ｔ−３〜現在の画像ｔの順）それぞれが、大領域の探索を行うマクロブロック６ａ、補間ベクトルを用いて小領域の探索を行うマクロブロック６ｂを備えている。動きベクトル探索制御部２２は、画像ｔ−３〜画像ｔにおけるそれぞれのマクロブロック６ａの位置を、同位置ではなく変化させている。ここで、画像ｔ−３〜画像ｔ−１までは動きベクトルを検出済みとし、画像ｔについての動きベクトル探索を説明する。マクロブロック６ａ、６ｂの動きベクトル探索方法は、実施の形態１と同様である。
【００１７】
マクロブロック６ａに対しては、第１動きベクトル探索部１５が、大領域を探索範囲とした全探索を行う。マクロブロック６ｂに対しては、動きベクトル補間部１９が、マクロブロック６ｂに最も近い左右のマクロブロック６ａの動きベクトル、画像ｔ−１において、画像ｔのマクロブロック６ｂと同位置のマクロブロックの動きベクトル、及びその近傍左右に位置するマクロブロックの動きベクトルを補間して補間ベクトルＣ［ｍ］［ｎ］を得る。第２動きベクトル探索部１６は、補間ベクトルＣ［ｍ］［ｎ］を中心とした小領域での全探索を行う。なお、画像ｔ−３〜画像ｔ−１についても同様に動きベクトル探索を行なう。
【００１８】
以上のように、この実施の形態２によれば、大領域を探索範囲とするマクロブロック６ａの位置を、時間軸ｔ方向に並ぶ符号化画像データでそれぞれ変化させている。従って、同位置のマクロブロックに対して大領域の探索を行うことにより生ずる補間ベクトルの偏りを抑制することが可能である。その結果、小領域の探索範囲の中心点を求めるための、補間ベクトルＣ［ｍ］［ｎ］の精度を高めることができる。
【００１９】
実施の形態３．
以下、この発明の実施の形態３について説明する。図７は、実施の形態３に係る画像符号化装置の構成図である。実施の形態３に係る画像符号化装置は、実施の形態１の画像符号化装置の構成（図１）に加えて、動きベクトル探索対象マクロブロックと補間ベクトルを得るために選出したマクロブロックとの相関性を評価をするためのブロック相関評価部２３を備えている。
【００２０】
次に、動作について説明する。図８は、図７の画像符号化装置の動作を説明する図である。実施の形態３の動きベクトルの探索方法は、補間ベクトルの求め方が実施の形態１と異なる。具体的には、図８において、動きベクトル探索対象マクロブロック８ｂにおける探索範囲の中心点を示す補間ベクトルを求めるために、実施の形態１と同様に、画像ｔのマクロブロック８ｂの近傍左右に位置するマクロブロック８ａ、画像ｔ−１のマクロブロック８ｂと同位置のマクロブロック８ｃ、マクロブロック８ｃの近傍左右に位置するマクロブロック８ｄについて動きベクトルを選出する。ブロック相関評価部２３において、各マクロブロック８ａ、８ｃ、８ｄに対して、差分絶対値和の比較等の誤差評価を行う。その結果により、マクロブロック８ｂとの相関性が高いマクロブロックの動きベクトルを、他のマクロブロックの動きベクトルよりも重み付けしてマクロブロック８ｂの補間ベクトルＣ［ｍ］［ｎ］を求める。
【００２１】
例えば、図８において、動きベクトルＶ［ｍ’＋１］［ｎ’］を持つマクロブロック８ｄが、マクロブロック８ｂとの相関性が高い場合には、補間ベクトルＣ［ｍ］［ｎ］を以下のように求める。
Ｃ［ｍ］［ｎ］
＝｛２×Ｖ［ｍ−２］［ｎ］＋２×Ｖ［ｍ＋２］［ｎ］＋２×Ｖ［ｍ’−１］［ｎ’］
＋２×Ｖ［ｍ’］［ｎ’］＋５×Ｖ［ｍ’＋１］［ｎ’］｝／１３
【００２２】
以上のように、この実施の形態３によれば、動きベクトル探索対象マクロブロック８ｂとの相関性が高いマクロブロック８ｄの動きベクトルに重み付けすることで、補間ベクトルＣ［ｍ］［ｎ］の精度を高めることが可能である。また、相関性の高いマクロブロック８ｄの動きベクトルを、そのままマクロブロック８ｂの探索範囲の中心としてもよい。
【００２３】
実施の形態４．
以下、この発明の実施の形態４について説明する。図９は実施の形態４に係る画像符号化装置の構成図である。実施の形態４に係る画像符号化装置は、実施の形態１の画像符号化装置の構成（図１）に加えて、動きベクトル探索を行なう画像に対してサブサンプリングを行なう、サブサンプリング部２４を備えている。
【００２４】
次に、動作について説明する。図１０は、図９の画像符号化装置の動作を説明する図である。図１０において、サブサンプリング部２４は、画像データ１０ｃにおいて、４つの画素データ１０ａから平均画素データ１０ｂを求め、平均画素データ１０ｂを用いて、画像データ１０ｃに対して１／４サブサンプリングを行なった画像データ１０ｄを出力する。サブサンプリング部２４によって元の画像データ１０ｃを１／４にサブサンプリングすることにより、図３に示した探索範囲（大領域）及び図４に示した探索範囲（小領域）も縮小され、探索に要するデータ量が少なくなる。
【００２５】
以上のように、この実施の形態４によれば、動きベクトル探索を行なう画像に対してサブサンプリングを行なうことにより、動きベクトルの探索範囲が縮小されるので、動きベクトル探索の演算処理量や、同処理に用いるハードウェア資源を抑制することができる。
【００２６】
実施の形態５．
以下、この発明の実施の形態５について説明する。図１１は、実施の形態５について説明する図である。実施の形態１では、動きベクトル探索対象のマクロブロックｂについて補間ベクトルを求める際に、マクロブロックｂの横方向のマクロブロックａの動きベクトルを用いていた（図２参照）。実施の形態５では、図１１に示すように、マクロブロックｂの縦方向のマクロブロックａと、画像ｔ−１についても縦方向のマクロブロックｃ、ｄを用いて補間ベクトルを求める。なお、横方向のマクロブロック（実施の形態１）と縦方向のマクロブロック（実施の形態５）について、それぞれの動きベクトルを併せて補間してもよいし、縦方向のマクロブロックのみでマクロブロックｂの補間ベクトルを求めてもよい。
【００２７】
次に、動作について説明する。図１１において、動きベクトル探索対象マクロブロックｂに最も近い上下の全探索を行ったマクロブロックａの動きベクトルを、それぞれＶ［ｍ］［ｎ−２］、Ｖ［ｍ］［ｎ＋２］とする。また、マクロブロックｂの所属する画像ｔの直前に入力された画像ｔ−１において、マクロブロックｂと同位置のマクロブロックｃの動きベクトルをＶ［ｍ’］［ｎ’］、その近傍上下に位置するマクロブロックｄの動きベクトルをそれぞれ、Ｖ［ｍ’］［ｎ’−１］、Ｖ［ｍ’］［ｎ’＋１］とする。図１の動きベクトル補間部１６は、これらの５個の動きベクトルを補間することにより、補間ベクトルＣ［ｍ］［ｎ］を求める。以後の処理は、実施の形態１と同様であるので省略する。
【００２８】
以上のように、この実施の形態５によれば、実施の形態１の横方向のマクロブロックの動きベクトルに加えて、縦方向のマクロブロックの動きベクトルを用いることで、補間ベクトルＣ［ｍ］［ｎ］の精度を高めることができる。
【００２９】
実施の形態６．
以下、この発明の実施の形態６について説明する。図１２は、実施の形態６を説明する図である。実施の形態６では、実施の形態１の画像ｔのマクロブロックｂの補間ベクトルを求める場合に、直前の画像ｔ−１の動きベクトルの一部を保存することで、演算処理に使用するメモリ量の削減を行う。例えば、図１２のように、動きベクトルメモリ２１（図１参照）に保存した直前の画像ｔ−１の動きベクトルのうち、動きベクトル探索対象のマクロブロックｂと同位置の動きベクトルを保存していない場合には、同位置の近傍（右上、右下、左上、左下）に位置するマクロブロックｄの動きベクトルを用いてマクロブロックｂの補間ベクトルを求める。
【００３０】
以上のように、この実施の形態６によれば、動きベクトルメモリ２１に直前の画像ｔ−１の動きベクトルの一部を保存することにより、ハードウェアの演算処理に使用するメモリ量を削減することができる。また、実施の形態１または実施の形態５に加えて、画像ｔ−１でマクロブロックｂと同位置から斜め方向のマクロブロックを選出することで、より補間ベクトルＣ［ｍ］［ｎ］の精度を高めることができる。
【図面の簡単な説明】
【００３１】
【図１】本発明の実施の形態１に係る画像符号化装置の構成図である。
【図２】図１の画像符号化装置の動作を説明する図である。
【図３】図１中の第１動きベクトル探索部による動きベクトル探索範囲を説明する図である。
【図４】図１中の第２動きベクトル探索部による動きベクトル探索範囲を説明する図である。
【図５】本発明の実施の形態２に係る画像符号化装置の構成図である。
【図６】図５の画像符号化装置の動作を説明する図である。
【図７】本発明の実施の形態３に係る画像符号化装置の構成図である。
【図８】図７の画像符号化装置の動作を説明する図である。
【図９】本発明の実施の形態４に係る画像符号化装置の構成図である。
【図１０】図９の画像符号化装置の動作を説明する図である。
【図１１】本発明の実施の形態５について説明する図である。
【図１２】本発明の実施の形態６について説明する図である。
【符号の説明】
【００３２】
１  入力画像信号、２  並べ替え部、３  減算器、４  直交変換部、５  量子化部、６  可変長符号化部、７  バッファ、８  符号化データ、９  逆量子化部、１０  逆直交変換部、１１  加算器、１２  第１画像メモリ、１３  第２画像メモリ、１４  動き補償部、１５  第１動きベクトル探索部、１６  第２動きベクトル探索部、１７  第１遅延回路、１８  第２遅延回路、１９  動きベクトル補間部、２０  セレクタ、２１  動きベクトルメモリ、２２  動きベクトル探索制御部、２３  ブロック相関評価部、２４  サブサンプリング部。
【図１】
2006254347.tif 000003
【図２】
2006254347.tif 000004
【図３】
2006254347.tif 000005
【図４】
2006254347.tif 000006
【図５】
2006254347.tif 000007
【図６】
2006254347.tif 000008
【図７】
2006254347.tif 000009
【図８】
2006254347.tif 000010
【図９】
2006254347.tif 000011
【図１０】
2006254347.tif 000012
【図１１】
2006254347.tif 000013
【図１２】
2006254347.tif 000014