JP3846642B2 - 動き量検出方法及び動き量検出装置 - Google Patents
動き量検出方法及び動き量検出装置 Download PDFInfo
- Publication number
- JP3846642B2 JP3846642B2 JP25476094A JP25476094A JP3846642B2 JP 3846642 B2 JP3846642 B2 JP 3846642B2 JP 25476094 A JP25476094 A JP 25476094A JP 25476094 A JP25476094 A JP 25476094A JP 3846642 B2 JP3846642 B2 JP 3846642B2
- Authority
- JP
- Japan
- Prior art keywords
- image data
- data
- image
- layer
- upper layer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/53—Multi-resolution motion estimation; Hierarchical motion estimation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Color Television Systems (AREA)
Description
【目次】
以下の順序で本発明を説明する。
産業上の利用分野
従来の技術
発明が解決しようとする課題
課題を解決するための手段(図1、図8〜図11、図15及び図17)
作用(図1、図8〜図11、図15及び図17)
実施例
(1)第1実施例(図1〜図8)
(2)第2実施例(図9)
(3)第3実施例(図10及び図11)
(4)第4実施例(図1)
(5)第5実施例(図12〜図17)
(6)他の実施例
発明の効果
【0002】
【産業上の利用分野】
本発明は動き量検出装置及び動き量検出方法に関し、特に画像の動きを検出する際に時間的に異なる2つの画像データをそれぞれ階層化してから動き量を検出するものに適用し得る。
【0003】
【従来の技術】
従来、動画像の処理として、動き量(動きベクトル)すなわち時間的に異なる画像中の物体の動き方向と大きさ(又は速さ)を用いるものがある。例えば画像の高能率符号化における動き補償フレーム間符号化や、フレーム間時間領域フイルタによるテレビジヨン雑音低減装置における動きによるパラメータ制御等に動き量が用いられている。この画像の動き量を求める動き量検出方法として、ブロツクマツチング法が用いられている(特公昭54-124927 号公報)。
【0004】
このブロツクマツチング法では、まず1つの画面を適当な数画素からなるブロツクに分割する。続いてこのようにブロツク化された画像データと、この画像データが動いた領域を検索するために時間的に異なる画面の画像データがブロツク化されてなるサーチ領域との間で、所定の評価関数を用いて画素単位で評価し、この評価値を最小とする最適値を求めることにより、2つのブロツク化された画像データ間の動き量を検出する。これにより高い精度で画像の動き量を検出し得るようになされている。
【0005】
【発明が解決しようとする課題】
ところがブロツクマツチング法においては、検出対象のブロツクの全ての画素に対して、検出範囲となる全てのサーチ領域をくまなくサーチし、その差分を求める必要がある。このため動き量を検出する計算量が大きくなり、装置自体が大型化したり、演算時間が長くなる問題があつた。このような問題を解決するため、それぞれ異なる解像度でなる複数の階層画像を作成し、この階層画像を用いてブロツクマツチング法で動き量を検出するようになされた動き量検出方法が提案されている(特願平5-2448814 号)。
【0006】
この動き量検出方法では、まずオリジナルの画像データ(以下これを第1階層と呼ぶ)を、平均化やローパスフイルタ処理等により平均値階層化して、画素数を低減した画像データ(以下これを第2階層と呼ぶ)を作成する。次に作成した第2階層の画像データで大まかな動き量を検出し、その動き量に基づいて第1階層の画像データについて細かい動き量検出を行うことにより、少ない計算量で動き量を検出し得るようになされている。なおここでの階層数は2階層に限らず、順次平均値階層化を繰り返すことにより、さらにデータ量の少ない第3階層、第4階層、……の画像データを作成することもできる。
【0007】
このような動き量検出方法を用いれば、階層数が多くなる程少ない計算量で動き量を求めることができる。すなわち上位階層の画像データほどブロツクのサイズとサーチ領域が小さくなるため、評価関数による演算量は必然的に小さくなる。最終的に動き量を求める最下位階層での評価は、ブロツクサイズ自体は通常のブロツクマツチング法と同じになるが、上位階層の画像データで求めた動き量に応じて動き補償して、サーチ領域を小さくすることができるため、演算量を削減することができる。
【0008】
ところがこの動き量検出方法においては、階層数が多くなる程動き量の検出精度が劣化する問題があつた。実際上この動き量検出方法では、まず画像の粗い上位階層においてブロツク毎の動き量を検出し、この検出結果に基づいて下位階層において動き量を検出するため、上位階層での検出結果が下位階層での動き量検出に大きな影響を与える。すなわち上位階層の画像データは、平均値階層化の処理でブロツクサイズを小さくするため、画像の特徴量が最下位階層のオリジナル画像と異なつてくる。特にエツジ成分は平均値階層化により失われることになるため、平均値階層化された画像データにおける動き量とオリジナル画像により動き量の対応関係にずれが生じる場合がある。
【0009】
実際上下位階層で動き量を求める場合には、上位階層での動き量の結果を反映させるため、もし対応関係のずれ量が大きくサーチ領域以内でカバーできなかつたときには誤動作となる。このように平均値階層化された画像データによる動き量検出方法では、平均値階層化による情報量の欠落により、誤動作が起きる可能性が大きくなる問題がある。また階層が上位になる程ブロツクサイズが小さくなることから、平均値階層化された画像データ上での動き量検出は、オリジナル画像に対する動き量検出の分解能が低下して誤動作が発生する問題もある。
【0010】
本発明は以上の点を考慮してなされたもので、階層化された画像データを用いてブロツクマツチング法で動き量を検出する際に、動き量の検出精度を向上し得る動き量検出装置及び動き量検出方法を提案しようとするものである。
【0011】
【課題を解決するための手段】
かかる課題を解決するため本発明においては、解像度の低い上位階層で検出した動きベクトルに基づいて、解像度の高い下位階層での動きベクトルを順次検出する動き量検出方法において、第1の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成する画像階層化ステツプと、第1の時点よりも1フレーム分過去の第2の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成すると共に、解像度の高い下位階層の画像データの画素が互いにオーバーラツプするように選択した複数の範囲の画素に対して、それぞれ平均化することにより、解像度が低く、かつ多重化された上位階層の画像データを複数形成する上位階層多重化ステツプと、画像階層化ステツプ及び上位階層多重化ステツプで階層化された画像データの対応する階層同士で、下位階層については上位階層で求めた動きベクトルを基準にするようにして、上位階層から順に各階層毎に、第1の時点の入力画像の画像データにおける参照ブロツクと、第2の時点の入力画像を多重化した各画像データそれぞれにおけるサーチ範囲内の複数の候補ブロツクとの間でそれぞれ評価値を算出し、当該評価値が最も小さい候補ブロツクに基づいて動きベクトルを検出する動きベクトル検出ステツプとを設けるようにする。
【0012】
また本発明においては、解像度の低い上位階層で検出した動きベクトルに基づいて、解像度の高い下位階層での動きベクトルを順次検出する動き量検出装置方法において、第1の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成する画像階層化ステツプと、画像階層化ステツプで形成された複数階層の画像データそれぞれの高周波成分を表す複数階層のアクテイビテイデータを、算出対象の階層の画像データと、上記入力画像の画像データとの対応する画素の差分の絶対値和で算出する第1のアクテイビテイ階層化ステツプと、第1の時点よりも1フレーム分過去の第2の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成すると共に、解像度の高い下位階層の画像データの画素が互いにオーバーラツプするように選択した複数の範囲の画素に対して、それぞれ平均化することにより、解像度が低く、かつ多重化された上位階層の画像データを複数形成する上位階層多重化ステツプと、上位階層多重化ステツプで形成された複数階層の画像データそれぞれの高周波成分を表す複数階層のアクテイビテイデータを、算出対象の階層の画像データと、上記入力画像の画像データとの対応する画素の差分の絶対値和で算出する第2のアクテイビテイ階層化ステツプと、画像階層化ステツプ及び上位階層多重化ステツプで階層化された画像データの対応する階層同士で、第1の時点の入力画像の画像データにおける参照ブロツクと、上記第2の時点の入力画像を多重化した各画像データそれぞれにおけるサーチ範囲内の複数の候補ブロツクとの間でそれぞれ評価値を求める画像データ評価値算出ステツプと、第1のアクテイビテイ階層化ステツプ及び第2のアクテイビテイ階層化ステツプで階層化されたアクテイビテイデータの対応する階層同士で、参照ブロツクのアクテイビテイデータと、複数の候補ブロツクのアクテイビテイデータとの間でそれぞれ評価値を求めるアクテイビテイデータ評価値算出ステツプと、画像データ評価値算出ステツプで求めた評価値とアクテイビテイデータ評価値算出ステツプで求めた評価値とを総合判定して、上位階層から順に各階層毎に動きベクトルを検出する動きベクトル検出ステツプとを設けるようにする。
【0013】
また本発明においては、解像度の低い上位階層で検出した動きベクトルに基づいて、解像度の高い下位階層での動きベクトルを順次検出する動き量検出装置において、第1の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成する画像階層化手段と、第1の時点よりも1フレーム分過去の第2の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成すると共に、解像度の高い下位階層の画像データの画素が互いにオーバーラツプするように選択した複数の範囲の画素に対して、それぞれ平均化することにより、解像度が低く、かつ多重化された上位階層の画像データを複数形成する上位階層多重化手段と、画像階層化手段及び上記上位階層多重化手段で階層化された画像データの対応する階層同士で、下位階層については上位階層で求めた動きベクトルを基準にするようにして、上位階層から順に各階層毎に、第1の時点の入力画像の画像データにおける参照ブロツクと、上記第2の時点の入力画像を多重化した各画像データそれぞれにおけるサーチ範囲内の複数の候補ブロツクとの間でそれぞれ評価値を算出し、当該評価値が最も小さい候補ブロツクに基づいて動きベクトルを検出する動きベクトル検出手段とを設けるようにする。
【0014】
また本発明においては、解像度の低い上位階層で検出した動きベクトルに基づいて、解像度の高い下位階層での動きベクトルを順次検出する動き量検出装置において、第1の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成する画像階層化手段と、画像階層化手段により形成された複数階層の画像データそれぞれの高周波成分を表す複数階層のアクテイビテイデータを、算出対象の階層の画像データと、上記入力画像の画像データとの対応する画素の差分の絶対値和で算出する第1のアクテイビテイ階層化手段と、第1の時点よりも1フレーム分過去の第2の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成すると共に、解像度の高い下位階層の画像データの画素が互いにオーバーラツプするように選択した複数の範囲の画素に対して、それぞれ平均化することにより、解像度が低く、かつ多重化された上位階層の画像データを複数形成する上位階層多重化手段と、上位階層多重化ステツプにより形成された複数階層の画像データそれぞれの高周波成分を表す複数階層のアクテイビテイデータを、算出対象の階層の画像データと、上記入力画像の画像データとの対応する画素の差分の絶対値和で算出する第2のアクテイビテイ階層化手段と、画像階層化手段及び上位階層多重化手段で階層化された画像データの対応する階層同士で、第1の時点の入力画像の画像データにおける参照ブロツクと、第2の時点の入力画像を多重化した各画像データそれぞれにおけるサーチ範囲内の複数の候補ブロツクとの間でそれぞれ評価値を求める画像データ評価値算出手段と、第1のアクテイビテイ階層化手段及び第2のアクテイビテイ階層化手段により階層化されたアクテイビテイデータの対応する階層同士で、参照ブロツクのアクテイビテイデータと、複数の候補ブロツクのアクテイビテイデータとの間でそれぞれ評価値を求めるアクテイビテイデータ評価値算出手段と、画像データ評価値算出手段で求めた評価値とアクテイビテイデータ評価値算出手段で求めた評価値とを総合判定して、上位階層から順に各階層毎に動きベクトルを検出する動きベクトル検出手段とを設けるようにした。
【0015】
また本発明においては、上位階層多重化手段1Bは、互いに縦方向及び横方向にオーバーラツプした下位階層の画像データの画素を選択することにより、格子状に配列した多重化した上位階層の画像データの画素を形成するようにする。
【0016】
また本発明においては、上位階層多重化手段1Bは、縦方向及び横方向に対して互いに斜め方向にオーバーラツプした下位階層の画像データの画素を選択することにより、縦方向及び横方向に対して斜め方向に配列した多重化した上位階層の画像データの画素を形成するようにする。
【0017】
また本発明においては、動き量検出装置1又は100は、上位階層多重化手段1Bにより多重化しない上位階層の画像データを形成すると共に、動きベクトル検出手段1C又は100Cにより、画像階層化手段1Aで階層化された画像データS2n 、S3n 及び上位階層多重化手段1Bで階層化された多重化しない画像データについて、階層毎に所定ブロツク単位でブロツクマツチングによつて動きベクトルを検出した後、上位階層多重化手段1Bにより、動きベクトル検出手段1C又は100Cの検出結果に基づいて、動きベクトルの大きな画像データの周辺に多重化した画像データを形成すると共に、動きベクトル検出手段1C又は100Cにより、画像階層化手段1Aで階層化された画像データ2n 、S3n 及び上位階層多重化手段1Bで多重化した画像データS2n-1 、S3n-1 について、階層毎に所定ブロツク単位でブロツクマツチングによつて動きベクトルを検出するようにする。
【0018】
また本発明においては、上位階層多重化手段1Bは、動きベクトル検出手段1C又は100Cにおいてブロツクマツチングを行う注目ブロツク毎に多重化した上位階層の画像データS3n-1 を形成するようにする。
【0019】
さらに本発明においては、動き量検出装置1又は100は、異なる時点の入力画像データS1n 及びS1n-1 のうち現在又は現在に近い時点の入力画像S1n に対して上位階層多重化手段1Bにより多重化した上位階層画像データS2n 、S3n を形成すると共に、当該上位階層多重化手段1Bに入力した入力画像S1n に対して過去の入力画像S1n-1 を画像階層化手段1Aに入力することにより上位階層多重化手段1Bにより多重化した上位階層画像データS2n 、S3n に対して過去の解像度の異なる複数階層の階層画像データS2n-1 、S3n-1 を形成するようにする。
【0020】
【作用】
第1の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成すると共に、第2の時点で入力された入力画像に基づいて、解像度の高い下位階層の画像データから互いにオーバーラツプした画素を選択して縮小することにより解像度が低く、かつ多重化された上位階層の画像データを形成したことにより、入力画像に応じてブロツクマツチングに用いるブロツクの位相が様々に変化した場合でも、上位階層での誤検出を回避し得、階層ブロツクマツチングによる動き量の検出精度を向上し得る。
【0021】
またこれに加えて、第1の時点の入力画像及び第2の時点の入力画像に対応して、画像データの高周波成分を表す複数階層のアクテイビテイデータを形成し、このアクテイビテイデータを用いたブロツクマツチングでの評価値も参照して動きベクトルを検出するようにしたことにより、一段と動き量の検出精度を向上し得る。
【0022】
また第1の処理として、上位階層多重化ステツプにおいて、多重化しない上位階層の画像データを形成し、動きベクトル検出ステツプにおいて、動きベクトルを検出するした後、第2の処理として、上位階層多重化ステツプにおいて、動きベクトル検出ステツプの検出結果に基づいて、動きベクトルの大きな画像データの周辺に多重化した画像データを形成し、動きベクトル検出ステツプにおいて、動きベクトルを検出するようにしたことにより、入力画像に応じてブロツクマツチングに用いるブロツクの位相が様々に変化した場合でも、上位階層での誤検出を回避し得、階層ブロツクマツチングによる動き量の検出精度を向上し得ると共に、計算量を格段に低減することができる。
【0023】
また上位階層多重化ステツプで、動きベクトル検出ステツプにおいてブロツクマツチングを行う注目ブロツク毎に多重化した上位階層の画像データを形成するようにしたことにより、計算量及びメモリ使用量を低減することができる。
【0024】
さらに異なる時点の入力画像データのうち現在又は現在に近い時点の入力画像に対して上位階層多重化ステツプを施すと共に、当該上位階層多重化ステツプを施した入力画像に対して過去の入力画像に対して画像階層化ステツプを施すようにしたことにより、計算量及びメモリ使用量を格段に低減することができる。
【0025】
【実施例】
以下図面について、本発明の一実施例を詳述する。
【0026】
(1)第1実施例
図1において、1は全体として動き量検出装置を示し、階層処理部1Aによつて現フレームの画像データについて解像度の異なる複数の階層データを作成すると共に、階層処理部1Bによつて現フレームに対して1フレーム分過去の画像データについて解像度の異なる複数の階層データを作成する。
【0027】
動き量検出装置1は、階層処理部1A及び1Bで作成した異なる時点の階層データを用いて、動き検出部1Cによつて各階層毎にブロツクマツチングの手法により動き量を求める。このとき動き検出部1Cは上位階層から順に動き量を求め、かつ上位階層で求めた動き量を基準にして下位階層での動き量を求めることにより、少ない演算量で最終的な第1階層の動きベクトルMVを求める。
【0028】
これに加えて動き量検出装置1においては、後述するように上位階層データとして多重化したデータを作成し、この多重化した上位階層データを用いて上位階層での動き量を求めることにより、動きベクトルの検出精度を向上し得るようになされている。
【0029】
実際上動き量検出装置1は、入力端子からコンポーネント信号の輝度信号を第1階層画像データ(オリジナルデータ)S1n として入力し、この第1階層画像データS1n を階層処理部1Aのメモリ2に供給する。
メモリ2の出力信号は第2階層データ作成回路3に供給され、第2階層データ作成回路3は第1階層画像データS1n から第2階層画像データS2n を作成する。例えば、第1階層画像データS1n の2画素×2ラインの小領域の画像データを平均化して第2階層画像データS2n の1画素を作成する。
【0030】
すなわち第2階層データ作成回路3は、図2に示すように、nフレームにおける第1階層画像データS1n の各画素をxn(a,b)とした場合、第2階層画像データS2の各画素yn(a,b)を、次式
【数1】
により算出する。
【0031】
第2階層データ作成回路3は供給されたnフレームデータ全体に亘つて第2階層画像データS2n を作成する。第2階層データ作成回路3の出力信号は、メモリ4に供給される。メモリ4の出力信号は第3階層データ作成回路5に供給され、第3階層データ作成回路5は第2階層画像データS2n から第3階層画像データS3n を作成する。例えば第2階層画像データS2n の2画素×2ラインの小領域の画像データを平均化して第3階層画像データS3n の1画素を作成する。
【0032】
すなわち第3階層データ作成回路5は、図2(B)に示すようなnフレームにおける第2階層画像データS2n の各画素yn(a,b)から、図3(A)に示すような第3階層画像データS3n の各画素zn(a,b)を、次式
【数2】
により算出する。
第3階層データ作成回路5は供給されたnフレームのデータ全体に亘つて第3階層データS3n を作成する。第3階層データ作成回路5の出力信号はメモリ6に供給される。
【0033】
一方、入力画像データでなる第1階層画像データS1n は階層処理部1Bの遅延回路(DL)7にも供給される。遅延回路7は第1階層画像データS1n を1フレーム分蓄える。従つて遅延回路7は現フレームデータに比べて1フレーム過去の第1階層画像データS1n-1 をメモリ8に送出する。
メモリ8から出力される1フレーム過去の第1階層画像データS1n-1 は第2階層データ作成回路9に供給される。第2階層データ作成回路9は上述した第2階層データ作成回路3と同様の構成でなり、供給された1フレーム過去の第1階層画像データS1n-1 から1フレーム過去の第2階層画像データS2n-1 を作成する。例えば図4に示すように、(n−1)フレームにおける第1階層画像データS1n-1 の各画素をxn-1(a,b)とした場合、第2階層画像データS2n-1 の各画素yn-1(a,b)を、次式
【数3】
により算出する。
【0034】
第2階層データ作成回路9は供給された1フレーム分過去の画像データ全体に亘つて第2階層画像データS2n-1 を作成する。第2階層データ作成回路9の出力信号はメモリ10に供給される。メモリ10の出力信号は第3階層データ作成回路11に供給され、第3階層データ作成回路11は前フレームの第2階層画像データS2n-1 から前フレームの第3階層画像データS3n-1 を作成する。
【0035】
すなわち第3階層データ作成回路11は、図4(B)に示すような(n−1)フレームにおける第2階層画像データS2n-1 の各画素をyn-1(a,b)とした場合、図3(B)に示すような(n−1)フレームの第3階層画像データの各画素zn-1(a,b)を、次式
【数4】
により算出する。
【0036】
これに加えて第3階層データ作成回路11は、(4)式で求めた第3階層の画像データzn-1(a,b)に対して位相の異なる第3階層画像データも作成するようになされている。すなわち第3階層データ作成回路11は、図3(B)に示すように、通常の第3階層画像データの各画素に縦方向及び横方向に隣接する画素、例えば画素zn-1(1.5,1)、zn-1(1,1.5)、zn-1(1.5,1.5)を、次式
【数5】
により算出する。
【0037】
すなわち第3階層データ作成回路11は、通常の第3階層画像データ(zn-1 (1、1) 、zn-1 (1、2) 、zn-1 (2、1) 、zn-1 (2、2) 等)を作成する際に用いた第2階層画像データS2n-1 の画素とオバーラツプするような第2階層画像データS2n-1 の画素を選択することにより、通常の第3階層画像データと位相の異なる第3階層画像データ(zn-1(1,1.5)、zn-1(1.5,1)、zn-1(1.5,1.5)等)をも作成する。
【0038】
従つて第3階層データ作成回路11は、供給された前フレームのフレームデータ全体に亘つて通常の第3階層画像データ及びこれと位相の異なる第3階層画像データを作成する。かくして多重化された第3階層画像データS3n-1 が作成される。第3階層データ作成回路11の出力信号はメモリ12に供給される。
【0039】
この実施例の場合、動き量検出部1Cは現フレームのブロツクを固定する(以下これを参照ブロツクと呼ぶ)と共に、前フレームのブロツクを所定のサーチ範囲内で移動させて(以下これを候補ブロツクと呼ぶ)、参照ブロツクと最も似通つた候補ブロツクが検出された位置に基づいて動きベクトルを検出するようになされている。
【0040】
実際上動き検出部1Cは先ず、メモリ6に格納された現フレームの第3階層画像データS3n と、メモリ12に格納された前フレームの多重化された第3階層画像データS3n-1 とを、メモリコントロール回路13により読み出す。このときメモリコントロール回路13からは、今ベクトルを算出しようとするブロツクアドレスがメモリ6に送出され、この結果メモリ6からは第3階層画像データS3n の所定ブロツクが参照ブロツクとして第3階層動き量検出回路14に出力される。
【0041】
一方、メモリコントロール回路13からメモリ12には、メモリ6へのブロツクアドレスに対して所定のサーチ範囲内で位置を移動させたブロツクアドレスが送出され、この結果メモリ12からは与えられたブロツクアドレスに対応する第3階層データS3n-1 が第3階層動き量検出回路14に出力される。
第3階層動き量検出回路14は、ブロツクマツチング法により第3階層における動きベクトルを求める。すなわち第3階層動き量検出回路14は、先ずnフレームと(n−1)フレームの対応するブロツク同志の画素間の絶対値差分を積算し、その積算値をパラメータとして、その積算値が最小となるものを見つけることにより、第3階層における動き量を検出する。
【0042】
換言すれば、第3階層動き量検出回路14は、nフレームと(n−1)フレームにおいて空間的に対応する位置に設定されたM画素×Nラインの大きさのブロツクについて、nフレームにおけるブロツクと、(n−1)フレームにおいてnフレームのブロツクに対して空間的に対応する位置から所定のサーチ範囲だけ位置的にオフセツトをはかせたブロツクとの間でパターンマツチングを行い、最も似通つたブロツクを検出する。
【0043】
このときブロツク内の対応画素間の差分絶対値和を評価値として使用する。具体的には、nフレームの第3階層の各画素レベルをzn(i,j)、(n−1)フレームの第3階層の各画素レベルをzn-1(i,j)、第3階層におけるブロツクサイズを、P画素×Qラインとすると、座標(x,y)における評価値E(x,y)を、次式、
【数6】
により求める。
【0044】
ここで従来の階層構造を利用したブロツクマツチング法においては、オリジナルデータのサーチ範囲を(±16,±16)とした場合、第3階層におけるサーチ領域は(±4 ,±4 )となることにより、オフセツト座標(x,y)を、それぞれ−4から+4まで1ずつ変化させて、評価値を算出し、動き量を決定している。
【0045】
これに対して、この実施例の動き量検出装置1においては、第3階層画像において、従来のブロツクマツチング法のように1画素精度の動き量検出を行うのではなく、 0.5画素精度で動き量を検出するようになされている。すなわち動き量検出装置1においては、オフセツト座標(x,y)を、それぞれ−4から+4まで 0.5ずつ変化させて、評価値を算出し、動き量を決定する。
【0046】
具体的には、例えば第3階層におけるブロツクサイズが2×2であり、nフレームにおけるその要素が、zn(1,1)、zn(2,1)、zn(1,2)、zn(2,2)であつた場合、オフセツト座標(x,y)における評価値を、次式、
【数7】
により求める。なお、zn-1(x,y)のデータは、上述した第3階層データ作成回路11により作成したものを用いる。
これにより動き量検出装置1においては、上位階層での情報量の低下によつて生じる動き量の検出誤差を低減し得るようになされている。
【0047】
ここで例えば図5に示すように、第1階層画像(オリジナル画像)において4画素幅の白黒のストライプ画像があつたとすると、このストライプ画像のエツジが階層ブロツクマツチング法における階層化のブロツク境界と一致している場合、第3階層においては1画素幅の白黒のストライプ画像となり情報は十分残つている。
【0048】
しかしながら図6に示すように、この第1階層画像が1フレーム後に2画素分だけ横に移動した場合、階層化のブロツク境界がストライプの丁度中心にくるため、従来の階層ブロツクマツチング法では第3階層においてストライプが完全に失われたグレーの単色画像となり、この場合には第1階層の情報が完全に失われてしまう。このように従来の階層ブロツクマツチング法における上位階層の動き量検出においては、画像の動きに応じてブロツク化の位相が変化した場合、階層化後の縮退した画像においてその詳細が全く変化してしまい、正確なパターンマツチング、すなわち正確な動き量を算出することが不可能な状態になることがあつた。
【0049】
これに対して実施例の動き量検出装置1においては、下位階層の画像データをオーバーラツプさせて選択して、多重化した上位階層の画像データS3n-1 を作成するようにしたことにより、画像の動きに応じてブロツク化の位相が変化した場合でも、上位階層での情報量の減少を抑制でき、動き量の検出精度を向上し得る。
【0050】
ここで第3階層動き量検出回路14は、図7に示すように構成されている。第3階層動き量検出回路14には、メモリコントロール回路13からのブロツクアドレスに応じてメモリ6から読み出された第3階層画像データS3n が動き量を
求める基準となる参照ブロツクとして入力される。
【0051】
また第3階層動き量検出回路14には、メモリコントロール回路13からのブロツクアドレスに応じてサーチ範囲内で 0.5画素ずつ移動した位置から切り出された第3階層画像データS3n-1 が候補ブロツクとして入力される。
【0052】
例えば第3階層におけるサーチ範囲が(±4 ,±4 )であつた場合、メモリ12からは((4+4)×2+1)×((4+4)×2+1)のブロツクデータが入力される。因に、通常の1画素オフセツト(1画素精度)のサーチでは、(±4 ,±4 )のサーチ範囲では、(4×2+1)×(4×2+1)のブロツクデータが出力される。メモリ6から与えられたブロツクデータはレジスタ31を介して加算器33に与えられると共に、メモリ12から与えられたブロツクデータはレジスタ32を介して加算器33に与えられる。
【0053】
加算器33では、第3階層画像データS3n のブロツクデータと、それに対応する第3階層画像データS3n-1 のブロツクデータとのそれぞれ対応する画素毎の差分が取られる。この画素毎の差分データは絶対値化回路34で絶対値化された後、加算器35及びレジスタ36で累積加算される。このようにして(7)式の演算が実行され、この結果得られる評価値(累積加算値)が評価値メモリ37に入力される。
【0054】
従つて評価値メモリ37には、候補ブロツクを 0.5画素単位で移動させた際の各移動位置に対応する評価値が格納された、所謂評価値テーブルが形成される。評価値メモリ37に格納された各評価値は、評価値メモリコントロール回路38によつて指定されたアドレスに従つて順次読み出され、比較器40及びレジスタ41に与えられる。
【0055】
比較器40は他方の入力と評価値メモリ37より読み出された評価値を順次比較し、このうち入力された評価値が小さいとき、レジスタ41及び42の内容を更新する信号を送出する。このレジスタ42には、評価値メモリ37を読み出すアドレスが順次設定される。このようにして順次評価値メモリ37に格納された評価値が評価され、そのうちの評価値の最小を与えるアドレスがレジスタ42より送出され、これが第3階層の動きベクトルとして第2階層のメモリコントロール回路15に与えられる。
【0056】
メモリコントロール回路15は、図1に示すように、第2階層画像データS2n が格納されているメモリ4から今動き量を検出しようとしている注目ブロツクの画素データを読み出すためのブロツクアドレスを出力する。この結果メモリ4から読み出された画素データが第2階層動き量検出回路16に与えられる。
一方、メモリコントロール回路15は、第2階層画像データS2n-1 が格納されているメモリ10にブロツクアドレスを出力する。このブロツクアドレスは、メモリ10から、メモリ4から読み出される第2階層画像データS2n のブロツクに対応する画像データを、所定のサーチ範囲内で1画素単位のオフセツトをもつて読み出すためのものである。この際、サーチ範囲は第3階層動き量検出回路14で得られた第3階層における動き量を、第2階層のスケールに変換しただけオフセツトをはかせた位置を中心に(±1)とする。
【0057】
第2階層動き量検出回路16は第3階層動き量検出回路14(図7)と同様の構成でなり、メモリ4及び10から供給された対応するブロツク同士の、差分の絶対値の累積加算値を算出し、その最小となるオフセツト量を第2階層における動き量とする。第2階層動き量検出回路16は、この第2階層における動き量と、先に求めた第3階層における動き量を第2階層のスケールに変換したものとを足し合わせ、これを第2階層における動き量としてメモリコントロール回路17に出力する。
【0058】
メモリコントロール回路17は、第1階層画像データS1n が格納されているメモリ2から今動き量を検出しようとしている注目ブロツクの画素データを読み出すためのブロツクアドレスを出力する。この結果メモリ2から読み出された画像データが第1階層動き量検出回路18に与えられる。
一方、メモリコントロール回路17は、第1階層画像データS1n-1 が格納されいるメモリ8にブロツクアドレスを出力する。このブロツクアドレスは、メモリ8から、メモリ2から読み出される第1階層画像データS1n のブロツクに対応する画素データを、所定のサーチ範囲内で1画素単位のオフセツトをもつて読み出すためのものである。この際、サーチ範囲は第2階層動き量検出回路16で得られた第2階層における動き量を、第1階層のスケールに変換しただけオフセツトをはかせた位置を中心に(±1)とする。
【0059】
第1階層動き量検出回路18も第3階層動き量検出回路14(図7)と同様の構成でなり、メモリ2及び8から供給された互いに対応するブロツク同士の、差分の絶対値の累積加算値を算出し、その最小となるオフセツト量を第1階層における動き量とする。第1階層動き量検出回路18は、この第1階層における動き量と、先に求めた第2階層における動き量を第1階層のスケールに変換したものとを足し合わせ、これを第1階層における最終的な動き量とする。
このようにして算出された第1階層における動き量は、検出目的である動き量MVであり、動き量検出装置1はこのように算出された注目ブロツクの動き量を出力端子を介して出力する。
【0060】
以上の構成において、動き量検出装置1は最上位階層である第3階層画像データを求める際、第2階層画像データの複数の画素の平均値をとることにより図8の「◎」印で示すような通常の平均値画素を作成するのに加えて、「◎」印で示す通常の平均値画素を作成する際に用いた第2階層画像データの画素にオーバーラツプする第2階層画像データの画素を選択してこれを平均値化することにより、図8の「○」印で示す平均値画素を作成する。
【0061】
動き量検出装置1は、この「◎」及び「○」印で示す平均値画素を用いて、従来の1画素精度ではなく、より正確な 0.5画素精度で第3階層での動き量を検出する。この結果階層ブロツクマツチング法により生じる階層間での位相の変動を低減し得ることにより、第3階層での動き量の誤検出を低減することができる。これにより最終的な第1階層での動き量の検出精度を格段的に向上し得る。
【0062】
因に、第3階層をこのように多重化した構造とし、 0.5画素精度の動き量を検出すると、第3階層の動き量検出に関しては1画素精度の動き量検出を行つた場合と比して4倍弱の計算量が必要となる。しかしながら、第3階層はブロツクサイズが、第2階層の1/4であるため、第3階層における計算量が増大しても、全体的な計算量はそれほど増大しない。
【0063】
以上の構成によれば、下位の階層画像データから互いにオーバーラツプした画素を選択して平均値をとることにより多重化した上位階層画像データを作成し、、当該上位階層データにおいて1画素精度よりも細かい精度で動き量を検出するようにしたことにより、動き量の検出精度を格段的に向上し得る動き量検出装置1を実現することができる。
【0064】
(2)第2実施例
上述した第1実施例では、第2階層画像データの画素から互いにオーバーラツプした画素を選択して平均値化することにより図8の「◎」印で示す通常の第3階層の画素に加えて、この「◎」印で示す画素の周囲に、縦、横及び斜め方向に隣接する「○」印の画素を作成したが、この第2実施例では、図9に示すように、第2階層画像データの画素から互いにオーバーラツプした画素を選択して平均値化することにより「◎」印で示す通常の第3階層の画素に加えて、この「◎」印で示す画素の斜め方向に隣接する「○」印の画素を作成する。
【0065】
すなわちこの第2実施例では、第1実施例で作成したzn-1(1,1.5)やzn-1(1.5,1)等の画素データは作成せずに、zn-1(1,1)やzn-1(1.5,1.5)等の画素データのみを平均値演算により求める。
第2実施例の動き量検出装置では、このように作成した第3階層画像データS3n-1 を用いて上述した第1実施例と同様の動き量検出を行う。これにより第2実施例の動き量検出装置においては、第3階層における計算量の増大を、通常の階層ブロツクマツチング法と比較して2倍弱に抑えることができる。
【0066】
ところで図6に示すように、例えば第1階層画像データにおいて横方向に2画素の動きが生じた場合は、第3階層における動き量検出において、極端な画像縮退が生じることが多く、正しい動き量を求めることが困難になる場合が多い。
しかしながら、縦方向の動きが無い場合は、縦方向に関しては画像縮退が生じないので、その方向の動き量は正しく求まる場合が多い。また縦方向に2画素の動きが生じた場合も、縦方向に関しては極端な画像縮退が生じることが多く、正しい動き量を求めることが困難になる場合が多いが、この場合も横方向に動きが無い場合は、そちらの方向の動き量は正しく求まることも多い。従つて縦又は横方向のどちらか一方のブロツク位相が大きくずれた場合は、ある程度正しい動き量が求まる場合が多い。
【0067】
これに対して、縦及び横の双方に2画素(±4画素)の動きがあつた場合、縦横の双方で極端な画像縮退が生じることが多いので、誤つた動き量が求まる可能性が高くなる。
これを考慮して第2実施例では、通常の階層ブロツクマツチング方式に加えて、縦横の双方に2画素(±4画素)の動きがある位相の動き量検出のみを行う。
【0068】
すなわち図9について説明すると、サーチ範囲が水平、垂直共に±8であつた場合、通常の階層ブロツクマツチング法の第3階層における動き量検出を行うのは「◎」印の位置だけである。これに対して第2実施例においては、「◎」印の位置に加えて、下位階層の所定の画素データをオーバーラツプして選択することにより、通常の第3階層画像データ(「◎」印)の斜め方向に隣接するような第3階層画像データ(「○」印)も作成し、この2種類の画素のデータに基づいて動き量を検することにより、階層ブロツクマツチング法において情報量の最も失われ易い縦及び横の両方向へのブロツク位相の変化があつた場合でも、上位階層の情報量の低下を低減し得、動き量の検出精度を向上させることができる。
【0069】
以上の構成によれば、下位の階層画像データから互いにオーバーラツプした所定画素を選択して平均値をとることにより、斜め方向に多重化した上位階層画像データを作成し、当該上位階層画像データにおいて1画素精度よりも細かい精度で動き量を検出するようにしたことにより、動き量の検出精度を向上し得ると共に、計算量を低減し得る。
【0070】
(3)第3実施例
上述の第1実施例及び第2実施例では、予め多重化した構造の第3階層画像データS3n-1 を作成して動き量の検出精度を向上させた場合について述べたが、この第3実施例では、先ず第1ステツプとして通常の階層ブロツクマツチングにおける第3階層の動き量検出と全く同じ処理を行う。すなわち図10における「◎」印の画素のみを候補ブロツクの画素として用いて動き量検出を行い、その中で評価値の高いもの、すなわち動きブロツクであると考えられるものを選択する。
【0071】
続いて第2ステツプでは、その候補ベクトルを中心に 0.5画素単位の動き量検出を行う。例えば第1ステツプにおいて検出された動きベクトルが、(-1,1)であつた場合、第2ステツプで動き量を検出するのは、図10における「○」印の位置だけである。これにより第3実施例の動き量検出装置においては、第3階層における計算量の増大を格段的に低減し得るようになされている。
すなわち第3実施例の動き量検出装置においては、第1ステツプにおいて検出された動きベクトル及び第2ステツプでサーチした8つの位置の評価値を比較し、この中で最も評価値の高いものを第3階層における動き量とするようになされている。
【0072】
実際上第3実施例における第3階層の動き量検出は、図11に示すような回路によつて実現される。すなわち図1との対応部分に同一符号を付して示す図11において、この実施例の第3階層動き量検出回路14は、AR1で示す部分で第1ステツプを実行し、AR2で示す部分で第2ステツプを実行することにより第3階層の動き量を検出する。
【0073】
先ずメモリコントロール回路13により、第3階層画像データS3n が格納されているメモリ6にブロツクアドレスが送出されることにより、動き量を求める基準となる参照ブロツクの画素データがメモリ6から読み出される。一方、メモリコントロール回路13により、第3階層画像データS3n-1 が格納されているメモリ12にブロツクアドレスが送出されることにより、メモリ6から読み出される第3階層画像データS3n のブロツクに対応する候補ブロツクの画素データがメモリ12から読み出される。因にこの実施例の場合、メモリ12から読み出される第3階層画像データS3n-1 は、第1実施例のように多重化された第3階層画像データではなく、通常の第3階層画像データである。
【0074】
メモリ6からの出力信号はレジスタ51を介して加算器53に供給されると共に、メモリ12からの出力信号はレジスタ52を介して加算器53に供給される。加算器53では、nフレームの第3階層画像データと、それに対応する(n−1)フレームの第3階層画像データとのそれぞれ対応する画素毎の差分が取られる。この画素毎の差分データは絶対値化回路54で絶対値された後、加算器55及びレジスタ56で累積加算される。このようにして(6)式の演算が実行され、この結果得られる評価値が評価値メモリ57に入力される。
評価値メモリ57に格納された評価値は、評価値メモリコントロール回路58によつて指定されたアドレスに従つて読み出され、比較器60及びレジスタ61に入力される。
【0075】
比較器60は他方の入力と評価値メモリ57より読み出された評価値を順次比較し、このうち入力された評価値が小さいとき、レジスタ61及び62の内容を更新する信号を送出する。
このレジスタ62には、評価値メモリ57を読み出すアドレスが順次設定される。このようにして順次評価値メモリ57に格納された評価値が評価され、そのうちの評価値の最小を与えるアドレスがレジスタ62より送出され、これが動きベクトルとしてメモリコントロール回路63に送出される。このようにして第1ステツプの処理を実行する。
【0076】
第1ステツプが終了すると、メモリコントロール回路63から、メモリ10にアドレス信号が送出される。これは第1ステツプで求めたベクトル周辺の 0.5画素精度の動き検出を行うためのもので、メモリ10はアドレス信号に基づいた第2階層データを第3階層データ作成回路64に供給する。
【0077】
第3階層データ作成回路64は基本的には、図1について上述した第3階層データ作成回路11と同様な働きをするものであり、第2階層データから多重化した第3階層データを作成する。第3階層データ作成回路64は例えば(5)式に示すような演算を施すことにより第3階層データを作成し、これを一旦メモリ65に格納する。但しzn-1(1,1)等のデータについては既に第3階層データ作成回路11において作成済みであり、またこれ以降使用しないので、ここでは作成しない。一方、メモリ6の出力信号、すなわち現フレームの注目ブロツクの第3階層データは遅延回路(DL)66及びレジスタ67を介して加算器69に供給される。またメモリ65からの出力信号はレジスタ68を介して加算器69に供給される。
【0078】
加算器69では、nフレームの第3階層画像データと、それに対応する(n−1)フレームの第3階層画像データとのそれぞれ対応する画素毎の差分が取られる。この画素毎の差分データは絶対値化回路70で絶対値された後、加算器71及びレジスタ72で累積加算される。このようにして(7)式の演算が実行され、この結果得られる評価値が評価値メモリ73に入力される。
評価値メモリ73は、 0.5画素のオフセツトを持たせた各ブロツク毎の差分の絶対値の累積加算値である評価値が格納されている。評価値メモリ73に格納された評価値は、評価値メモリコントロール回路74によつて指定されたアドレスに従つて読み出され、比較器75及びレジスタ76に入力される。
【0079】
比較器75は他方の入力と評価値メモリ73より読み出された評価値を順次比較し、このうち入力された評価値が小さいとき、レジスタ76及び77の内容を更新する信号を送出する。
レジスタ77には、評価値メモリ73を読み出すアドレスが順次設定される。このようにして順次評価値メモリ73に格納された評価値が評価され、そのうちの評価値の最小を与えるアドレスがレジスタ77より送出され、これが第3階層の動きベクトルとして第2階層の動き量検出用のメモリコントロール回路15に送出され、これにより第2ステツプの処理を終了する。
第3実施例の動き量検出装置は、これ以降第1実施例と同様の処理を施すことにより最終的な第1階層画像の動き量を検出する。
【0080】
以上の構成によれば、第1ステツプにより通常の第3階層の動き量検出を行い、この検出結果に基づいて動き量が大きいと思われる画素の周辺について第2ステツプにより、その周囲で多重化した上位階層データを作成し、当該上位階層データにおいて1画素精度よりも細かい精度で動き量を検出するようにしたことにより、動き量の検出精度を向上し得ると共に計算量を有効に低減し得る。
【0081】
(4)第4実施例
上述の第1〜第3の実施例では、現フレームデータを参照ブロツクとして、多重化して作成した過去のフレームデータをサーチ範囲だけ移動させることにより動き量を求める場合について述べたが、この第4実施例では、参照ブロツクとなる現フレームデータを多重化する。
これに加えて第4実施例においては、予め1フレーム分の階層画像を全て作成するのではなく、注目するブロツク毎に階層画像を作成するようになされている。これにより第4実施例の動き量検出装置においては、全体の計算量及びメモリの使用量を低く抑えた状態で、動き量の検出精度を向上し得るようになされている。
【0082】
すなわち第4実施例の動き量検出装置においては、図1に示す第2階層データ作成回路3で、現フレームデータのうち、現在注目するブロツクの周辺のデータのみの第2階層データを作成する。具体的には、動き量を求めようとする第1階層のブロツクサイズが8×8のとき、第2階層のブロツクサイズは4×4となるが、さらに上下左右1画素ずつ膨らませた6×6のデータを作成する。すなわち、周辺の他のブロツクのデータをも多少使用する。
【0083】
第2階層データ作成回路3の出力信号はメモリ4に供給され、メモリ4の出力信号は第3階層データ作成回路5に供給される。ここで第3階層データ作成回路5は供給された第2階層画像データから、第3階層画像データを作成する。具体的には、第2階層画像データの2×2の小領域の画像データから平均値を算出することにより、第3階層画像データの1画素を作成する。
【0084】
第3階層データ作成回路5は、現フレームのうち、現在注目のブロツクの周辺のデータのみの第3階層データを作成する。具体的には、動きブロツクを求めようとするブロツクのサイズが8×8のとき、第3階層のブロツクサイズは、2×2となるが、第2階層データ作成回路3から供給された6×6の第2階層データを基に、2×2から上下左右1画素ずつ膨らませた4×4のデータを作成する。すなわち周辺のデータをも多少使用することにより多重化した現フレームの第3階層画像データを作成する。
例えば第3階層データ作成回路5は、(2)式で示されるような通常の第3階層画像データだけでなく、データの位相をずらして、(2)式で作成した画像データの中間に位置するデータをも作成するようになされている。
【0085】
またこの実施例の場合、第2階層データ作成回路9では、現在注目のブロツクを所定のサーチ範囲だけ移動させた範囲内のデータに関して第2階層データを作成する。さらに第3階層データ作成回路11では、多重化した第3階層画像データを作成せずに、通常の第3階層画像データを作成する。
従つて第4実施例の第3階層動き量検出回路14では、オフセツト座標(x,y)における評価値を、次式、
【数8】
により求める。
【0086】
階層データ格納用のメモリを削減するためには、1フレーム分の階層データを予め作成する手法を用いることは出来ない。従つて、メモリ使用量の削減という点に関しては注目ブロツクの周辺のデータを毎回作成し直す方式が有利である。ところが、階層データを多重化し、1画素以下の動き量を検出する場合、現在のフレームデータを参照データとし、過去のフレームデータをサーチ範囲だけ移動させる方式では、過去のフレームデータを多重化する際の計算量が増大する。特にサーチ範囲が大きくなればなるほど、計算量が増大することになる。
【0087】
これを考慮して、第4実施例においては、注目するブロツク毎に階層データを作成すると共に、参照ブロツクとなる現在のフレームデータを多重化するようになされている。これにより第4実施例においては、階層データを作成する際の計算量を格段に低減し得ると共に、メモリの使用量を格段に低減し得る。
【0088】
以上の構成によれば、注目するブロツク毎に階層データを作成すると共に、参照ブロツクとなる現フレームデータについて多重化した上位階層データを作成し、当該上位階層データにおいて1画素精度よりも細かい精度で動き量を検出するようにしたことにより、動き量の検出精度を向上し得ると共に、計算量及びメモリ使用量を低減することができる。
【0089】
(5)第5実施例
この第5実施例の動き量検出方法では、第1実施例のようにオーバーラツプした下位階層データから多重化した上位階層データを作成し、この多重化した上位階層データを用いて動き量を求めるのに加えて、画像の高周波成分を反映したアクテイビテイ情報をも階層化し、このアクテイビテイ情報における評価値をも参照することにより、一段と高精度の動き量を検出するようになされている。
【0090】
すなわちこの第5実施例の動き量検出方法では、オリジナル画像について平均値階層化の手法によつて複数階層の画像データを形成すると共に、各階層の高周波成分(以下アクテイビテイと呼ぶ)を表すデータについても階層化(以下これをアクテイビテイ階層化とよぶ)してアクテイビテイデータを形成し、階層毎にこれらを用いて動き量を検出する。
【0091】
実際上それぞれ階層化された画像データとアクテイビテイデータについては、上位階層から順にブロツクマツチング法で評価値を求め、これらを総合判定することにより、その階層の動き量を求める。この動き量を順次下位階層の評価値を求める際に動き補償して参照することにより、最終的にオリジナル画像の動き量を検出する。
【0092】
階層化された画像データを生成する例を、図12に示す。図12(A)はオリジナル画像について3階層に階層化された画像データを生成する場合で、第1階層はオリジナル画像である。オリジナル画像上のブロツク(例えば16×16)より上位階層の画像データ、第n階層における画像データをMn (x、y)とすると、次式
【数9】
のように平均値化によつて求めることができ、ブロツクサイズは水平及び垂直方向にそれぞれ1/2になる。またこのように平均値階層化された第1階層の画像データから第2階層の画像データを生成するときも、(9)式により同様に求めることができる。
【0093】
第1〜4実施例の階層画像を用いた動き量検出方法では、図12(A)の平均値階層化しか行わないが、この実施例では(9)式により平均値階層化された画像データを生成すると同時に、図12(B)に示すように、平均値階層化された画像データについてアクテイビテイ階層化してアクテイビテイデータを生成する。第2階層のアクテイビテイデータをΔ2 (x、y)とすると、このアクテイビテイデータΔ2 (x、y)は、平均値階層化された画像データからオリジナル画像の対応する画素の差分の絶対値和によつて、次式
【数10】
で求め、同様に第3階層のアクテイビテイデータΔ3 (x、y)は、次式
【数11】
で求める。アクテイビテイデータとして、全てオリジナル画像を基底にして求めるようにしたことにより、オリジナル画像に忠実な高周波成分を抽出し得るようになされている。
【0094】
このようにしてアクテイビテイデータを求めると、その階層構造は図12(B)に示すようになり、最下位階層以外での階層プレーンを持つことになる。このアクテイビテイデータは、平均値階層化したときに画像データ中で欠落する特徴量を反映していることになる。
【0095】
ここで例えば図13に示すようなオリジナル画像中の画像データの4×4の画素x1、x2、……、x15、x16でなるブロツクを第1階層として階層化する場合、平均値階層化の第2階層の画像データ中の画素y1、y2、y3、y4は(9)式に基づいて、次式
【数12】
によつて求め、さらにこの階層2の2×2の画素を用いて、平均値階層化した第3階層の画像データ中の画素z1も(9)式に基づいて、次式
【数13】
により求める。
【0096】
また同様にして、アクテイビテイ階層化してなる階層2のアクテイビテイデータは、平均値階層化された第2階層の画像データの画素y1、y2、y3、y4と第1階層の画像データの画素x1、x2、……、x15、x16を用いて、(10)式に基づいて、次式
【数14】
により求め、さらにアクテイビテイ階層化してなる第3階層のアクテイビテイデータは、平均値階層化された第3階層の画像データの画素z1と第1階層の画像データの画素x1、x2、……、x15、x16を用いて、(11)式に基づいて、次式
【数15】
により求める。
【0097】
上述のようにして求めた平均値階層化した画像データとアクテイビテイ階層化したアクテイビテイデータを用いて、各階層でブロツクマツチング法による動き量検出を行う。すなわちブロツクマツチングの評価関数は、現フイールドをtで表すと、次式
【数16】
で表される。ただし(un 、vn )は、第n階層での動き量を示す。この評価関数E(Y)n の最小を与えるV′n =(un 、vn )を求める動き量とする。現在の階層における動き量Vn は、次式
【数17】
という関係から、最終的な動き量を求めることができる。
【0098】
この実施例の場合の評価関数とは、図12(B)のアクテイビテイデータについても(16)式と同様に、次式
【数18】
となる評価を行い、新たな評価関数E(G)n を、次式
【数19】
とする。ただしw1 、w2 は重み係数である。そして評価関数E(G)n の最小を与える動き量を求める。なお最下位階層ではアクテイビテイデータが存在しないため、(16)式の評価関数E(Y)n のみによる評価を行う。
【0099】
このように平均値階層化された画像データとアクテイビテイ階層化されたアクテイビテイデータの両者を用いて評価することにより、一方の階層の最適評価値が誤検出であつても、もう一方の評価値で正しい検出ができるようになり、各階層における動き量検出の精度が向上する。このように各階層における動き量検出精度が向上すると、(17)式で求める最終的な動き量も検出精度を向上することになる。
【0100】
ここでこの実施例における動き量検出処理手順SP0を図14に示す。すなわちまずステツプSP1において、比較する2画面のオリジナル画像をブロツク化し、次のステツプSP2でブロツク化されたオリジナル画像を、(9)式に従つて平均値階層化すると共に、(10)式及び(11)式に従つてアクテイビテイ階層化して、例えば第1階層、第2階層及び第3階層の画像データと第2階層及び第3階層のアクテイビテイデータを生成する。
【0101】
続くステツプSP3では現在処理済みの階層が最下位階層か否か判断し、否定結果の場合にはステツプSP4で全サーチ領域について探索終了か否か判断し、ここで否定結果を得るとステツプSP5で画像データ及びアクテイビテイデータの現在及び過去のデータを用いて、(16)式及び(18)式について上述した評価関数E(Y)n 及びE(D)n による評価を行い、ステツプSP4に戻る。
【0102】
やがてステツプSP4で肯定結果を得ると、ステツプSP6に移つて所定階層の画像データ及びアクテイビテイデータについて求めた評価関数E(Y)n 及びE(D)n を用いて(19)式より得られる新たな評価関数E(G)n による評価を行つて最適評価値を求めステツプSP7に移る。ステツプSP7では最適評価値より動き量を決定し、次のステツプSP8で動き量を加算して、それぞれ下位階層に適用し、ステツプSP3に戻る。やがてこのステツプSP3で否定結果を得ると、ステツプSP9に移つて当該動き量検出方法の処理手順SP0を終了する。
【0103】
このようにサーチ領域内の探索を、最上位階層から始め平均値階層化された画像データとアクテイビテイ階層化されたアクテイビテイデータの評価値を(19)式により総合判定しながら最適な動き量を求め、(17)式によつて求めた動き量を下位階層に適用しながら最下位階層まで処理を繰り返し行い、最終的な動き量を求める。これにより平均値階層化の画像データのみより求めた動き量に比較して、各階層の高周波成分でなるアクテイビテイデータより求めた評価値を加味して動き量を求めるようにしたことにより、平均値化による誤判定を有効に防止して高い精度で動きを検出し得る。
【0104】
ここで、この実施例の動き量検出方法を用いる動き量検出装置は、図15に示すように構成されている。なお図15では、図1との対応部分に同一符号を付して示している。また図15における平均値階層化回路3、5、9及び11は、それぞれ図1の第2階層データ作成回路3、第3階層データ作成回路5、第2階層データ作成回路9及び第3階層データ作成回路11と同様の構成及び機能を有する。
【0105】
動き量検出装置100は、階層処理部1A及び1Bに加えて、階層化したアクテイビテイデータを生成するアクテイビテイ階層処理部100A及び100Bを有する。動き量検出装置100はアクテイビテイ階層処理部100Aで現フレームの階層アクテイビテイデータを生成すると共に、アクテイビテイ階層処理部100Bで前フレームの階層アクテイビテイデータを生成する。
【0106】
アクテイビテイ階層処理部100Aのアクテイビテイ階層化回路101は、第1階層画像データS1n 及び平均値階層化回路3からの第2階層画像データS2n を用いて、(10)式の演算によるアクテイビテイ階層化処理を実行して第2階層のアクテイビテイデータP2n を求める。このアクテイビテイデータP2n はメモリ102に格納される。
【0107】
アクテイビテイ階層化回路103は、第1階層画像データS1n 及び平均値階層化回路5からの第3階層画像データS3n を用いて、(11)式の演算によるアクテイビテイ階層化処理を実行して第3階層のアクテイビテイデータP3n を求める。このアクテイビテイデータP3n はメモリ104に格納される。
【0108】
同様に、前フレームの階層アクテイビテイデータを生成するアクテイビテイ階層処理部100Bでは、アクテイビテイ階層化回路105に前フレームの第1階層画像データS1n-1 及び平均値階層化回路9からの第2階層画像データS2n-1 を受ける。アクテイビテイ階層化回路105は、第1階層画像データS1n-1 及び第2階層画像データS2n-1 を用いて、(10)式に基づいて第2階層アクテイビテイデータP2n-1 を求める。このアクテイビテイデータP2n-1 はメモリ106に格納される。
【0109】
アクテイビテイ階層化回路107は、第1階層画像データS1n-1 及び平均値階層化回路11からの多重化された第3階層画像データS3n-1 を用いて、(11)式に基づいて多重化された第3階層アクテイビテイデータP3n-1 を求める。この多重化されたアクテイビテイデータP3n-1 はメモリ108に格納される。多重化された第3階層アクテイビテイデータP3n-1 は、図3(B)に示す多重化された第3階層画像データS3n-1 と対応して、図16(B)のように表すことができる。
このように各メモリに格納された階層画像データ及び階層アクテイビテイデータは、動き検出部100Cによつて各階層の所定ブロツク毎に読み出され、上位階層から順に動き量が求められる。
【0110】
実際の動き量の検出は最上位階層でなる第3階層において、まずメモリ12に格納された前フレームの画像データ及びメモリ108に格納された前フレームのアクテイビテイデータが候補ブロツクとして、サーチ内で読み出され、第3階層動き量検出回路110に与えられる。またメモリ6に格納された現フレームの画像データ及びメモリ104に格納された現フレームのアクテイビテイデータが参照ブロツクとして読み出され、第3階層動き量検出回路110に与えられる。
【0111】
このような第3階層の画像データ及びアクテイビテイデータの読み出しはメモリコントロール回路109からのブロツクアドレスに基づいて行われる。メモリコントロール回路109は、メモリ12及び108に対してはサーチ範囲内で候補ブロツクを 0.5画素単位で読み出すようなブロツクアドレスを送出する。なお同時点にメモリコントロール回路109により読み出されるブロツク位置は、メモリ6とメモリ104で同一位置であり、かつメモリ12とメモリ108で同一位置である。
【0112】
第3階層動き量検出回路110は、入力した画像データ及びアクテイビテイデータを用いて、それぞれ(16)式及び(18)式の評価関数E(Y)3 及びE(D)3 に基づいて評価値を求める。次にこの評価値に対して、(19)式に示すように、重み係数w1 、w2 に応じて所定の重み付けして加算し、この結果得られる新たな評価関数E(G)3 に基づいて動き量を検出する。
【0113】
実際上第3階層動き量検出回路110及び第2階層動き量検出回路112は、図17に示すように構成されている。ここで第2階層動き量検出回路112は第3階層動き量検出回路110と同様の構成でなるため第3階層動き量検出回路110について説明する。
第3階層動き量検出回路110は、メモリ6及び12からの第3階層画像データS3n 及びS3n-1 をそれぞれ画像データ評価値算出部150のレジスタ31及び32に入力する。この画像データ評価値算出部150は第1実施例で上述したのと同様の累積加算処理を実行し、レジスタ36から平均値画像データについての評価値を出力する。かくして(16)式の演算が画像データ評価値算出部150で実行される。
【0114】
また第3階層動き量検出回路110は、メモリ104及び108からの第3階層アクテイビテイデータP3n 及びP3n-1 をそれぞれアクテイビテイデータ評価値算出部151のレジスタ131及び132に入力する。このアクテイビテイデータ評価値算出部151は、アクテイビテイデータP3n 及びP3n-1 に対して、画像データ評価値算出部150が画像データS3n 及びS3n-1 に対して行つたのと同様の累積加算処理を実行し、レジスタ136からアクテイビテイデータについての評価値を出力する。かくして(18)式の演算がアクテイビテイデータ評価値算出部151で実行される。
【0115】
画像データ評価値算出部150から出力された平均値画像データについての評価値は続く乗算回路152において重み係数w1 が乗じられた後加算回路154に与えられると共に、アクテイビテイデータ評価値算出部151から出力されたアクテイビテイデータについての評価値は続く乗算回路153において重み係数w2 が乗じられた後加算回路154に与えられる。この結果加算回路154では、(19)式に基づく加算演算が実行され、当該加算演算結果が新たな評価値として評価値メモリ37に与えられる。
【0116】
ここで評価値メモリ37、評価値メモリコントロール回路38、比較回路40及びレジスタ41、42は図7について第1実施例で上述したものと同様の構成でなり、最終的にレジスタ42から、アクテイビテイデータの評価値をも加味した新たな評価値の最小を与えるアドレスが出力される。このアドレスが第3階層の動きベクトルとして第2階層のメモリコントロール回路111に与えられる。
【0117】
メモリコントロール回路111は、サーチ範囲が第3階層における動き量を第2階層のスケールに変換しただけオフセツトをはかせた位置を中心に(±1)になるようなブロツクアドレスをメモリ10、106に送出する。このブロツクアドレスに基づいてメモリ10、106から読み出される第2階層画像データS2n-1 及び第2階層アクテイビテイデータP2n-1 は第2階層動き量検出回路112に送出される。
【0118】
第2階層動き量検出回路112は第3階層動き量検出回路110と同様に、画像データの評価値にアクテイビテイデータの評価値を加味した新しい評価値に基づいて第2階層の動きベクトルを検出し、当該検出結果を第1階層のメモリコントロール回路113に送出する。但し、この第2階層の動き量検出では、第3階層のように多重化した画像データ及びアクテイビテイデータがないため、 0.5画素単位ではなく、1画素単位でブロツクマツチングを行う。
【0119】
メモリコントロール回路113は、サーチ範囲が第2階層における動き量を第1階層のスケールに変換しただけオフセツトをはかせた位置を中心に(±1)になるようなブロツクアドレスをメモリ8に送出する。このブロツクアドレスに基づいてメモリ8から読み出される第1階層画像データS1n-1 は第1階層動き量検出回路114に送出される。
【0120】
第1階層動き量検出回路114は、図7について第1実施例で上述した動き量検出回路14と同様の構成でなり、画像データの評価値のみを用いて動き量を検出する。第1階層動き量検出回路114は、この第1階層における動き量と、先に求めた第2階層における動き量を第1階層のスケールに変換したものとを足し合わせ、これを第1階層における最終的な動き量MVとして出力端子を介して出力する。
【0121】
以上の構成において、第5実施例の動き量検出装置100は、平均値演算による階層画像データS2n 、S2n-1 、S3n 、S3n-1 に加えて、画像の過渡成分を反映した階層アクテイビテイデータP2n 、P2n-1 、P3n 、P3n-1 を生成する。さらに最上位階層である第3階層の画像データS3n-1 及びアクテイビテイデータP3n-1 は多重化したデータを生成する。
【0122】
動き量検出装置100は、第3階層において、多重化した画像データS3n-1 及びアクテイビテイデータP3n-1 から候補ブロツクを切り出し、かつ画像データS3n 及びアクテイビテイデータP3n から参照ブロツクを切り出して、ブロツクマツチングによつて総合判定することにより、この階層での動き量を求める。これにより平均値階層画像のみを用いる場合に比して、格段に検出精度を向上させることができる。
【0123】
動き量検出装置100は、第2階層において、画像データS2n-1 及びアクテイビテイデータP2n-1 から候補ブロツクを第3階層での動き量の分動き補償して切り出し、かつ画像データS2n 及びアクテイビテイデータP2n から参照ブロツクを切り出して、ブロツクマツチングによつて総合判定してこの階層の動き量を求める。この結果第2階層での動き量の検出精度も向上させることができる。動き量検出装置100は、最後に第2階層での動き分動き補償して第1階層の動き量を求め、これを最終的な動き量MVとして出力する。
【0124】
以上の構成によれば、多重化した最上位階層データS3n-1 を生成するのに加えて、階層化したアクテイビテイデータP2n 、P2n-1 、P3n 、P3n-1 を生成し、各階層において階層画像データ及び階層アクテイビテイデータをブロツクマツチングによつて総合判定して動き量を求めるようにしたことにより、最終的なオリジナル画像についての動き量の検出精度を一段と向上し得る。
【0125】
(6)他の実施例
(6−1)なお上述の実施例においては、オリジナル画像より平均値階層化で3階層の画像データを作成した場合について述べたが、階層数はこれに限らず2階層や4階層以上でも、上述の実施例と同様の効果を得ることができる。また平均値階層化する際、下位階層の2×2のブロツクの平均値をとることにより上位階層の1ブロツクを生成する場合について述べたが、ブロツク範囲はこれに限らず、また平均値に限らず例えばローパスフイルタ等で平滑化処理することにより上位階層データを生成するようにしても良い。
【0126】
(6−2)また上述の実施例においては、ブロツクマツチングの評価値を求めるために、(6)式又は(16)式でなる評価関数によつて、両ブロツクの差分の絶対値和を用いた場合について述べたが、その他ブロツクマツチングの評価関数としては、差分の2乗和や相関係数等を用いるようにしても上述の実施例と同様の効果を得ることができる。
【0127】
(6−3)また上述の実施例においては、多重化した上位階層データを作成することにより、上位階層において 0.5画素単位の動き量検出を行う場合について述べたが、 0.5画素単位の動き量検出に限らず、例えば0.25画素単位の動き量検出等、更に細かい単位で動き量検出をする場合にも適用することができる。
また上位階層を多重化するために用いる下位階層データの選択は、上述の実施例の場合に限らず、要は下位階層データをオーバーラツプするように選択することにより多重化した上位階層データを作成するようにすれば良い。
【0128】
(6−4)また上述の実施例においては、第3階層画像データS3n-1 のみを多重化する場合について述べたが、本発明はこれに限らず、第1階層の画像データをオーバーラツプして選択することにより第2階層画像データも多重化するようにしても良い。
【0129】
(6−5)また上述の第5実施例においては、平均値階層化回路11によつて第1実施例のように通常の第3階層の画素に対して縦方向、横方向及び斜め方向に隣接する多重化した画素を作成する場合について述べたが、本発明はこれに限らず、第2実施例のように斜め方向にのみ多重化した画素を作成するようにしても良い。
【0130】
また第5実施例において、第3実施例のような2段階の処理を導入するようにしても良い。このようにすれば、第5実施例における計算量を有効に低減することができる。
さらに第5実施例において、第4実施例のように、参照ブロツクとなる現フレームを多重化すると共に、注目するブロツク毎に階層画像を作成するような方法を導入するようにしても良い。このようにすれば、第5実施例における計算量及びメモリ使用量を低減することができる。
【0131】
(6−6)また上述の第5実施例においては、アクテイビテイ階層化する際に差分の絶対値和の平均値を用いた場合について述べたが、標準偏差や分散値を用いてアクテイビテイ階層化するようにしても良い。さらにラプラシアンフイルタを前処理に用いて画像の高周波成分を抽出した後に、アクテイビテイ階層化するようにしても良い。さらにオリジナル画像の最大値と最小値の差で定義されるダイナミツクレンジを用いて、アクテイビテイ階層化するようにしても良い。
【0132】
【発明の効果】
上述のように本発明によれば、第1の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成すると共に、第2の時点で入力された入力画像に基づいて、解像度の高い下位階層の画像データから互いにオーバーラツプした画素を選択して縮小することにより解像度の低い多重化された上位階層の画像データを形成し、階層化された画像データ及び多重化して階層化された画像データについて、階層毎に所定ブロツク単位でブロツクマツチングによつて動きベクトルを検出したことにより、入力画像に応じてブロツクマツチングに用いるブロツクの位相が様々に変化した場合でも、上位階層での誤検出を回避し得、階層ブロツクマツチングによる動き量の検出精度の向上し得る動き量検出装置を実現できる。
【0133】
また本発明によれば、これに加えて、第1の時点の入力画像及び第2の時点の入力画像に対応して、画像データの高周波成分を表す複数階層のアクテイビテイデータを形成し、このアクテイビテイデータを用いたブロツクマツチングでの評価値も参照して動きベクトルを検出するようにしたことにより、一段と動き量の検出精度を向上し得る。
【図面の簡単な説明】
【図1】本発明による動き量検出装置の一実施例の回路構成を示すブロツク図である。
【図2】nフレームの第2階層画像データ作成の説明に供する略線図である。
【図3】nフレームと(n−1)フレームの第3階層画像データの説明に供する略線図である。
【図4】(n−1)フレームの第2階層画像データ作成の説明に供する略線図である。
【図5】エツジと階層化のブロツク境界が一致している場合の説明に供する略線図である。
【図6】エツジと階層化のブロツク境界が一致してしない場合の説明に供する略線図である。
【図7】動き量検出回路の回路構成を示すブロツクである。
【図8】第1実施例の第3階層画像データの説明に供する略線図である。
【図9】第2実施例の第3階層画像データの説明に供する略線図である。
【図10】第3実施例の第3階層画像データの説明に供する略線図である。
【図11】第3実施例の回路構成を示すブロツク図である。
【図12】第5実施例による階層画像の説明に供する略線図である。
【図13】第5実施例による階層画像の説明に供する略線図である。
【図14】第5実施例による動き量検出処理手順を示すフローチヤートである。
【図15】第5実施例による動き量検出装置の構成を示すブロツク図である。
【図16】nフレームと(n−1)フレームの第3階層アクテイビテイデータの説明に供する略線図である。
【図17】第5実施例の動き量検出装置における動き量検出回路の構成を示すブロツク図である。
【符号の説明】
1、100……動き量検出装置、1A、1B……階層処理部、1C、100C……動き検出部、3、9……第2階層データ作成回路、5、11……第3階層データ作成回路、14、110……第3階層動き量検出回路、16、112……第2階層動き量検出回路、18、114……第1階層動き量検出回路、100A、100B……アクテイビテイ階層処理部、150……画像データ評価値算出部、151……アクテイビテイデータ評価値算出部、S1n 、S1n-1 ……第1階層画像データ、S2n 、S2n-1 ……第2階層画像データ、S3n 、S3n-1 ……第3階層画像データ、P2n 、P2n-1 ……第2階層アクテイビテイデータ、P3n 、P3n-1 ……第3階層アクテイビテイデータ。
Claims (14)
- 解像度の低い上位階層で検出した動きベクトルに基づいて、解像度の高い下位階層での動きベクトルを順次検出する動き量検出方法において、
第1の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成する画像階層化ステツプと、
上記第1の時点よりも1フレーム分過去の第2の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成すると共に、解像度の高い下位階層の画像データの画素が互いにオーバーラツプするように選択した複数の範囲の画素に対して、それぞれ平均化することにより、解像度が低く、かつ多重化された上位階層の画像データを複数形成する上位階層多重化ステツプと、
上記画像階層化ステツプ及び上記上位階層多重化ステツプで階層化された画像データの対応する階層同士で、下位階層については上位階層で求めた動きベクトルを基準にするようにして、上位階層から順に各階層毎に、上記第1の時点の入力画像の画像データにおける参照ブロツクと、上記第2の時点の入力画像を多重化した各画像データそれぞれにおけるサーチ範囲内の複数の候補ブロツクとの間で、多重化されたブロツク群の中からオフセットに対応するブロツクを選択してそれぞれ評価値を算出し、当該評価値が最も小さい候補ブロツクに基づいて動きベクトルを検出する動きベクトル検出ステツプと
を具えることを特徴とする動き量検出方法。 - 解像度の低い上位階層で検出した動きベクトルに基づいて、解像度の高い下位階層での動きベクトルを順次検出する動き量検出装置方法において、
第1の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成する画像階層化ステツプと、
上記画像階層化ステツプで形成された複数階層の画像データそれぞれの高周波成分を表す複数階層のアクテイビテイデータを、算出対象の階層の画像データと、上記入力画像の画像データとの対応する画素の差分の絶対値和で算出する第1のアクテイビテイ階層化ステツプと、
上記第1の時点よりも1フレーム分過去の第2の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成すると共に、解像度の高い下位階層の画像データの画素が互いにオーバーラツプするように選択した複数の範囲の画素に対して、それぞれ平均化することにより、解像度が低く、かつ多重化された上位階層の画像データを複数形成する上位階層多重化ステツプと、
上記上位階層多重化ステツプで形成された複数階層の画像データそれぞれの高周波成分を表す複数階層のアクテイビテイデータを、算出対象の階層の画像データと、上記入力画像の画像データとの対応する画素の差分の絶対値和で算出する第2のアクテイビテイ階層化ステツプと、
上記画像階層化ステツプ及び上記上位階層多重化ステツプで階層化された画像データの対応する階層同士で、上記第1の時点の入力画像の画像データにおける参照ブロツクと、上記第2の時点の入力画像を多重化した各画像データそれぞれにおけるサーチ範囲内の複数の候補ブロツクとの間で、多重化されたブロツク群の中からオフセットに対応するブロックを選択してそれぞれ評価値を求める画像データ評価値算出ステツプと、
上記第1のアクテイビテイ階層化ステツプ及び上記第2のアクテイビテイ階層化ステツプで階層化されたアクテイビテイデータの対応する階層同士で、上記参照ブロツクのアクテイビテイデータと、上記複数の候補ブロツクのアクテイビテイデータとの間で、多重化されたブロツク群の中からオフセットに対応するブロックを選択してそれぞれ評価値を求めるアクテイビテイデータ評価値算出ステツプと、
上記画像データ評価値算出ステツプで求めた評価値と上記アクテイビテイデータ評価値算出ステツプで求めた評価値とを総合判定して、上位階層から順に各階層毎に動きベクトルを検出する動きベクトル検出ステツプと
を具えることを特徴とする動き量検出方法。 - 上記上位階層多重化ステツプでは、互いに縦方向及び横方向にオーバーラツプした上記下位階層の画像データの画素を選択することにより、格子状に配列した多重化した上位階層の画像データの画素を形成する
ことを特徴とする請求項1又は請求項2に記載の動き量検出方法。 - 上記上位階層多重化ステツプでは、縦方向及び横方向に対して互いに斜め方向にオーバーラツプした上記下位階層の画像データの画素を選択することにより、縦方向及び横方向に対して斜め方向に配列した上記多重化した上位階層の画像データの画素を形成する
ことを特徴とする請求項1又は請求項2に記載の動き量検出方法。 - 上記動き量検出方法は、
第1の処理として、
上記上位階層多重化ステツプにおいて、多重化しない上位階層の画像データを形成し、上記動きベクトル検出ステツプにおいて、動きベクトルを検出した後、
第2の処理として、
上記上位階層多重化ステツプにおいて、上記動きベクトル検出ステツプの検出結果に基づいて、動きベクトルの大きな画像データの周辺に多重化した画像データを形成し、上記動きベクトル検出ステツプにおいて、動きベクトルを検出する
ことを特徴とする請求項1又は請求項2に記載の動き量検出方法。 - 上記上位階層多重化ステツプでは、上記動きベクトル検出ステツプにおいてブロツクマツチングを行う注目ブロツク毎に上記多重化した上位階層の画像データを形成する
ことを特徴とする請求項1又は請求項2に記載の動き量検出方法。 - 上記動き量検出方法は、
上記第1の時点の入力画像に対して上記上位階層多重化ステツプを施すと共に、上記第2の時点の入力画像に対して上記画像階層化ステツプを施す
ことを特徴とする請求項1又は請求項2に記載の動き量検出方法。 - 解像度の低い上位階層で検出した動きベクトルに基づいて、解像度の高い下位階層での動きベクトルを順次検出する動き量検出装置において、
第1の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成する画像階層化手段と、
上記第1の時点よりも1フレーム分過去の第2の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成すると共に、解像度の高い下位階層の画像データの画素が互いにオーバーラツプするように選択した複数の範囲の画素に対して、それぞれ平均化することにより、解像度が低く、かつ多重化された上位階層の画像データを複数形成する上位階層多重化手段と、
上記画像階層化手段及び上記上位階層多重化手段で階層化された画像データの対応する階層同士で、下位階層については上位階層で求めた動きベクトルを基準にするようにして、上位階層から順に各階層毎に、上記第1の時点の入力画像の画像データにおける参照ブロツクと、上記第2の時点の入力画像を多重化した各画像データそれぞれにおけるサーチ範囲内の複数の候補ブロツクとの間で、多重化されたブロック群の中からオフセットに対応するブロックを選択してそれぞれ評価値を算出し、当該評価値が最も小さい候補ブロツクに基づいて動きベクトルを検出する動きベクトル検出手段と
を具えることを特徴とする動き量検出装置。 - 解像度の低い上位階層で検出した動きベクトルに基づいて、解像度の高い下位階層での動きベクトルを順次検出する動き量検出装置において、
第1の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成する画像階層化手段と、
上記画像階層化手段により形成された複数階層の画像データそれぞれの高周波成分を表す複数階層のアクテイビテイデータを、算出対象の階層の画像データと、上記入力画像の画像データとの対応する画素の差分の絶対値和で算出する第1のアクテイビテイ階層化手段と、
上記第1の時点よりも1フレーム分過去の第2の時点で入力された入力画像より解像度の異なる複数階層の画像データを形成すると共に、解像度の高い下位階層の画像データの画素が互いにオーバーラツプするように選択した複数の範囲の画素に対して、それぞれ平均化することにより、解像度が低く、かつ多重化された上位階層の画像データを複数形成する上位階層多重化手段と、
上記上位階層多重化ステツプにより形成された複数階層の画像データそれぞれの高周波成分を表す複数階層のアクテイビテイデータを、算出対象の階層の画像データと、上記入力画像の画像データとの対応する画素の差分の絶対値和で算出する第2のアクテイビテイ階層化手段と、
上記画像階層化手段及び上記上位階層多重化手段で階層化された画像データの対応する階層同士で、上記第1の時点の入力画像の画像データにおける参照ブロツクと、上記第2の時点の入力画像を多重化した各画像データそれぞれにおけるサーチ範囲内の複数の候補ブロツクとの間でそれぞれ評価値を求める画像データ評価値算出手段と、
上記第1のアクテイビテイ階層化手段及び上記第2のアクテイビテイ階層化手段により階層化されたアクテイビテイデータの対応する階層同士で、上記参照ブロツクのアクテイビテイデータと、上記複数の候補ブロツクのアクテイビテイデータとの間で、多重化されたブロック群の中からオフセットに対応するブロックを選択してそれぞれ評価値を求めるアクテイビテイデータ評価値算出手段と、
上記画像データ評価値算出手段で求めた評価値と上記アクテイビテイデータ評価値算出手段で求めた評価値とを総合判定して、上位階層から順に各階層毎に動きベクトルを検出する動きベクトル検出手段と
を具えることを特徴とする動き量検出装置。 - 上記上位階層多重化手段は、
互いに縦方向及び横方向にオーバーラツプした上記下位階層の画像データの画素を選択することにより、格子状に配列した上記多重化した上位階層の画像データの画素を形成する
ことを特徴とする請求項8又は請求項9に記載の動き量検出装置。 - 上記上位階層多重化手段は、
縦方向及び横方向に対して互いに斜め方向にオーバーラツプした上記下位階層の画像データの画素を選択することにより、縦方向及び横方向に対して斜め方向に配列した上記多重化した上位階層の画像データの画素を形成する
ことを特徴とする請求項8又は請求項9に記載の動き量検出装置。 - 上記動き量検出装置は、
上記上位階層多重化手段により多重化しない上位階層の画像データを形成すると共に、上記動きベクトル検出手段により、上記画像階層化手段で階層化された画像データ及び上記上位階層多重化手段で階層化された多重化しない画像データの対応する階層同士で、所定ブロツク単位でブロツクマツチングによつて動きベクトルを検出した後、
上記上位階層多重化手段により、上記動きベクトル検出手段の検出結果に基づいて、動きベクトルの大きな画像データの周辺に多重化した画像データを形成すると共に、上記動きベクトル検出手段により、上記画像階層化手段で階層化された画像データ及び上記上位階層多重化手段で多重化した画像データの対応する階層同士で、所定ブロツク単位でブロツクマツチングによつて動きベクトルを検出する
ことを特徴とする請求項8又は請求項9に記載の動き量検出装置。 - 上記上位階層多重化手段は、
上記動きベクトル検出手段においてブロツクマツチングを行う注目ブロツク毎に上記多重化した上位階層の画像データを形成する
ことを特徴とする請求項8又は請求項9に記載の動き量検出装置。 - 上記動き量検出装置は、
上記第1の時点の入力画像に対して上記上位階層多重化手段により多重化した上位階層画像データを形成すると共に、上記第2の時点の入力画像を上記画像階層化手段に入力することにより上記上位階層多重化手段により多重化した上位階層画像データに対して過去の解像度の異なる複数階層の上記階層画像データを形成する
ことを特徴とする請求項8又は請求項9に記載の動き量検出装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25476094A JP3846642B2 (ja) | 1994-01-31 | 1994-09-22 | 動き量検出方法及び動き量検出装置 |
US08/380,557 US5610658A (en) | 1994-01-31 | 1995-01-30 | Motion vector detection using hierarchical calculation |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2727094 | 1994-01-31 | ||
JP3419594 | 1994-02-07 | ||
JP6-34195 | 1994-02-07 | ||
JP6-27270 | 1994-09-07 | ||
JP25476094A JP3846642B2 (ja) | 1994-01-31 | 1994-09-22 | 動き量検出方法及び動き量検出装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH07264603A JPH07264603A (ja) | 1995-10-13 |
JP3846642B2 true JP3846642B2 (ja) | 2006-11-15 |
Family
ID=27285718
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP25476094A Expired - Lifetime JP3846642B2 (ja) | 1994-01-31 | 1994-09-22 | 動き量検出方法及び動き量検出装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5610658A (ja) |
JP (1) | JP3846642B2 (ja) |
Families Citing this family (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1075321C (zh) * | 1993-08-30 | 2001-11-21 | 索尼公司 | 图像编码装置及方法 |
US6873738B2 (en) * | 1995-10-02 | 2005-03-29 | Sony Corporation | Hierarchical image processor for encoding or decoding, and memory on the same chip |
DE69710413T2 (de) * | 1996-05-24 | 2002-10-02 | Koninklijke Philips Electronics N.V., Eindhoven | Bewegungsschätzung |
TW359919B (en) | 1996-07-17 | 1999-06-01 | Sony Corp | Image coding apparatus, image coding method, image decoding method, image decoding apparatus, image data transmitting method and recording medium |
US6381369B1 (en) | 1996-07-17 | 2002-04-30 | Sony Corporation | Image coding apparatus, image coding method, image decoding method, image decoding apparatus, image data transmitting method and recording medium |
AU718453B2 (en) | 1996-07-17 | 2000-04-13 | Sony Corporation | Image coding and decoding using mapping coefficients corresponding to class information of pixel blocks |
US6292591B1 (en) * | 1996-07-17 | 2001-09-18 | Sony Coporation | Image coding and decoding using mapping coefficients corresponding to class information of pixel blocks |
AU714554B2 (en) | 1996-07-17 | 2000-01-06 | Sony Corporation | Image coding and decoding using mapping coefficients corresponding to class information of pixel blocks |
US6016163A (en) * | 1997-03-12 | 2000-01-18 | Scientific-Atlanta, Inc. | Methods and apparatus for comparing blocks of pixels |
KR100243865B1 (ko) * | 1997-09-30 | 2000-02-01 | 전주범 | 움직임 벡터 부호화 방법 및 그 장치 |
IL122299A (en) * | 1997-11-25 | 2003-11-23 | Broadcom Corp | Video encoding device |
JP3915855B2 (ja) | 1997-12-19 | 2007-05-16 | ソニー株式会社 | 画像符号化装置および画像符号化方法、並びに学習装置および学習方法 |
JP3149840B2 (ja) * | 1998-01-20 | 2001-03-26 | 日本電気株式会社 | 動きベクトル検出装置及び方法 |
TW376659B (en) * | 1998-05-21 | 1999-12-11 | Nat Science Council | Motion estimator using 3-step hierarchical search block-matching algorithm |
JP3867883B2 (ja) * | 1999-06-01 | 2007-01-17 | 株式会社リコー | 画像合成処理方法、画像合成処理装置及び記録媒体 |
US6968008B1 (en) | 1999-07-27 | 2005-11-22 | Sharp Laboratories Of America, Inc. | Methods for motion estimation with adaptive motion accuracy |
US6442203B1 (en) * | 1999-11-05 | 2002-08-27 | Demografx | System and method for motion compensation and frame rate conversion |
US6842483B1 (en) | 2000-09-11 | 2005-01-11 | The Hong Kong University Of Science And Technology | Device, method and digital video encoder for block-matching motion estimation |
FI110745B (fi) * | 2001-11-13 | 2003-03-14 | Hantro Products Oy | Menetelmä ja laite peräkkäisten kuvien koodaamiseksi |
KR101013130B1 (ko) * | 2002-07-30 | 2011-02-10 | 소니 주식회사 | 기억 장치, 신호 처리 장치, 및 화상 신호 처리 장치, 및그들의 방법 |
KR20050033099A (ko) * | 2003-10-04 | 2005-04-12 | 삼성전자주식회사 | 고속 움직임 추정 장치 |
JP5053275B2 (ja) * | 2005-07-28 | 2012-10-17 | トムソン ライセンシング | 階層的キャッシュを使うビデオ動き処理最適化のための方法および装置 |
JP4047879B2 (ja) * | 2005-08-23 | 2008-02-13 | 松下電器産業株式会社 | 動きベクトル検出装置および動きベクトル検出方法 |
US7609891B2 (en) * | 2005-08-31 | 2009-10-27 | Sony Corporation | Evaluation of element distribution within a collection of images based on pixel scatterness |
JP2008061162A (ja) * | 2006-09-04 | 2008-03-13 | Fujitsu Ltd | 動きベクトル探索装置および動きベクトル探索方法 |
GB2449929A (en) * | 2007-06-08 | 2008-12-10 | Snell & Wilcox Ltd | Hierarchical spatial resolution building processes to fill holes in an interpolated image |
JP4788695B2 (ja) * | 2007-09-28 | 2011-10-05 | ソニー株式会社 | 画像処理装置 |
US8649437B2 (en) * | 2007-12-20 | 2014-02-11 | Qualcomm Incorporated | Image interpolation with halo reduction |
CN101946514B (zh) * | 2007-12-20 | 2014-06-04 | 高通股份有限公司 | 使用自适应搜索范围的真实运动矢量估计 |
US8537283B2 (en) | 2010-04-15 | 2013-09-17 | Qualcomm Incorporated | High definition frame rate conversion |
JP5669523B2 (ja) * | 2010-07-06 | 2015-02-12 | 三菱電機株式会社 | フレーム補間装置及び方法、並びにプログラム及び記録媒体 |
JP5683153B2 (ja) * | 2010-07-09 | 2015-03-11 | キヤノン株式会社 | 画像処理装置および画像処理方法 |
JP5645699B2 (ja) | 2011-02-16 | 2014-12-24 | 三菱電機株式会社 | 動き検出装置及び方法、映像信号処理装置及び方法、並びに映像表示装置 |
US8891626B1 (en) | 2011-04-05 | 2014-11-18 | Google Inc. | Center of motion for encoding motion fields |
JP2014523708A (ja) | 2011-07-01 | 2014-09-11 | モトローラ モビリティ エルエルシー | 動きベクトル予測設計の簡易化 |
KR101616010B1 (ko) | 2011-11-04 | 2016-05-17 | 구글 테크놀로지 홀딩스 엘엘씨 | 비균일 움직임 벡터 그리드에 대한 움직임 벡터 스케일링 |
US8908767B1 (en) | 2012-02-09 | 2014-12-09 | Google Inc. | Temporal motion vector prediction |
US9172970B1 (en) | 2012-05-29 | 2015-10-27 | Google Inc. | Inter frame candidate selection for a video encoder |
US11317101B2 (en) | 2012-06-12 | 2022-04-26 | Google Inc. | Inter frame candidate selection for a video encoder |
US9503746B2 (en) | 2012-10-08 | 2016-11-22 | Google Inc. | Determine reference motion vectors |
US9485515B2 (en) | 2013-08-23 | 2016-11-01 | Google Inc. | Video coding using reference motion vectors |
US9313493B1 (en) | 2013-06-27 | 2016-04-12 | Google Inc. | Advanced motion estimation |
KR102138368B1 (ko) | 2013-07-19 | 2020-07-27 | 삼성전자주식회사 | 적응적 샘플링에 기초한 계층적 움직임 예측 방법 및 움직임 예측 장치 |
US10152822B2 (en) * | 2017-04-01 | 2018-12-11 | Intel Corporation | Motion biased foveated renderer |
US10319064B2 (en) | 2017-04-10 | 2019-06-11 | Intel Corporation | Graphics anti-aliasing resolve with stencil mask |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS54124927A (en) * | 1978-03-23 | 1979-09-28 | Nippon Hoso Kyokai <Nhk> | Detecting method for moving vector |
FR2651399B1 (fr) * | 1989-08-29 | 1996-05-15 | Thomson Consumer Electronics | Procede et dispositif d'estimation et de codage hierarchise du mouvement de sequences d'images. |
JPH03256485A (ja) * | 1990-03-06 | 1991-11-15 | Victor Co Of Japan Ltd | 動きベクトル検出回路 |
FR2664117B1 (fr) * | 1990-06-29 | 1996-06-21 | Thomson Csf | Procede de codage a parametres ajustables d'un champ de mouvement dans une sequence d'images animees. |
KR950014862B1 (ko) * | 1992-02-08 | 1995-12-16 | 삼성전자주식회사 | 움직임추정방법 및 그 장치 |
US5461423A (en) * | 1992-05-29 | 1995-10-24 | Sony Corporation | Apparatus for generating a motion vector with half-pixel precision for use in compressing a digital motion picture signal |
US5477272A (en) * | 1993-07-22 | 1995-12-19 | Gte Laboratories Incorporated | Variable-block size multi-resolution motion estimation scheme for pyramid coding |
-
1994
- 1994-09-22 JP JP25476094A patent/JP3846642B2/ja not_active Expired - Lifetime
-
1995
- 1995-01-30 US US08/380,557 patent/US5610658A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH07264603A (ja) | 1995-10-13 |
US5610658A (en) | 1997-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3846642B2 (ja) | 動き量検出方法及び動き量検出装置 | |
EP0643539B1 (en) | Motion vector detection apparatus and method | |
US8958484B2 (en) | Enhanced image and video super-resolution processing | |
US5027203A (en) | Motion dependent video signal processing | |
RU2424561C2 (ru) | Обучение сверточных нейронных сетей на графических процессорах | |
US6987884B2 (en) | Image processing device and method, and recorded medium | |
US7667778B2 (en) | Image processing apparatus and method, and recording medium and program used therewith | |
US8264600B2 (en) | Image processing apparatus for converting a lower resolution image into a higher resolution image using cyclic coefficients | |
US7738556B2 (en) | Apparatus and method for estimating motion vector with gradient method | |
JPH0614305A (ja) | 映像信号のフィールド又はフレーム間の動きを表す運動ベクトルを導出する方法及びこれを使用する映像方式変換装置 | |
US4998168A (en) | Motion dependent video signal processing | |
US20090185756A1 (en) | Image processing device and image processing method | |
JP3724653B2 (ja) | 動き量検出方法及び動き量検出装置 | |
JPH0846968A (ja) | 階層的動ベクトル検出方法および装置 | |
JP3812750B2 (ja) | 動き量検出方法及び動き量検出装置 | |
JP3494306B2 (ja) | 動き量検出方法及び動き量検出装置 | |
JP3494308B2 (ja) | 動き量検出方法及び動き量検出装置 | |
JP3553570B2 (ja) | 動き量検出方法及び動き量検出装置 | |
JP3617671B2 (ja) | 動き量検出方法及び動き量検出装置 | |
JP3494307B2 (ja) | 動き量検出方法及び動き量検出装置 | |
JP3491768B2 (ja) | 動き量検出方法及び動き量検出装置 | |
JPH0646383A (ja) | 動画の動き解析装置及び方法 | |
JP4250806B2 (ja) | フィールド周波数変換装置および変換方法 | |
JP2934156B2 (ja) | 階層型動き検出方法と装置 | |
JP3001754B2 (ja) | 階層的動ベクトル検出装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050204 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050405 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050422 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050621 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050722 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050916 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051027 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20051104 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060519 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060718 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060804 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060817 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100901 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110901 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120901 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120901 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130901 Year of fee payment: 7 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |