JPH07131791A - 動きベクトル検出装置 - Google Patents

動きベクトル検出装置

Info

Publication number
JPH07131791A
JPH07131791A JP27276293A JP27276293A JPH07131791A JP H07131791 A JPH07131791 A JP H07131791A JP 27276293 A JP27276293 A JP 27276293A JP 27276293 A JP27276293 A JP 27276293A JP H07131791 A JPH07131791 A JP H07131791A
Authority
JP
Japan
Prior art keywords
motion vector
block
arithmetic
candidate
reference block
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.)
Withdrawn
Application number
JP27276293A
Other languages
English (en)
Inventor
Eiji Iwata
英次 岩田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP27276293A priority Critical patent/JPH07131791A/ja
Publication of JPH07131791A publication Critical patent/JPH07131791A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

(57)【要約】 【構成】 参照ブロックの画素値と候補ブロックの画素
値との差分絶対値和を計算する演算ユニット311〜3
14を行列状に配置して相互接続し、参照ブロックの画
素値を遅延させる遅延レジスタ316〜318を設け、
各演算回路311〜314に対して当該参照ブロックの
画素値及び候補ブロックの画素値を所定の順序で供給す
ることによって、参照ブロックのブロックサイズをM×
N画素とし、前フレームの候補ブロックの個数を(k・
M)×(l・N)個としたときの動きベクトルを検出す
る。 【効果】 ハードウェア量の削減が可能となる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ディジタル画像処理の
画像圧縮符号化等に用いられ、特に、ブロックマッチン
グ法で全探索を行う動きベクトル検出装置に関するもの
である。
【0002】
【従来の技術】従来より、ディジタル画像処理の画像圧
縮符号化等に用いられる動きベクトル検出処理において
一般に実用化されている方式としては、いわゆるブロッ
クマッチング法と勾配法がある。
【0003】以下、ブロックマッチング法について説明
する。当該ブロックマッチング法は、画像圧縮符号化の
動き補償予測に広く用いられている。
【0004】先ず、画像フレーム(或いはフィールド)
を細いブロックに分割する。この時のブロックサイズと
しては、一般に8×8画素や16×16画素のサイズが
用いられる。ここで、動きベクトル検出処理とは、基本
的には、現フレームの対象ブロック(参照ブロックと呼
ぶ)が、前フレームのどの領域から移動してきたかを検
出する処理である。すなわち、具体的に言うと、動きベ
クトル検出処理は、例えば図12に示すように、現フレ
ームFpの参照ブロックBpに最も良く似たブロックを
前フレームFbの探索範囲E内の候補ブロックBbの集
合より検出し、当該検出された候補ブロックBbと参照
ブロックBp間の位置のずれ(移動の方向と大きさ)を
動きベクトルMVとして検出する処理である。
【0005】ここで、上記動きベクトル検出処理におけ
る上記参照ブロックBpに最も良く似た候補ブロックB
bの判定は、以下のように行われる。すなわち、先ず第
1の判定操作として、ある候補ブロックBbの各画素値
について、参照ブロックBpの対応する画素値との差分
をとり、その差によって示される評価値、例えば絶対値
和或いは自乗和を求める。
【0006】次に、第2の判定操作として、上記第1の
判定操作を探索範囲E内の全ての候補ブロックBbにつ
いて行い、それぞれ求めた各差分絶対値和(或いは差分
自乗和)のうちから最小のものを求める。この最小の差
分絶対値和(或いは差分自乗和)を与える候補ブロック
Bbを、参照ブロックBpに最も良く似たブロックとす
る。
【0007】具体的に言うと、参照ブロックBpのブロ
ックサイズをM×N画素とし、探索範囲E内の候補ブロ
ックBbの数をK×L個とした場合、上記動きベクトル
検出処理は、以下の数式(1) と、次の数式(2) で表せ
る。なお、この数式(1) では、差分自乗和でなく、差分
絶対値和D(i,j) を求める式を示している。また、数式
(1) の式中のrは現フレームFpの参照ブロックBpの
画素値を表し、数式(1)の式中のcは前フレームFbの
画素値を表している。さらに、数式(2) の式中(x,
y)は、最小となる差分絶対値和(minD(i,j) )を
与えるときの(i,j)を意味する。この数式(2) にお
ける(x,y)が動きベクトルMV(x,y) となる。
【0008】
【数1】
【0009】 MV(x,y) =minD(i,j) ・・・・(2)
【0010】このようなことから、参照ブロックBpの
ブロックサイズが例えば4×4画素で探索範囲E内の候
補ブロックBbの数が例えば7×7個の例を示す図12
において、場合に差分絶対値和D(5,3) が最小になって
いるとすると、(5,3)が動きベクトルMVとなる。
【0011】ところで、例えばいわゆるMPEG1、M
PEG2等の画像圧縮符号化における動きベクトル検出
処理は、画像の速い動きに対処するために、広い探索範
囲に対応する必要がある。そこで、従来は、狭い探索範
囲の動きベクトル検出回路を複数個使用して、広い探索
範囲の動きベクトル検出を実現するアプローチが採られ
ている。
【0012】例えば、1画面単位の画像信号を所定の画
素数で構成されたブロックに分割し、現画像の参照ブロ
ックのブロックサイズをM×N画素とし、候補ブロック
の個数を(k・M)×(l・N)個とする動きベクトル
検出は、参照ブロックのブロックサイズをM×N画素と
し、候補ブロックの個数をM×N個とする動きベクトル
検出回路をk×l個使用して実現する。
【0013】なお、動きベクトル検出の詳細および参照
ブロックのブロックサイズをM×N画素とし、候補ブロ
ックの個数をM×N個とする動きベクトル検出の手段に
ついては、本件出願人は特願平4−311163号の明
細書および図面に示す演算回路において既に提案してい
る。
【0014】以下、広い探索範囲の動きベクトル検出処
理における従来の回路構成について説明する。先ず、従
来の回路構成を説明するために、広い探索範囲における
動きベクトル検出処理の例を挙げ、その例について説明
する。さらに、その例に沿って、従来の回路構成および
制御方式を説明する。
【0015】説明を簡略化するため、例えば図13に示
すように、参照ブロックBpのブロックサイズが2×2
画素で、探索範囲E内の候補ブロックBbの数が4×4
個の場合の動きベクトル検出処理について考える。な
お、この図13の例では、現フレームFpの参照ブロッ
クBpの画素値rに英小文字の番号a,b,c,・・・
(ra ,rb ,rc ,・・・)を付け、前フレームFb
の画素値cに数字の番号1,2,3,・・・(c1 ,c
2 ,c3 ,・・・)を付ける。以下、動きベクトル検出
の処理手順を、図13を用いて説明する。
【0016】先ず、第1の処理工程として、参照ブロッ
クBp0の画素値r(ra 〜rd )と、参照ブロックB
p0に対する探索範囲E0内の全ての候補ブロックBb
0(16個存在する)の画素値c(c0 〜c24)につい
て、以下のような数式(3) 〜数式(18)のような計算を行
い、差分絶対値和D(i,j) (0≦i<3,0≦j<3)
を求める。
【0017】 D(0,0) =|ra −c0 |+|rb −c1 |+|rc −c5 |+|rd −c6 | ・・・・(3) D(0,1) =|ra −c1 |+|rb −c2 |+|rc −c6 |+|rd −c7 | ・・・・(4) D(0,2) =|ra −c2 |+|rb −c3 |+|rc −c7 |+|rd −c8 | ・・・・(5) D(0,3) =|ra −c3 |+|rb −c4 |+|rc −c8 |+|rd −c9 | ・・・・(6) D(1,0) =|ra −c5 |+|rb −c6 |+|rc −c10|+|rd −c11| ・・・・(7) D(1,1) =|ra −c6 |+|rb −c7 |+|rc −c11|+|rd −c12| ・・・・(8) D(1,2) =|ra −c7 |+|rb −c8 |+|rc −c12|+|rd −c13| ・・・・(9) D(1,3) =|ra −c8 |+|rb −c9 |+|rc −c13|+|rd −c14| ・・・・(10) D(2,0) =|ra −c10|+|rb −c11|+|rc −c15|+|rd −c16| ・・・・(11) D(2,1) =|ra −c11|+|rb −c12|+|rc −c16|+|rd −c17| ・・・・(12) D(2,2) =|ra −c12|+|rb −c13|+|rc −c17|+|rd −c18| ・・・・(13) D(2,3) =|ra −c13|+|rb −c14|+|rc −c18|+|rd −c19| ・・・・(14) D(3,0) =|ra −c15|+|rb −c16|+|rc −c20|+|rd −c21| ・・・・(15) D(3,1) =|ra −c16|+|rb −c17|+|rc −c21|+|rd −c22| ・・・・(16) D(3,2) =|ra −c17|+|rb −c18|+|rc −c22|+|rd −c23| ・・・・(17) D(3,3) =|ra −c18|+|rb −c19|+|rc −c23|+|rd −c24| ・・・・(18)
【0018】なお、差分自乗和については上記の差分絶
対値の各項を(r−c)2 のようにすれば良いことは容
易に理解できるので詳述は避ける。
【0019】次に、第2の処理工程として、上記第1の
処理工程で求めた全ての差分絶対値和D(i,j) (0≦i
<3,0≦j<3)について、最小となる差分絶対値和
minD(i,j) を求め、動きベクトルMV(i,j) を得
る。
【0020】第3の処理工程として、参照ブロックBp
0に隣接する参照ブロックBp1の画素値ra'〜r
d'と、参照ブロックBp1の探索範囲E1内のすべての
候補ブロックBb1(16個存在する)の画素値c10
34について、上記第1の処理工程と同様に計算を行
い、差分絶対値和D’(i,j) (0≦i<3,0≦j<
3)を求める。
【0021】その後、第4の処理工程として、上記第3
の処理工程で求めた全ての差分絶対値和D’(i,j) (0
≦i<3,0≦j<3)について、最小となる差分絶対
値和minD’(i,j) を求め、動きベクトルMV(i,j)
を得る。
【0022】以下同様に、第5の処理工程として、現フ
レームFpの全ての参照ブロックBpについて、上記の
操作を繰り返し、動きベクトルMV(i,j) を求める。
【0023】従来は、上述したような動きベクトル検出
処理を図14に示す回路構成で実現している。なお、図
14には従来の動きベクトル検出装置の全体構成を示し
ている。
【0024】この図14に示す従来の動きベクトル検出
装置は、例えば探索範囲2×2の動きベクトル検出回路
4個(演算回路(ME)211,212,213,21
4)と、候補ブロックの画素値データを所定のフォーマ
ットに変換するフォーマッタ215と、候補ブロックの
画素値データを遅延する4個の遅延レジスタ(DR)2
16と、最小値判定回路217とを相互に接続した構成
となっている。
【0025】すなわちこの図14において、端子201
には参照ブロックBpの画素値rが供給され、各演算回
路211〜214に送られる。また、候補ブロックBb
の画素値cは、探索範囲の上半分と下半分に分けられ、
当該候補ブロックBbの上半分の画素値が端子202
に、下半分の画素値が端子203に供給される。これら
上半分と下半分の画素値は、フォーマッタ215に順次
入力される。当該フォーマッタ215からは、探索範囲
の上半分と下半分の各々がさらに2つの領域に分けられ
て出力され、演算回路213及び演算回路214に送ら
れる。
【0026】また、上記フォーマッタ215からの出力
は、それぞれ遅延レジスタ216を介することで4クロ
ックサイクル遅らされて演算回路211及び演算回路2
12に送られる。
【0027】これら各演算回路211〜214は、それ
ぞれ、上記端子201からの参照ブロックBpの画素値
rと、上記フォーマッタ215若しくは遅延レジスタ2
16からの上記候補ブロックの画素値cとの差分絶対値
演算を行う演算ユニットPEを4個有してなるものであ
る。なお、演算ユニットPEは差分自乗値演算を行うも
のとすることもできる。
【0028】上記各演算回路211〜214からの各出
力は、最小値判定回路217に送られ、当該最小値判定
回路217で判定した最小値を動きベクトルとして端子
200から取り出す。
【0029】次に、図14に示した回路構成を用いて動
きベクトル検出処理を実現するための制御方式について
説明する。図15〜図18には、図14に示した回路構
成を用いた動きベクトル検出制御のタイムチャートを示
す。なお、図15〜図18では図の作成の都合上別々に
作成しているが、各演算回路211〜214はそれぞれ
同期して動作するものである。また、図15には演算回
路211、図16には演算回路212、図17には演算
回路213、図18には演算回路214でのタイムチャ
ートを示している。
【0030】この図15〜図18からわかるように、参
照ブロックBpの画素値rは、全ての演算回路211〜
214に1クロックサイクル毎に与えられる。すなわ
ち、参照ブロックBpの画素値rについては、あるクロ
ックサイクルにおいて、各演算回路が同一の画素値に対
して演算を行っている。
【0031】また、候補ブロックBbの画素値cは、上
述したように探索範囲の上半分と下半分の2つの領域に
分けられて、図14に示した2つの端子202,203
からフォーマッタ215に順次入力され、当該フォーマ
ッタ215からは、探索範囲の上半分と下半分の各々が
さらに2つの領域に分けられて出力され、演算回路21
3及び214に入力される。同時にフォーマッタ215
の出力は、遅延レジスタ216を介して、4クロックサ
イクル遅れて演算回路211及び212に入力される。
【0032】上記図15〜図18に示すような制御を行
うことにより、4クロックサイクル毎に演算回路内部の
各演算ユニットPEから一斉に差分絶対値和が出力され
る。これらの差分絶対値和は、一旦演算回路内部の差分
絶対値和格納用レジスタに格納された後、順次最小値判
定回路217に出力される。最小値判定回路217で
は、上述したようにこれらの差分絶対値和を大小比較す
ることにより、動きベクトルを求める。
【0033】
【発明が解決しようとする課題】ところで、上述した従
来の動きベクトル検出処理の回路構成では、候補ブロッ
クの画素値を遅延させるための遅延レジスタが必要とな
る。上述の例では、4クロックサイクル遅延させる遅延
レジスタが4個ある(すなわち4個の遅延レジスタ21
6のそれぞれが4クロックサイクル遅延させる遅延レジ
スタを有する)ため、遅延レジスタのレジスタ総数は1
6個となる。
【0034】一般に、参照ブロックのブロックサイズを
M×N画素とし、候補ブロックの個数を(k・M)×
(l・N)個とした場合、遅延レジスタのレジスタ総数
は、2×(k−1)×l×M×N個となる。したがっ
て、例えば、参照ブロックのサイズが例えば16×16
画素で、候補ブロックの個数が例えば32×32の場
合、遅延レジスタのレジスタ総数は1024個となり、
構成が大型化してしまう。
【0035】そこで、本発明は、少ないハードウェア量
で広い探索範囲の動きベクトル検出が可能な動きベクト
ル検出装置を提供することを目的とするものである。
【0036】
【課題を解決するための手段】本発明は上述した目的を
達成するために提案されたものであり、1画面単位の画
像信号を所定の画素数で構成されたブロックに分割し、
現画像の参照ブロックのブロックサイズをM×N画素と
し、候補ブロックの個数を(k・M)×(l・N)個と
して、ブロックマッチング法により全画面に対して探索
処理を行って動きベクトル検出を行う動きベクトル検出
装置であって、上記参照ブロックの画素値と候補ブロッ
クの画素値との差分絶対値を少なくとも計算する演算ユ
ニットをM×N個有し、当該演算ユニットをM×Nの行
列状に配置して相互接続し、参照ブロック及び候補ブロ
ックの画素値を所定の順序で供給して上記差分絶対値を
求めると共にこの差分絶対値を累積した差分絶対値和を
求めることにより、候補ブロックの個数をM×N個とす
る動きベクトル検出処理を行う演算回路をk×l個具備
し、上記k×l個の演算回路をk×lの行列状に配置し
て相互接続して参照ブロック及び候補ブロックの画素値
を所定の順序で供給することにより、候補ブロックの個
数を(k・M)×(l・N)個とする動きベクトル検出
処理を行うことを特徴とするものである。
【0037】ここで、本発明の動きベクトル検出装置で
は、上記演算ユニットにおいて上記差分絶対値の計算と
共に当該差分絶対値を累積して差分絶対値和をも求める
ものとすることができる。すなわち、このときの本発明
の動きベクトル検出装置は、上記参照ブロックの画素値
と候補ブロックの画素値との差分絶対値を計算し、この
差分絶対値を累積して差分絶対値和を求める演算ユニッ
トをM×N個有し、当該演算ユニットをM×Nの行列状
に配置して相互接続し、参照ブロック及び候補ブロック
の画素値を所定の順序で供給することにより、候補ブロ
ックの個数をM×N個とする動きベクトル検出処理を行
う演算回路をk×l個具備し、さらに上記k×l個の演
算回路をk×lの行列状に配置して相互接続して参照ブ
ロック及び候補ブロックの画素値を所定の順序で供給す
ることにより、候補ブロックの個数を(k・M)×(l
・N)個とする動きベクトル検出処理を行うようにす
る。
【0038】或いは、上記各演算回路としては、上記演
算ユニットにおいて上記差分絶対値の計算のみを行うも
のとし、各演算ユニットの出力を加算器を介してパイプ
ライン接続する構成とすることもできる。すなわちこの
ときの本発明の動きベクトル検出装置は、上記参照ブロ
ックの画素値と候補ブロックの画素値との差分絶対値を
計算する演算ユニットをM×N個有し、当該演算ユニッ
トをM×Nの行列状に配置して相互接続し、さらに各演
算ユニットの出力を加算器を介してパイプライン接続
し、参照ブロック及び候補ブロックの画素値を所定の順
序で供給することにより、候補ブロックの個数をM×N
個とする動きベクトル検出処理を行う演算回路をk×l
個具備し、さらに上記k×l個の演算回路をk×lの行
列状に配置して相互接続して参照ブロック及び候補ブロ
ックの画素値を所定の順序で供給することにより、候補
ブロックの個数を(k・M)×(l・N)個とする動き
ベクトル検出処理を行うようにする。
【0039】また、本発明の動きベクトル検出装置は、
上記参照ブロックの画素値と候補ブロックの画素値との
差分自乗値を少なくとも計算する演算ユニットをM×N
個有し、当該演算ユニットをM×Nの行列状に配置して
相互接続し、参照ブロック及び候補ブロックの画素値を
所定の順序で供給して上記差分自乗値を求めると共にこ
の差分自乗値を累積した差分自乗和を求めることによ
り、候補ブロックの個数をM×N個とする動きベクトル
検出処理を行う演算回路をk×l個具備し、上記k×l
個の演算回路をk×lの行列状に配置して相互接続して
参照ブロック及び候補ブロックの画素値を所定の順序で
供給することにより、候補ブロックの個数を(k・M)
×(l・N)個とする動きベクトル検出処理を行うもの
とすることもできる。
【0040】このときの本発明の動きベクトル検出装置
においても、上記演算ユニットにおいて上記差分自乗値
の計算と共に当該差分自乗値を累積して差分自乗和を求
めるものとすることができる。すなわち、このときの本
発明の動きベクトル検出装置は、上記参照ブロックの画
素値と候補ブロックの画素値との差分自乗値を計算し、
この差分自乗値を累積して差分自乗和を求める演算ユニ
ットをM×N個有し、当該演算ユニットをM×Nの行列
状に配置して相互接続し、参照ブロック及び候補ブロッ
クの画素値を所定の順序で供給することにより、候補ブ
ロックの個数をM×N個とする動きベクトル検出処理を
行う演算回路をk×l個具備し、さらに上記k×l個の
演算回路をk×lの行列状に配置して相互接続して参照
ブロック及び候補ブロックの画素値を所定の順序で供給
することにより、候補ブロックの個数を(k・M)×
(l・N)個とする動きベクトル検出処理を行う。
【0041】また、上記各演算回路としては、上記演算
ユニットにおいて上記差分自乗値の計算のみを行うもの
とし、各演算ユニットの出力を加算器を介してパイプラ
イン接続する構成とすることもできる。すなわちこのと
きの本発明の動きベクトル検出装置は、上記参照ブロッ
クの画素値と候補ブロックの画素値との差分自乗値を計
算する演算ユニットをM×N個有し、当該演算ユニット
をM×Nの行列状に配置して相互接続し、さらに各演算
ユニットの出力を加算器を介してパイプライン接続し、
参照ブロック及び候補ブロックの画素値を所定の順序で
供給することにより、候補ブロックの個数をM×N個と
する動きベクトル検出処理を行う演算回路をk×l個具
備し、さらに上記k×l個の演算回路をk×lの行列状
に配置して相互接続して参照ブロック及び候補ブロック
の画素値を所定の順序で供給することにより、候補ブロ
ックの個数を(k・M)×(l・N)個とする動きベク
トル検出処理を行う。
【0042】さらに、本発明の動きベクトル検出装置に
おいては、上記参照ブロック及び候補ブロックの画素値
を所定の順序で供給するための手段としては、候補ブロ
ックの画素値を遅延させる遅延レジスタではなく、参照
ブロックの画素値を遅延させる遅延レジスタを用いるこ
とができる。すなわち、参照ブロックの画素値を遅延さ
せる遅延レジスタを設けることで、参照ブロックのブロ
ックサイズをM×N画素とし、候補ブロックの個数を
(k・M)×(l・N)個とした場合、当該参照ブロッ
クの画素値を遅延させる遅延レジスタのレジスタ総数は
k×l×M個でよいことになる。
【0043】
【作用】本発明によれば、参照ブロックのブロックサイ
ズをM×N画素とし、候補ブロックの個数をM×Nとす
る動きベクトル検出を行う演算回路をk×l個具備し、
この演算回路をk×lの行列状に配置して相互接続し、
参照ブロック及び候補ブロックの画素値を所定の順序で
供給するようにしているため、構成を小型化することが
でき、かつ、参照ブロックのブロックサイズをM×N画
素とし、候補ブロックの個数を(k・M)×(l・N)
個とする動きベクトル検出処理を行うことが可能とな
る。
【0044】
【実施例】以下、本発明の演算回路の一実施例について
図面を参照しながら説明する。
【0045】本発明実施例の動きベクトル検出装置は、
図1に示すように、1画面単位の画像信号を所定の画素
数で構成されたブロックに分割し、現画像(現フレーム
Fp)の参照ブロックBpのブロックサイズをM×N画
素とし(本実施例では説明を簡略化するため例えば2×
2画素とする)、候補ブロックBbの数を(k・M)×
(l・N)個(本実施例では4×4個)として、ブロッ
クマッチング法により全画面に対して探索処理を行い、
動きベクトル検出を行う装置であって、上記参照ブロッ
クBpの画素値rと候補ブロックBbの画素値cとの差
分絶対値を計算し、この差分絶対値を累積して差分絶対
値和D(i,j) を求める演算ユニットPEをM×N個有す
ると共に、当該演算ユニットPEをM×Nの行列状に配
置して相互接続し、参照ブロックBpの画素値r及び候
補ブロックBbの画素値cを所定の順序で供給すること
により、候補ブロックBpの個数をM×N個とする動き
ベクトル検出処理を行う演算回路(ME回路)をk×l
個(図1の例では4個すなわち演算回路311〜314
の4個)具備し、上記k×l個の演算回路(演算回路3
11〜314)をk×lの行列状(図1では2×2の行
列状)に配置して相互接続し、参照ブロックBpの画素
値r及び候補ブロックBbの画素値rを所定の順序で供
給することにより、候補ブロックの数を(k・M)×
(l・N)個とする動きベクトル検出処理を行うように
したものである。
【0046】すなわち、図1に示す本発明実施例の動き
ベクトル検出装置は、例えば探索範囲内の候補ブロック
のサイズを2×2画素とした場合の動きベクトルを検出
する4個の演算回路(ME)311,312,313,
314と、候補ブロックの画素データを所定のフォーマ
ットに変換するフォーマッタ315と、3個の遅延レジ
スタ(DR)316〜318と、最小値判定回路319
とを相互に接続した構成となっている。
【0047】ここで、本実施例装置では、上記参照ブロ
ック及び候補ブロックの画素値を所定の順序で供給する
ための手段として、前述した従来例のような候補ブロッ
クの画素値を遅延させる遅延レジスタではなく、参照ブ
ロックの画素値を遅延させる(2クロックサイクル遅延
させる)遅延レジスタ316〜318を設けるようにし
ている。
【0048】すなわちこの図1において、端子301に
は参照ブロックBpの画素値rが供給され、演算回路3
11にはそのまま送られ、演算回路312には遅延レジ
スタ316を介して、演算回路313には遅延レジスタ
316及び317を介して、演算回路314には遅延レ
ジスタ316,317,318を介して送られる。
【0049】また、候補ブロックBbの画素値cは、奇
数カラムと偶数カラムとで分けられ、当該候補ブロック
Bbの奇数カラムの画素値が端子302に、偶数カラム
の画素値が端子303に供給される。これら奇数カラム
と偶数カラムの画素値は、フォーマッタ315に順次入
力される。当該フォーマッタ315からは、探索範囲の
偶数カラムと奇数カラムの各々がさらに2つの領域に分
けられて出力され、上記演算回路311〜314に送ら
れる。
【0050】上記各演算回路311〜314からの各出
力は、最小値判定回路319に送られ、当該最小値判定
回路319で判定した最小値を動きベクトルとして端子
300から取り出す。
【0051】ここで、上記各演算回路311〜314
は、例えばそれぞれが図2に示すように構成されてなる
ものである。
【0052】すなわち、各演算回路311〜314は、
上記図1の端子301を介して供給された上記現フレー
ムFpの参照ブロックBpの画素値rと、図1のフォー
マッタ315から供給された前フレームFbの候補ブロ
ックBbの奇数カラムに対応する画素値cと前フレーム
Fbの候補ブロックBbの偶数カラムに対応する画素値
cを多重化した値(適宜切り替えた値)との差分によっ
て示される評価値として差分絶対値(或いは後述する差
分自乗値)を計算し、この差分絶対値(或いは差分自乗
値)を累積して差分絶対値和D(i,j) (或いは差分自乗
和)すなわち評価値和を求める演算ユニット(PE)を
M×N個(本実施例では2×2=4個の演算ユニット9
0〜93)有すると共に、当該演算ユニット90〜93
をM×N(すなわち2×2)の行列状に配置して相互接
続し、参照ブロックBp及び候補ブロックBbの画素値
r及びcを所定の順序で供給するようにしたものであ
る。
【0053】この図2において、端子80には上記フォ
ーマッタ315からの前フレームFbの候補ブロックB
bの奇数カラムに対応する画素値cが供給され、当該画
素値cが各演算ユニット90〜93の一方の入力端子に
送られる。また、端子82には上記フォーマッタ315
からの前フレームFbの候補ブロックBbの偶数カラム
に対応する画素値cが供給され、当該画素値cが各演算
ユニット90〜93の他方の入力端子に送られる。端子
81には上記図1の端子301を介した参照ブロックB
pの画素値rが供給され、縦続接続された各演算ユニッ
ト90〜93の初段のユニット90に送られ、順次次段
のユニットに送られる。これら各演算ユニット90〜9
3に対応する各端子83からは差分絶対値和D(i,j)
(或いは後述する差分自乗和)が出力される。
【0054】ここで、上記各演算ユニット90〜93
は、例えば、図3に示すように構成されるものである。
なお、この図3の構成は、上記差分絶対値和D(i,j) を
求めるための構成である。
【0055】この図3において、各演算ユニット90〜
93は、上記現フレームFpの参照ブロックBpの画素
値rを順次格納するレジスタ102と、前フレームFb
の候補ブロックBbの奇数カラムに対応する画素値cと
前フレームFbの候補ブロックBb偶数カラムに対応す
る画素値cを多重化する(適宜切り替える)マルチプレ
クサ104と、上記レジスタ102とマルチプレクサ1
04の出力の差分絶対値演算を行う差分絶対値演算器1
05と、上記差分絶対値演算器105の出力を累積して
差分絶対値和D(i,j) を求める累算器106とからなる
ものである。
【0056】次に、上述した図1〜図3に示した回路構
成において動きベクトル検出を実現するための制御方式
について、図4〜図7に示す動きベクトル検出制御のタ
イムチャートを用いて説明する。なお、図4〜図7では
図の作成の都合上別々に作成しているが、各演算回路3
11〜314はそれぞれ同期して動作するものである。
また、図4には演算回路311、図5には演算回路31
2、図6には演算回路313、図7には演算回路314
でのタイムチャートを示している。
【0057】すなわち、この図4〜図7からわかるよう
に、参照ブロックBpの画素値rは、1クロックサイク
ル毎に各演算回路311〜314内の上記演算ユニット
90〜93に順次入力される。このとき、演算回路31
1に入力された参照ブロックBpの画素値rは、上記遅
延レジスタ316を介することで2クロックサイクル遅
れて演算回路312に入力される。また、演算回路31
2に入力された参照ブロックBpの画素値rは、遅延レ
ジスタ317を介することでさらに2クロックサイクル
遅れて演算回路313に入力される。同様に、演算回路
313に入力された参照ブロックBpの画素値rは、遅
延レジスタ318を介することでさらに2クロックサイ
クル遅れて演算回路314に入力される。
【0058】各演算回路311〜314の内部の各演算
ユニット90〜93は、上述のような所定の順序で入力
された参照ブロックBpの画素値rを4クロックサイク
ル間保持する。したがって、各演算ユニット90〜93
は、4クロックサイクルの間、同一の参照ブロックBp
の画素値rについて演算を行う。言い換えれば、参照ブ
ロックBpの画素値rについては、あるクロックサイク
ルにおいて、各演算ユニットがそれぞれ異なる画素値に
対して演算を行っていることになる。
【0059】また、候補ブロックBbの画素値cは、上
述したように探索範囲の偶数カラムと奇数カラムの2つ
の領域に分けられて、前記図1の2つの端子302,3
03からフォーマッタ315に順次入力される。当該フ
ォーマッタ315からは、探索範囲の偶数カラムと奇数
カラムの各々がさらに2つの領域に分けられて出力さ
れ、演算回路311〜314に入力されるようになって
いる。なお、本実施例装置のフォーマッタ315は、前
述した従来例で述べた図14のフォーマッタ215と構
成は異なるが、ハードウェア量は同等である。
【0060】上記のように制御を行うことにより、1ク
ロックサイクル毎に各演算回路311〜314の出力か
ら差分絶対値和D(i,j) が出力される。これらの差分絶
対値和D(i,j) を上記最小値判定回路319で大小比較
することにより、動きベクトルMV(i,j) を求め、この
動きベクトルMV(i,j) が出力端子300から取り出さ
れる。
【0061】また、本発明の動きベクトル検出装置は、
上記参照ブロックBpの画素値rと候補ブロックBbの
画素値cとの差分自乗値を計算し、この差分自乗値を累
積して差分自乗和を求める演算ユニットPEをM×N個
有し、当該演算ユニットPEをM×Nの行列状に配置し
て相互接続し、参照ブロックBpの画素値r及び候補ブ
ロックBbの画素値cを所定の順序で供給することによ
り、候補ブロックBpの個数をM×N個とする動きベク
トル検出処理を行う演算回路(ME回路)をk×l個
(図1の例のような演算回路311〜314の4個)具
備し、上記k×l個の演算回路(演算回路311〜31
4)をk×lの行列状(図1では2×2の行列状)に配
置して相互接続し、前述同様の遅延レジスタ316〜3
18によって参照ブロックBpの画素値r及び候補ブロ
ックBbの画素値rを所定の順序で供給することによ
り、動きベクトル検出処理を行うものとすることもでき
る。
【0062】すなわち、この差分自乗和を求める本発明
実施例の動きベクトル検出装置では、上記各演算回路3
11〜314内の上記演算ユニット90〜93が、例え
ば図8に示すように構成される。
【0063】この図8において、各演算ユニット90〜
93は、上記現フレームFpの参照ブロックBpの画素
値rを順次格納するレジスタ102と、前フレームFb
の候補ブロックBbの奇数カラムに対応する画素値cと
前フレームFbの候補ブロックBb偶数カラムに対応す
る画素値cを多重化する(適宜切り替える)マルチプレ
クサ104と、上記レジスタ102とマルチプレクサ1
04の出力の差分自乗値演算を行う差分自乗値演算器1
15と、上記差分自乗値演算器115の出力を累積して
差分自乗和を求める累算器106とからなるものであ
る。
【0064】前記図2の各演算ユニット90〜93が上
記図8の構成をとることで、上記差分自乗和を用いた動
きベクトルの検出が可能となる。
【0065】また、本発明の動きベクトル検出装置の各
演算回路311〜314は、図9に示すような構成とす
ることもできる。すなわち図9に示すように、各演算回
路311〜314は、上記図1の端子301を介して供
給された上記現フレームFpの参照ブロックBpの画素
値rと、図1のフォーマッタ315から供給された前フ
レームFbの候補ブロックBbの奇数カラムに対応する
画素値cと前フレームFbの候補ブロックBbの偶数カ
ラムに対応する画素値cを多重化した値(適宜切り替え
た値)との差分によって示される評価値として差分絶対
値(或いは差分自乗値)を計算する演算ユニットをM×
N個(本実施例では2×2の演算ユニット140〜14
3)有し、当該演算ユニット140〜143をM×N
(すなわち2×2)の行列状に配置して相互接続し、さ
らに各演算ユニット140〜143の出力を加算器12
1〜123を介してパイプライン接続し、参照ブロック
Bp及び候補ブロックBbの画素値r及びcを所定の順
序で供給するようにしたものとすることもできる。
【0066】この図9において、端子80には上記フォ
ーマッタ315からの前フレームFbの候補ブロックB
bの奇数カラムに対応する画素値cが供給され、当該画
素値cが各演算ユニット140〜143の一方の入力端
子に送られる。また、端子82には上記フォーマッタ3
15からの前フレームFbの候補ブロックBbの偶数カ
ラムに対応する画素値cが供給され、当該画素値cが各
演算ユニット140〜143の他方の入力端子に送られ
る。端子81には上記図1の端子301を介した参照ブ
ロックBpの画素値rが供給され、各演算ユニット14
0〜143に送られる。これら各演算ユニット140〜
143のうちの演算ユニット140から出力される差分
絶対値(或いは差分自乗値)は、加算器121によって
演算ユニット141からの差分絶対値(或いは差分自乗
値)と加算される。この加算器121の出力は、さらに
加算器122によって演算ユニット143から出力され
る差分絶対値(或いは差分自乗値)と加算され、当該加
算器122の出力はさらに加算器123によって演算ユ
ニット143からの差分絶対値(或いは差分自乗値)と
加算される。これにより、端子132からは、差分絶対
値和D(i,j) (或いは差分自乗和)が得られることにな
る。
【0067】また、この図9の各演算ユニット140〜
143は、具体的には図10に示すようにな構成となさ
れる。なお、この図10の構成は、上記差分絶対値を求
めるための構成である。
【0068】この図10において、各演算ユニット14
0〜143は、上記現フレームFpの参照ブロックBp
の画素値rを順次格納するレジスタ161と、前フレー
ムFbの候補ブロックBbの奇数カラムに対応する画素
値cと前フレームFbの候補ブロックBb偶数カラムに
対応する画素値cを多重化する(適宜切り替える)マル
チプレクサ104と、上記レジスタ161とマルチプレ
クサ104の出力の差分絶対値演算を行う差分絶対値演
算器105とからなる。
【0069】さらに、上記図9の各演算ユニット140
〜143は、差分自乗値演算を行う構成とすることもで
き、この場合の各演算ユニット140〜143は図11
に示す構成で実現できる。
【0070】この図11において、各演算ユニット14
0〜143は、上記現フレームFpの参照ブロックBp
の画素値rを順次格納するレジスタ161と、前フレー
ムFbの候補ブロックBbの奇数カラムに対応する画素
値cと前フレームFbの候補ブロックBb偶数カラムに
対応する画素値cを多重化する(適宜切り替える)マル
チプレクサ104と、上記レジスタ161とマルチプレ
クサ104の出力の差分自乗値演算を行う差分自乗値演
算器115とからなる。
【0071】上述のように、本発明実施例の動きベクト
ル検出装置によれば、従来の動きベクトル検出処理の回
路構成で必要となっていた候補ブロックの画素値を遅延
させるための遅延レジスタの代わりに、参照ブロックの
画素値を遅延させるための遅延レジスタ316〜318
を設けるようにしている。上述の実施例では、2クロッ
クサイクル遅延させる遅延レジスタが3個あるため、遅
延レジスタのレジスタ総数は6個となる。なお、上述し
た実施例では演算回路311への参照ブロックの画素値
については遅延しないようにしているが、当該演算回路
311の前段でかつ遅延レジスタ316の前段にも遅延
レジスタを配置することもできる。この場合、遅延レジ
スタは4個になり、したがって、遅延レジスタのレジス
タ総数は8個になる。これを一般化して説明すると、参
照ブロックのブロックサイズをM×N画素とし、候補ブ
ロックの個数を(k・M)×(l・N)個とした場合、
遅延レジスタのレジスタ総数は、k×l×M個でよいこ
とになる。例えば、参照ブロックのサイズ16×16画
素で、候補ブロックの数が32×32個の場合、遅延レ
ジスタのレジスタ総数は64個でよいことになる。この
ように、本発明実施例装置においては、前述した実施例
のように遅延レジスタ316の前段に遅延レジスタを設
けない場合のみならず、遅延レジスタを設けた場合であ
っても、遅延レジスタのレジスタ総数が、従来の回路構
成による遅延レジスタのレジスタ総数より少なくてよ
い。すなわち、本発明実施例装置においては、従来の回
路構成と比較してハードウェア量を大幅に削減できる。
【0072】
【発明の効果】上述のように、本発明の動きベクトル検
出装置によれば、参照ブロック及び候補ブロックの画素
値を所定の順序で供給するようにしており、この手段と
して従来の動きベクトル検出処理の回路構成で必要とな
っていた候補ブロックの画素値を遅延させるための遅延
レジスタの代わりに、参照ブロックの画素値を遅延させ
るための遅延レジスタを設けるようにしている。より一
般すると、参照ブロックのブロックサイズをM×N画素
とし、候補ブロックの個数を(k・M)×(l・N)個
とした場合、遅延レジスタのレジスタ総数は、多くても
k×l×M個でよいことになる。したがって、例えば、
参照ブロックのサイズ16×16で、候補ブロック数3
2×32の場合、遅延レジスタのレジスタ総数は64個
でよい。このように、本発明の動きベクトル検出装置に
おいては、遅延レジスタのレジスタ総数が従来の回路構
成による遅延レジスタのレジスタ総数より少なくてよ
い。すなわち、本発明の動きベクトル検出装置において
は、従来の回路構成と比較してハードウェア量を大幅に
削減できる。
【図面の簡単な説明】
【図1】本発明実施例の広探索範囲に対応する動きベク
トル検出装置の概略構成を示すブロック回路図である。
【図2】本発明実施例装置の演算回路の具体的構成を示
すブロック回路図である。
【図3】実施例装置の演算回路の差分絶対値和を求める
演算ユニットの具体的構成を示すブロック回路図であ
る。
【図4】図3の差分絶対値和を求める演算回路(31
1)での動作のタイミングチャートを示す図である。
【図5】図3の差分絶対値和を求める演算回路(31
2)での動作のタイミングチャートを示す図である。
【図6】図3の差分絶対値和を求める演算回路(31
3)での動作のタイミングチャートを示す図である。
【図7】図3の差分絶対値和を求める演算回路(31
4)での動作のタイミングチャートを示す図である。
【図8】実施例装置の演算回路の差分自乗和を求める演
算ユニットの具体的構成を示すブロック回路図である。
【図9】パイプライン接続構成の演算回路の具体的構成
を示すブロック回路図である。
【図10】パイプライン接続構成の演算回路の差分絶対
値を求める演算ユニットの具体的構成を示すブロック回
路図である。
【図11】パイプライン接続構成の演算回路の差分自乗
値を求める演算ユニットの具体的構成を示すブロック回
路図である。
【図12】ブロックマッチングによる動きベクトル検出
処理の原理を示す図である。
【図13】参照ブロックのサイズが2×2画素で、探索
範囲の候補ブロックの数が4×4個の場合の動きベクト
ル検出の原理を示す図である。
【図14】従来の動きベクトル検出装置の概略構成を示
すブロック回路図である。
【図15】図14の差分絶対値和を求める演算回路(2
11)での動作のタイミングチャートを示す図である。
【図16】図14の差分絶対値和を求める演算回路(2
12)での動作のタイミングチャートを示す図である。
【図17】図14の差分絶対値和を求める演算回路(2
13)での動作のタイミングチャートを示す図である。
【図18】図14の差分絶対値和を求める演算回路(2
14)での動作のタイミングチャートを示す図である。
【符号の説明】
311〜314・・・・演算回路 315・・・・・・・・フォーマッタ 316〜318・・・・遅延レジスタ 319・・・・・・・・最小値判定回路

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 1画面単位の画像信号を所定の画素数で
    構成されたブロックに分割し、現画像の参照ブロックの
    ブロックサイズをM×N画素とし、候補ブロックの個数
    を(k・M)×(l・N)個として、ブロックマッチン
    グ法により全画面に対して探索処理を行って動きベクト
    ル検出を行う動きベクトル検出装置であって、 上記参照ブロックの画素値と候補ブロックの画素値との
    差分絶対値を少なくとも計算する演算ユニットをM×N
    個有し、当該演算ユニットをM×Nの行列状に配置して
    相互接続し、参照ブロック及び候補ブロックの画素値を
    所定の順序で供給して上記差分絶対値を求めると共にこ
    の差分絶対値を累積した差分絶対値和を求めることによ
    り、候補ブロックの個数をM×N個とする動きベクトル
    検出処理を行う演算回路をk×l個具備し、 上記k×l個の演算回路をk×lの行列状に配置して相
    互接続し、参照ブロック及び候補ブロックの画素値を所
    定の順序で供給することにより、候補ブロックの個数を
    (k・M)×(l・N)個とする動きベクトル検出処理
    を行うことを特徴とする動きベクトル検出装置。
  2. 【請求項2】 1画面単位の画像信号を所定の画素数で
    構成されたブロックに分割し、現画像の参照ブロックの
    ブロックサイズをM×N画素とし、候補ブロックの個数
    を(k・M)×(l・N)個として、ブロックマッチン
    グ法により全画面に対して探索処理を行って動きベクト
    ル検出を行う動きベクトル検出装置であって、 上記参照ブロックの画素値と候補ブロックの画素値との
    差分自乗値を少なくとも計算する演算ユニットをM×N
    個有し、当該演算ユニットをM×Nの行列状に配置して
    相互接続し、参照ブロック及び候補ブロックの画素値を
    所定の順序で供給して上記差分自乗値を求めると共にこ
    の差分自乗値を累積した差分自乗和を求めることによ
    り、候補ブロックの個数をM×N個とする動きベクトル
    検出処理を行う演算回路をk×l個具備し、 上記k×l個の演算回路をk×lの行列状に配置して相
    互接続し、参照ブロック及び候補ブロックの画素値を所
    定の順序で供給することにより、候補ブロックの個数を
    (k・M)×(l・N)個とする動きベクトル検出処理
    を行うことを特徴とする動きベクトル検出装置。
  3. 【請求項3】 上記演算回路は、各演算ユニットの出力
    を加算器を介してパイプライン接続することを特徴とす
    る請求項1又は2記載の動きベクトル検出装置。
