(57)【要約】【課題】  動きベクトル検出の演算を効率よく行い、動きベクトル検出に掛かる演算時間を短縮することができる動画像符号化装置を提供する。【解決手段】  本発明は、符号化対象画像における符号化ブロックごとに動き補償予測フレーム動きベクトルを検出して、前記符号化対象画像を符号化する動画像符号化装置及び方法に関連する。本発明では、符号化ブロックと参照画像の間におけるブロックマッチングによって得られる予測誤差の変動を監視し、この監視された予測誤差の変動が所定条件を充足するかを判定する。そして、判定結果に基づいて、動きベクトルを決定し、決定された動きベクトルと符号化画像を多重化して多重化データを生成する。【選択図】  図４
2005260883.tif 000002
【特許請求の範囲】
【請求項１】
符号化対象画像における符号化ブロックごとに動き補償予測フレーム動きベクトルを検出し、前記符号化対象画像を符号化する動画像符号化装置であって、
前記符号化ブロックと参照画像の間におけるブロックマッチングによって得られる予測誤差の変動を監視する監視手段と、
前記監視手段によって監視された前記予測誤差の変動が所定条件を充足するかを判定する判定手段と、
前記判定手段の判定結果に基づいて、前記動きベクトルを決定する動きベクトル決定手段と、
前記動きベクトル決定手段によって決定された前記動きベクトルと符号化画像を多重化して多重化データを生成する多重化手段と、
を備えることを特徴とする動画像符号化装置。
【請求項２】
前記予測誤差の変動が所定条件を充足する場合、前記動きベクトル決定手段は、前記予測誤差に対応する候補動きベクトルの中から水平成分及び垂直成分の絶対和が最小の動きベクトルを検出された動きベクトルとして採用することを特徴とする請求項１に記載の動画像符号化装置。
【請求項３】
前記予測誤差の変動が所定条件を充足する場合、前記動きベクトル決定手段は、（０
，０）の動きベクトルを検出された動きベクトルとして採用することを特徴とする請求項１に記載の動画像符号化装置。
【請求項４】
前記予測誤差の変動が所定条件を充足しない場合、前記動きベクトル決定手段は、前記予測誤差が最小の動きベクトルを検出された動きベクトルとして採用することを特徴とする請求項２又は３に記載の動画像符号化装置。
【請求項５】
前記判定手段は、第１の閾値以下の前記予測誤差の変動が所定回数連続するか否かを判定することを特徴とする請求項１乃至４のいずれか１項に記載の動画像符号化装置。
【請求項６】
さらに、前記符号化ブロックの前記符号化画像内の位置に対応する前記参照画像内のブロックと前記符号化ブロックの予測誤差を閾値処理し、この閾値処理結果の総和が第２の閾値以上か否かを判定する閾値処理判定手段と、を備え、
前記閾値処理結果の総和が前記第２の閾値以上である場合に、前記動きベクトル決定手段は、前記予測誤差が最小の動きベクトルを検出された動きベクトルとして採用することを特徴とする請求項１乃至５のいずれか１項に記載の動画像符号化装置。
【請求項７】
さらに、前記予測誤差が第３の閾値以下であるか否かを判定する平均予測誤差判定手段を備え、
前記監視手段は、前記第３の閾値以下前記予測誤差についてのみ、予測誤差の変動を監視することを特徴とする請求項１乃至６のいずれか１項に記載の動画像符号化装置。
【請求項８】
前記符号化ブロックは、ＭＰＥＧ４符号化形式におけるマクロブロックであることを特徴とする請求項１乃至７のいずれか１項に記載の動画像符号化装置。
【請求項９】
符号化対象画像における符号化ブロックごとに動き補償予測フレーム動きベクトルを検出して、前記符号化対象画像を符号化する動画像符号化方法であって、
前記符号化ブロックと参照画像の間におけるブロックマッチングによって得られる予測誤差の変動を監視する監視工程と、
前記監視工程によって監視された前記予測誤差の変動が所定条件を充足するかを判定する判定工程と、
前記判定工程の判定結果に基づいて、前記動きベクトルを決定する動きベクトル決定工程と、
前記動きベクトル決定工程によって決定された前記動きベクトルと符号化画像を多重化して多重化データを生成する多重化工程と、
を備えることを特徴とする動画像符号化方法。
【請求項１０】
符号化対象画像における符号化ブロックごとに動き補償予測フレーム動きベクトルを検出して、前記符号化対象画像を符号化する動画像符号化方法を実行するコンピュータプログラムであって、
前記符号化ブロックと参照画像の間におけるブロックマッチングによって得られる予測誤差の変動を監視する監視工程を実行するためのコードと、
前記監視工程によって監視された前記予測誤差の変動が所定条件を充足するかを判定する判定工程を実行するためのコードと、
前記判定工程の判定結果に基づいて、前記動きベクトルを決定する動きベクトル決定工程を実行するためのコードと、
前記動きベクトル決定工程によって決定された前記動きベクトルと符号化画像を多重化して多重化データを生成する多重化工程を実行するためのコードと、
を備えることを特徴とするコンピュータプログラム。
【請求項１１】
請求項１０に記載のコンピュータプログラムを記憶したことを特徴とするコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動きベクトル探索によるフレーム間予測を用いて動画像フレームを符号化する動画像符号化装置および方法に関するものである。
【背景技術】
【０００２】
一般的に、ディジタル化された生の動画像は情報量が多いため、記録・伝送するにあたって情報量を圧縮する技術が必要になる。動きベクトルを用いた動画像の符号化方法の例として、“ＩＴＵ勧告Ｈ．２６１  オーディオビジュアル・サービス用ビデオ符号化”があり、この符号化によれば、符号化対象のフレームを複数のブロックに分割し、ブロック毎に参照フレーム（１フレーム前のフレーム）と比較して動きベクトルを検出する。この際、符号化対象ブロックの周囲±１５画素の範囲で動きベクトルを探索している。
【０００３】
図３は、上述した従来技術における動画像符号化装置の構成を示すブロック図である。図３において、動画像入力部１００は、時間方向に連続する複数フレームで構成されるデジタル動画像が入力される。ブロック分割部１０１は、動画像入力部１００から入力された動画像を小さな矩形Bij（例えば8x8,16x16など）に分割して、ブロック毎に出力する。カラー動画像の場合はマクロブロック(MＢij)と呼ばれる矩形単位で行い、MBijはBijより大きなサイズとなる。以下では、入力画像がカラー画像である事を想定しマクロブロック単位で処理を行う。動きベクトル検出部１０８では、フレームバッファ１０７に記憶された前フレームの符号化画像を参照して、ブロック分割部１０１で分割したブロック単位で動きベクトル検出する。
【０００４】
この際、符号化対象ブロックの周囲±１５画素の範囲で、ブロックマッチングを行い、予測誤差の絶対和の平均MAEが最小のブロックを予測ブロックとして、動きベクトルを検出する。フレームバッファ１０７には、予測画像保持部１１０の情報と、減算器１１５、直交変換１０２、量子化１０３、逆量子化１０４、逆直交変換１０５を経た差分信号の再生情報を加算器１１６で加算した再生フレームを蓄積する領域がある。
【０００５】
動き補償部１０９は、動きベクトル検出部１０８により検出された動きベクトルを用いて、フレームバッファ１０７に蓄積された参照フレームから予測ブロックを検出し、予測画像保持部１１０に出力する。予測画像保持部１１０は、蓄積している予測画像を減算器１１５と加算器１０７に出力する。減算器１１５はブロック分割部１０１から入力される符号化対象ブロックと、予測画像保持部１１０からの予測値の差を算出し、直交変換部１０２に出力する。直交変換部１０２では、減算器１１５から出力された予測値の差（以下、予測誤差）を直交変換する。
【０００６】
量子化部１０３では、スカラー量子化が行われ、量子化後の値を可変長符号化部１０４と逆量子化部１０５に出力する。可変長符号化部１０４では、量子化部１０３で量子化された値を可変長符号化し、多重化部１１３へ出力する。逆量子化部１０５では、量子化部１０３で量子化された値を逆量子化し、逆量子化された値を逆直交変換部１０６へ出力する。逆直交変換部１０６では、直交化された予測誤差信号を逆直交化し、加算器１１６に出力する。加算器１１６は、逆直交変換部１０６の出力と、予測画像保持部１１０の出力を加算し符号化対象ブロックを再生し、フレームバッファ１０７に出力する。差分動きベクトル検出部１１１では、動きベクトル検出部１０８で検出された動きベクトルと、符号化対象ブロックの左隣の動きベクトルとの差分を検出し、動きベクトル可変長符号化部１１２に出力する。動きベクトル可変長符号化部１１２では、差分動きベクトル部１１１から出力された差分ベクトルを可変長符号化し、多重化部１１３へ出力する。多重化部１１３では、可変長符号化部１０４と、差分動きベクトル可変長符号化部１１２の出力を多重化し、符号出力部に出力する。符号出力部１１４では、多重化部１１３で多重化された符号化が出力される。
【０００７】
このような流れで、動きベクトルを用いた動画像符号化が施されるが、画面上で高周波が少なく、低周波が多く、面積が大きい領域がある場合、その領域内で検出した動きベクトルが散乱し、動きベクトルの発生符号量が増大する場合がある。
【０００８】
動きベクトル検出の際、符号化対象ブロックを用いて参照フレームをブロックマッチングするが、予測誤差最小であるブロックを用いて動きベクトル検出するアルゴリズムが符号化量を増大させる原因である。この問題に対しては、フィールド/フレーム動きベクトル検出に特化するが、予測誤差が小さいものから所定の個数の分散がしきい値以下であり（動きベクトルが正確に定まらない状況を意味する）、近傍８マクロブロックに対して以下のＡ値がしきい値以下の場合（近傍が平坦な領域）、ベクトルの長さが小さいものを動きベクトルとして検出する方法が公開されている（ＨＤＴＶ高圧縮技術、社団法人映像メディア学会技術報告,Vol26, No31, pp.25-30,CS2002-12）。
【０００９】
【数１】
2005260883.tif 000003
【００１０】
【非特許文献１】ＨＤＴＶ高圧縮技術、社団法人映像メディア学会技術報告,Vol26, No31, pp.25-30,CS2002-12
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、上述の方法により動きベクトルの散乱を抑制する場合、予測誤差の小さいものから所定の数の分散を用いるので、常時与えられた動きベクトル探索範囲の探索が全て終了しなければ動きベクトルが不正確である事を検出できず、計算時間がかかる。さらに画面の多くの領域でベクトルが散乱するような画像の場合、上記Ａの値を毎回計算すると計算コストが高くなる。
【００１２】
本発明は、このような事情を考慮してなされたものであり、事前に簡易な計算で動きベクトルが正確に定まらない領域を検出し、一回のブロックマッチング毎に近傍が平坦であるかを監視し、動きベクトルの散乱を抑制し、発生符号量を抑制する動画像符号化装置を提供するものである。
【課題を解決するための手段】
【００１３】
以上の課題を解決するために、本発明による動画像符号化装置は、符号化対象画像における符号化ブロックごとに動き補償予測フレーム動きベクトルを検出し、前記符号化対象画像を符号化する動画像符号化装置であって、前記符号化ブロックと参照画像の間におけるブロックマッチングによって得られる予測誤差の変動を監視する監視手段と、前記監視手段によって監視された前記予測誤差の変動が所定条件を充足するかを判定する判定手段と、前記判定手段の判定結果に基づいて、前記動きベクトルの決定する動きベクトル決定手段と、前記動きベクトル決定手段によって決定された前記動きベクトルと符号化画像を多重化して多重化データを生成する多重化手段と、を備えることを特徴とする。
【００１４】
また、本発明による動画像符号化方法は、符号化対象画像における符号化ブロックごとに動き補償予測フレーム動きベクトルを検出して、前記符号化対象画像を符号化する動画像符号化方法であって、前記符号化ブロックと参照画像の間におけるブロックマッチングによって得られる予測誤差の変動を監視する監視工程と、前記監視工程によって監視された前記予測誤差の変動が所定条件を充足するかを判定する判定工程と、前記判定工程の判定結果に基づいて、前記動きベクトルの決定する動きベクトル決定工程と、前記動きベクトル決定工程によって決定された前記動きベクトルと符号化画像を多重化して多重化データを生成する多重化工程と、を備えることを特徴とする。
【００１５】
さらなる本発明の特徴は、以下に説明する各実施形態及び添付図面によって明らかにされる。
【発明の効果】
【００１６】
本発明によれば、動きベクトル検出の演算を効率よく行い、動きベクトル検出に掛かる演算時間を短縮することができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の好適な実施の形態について説明する。
＜第１の実施形態＞
図４は、本発明の第１の実施形態に係る画像符号化装置の構成を示すブロック図である。本実施例においては動きベクトルを用いた簡単なフレーム間符号化方式を例にとって説明するが、これに限定されない。例えば、ＭＰＥＧ２やＭＰＥＧ４符号化のようなフレーム間符号化手段であっても構わない。
【００１８】
第１の実施形態に係る動画像符号化装置は、動画像を入力する動画像入力部１００、入力フレームを小さな矩形（この例では８ｘ８）に分割するブロック分割部１０１、直交変換を施す直交変換部１０２、量子化を施す量子化部１０３、可変長符号化を施す可変長符号化部１０４、逆量子化を施す逆量子化部１０５、逆直交変換を施す逆直交変換部１０６、画像情報を保存するフレームバッファ１０７、動きベクトルを検出する動きベクトル検出部１０８、動き補償を行い、予測画像を生成する動き補償部１０９、予測画像を保持する予測画像保持部１１０、差分動きベクトルを検出する差分動きベクトル検出部１１１、差分動きベクトルから動きベクトルを可変長符号化する動きベクトル可変長符号化部１１２、符号を多重化する多重化部１１３、多重化された符号化出力する符号出力部１１４、二つの入力ブロックの画素同士を減算する減算器１１５、二つの入力ブロックの画素同士を加算する加算器１１６、動きベクトル検出方法を適応的に切り替え、動きベクトルを決定する動きベクトル検出制御部２００とを備える。
【００１９】
上記構成において、各部の動作手順について説明する。動画像入力部１００は、時間方向に連続する複数フレームで構成されるデジタル動画像が入力される。ブロック分割部１０１は、動画像入力部１００から入力された動画像を小さな矩形Bij（8x8）に分割して、ブロック毎に出力する。カラー動画像の場合はマクロブロック(MＢij)と呼ばれる矩形単位で行い、MBijはBijより大きなサイズとなる。以下では、入力画像がカラー画像である事を想定しマクロブロック単位で処理を行う。
【００２０】
フレームバッファ１０７には、予測画像保持部１１０の情報と減算器１１５、直交変換１０２、量子化１０３、逆量子化１０４、逆直交変換１０５を経た差分信号の再生情報を加算器１１６で加算した再生フレームを蓄積する領域がある。
動き補償部１０９は、動きベクトル検出部１０８により検出された動きベクトルを用いて、フレームバッファ１０７に蓄積された参照フレームから予測ブロックを検出し、予測画像保持部１１０に出力する。予測画像保持部１１０は、蓄積している予測画像を減算器１１５と加算器１０７に出力する。
【００２１】
減算器１１５はブロック分割部１０１から入力される符号化対象ブロックと、予測画像保持部１１０からの予測値の差を算出し、直交変換部１０２に出力する。直交変換部１０２では、減算器１１５から出力された予測値の差（以下、予測誤差）を直交変換する。
量子化部１０３では、スカラー量子化が行われ、量子化後の値を可変長符号化部１０４と逆量子化部１０５に出力する。可変長符号化部１０４では、量子化部１０３で量子化された値を可変長符号化し、多重化部１１３へ出力する。逆量子化部１１５では、量子化部１０３で量子化された値を逆量子化し、逆量子化された値を逆直交変換部１０６へ出力する。
【００２２】
逆直交変換部１０６では、直交化された予測誤差信号を逆直交化し、加算器１１６に出力する。加算器１１６は、逆直交変換部１０６の出力と、予測画像保持部１１０の出力を加算し符号化対象ブロックを再生し、フレームバッファ１０７に出力する。差分動きベクトル検出部１１１では、動きベクトル検出部１０８で検出された動きベクトルと、符号化対象ブロックの左隣の動きベクトルとの差分を検出し、動きベクトル可変長符号化部１１２に出力する。動きベクトル可変長符号化部１１２では、差分動きベクトル部１１１から出力された差分ベクトルを可変長符号化し、多重化部１１３へ出力する。多重化部１１３では、可変長符号化部１０４と、差分動きベクトル可変長符号化部１１２の出力を多重化し、符号出力部に出力する。符号出力部１１４は多重化された符号を出力する。
【００２３】
動きベクトル検出部１０８では、フレームバッファ１０７に記憶された前フレームの符号化画像を参照して、ブロック分割部１０１で分割したブロック単位で動きベクトル検出し、算出した平均絶対誤差ＭＡＥ（Mean Absolute Error：ＭＢ単位における画素値の差分の絶対値の総和）と対応する動きベクトルは動きベクトル検出制御部２００に送信され、動きベクトル決定方法は、動きベクトル検出制御部２００によって制御される。
【００２４】
動きベクトル検出制御部２００は図５に示すように、動きベクトル検出部１０８から出力されるＭＡＥから△ＭＡＥを算出する予測誤差統計量監視部２０４と、予測誤差統計量監視部２０４で算出する△ＭＡＥの情報に基づき、動きベクトル決定方法を最少ベクトル算出部２０７と動きベクトル検出部１０８のいずれかに委ねる、動きベクトル検出停止部２０５と、動きベクトル検出部１０８で算出したＭＡＥと対応する候補動きベクトルを蓄積する“候補ベクトルと予測誤差蓄積部”２０６と、動きベクトル検出停止命令部２０５からの命令に基づき、“候補ベクトルと予測誤差蓄積部”２０６に蓄積されているから、動きベクトルを決定する最少ベクトル算出部２０７”から構成される（図５）。なお、ここで、△ＭＡＥ＝ＭＡＥ（ｉ＋１）−ＭＡＥ（ｉ）を意味している。
【００２５】
まず、本発明を特徴付ける動きベクトル検出部１０８と、動きベクトル検出制御部２００の各部の動作手順について説明する前に、動きベクトルが散乱する低周波領域検出の概略を図６Ａ乃至Ｃに基づき説明する。なお、動画像圧縮符号化では１６ｘ１６のマクロブロック単位でブロックマッチングを行い、差分信号の絶対値の平均ＭＡＥを算出するが、以下の説明においては、１画素単位でマッチングを行う。
【００２６】
図６は、第１の実施形態における画素値、ＭＡＥ及び△ＭＡＥの推移を説明するための図である。図６では、説明を単純化するためＭＡＥと△ＭＡＥを画素単位で見ている。本来はマクロブロックＭＢ単位で動作するものである。
図６Ａのように、参照画像中ＲＩに輝度が２、１、１、１、２と並んでいるとして、符号化画像ＴＩの符号化対象ブロックの輝度が１である場合を考える。すると、図６Ｂに示されるように、ＲＩにおいて輝度が１の画素はＭＡＥが０になり、２の画素はＭＡＥが１になる。
【００２７】
次に、ＭＡＥの差分を画素方向に算出すると、図６Ｃのようになる。画素方向０番目は−０番目の画素が存在しないとデルタＭＡＥを算出できないが、仮想的に△ＭＡＥ＝０とする。
【００２８】
そこで、△ＭＡＥが閾値Ｂ以下（以下、閾値Ｂ＝０、Ｂは実数）の画素数ＣＮＴがＣ以上（以下、閾値Ｃ＝３と表す、Ｃは実数）という条件を定義すると、図６Ｃのように広い範囲で低周波が存在する領域を検出できる。低周波領域検出後は、ベクトルの長さが小さい画素、この例の場合、０番目の画素から動きベクトルが算出される。
以下では、本発明を特徴付ける動きベクトル検出部１０８と、動きベクトル検出制御部２００の各部の動作手順について図５および図７のフローチャートを参照して説明する。
【００２９】
動きベクトル検出部１０８が起動すると、ＣＮＴを０に初期化し（ステップＳ３００）、動きベクトル検出制御部２００を起動する。次に、符号化対象フレームから符号化対象となるブロックを決定する（ステップＳ３０１）。予測誤差統計量監視部２０４では、ブロックマッチングで算出される予測誤差ＭＡＥの△ＭＡＥを監視する（ステップＳ３０４）。その後、動きベクトル検出部１０８において参照フレーム内のブロックを所定の順序でブロックマッチングする（ステップＳ３０５）。
【００３０】
△MAEが閾値Ｂ以下の時（ステップＳ３０６）、ＣＮＴ＝ＣＮＴ＋１とし（ステップＳ３０７）、ＣＮＴが閾値Ｃ以上でなく（ステップＳ３０８）、ベクトル探索範囲を超えない（ステップＳ３０９）という２つの条件を同時に満たす場合、ブロックマッチングは続く。また、△MAEが閾値Ｂ以上の時（ステップＳ３０６）で、ベクトル探索範囲を超えない（ステップＳ３０９）という２つの条件を同時に満たす場合も、ブロックマッチングは続く。
【００３１】
ブロックマッチングを行っている最中に算出されるＭＡＥと対応する動きベクトルは、“候補ベクトルと予測誤差蓄積部２０６”に蓄積され、動きベクトル検出停止部２０５では、ベクトル探索範囲を超えない範囲でＣＮＴが閾値Ｃ以上の場合（ステップＳ３０８）、最少ベクトル算出部２０７に決定命令を送る。最少ベクトル算出部２０７では、“候補ベクトルと予測誤差の統計量蓄積部２０６”に蓄積されている候補ベクトルの中から水平成分と垂直成分の絶対和が最小のベクトルを動きベクトルとして決定し（ステップＳ３１０）、動きベクトル検出を終了する（ステップＳ３１２）。
【００３２】
ＣＮＴが閾値Ｃ以上という条件を満たさず（ステップＳ３０８）に動きベクトル探索範囲を超えた場合（ステップＳ３０９）、最少ベクトル算出部２０７では、動きベクトル検出部１０８に動きベクトル決定を委ね、動きベクトル検出部１０８では、MAEが最小のブロックから動きベクトルを決定し(ステップＳ３０９)、動きベクトル検出を終了する（ステップＳ３１３）。
【００３３】
以上、第１の実施形態によれば、平坦な領域において動きベクトルの散乱を高速に抑制できる。
【００３４】
なお、最少ベクトル算出部２０７において動きベクトルを決定する条件は、ベクトルの長さが最少のベクトルでもかまわない。また、いずれかの座標だけ（例えばｘ軸）だけを比較し、最少の長さでもかまわない。
【００３５】
＜第２の実施形態＞
図８は第２の実施形態に係る動きベクトル検出制御部２００の内部構成を示すブロック図であり、予測誤差閾値部２０１と補正ベクトル検出制御部２０２と、予測誤差統計量監視部２０４とを備える。
【００３６】
ここで、本実施形態を特徴付ける動きベクトル検出部１０８と、動きベクトル検出制御部２００の各部の動作手順について説明する前に、本実施形態の概略を図９Ａ乃至Ｃに基づいて説明する。なお、動画像圧縮符号化では１６ｘ１６のマクロブロック単位でブロックマッチングを行い、差分信号の絶対値の平均ＭＡＥを算出するが、以下の説明においては、１画素単位でマッチングを行う。
【００３７】
第１の実施形態では、△ＭＡＥが閾値Ｂ以下というマクロブロックに着目しているため動きベクトルの発生符号量が小さい動きベクトルを選択しても、テクスチャの発生符号量が増加して、結果的にフレーム当たりの発生符号量が増加する場合がある。例えば、図９Ａでは、輝度が１、１、２、４、４、４、４と並んでいるが、ここで、図から０番目付近と４番目付近に低周波が存在していることが分かる。そして、ＭＡＥは、参照画像の画素値と符号化対象画像の画素値の差分であり、そのＭＡＥが図９Ｂに示されている。なお、第２の実施形態でも、第１の実施形態同様、説明の単純化のため、ＭＡＥと△ＭＡＥについて画素単位で演算している。
【００３８】
そして、低周波検出のための閾値Ｂを０、閾値Ｃを３とし、△ＭＡＥを算出すると、図９Ｃに示されるように、４番目の画素付近が低周波として検出される。しかし、４番目付近の画素は図９Ｂから分かるようにＭＡＥは大きい。従って、動きベクトルから発生する符号量を抑制するはずの動きベクトルを選択したのにもかかわらず、テクスチャの発生符号量の方が、大きくなってしまい、結果的にフレーム当たりの発生符号量が増加する（ＭＡＥとテクスチャの発生符号量はおおまかにみて比例関係と言えるためである）。
【００３９】
そこで、本実施形態では、動きベクトルが（０，０）になるマクロブロックとの差分信号の和が閾値Ａ以下の場合、動きベクトルが（０，０）のマクロブロックからブロックマッチングされる順番に△ＭＡＥを監視し、（０，０）のマクロブロックから数えて、△ＭＡＥが閾値Ｂ以下になるマクロブロックが連続で閾値Ｃ以上検出した場合、低周波領域と決め打ちして、動きベクトルを（０，０）とする。なお、第１の実施形態のように、候補ベクトルから、垂直成分と水平成分の絶対和が最小のベクトルを検出された動きベクトルとしてもよい。
【００４０】
以下では、本発明を特徴付ける、動きベクトル制御部２００と動きベクトル検出部１０８の動作の概略について、図８及び図１１のフローチャートを参照して説明する。
動きベクトル検出部１０８は、従来の動きベクトル検出方法（ＭＡＥ最少のマクロブロックから動きベクトルを決定する方法）を行う他に、ブロックマッチングの過程で算出される予測誤差のうち空間的に対応するマクロブロック（動きベクトルが（０，０））から算出される平均絶対値ＭＡＥを予測誤差閾値部２０１へ出力する。また、補正ベクトル検出制御部２０２からの信号に基づき、従来の動きベクトル検出方法を停止し、補正ベクトル決定部に動きベクトル検出方法決定を委ねる。またブロックマッチングの順序は図１０のように（０，０）を初期座標とした任意の方向である
図８において、予測誤差閾値部２０１は、動きベクトル検出部１０８で算出された予測誤差を閾値処理して２値化し、その総和をΣＬとして出力する。
【００４１】
ここで、ΣＬの意味を図１及び２を参照して確認しておこう。ΣＬを演算する目的は動きベクトルが散乱すると予想される低周波領域の高速検出である。画面上で、大きな面積をもつ低周波領域が比較的遅い速度で画面上を動いた時（図１の黒く塗りつぶした領域の面積が大きい低周波領域）、フレーム間差分を計算すると、フレーム間で低周波領域が空間的に交わっていれば、ΣLは小さな値を持つ。極端な場合、図１のように、ＲＧＢ値（0,0,0）で塗りつぶした物体が動いた場合、図２のように大きな範囲で差分が０になる。よってΣLが所定の閾値以下である時そのマクロブロックＭＢは低周波領域として検出される。
【００４２】
補正ベクトル検出制御部２０２では、予測誤差閾値部２０１で算出したΣLが閾値Ａ以上の場合（低周波領域ではなく、高周波領域であると検出した場合）、動きベクトル検出部１０８へ従来型動きベクトル検出命令を送る。また、ΣLが閾値Ａ以下の時(低周波領域と検出した場合)、補正ベクトル決定部２０３を起動し、動きベクトル検出部１０８にＭＡＥ算出継続命令と、動きベクトル決定待機命令を送信する。
【００４３】
補正ベクトル決定部２０３は、動きベクトル検出部１０８から出力されるＭＡＥから△ＭＡＥを算出する予測誤差統計量監視部２０４と、予測誤差統計量監視部２０４で算出する△ＭＡＥの情報に基づき、動きベクトル決定方法をゼロベクトル決定部２０８と動きベクトル検出部１０８のいずれかに委ねる動きベクトル検出停止部２０５と、動きベクトル検出停止部２０５からの命令により動きベクトルを（０，０）と決定するゼロベクトル決定部２０８から構成される。
【００４４】
以下、本発明を特徴付ける補正ベクトル決定部と、動きベクトル制御部２００と動きベクトル検出部１０８の動作について、図１２のフローチャートを参照して説明する。
【００４５】
動きベクトル検出部１０８が起動すると（ステップＳ４００）、予測誤差閾値部２０１と補正ベクトル検出制御部２０２を起動する。次に、符号化対象フレームから符号化対象となるブロックを決定し（ステップＳ４０１）、予測誤差閾値部２０１によって参照フレームで対応するブロック（動きベクトルが（０，０））との差分信号に閾値処理を行い２値化し、処理後の値の和ΣLを算出する（ステップＳ４０２）。
【００４６】
次に、補正ベクトル検出制御部２０２は、ΣＬが閾値Ａ以上の場合（ステップＳ４０３）、動きベクトル検出部１０８に従来型動きベクトル検出を命令する。すなわち、参照フレーム内のブロックを所定の順序でブロックマッチングし（ステップＳ４１０）、決められたベクトル探索範囲の探索が終了したら（ステップＳ４１１）、MAEが最小のブロックから動きベクトルを決定し（ステップＳ４１２）、動きベクトル検出を終了する（ステップＳ４１３）。
【００４７】
また、二値化後の和ΣLが閾値Ａ以下の場合は（ステップＳ４０３）、補正ベクトル決定部２０３を稼動するし、動きベクトル検出部１０８は、ＭＡＥの検出と、ＭＡＥ最少のマクロブロックの蓄積を継続する。予測誤差統計量監視部２０４では、ブロックマッチングで算出される予測誤差ＭＡＥの△ＭＡＥを監視する（ステップＳ４０４）。
【００４８】
その後、参照フレーム内のブロックを所定の順序でブロックマッチングし（ステップＳ４０５）、△ＭＡＥがＢ以下である（ステップＳ４０６）マクロブロックが動きベクトル（０，０）から連続で何回続いているかカウント（ステップＳ４０７）し（変数ＣＮＴでカウント）、ＣＮＴが閾値Ｃ以上でないという条件（ステップＳ４１４）と、ベクトル探索範囲を超えないという２つの条件（ステップＳ４０８）を同時に満たす場合、ブロックマッチングは続く。動きベクトル検出停止部２０５では、ＣＮＴが閾値Ｃ以上の場合（ステップＳ４１４）、ゼロベクトル決定部２０９に決定命令を送る。ゼロベクトル算出部２０９では（０，０）を動きベクトルとして決定すし（ステップＳ４１５）、動きベクトル検出を終了する（ステップＳ４１３）。
【００４９】
また、ＣＮＴが閾値Ｃ以上という条件を満たさずに動きベクトル探索範囲を超えた場合（ステップＳ４０８）、ゼロベクトル決定部２０９では、動きベクトル検出部１０８に蓄積されているＭＡＥ最少のマクロブロックから動きベクトルを決定すし(ステップＳ４０９)、動きベクトル検出を終了する（ステップＳ４１３）。
【００５０】
以上説明したように、第１の実施形態では候補動きベクトルから、動きベクトルを決定するプロセスがあったが、第２の本実施形態では、そのプロセスが存在しないので高速に符号化される。
【００５１】
＜第３の実施形態＞
図１３は第３の実施形態に係る動きベクトル検出制御部２００の内部構成を示すブロック図であり、第１の実施形態における、“候補ベクトルと予測誤差蓄積部”２０６から予測誤差監視部２０４へ情報が供給されるようになっている。
【００５２】
今、第３の実施形態を説明するに当たって、図１４Ａで示されるような参照画像ＲＩ中の輝度列０、０、１、１、１、１を考える。上述の実施形態と同様、符号化画像ＴＩの符号化対象ブロックの輝度が全て１であると、図１４Ｂに示されるように、ＭＡＥは１、１、０、０、０、０となる。ここで、ＭＡＥが全て正となっているのは、ＭＡＥは絶対値で表されるからである。そして、△ＭＡＥは図１４Ｃのように表される。△ＭＡＥ演算においては、第1の実施形態同様、０番目の△ＭＡＥは仮想的に０としている。
【００５３】
なお、第２の実施形態では、動きベクトル（０，０）のマクロブロックを含んだ低周波領域だけが検出できる。よって、図１４Ａのような低周波領域は検出できない。つまり、第２の実施形態では、マクロブロックの動きベクトル（０，０）を基準として△ＭＡＥを演算し、それが閾値Ｂ以下になるかを見ているので、一旦△ＭＡＥが閾値Ｂ以上になってしまい、その後安定して低周波領域が続いても検出されないからである。
【００５４】
そこで、本実施形態では、△ＭＡＥが閾値Ｂ以下でも、ＭＡＥが閾値Ｄ以上の場合は、カウントせず、△ＭＡＥが連続で閾値以下Ｂでなければならないという制限も排除する。
【００５５】
以下、本発明を特に特徴付ける動きベクトル検出制御部２０３による動きベクトル検出器１０８の制御を、図１５のフローチャートを参照して説明する。
【００５６】
動きベクトル検出部１０８が起動すると（７００）、符号化対象フレームから符号化対象となるブロックを決定し（７０１）、補正ベクトル決定部２０２が稼動する。予測誤差統計量監視部２０４では、△MAEを監視する（７０４）。その後、参照フレーム内のブロックを所定の順序でブロックマッチングし（７０５）、ＭＡＥが閾値Ｄ以下でない時は、ステップ７１１に進む。ＭＡＥが閾値Ｄ以下であるマクロブロック（７０６）から算出した△MAEが閾値Ｂ以下（７０７）であった場合、ＣＮＴ＝ＣＮＴ＋１とし（７０８）、マクロブロックの数ＣＮＴが閾値Ｃ以上でない場合（７０９）、ステップ７１１に進む。
【００５７】
△ＭＡＥが閾値Ｄ以下でない場合、ステップ７１１に進む。また△ＭＡＥが閾値Ｂ以下でない場合も、ステップ７１１に進む。ＣＮＴが閾値Ｃ以上であるとき（７０９）、候補ベクトルの中から水平成分と垂直成分の絶対和が最小のベクトルを動きベクトルとして決定し（７１０）、動きベクトル検出を終了する（７１３）。
【００５８】
ステップ７１１では、ベクトル探索が動きベクトル探索範囲を超えない場合、ステップ７０５に進み、超えた場合は、予測誤差の絶対和の平均MAEが最小のブロックから動きベクトルを決定し(７１２)、動きベクトル検出を終了する（７１３）。
【００５９】
以上、第３の実施形態によれば、より精度良く低周波領域を検出でき、効率よい符号化を行える。
【図面の簡単な説明】
【００６０】
【図１】低周波が多い領域がフレーム間で動いている様子を表した図である。
【図２】低周波が多い領域がフレーム間で動いている時の、フレーム間差分画像を表す図である。
【図３】動き補償予測フレーム動きベクトルを用いた動画像符号化装置のブロック図である。
【図４】全実施形態に共通に適用される動画像符号化装置のブロック図である。
【図５】動画像符号化装置で用いられる動きベクトル検出制御部２００の内部構成を示すブロック図である（第1の実施形態）。
【図６】第１の実施形態の説明で用いられる画素列、ＭＡＥ及び△ＭＡＥの具体例を示す図である。
【図７】第１の実施形態に係るベクトル検出制御部２００と動きベクトル検出部１０８の動作を説明するためのフローチャートである。
【図８】動画像符号化装置で用いられる動きベクトル検出制御部２００の内部構成を示すブロック図である（第２の実施形態）。
【図９】第２の実施形態の説明で用いられる画素列、ＭＡＥ及び△ＭＡＥの具体例を示す図である。
【図１０】ブロックマッチングの処理順序の例を示す図である。
【図１１】第２の実施形態に係る補正ベクトル決定部２０３の内部構成を示すブロック図である。
【図１２】第２の実施形態に係るベクトル検出制御部２００と動きベクトル検出部１０８の動作を説明するためのフローチャートである。
【図１３】動画像符号化装置で用いられる動きベクトル検出制御部２００の内部構成を示すブロック図である（第３の実施形態）。
【図１４】第３の実施形態の説明で用いられる画素列、ＭＡＥ及び△ＭＡＥの具体例を示す図である。
【図１５】第３の実施形態に係るベクトル検出制御部２００と動きベクトル検出部１０８の動作を説明するためのフローチャートである。
【図１６】予測誤差閾値部で差分をとるブロックの説明図である。
【符号の説明】
【００６１】
１００  動画像入力部
１０１  ブロック分割部
１０２  直交変換部
１０３  量子化部
１０４  可変長符号化部
１０５  逆量子化部
１０６  逆直交変換部
１０７  フレームバッファ
１０８  動きベクトル検出部
１０９  動き補償部
１１０  予測画像保持部
１１１  差分動きべクトル検出部
１１２  動きベクトル可変長部
１１３  多重化部
１１４  符号出力部
１１５  減算部
１１６  加算器
２００  動きベクトル検出制御部
２０１  予測誤差閾値部
２０２  動きベクトル検出停止部
２０３  動きベクトル決定部
【図１】
2005260883.tif 000004
【図２】
2005260883.tif 000005
【図３】
2005260883.tif 000006
【図４】
2005260883.tif 000007
【図５】
2005260883.tif 000008
【図６】
2005260883.tif 000009
【図７】
2005260883.tif 000010
【図８】
2005260883.tif 000011
【図９】
2005260883.tif 000012
【図１０】
2005260883.tif 000013
【図１１】
2005260883.tif 000014
【図１２】
2005260883.tif 000015
【図１３】
2005260883.tif 000016
【図１４】
2005260883.tif 000017
【図１５】
2005260883.tif 000018
【図１６】
2005260883.tif 000019