JP27276293A 1993-10-29 1993-10-29 動きベクトル検出装置 Withdrawn JPH07131791A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27276293A JPH07131791A (ja) 1993-10-29 1993-10-29 動きベクトル検出装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27276293A JPH07131791A (ja) 1993-10-29 1993-10-29 動きベクトル検出装置

Publications (1)

Publication Number Publication Date
JPH07131791A true JPH07131791A (ja) 1995-05-19

Family

ID=17518396

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27276293A Withdrawn JPH07131791A (ja) 1993-10-29 1993-10-29 動きベクトル検出装置

Country Status (1)

Country Link
JP (1) JPH07131791A (ja)

Similar Documents

Publication Publication Date Title
CA2014854C (en) Circuit implementation of block matching algorithm with fractional precision
JP3840129B2 (ja) 動きベクトル検出方法と装置、補間画像作成方法と装置及び画像表示システム
US5604546A (en) Image signal processing circuit for performing motion estimation
US6516031B1 (en) Motion vector detecting device
JPH06334980A (ja) 動画像の動きベクトル検出装置
JPH07508605A (ja) データセットを比較する方法と装置
US20090016634A1 (en) Half pixel interpolator for video motion estimation accelerator
KR20040047963A (ko) 움직임 예측 유닛 및 방법 및 이러한 움직임 예측 유닛을구비하는 이미지 처리 장치
Baek et al. A fast array architecture for block matching algorithm
JP3545004B2 (ja) 演算回路
JPH07131791A (ja) 動きベクトル検出装置
JPH06141304A (ja) 演算回路
JPWO2004012460A1 (ja) 動きベクトル検出装置及び動きベクトル検出方法
US6968011B2 (en) Motion vector detecting device improved in detection speed of motion vectors and system employing the same devices
JPH09200765A (ja) ブロックマッチングによる動き推定用の装置
US20030012283A1 (en) Motion vector detecting device and self-testing method therein
US8270478B2 (en) Method and apparatus for computing a sliding sum of absolute differences
JPH0368597B2 (ja)
JP2934134B2 (ja) 動画像圧縮におけるブロック・マッチング方法と装置
JPH10322706A (ja) 動きベクトル検出装置
JP4160855B2 (ja) ブロックマッチング画像処理装置
JPH03106283A (ja) 動ベクトル検出装置
US20050278401A1 (en) Apparatus and method for motion vector search and post filtering with reduced hardware resources
JP3115511B2 (ja) 動きベクトル探索装置
JPH04345394A (ja) テレビジョン信号の動き検出装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20010130